@aztec/accounts 0.47.0 → 0.47.1

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
- {"transpiled":true,"noir_version":"0.32.0+92ff2fa2e944722e5c3fa43fb3363f093b8f1d12","name":"SchnorrSingleKeyAccount","functions":[{"name":"verify_private_authwit","is_unconstrained":false,"custom_attributes":["aztec(private)","aztec(view)"],"abi":{"error_types":{},"parameters":[{"name":"inputs","type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs"},"visibility":"private"},{"name":"inner_hash","type":{"kind":"field"},"visibility":"private"}],"return_type":{"abi_type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"is_fee_payer","type":{"kind":"boolean"}},{"name":"max_block_number","type":{"fields":[{"name":"_opt","type":{"fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"std::option::Option"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::max_block_number::MaxBlockNumber"}},{"name":"note_hash_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"key_validation_requests_and_generators","type":{"kind":"array","length":16,"type":{"fields":[{"name":"request","type":{"fields":[{"name":"pk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}},{"name":"is_infinite","type":{"kind":"boolean"}}],"kind":"struct","path":"std::embedded_curve_ops::EmbeddedCurvePoint"}},{"name":"sk_app","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request::KeyValidationRequest"}},{"name":"sk_app_generator","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request_and_generator::KeyValidationRequestAndGenerator"}}},{"name":"note_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash"}}},{"name":"nullifiers","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier"}}},{"name":"private_call_requests","type":{"kind":"array","length":4,"type":{"fields":[{"name":"target","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"function_data","type":{"fields":[{"name":"selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_private","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_data::FunctionData"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"caller_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::caller_context::CallerContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_call_request::PrivateCallRequest"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"public_teardown_function_hash","type":{"kind":"field"}},{"name":"l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"fields":[{"name":"recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"content","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message"}}},{"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":"note_encrypted_logs_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"note_hash_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::NoteLogHash"}}},{"name":"encrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"randomness","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::EncryptedLogHash"}}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::LogHash"}}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs"},"visibility":"public"}},"bytecode":"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","debug_symbols":"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"},{"name":"compute_note_hash_and_optionally_a_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"error_types":{},"parameters":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"},"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":"compute_nullifier","type":{"kind":"boolean"},"visibility":"private"},{"name":"serialized_note","type":{"kind":"array","length":0,"type":{"kind":"field"}},"visibility":"private"}],"return_type":{"abi_type":{"kind":"array","length":4,"type":{"kind":"field"}},"visibility":"public"}},"bytecode":"H4sIAAAAAAAA/+2b0W7aMBSGHRq6tGlTSAiBQgt0baXdpazt6N1eZnvuXU/aOwwHH/HXdZDRjmcsEQnFie3zf/6PbdIqRGJzJOtPpMpddT4VHw9q812d6387nhhj1S45o0A4O4FwngTCGTNyRgZOeY5VWa47ueY+ic16/FCJnWWiT6Be7AqkqyaqkGh1bKNd1W+nIIDwQsHHqo7Okfqkqh4BUzXYph3cowF34B5pncA92slIK1HmOBj3S7LF5o29no1yLGcqFvGnUMa6KVgYOxxr181Yn53laO2jwxw1q5zy0FWxE7imnJyDPuO3yxPqU+xzbX7EUJ5AW2pHbTrAK49LsV1L5zv6xVq/DNqcQr9E60fXlHfpV1+V5bmbbNtSfEc+1jJ26ib2uxzFmocpjC0Dfb45ulxJjQvx/oi0a/xiyYDp0gnTZk26Ge8ml1cQm+8p6eVZxutpvl1ovmXQ5gq87DnyMgJtYqLrXos+nyevKxmvb+FJ38DU9+BJv0Wf0ZM3GS+38CQ3MOUePMlb9Pk8+fZVxissPCkMTIUHT4oWfT5Pls3zw8DCk4GBaeDBk0GLPuPaaeZJaeFJaWAqPXhStugzevJTxhtaeDI0MA09eDJs0Wf05IeMV1l4UhmYKg+eVC36jHts83wysvBkZGAaefBk1KLP6MlSxhtbeDI2MI09eDJu0WdcO43+tYUn1wamaw+eoOY+3INAuatAuYsD4db1GddOs8dOLDyZGJgmHjxBzX24ywPh1vUZc/ki400tPJkamKYePEHNfbjzQLmLQLmHgXKXgXJXgXIfyvzW9Rmfv5s99sbCkxsD040HT1BzH+48UO5JoNzFgXDr+oxrp/n/4K2FJ7cGplsPnqDmPtyjQLn7B8Kt6zPOwVcZb2bhyczANPPgCWruwz0OlLsKlHsSKHcRKPcwUO4yUO7juvy/3PmBcMt79L7PH+dMy7dUYyINoXEKjTOFcgacc4jRZeOsa8zVHPQWTnzZ5EqfP3S9cK6/XMnYnx2NTca+dxO7+ZvjQcWidxrvDb49gn7EnLcHLTZpPUAuqfwb2lI7akP7BfHL99nuVPlxR7+Z1i+DNnfQ717rR9eUd+nfL1V2Odds5npPbNf5F2BytFc+4/vLAjSExknHDJjmbpieHI63xncaheBdjwvNszPNswza4F7uc289ch+5bbjxOeQM7lH9HO51tPHgb0UWEOMv7Ab1lOo2AAA=","debug_symbols":"ndpBattQGIXRvWgciu9v6T0pWymlOIlTDMYOsVMoJnuv3NIF9Mz0JN3ZNzq82/Cyf/r48f1wej1fhsevt+F4ft5dD+fTeroNmy81/3l7edud7i8u1937dXjctv4w7E8v61Ovz4fh9XDcr8/L9vPbw320wGi7kVFkVDLaymiU0SSjJqMuIyliK0WMUsQoRYxSxChFjFLEKEWMUsQoRYxSxChFTFLEJEVMUsQkRUxSxCRFTFLEJEVMUsQkRTQpokkRTYpoUkSTIpoU0aSIJkU0KaJJEV2K6FJElyK6FNGliC5FdCmiSxFdiuhSxCxFzFLELEXMUsQsRcxSxCxFzFLELEXMUsQiRSxSxCJFLFLEIkUsUsQiRSxSxCJFLFJENhtahVZFqy2tRlpNtGq06rSaaUVthNoItRFqI9RGqI1QG6E2Qm2E2gi1UdRGURtFbRS1UdRGURtFbRS1QaAZEs0QaYZMM4SaIdUMsWbINUOwGZLNEG2GbDOEmyHdDPFmyDdDwBkSzhBxhowzhJwh5QwxZ8g5Q9AZks4QdYasM4SdIe0McWfIO0PgGRLPEHmGzDOEniH1DLFnyD1D8BmSzxB9huwzhJ8h/QzxZ8g/QwAaEtAQgYYMNISgIQUNMWjIQUMQGpLQEIWGLDSEoSENDXFoyENDIBoS0RCJhkw0hKIhFQ2xaMhFi1y0yEWLXLTIRYtctMhFi1y0yEWLXLTIRYtctMhFi1y0yEWLXLTIRYtctMhFi1y0yEWLXLTIRYtctMhFi1y0yEWLXLTIRcsuepKLFrlokYsWuWiRixa5aJGL1n+76Hr6uXs/7J6O+/vd3vvHj9Pzv6u+6/H66+3vl/Xf3w=="},{"name":"entrypoint","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"error_types":{},"parameters":[{"name":"inputs","type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs"},"visibility":"private"},{"name":"app_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":4,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}}],"kind":"struct","path":"authwit::entrypoint::app::AppPayload"},"visibility":"private"},{"name":"fee_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":2,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}},{"name":"is_fee_payer","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::fee::FeePayload"},"visibility":"private"}],"return_type":{"abi_type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"is_fee_payer","type":{"kind":"boolean"}},{"name":"max_block_number","type":{"fields":[{"name":"_opt","type":{"fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"std::option::Option"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::max_block_number::MaxBlockNumber"}},{"name":"note_hash_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"key_validation_requests_and_generators","type":{"kind":"array","length":16,"type":{"fields":[{"name":"request","type":{"fields":[{"name":"pk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}},{"name":"is_infinite","type":{"kind":"boolean"}}],"kind":"struct","path":"std::embedded_curve_ops::EmbeddedCurvePoint"}},{"name":"sk_app","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request::KeyValidationRequest"}},{"name":"sk_app_generator","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request_and_generator::KeyValidationRequestAndGenerator"}}},{"name":"note_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash"}}},{"name":"nullifiers","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier"}}},{"name":"private_call_requests","type":{"kind":"array","length":4,"type":{"fields":[{"name":"target","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"function_data","type":{"fields":[{"name":"selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_private","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_data::FunctionData"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"caller_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::caller_context::CallerContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_call_request::PrivateCallRequest"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"public_teardown_function_hash","type":{"kind":"field"}},{"name":"l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"fields":[{"name":"recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"content","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message"}}},{"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":"note_encrypted_logs_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"note_hash_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::NoteLogHash"}}},{"name":"encrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"randomness","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::EncryptedLogHash"}}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::LogHash"}}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs"},"visibility":"public"}},"bytecode":"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","debug_symbols":"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ksVqSDdNsRrSTXnbf1gfcygP87Ub0k1TrNkRVlO6aYLVlG6aYDWlmyZYTemmCVZLuumy3tmxxpD/jnVY0k0zrJZ00wyrJd2U0tix5rsv4q9YLemmHMsN69092Fes2RFWS7pphtWSbpphNaSbStj2c7iE/pA+OwzppilWQ7qpxLDPnJLC3zVi2gzppilWQ7ppihVZN8XtJoTiVttD8chCaFp8Ri4+hP1L8ovannxJHsYe7Bi3cPsnefnMJ68e5VpI2LabkI/tJy2fFUE/4tRvvmJ7T0soda8jlHF398G1p1Vz8U1z8V1z8UNx8WHTXHzQXHzUXHzSXHzWXLzmCRs0T9igecIGzRM2aJ6wUfOEjZonbNQ8YaPmCfvhC3iEi9c8YaPmCRs1T9ioecJGzRM2aZ6wSfOETZonbNI8YT983YVw8ZonbNI8YZPmCZs0T9ikecJmzRM2a56wWfOEzZon7IejxoWL1zxhs+YJmzVP2Kx5wmbNE7ZonrBF84Qtmids0TxhPxyNK1y85glbNE/YonnCFs0TtmiesFXzhK2aJ2zVPGGr5gn74VBJ4eI1T9iqecJWzRO2ap6wVfOEbZonbNM8YZvmCds0T9gPJ+oJF695wjbNE7ZpnrBN84Rtmids1zxhu+YJ2zVP2K55wn44e024eM0TtmuesF3zhO2aJ2zXPGGH5gk7NE/YoXnCDs0T9sMpXcLFa56wQ/OEHZon7NA8YYfiCZs3xRM2b4onbN4UT9i8KZ6weVM8YbPmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznbLmTKesOdMpa850ypoznTJ2ptOI+frWddvqQ/HQE3ZWPPSEnRUPPWFnxUNP2Fnx0BN2Vjz0hJ0VDz1h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1x2AnoHVnFauff09A6s5rVx79XsGVnNaufbf9wys5rRy7anvGVjNaeXaJ98zsJrTUtsRv6vtiN/VdsTvajvid7Ud8bvajvhdbUf8rrYjflfbEb+r7Yjf1XbE72o74ne1HfG72o74XW1H/K62I35X2xG/q+2Ir2o74qvajviqtiO+qu2Ir7eiNrCY06pqO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74qrYjvqrtiK9qO+Kr2o74prYjvqntiG9qO+Kb2o74ditqA4s5raa2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76p7Yhvajvim9qO+Ka2I76J7Yjfb2I74u8Dazmt+8BaTus+sJbTug9c1AbWclr3gbWc1n1gLad1H1jLad0HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJrTEtsRfx9YzWmJ7Yi/D6zmtMR2xN8HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJrTEtsRfx9YzWmJ7Yi/D6zmtMR2xN8HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJrTEtsRfx9YzWmJ7Yi/D6zmtMR2xN8HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJrTEtsRfx9YzWmJ7Yi/D6zmtMR2xN8HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJrTEtsRfx9YzWmJ7Yi/D6zmtMR2xN8HVnNaYjvi7wOrOS2xHfH3gdWcltiO+PvAak5LbEf8fWA1pyW2I/4+sJjTmtR2xE9qO+IntR3xk9qO+PvXqA0s5rQmtR3xk9qO+EltR/yktiN+UtsRP6ntiJ/UdsRPajviJ7Ud8ZPajvhJbUf8pLYjflLbET+p7Yif1HbET2o74ie1HfGT2o74SW1H/KS2I35S2xE/qe2In9R2xE9qO+IntR3xk9qO+EltR/yktiN+UtsRP6ntiJ/UdsRPajviJ7Ud8ZPajvhJbUf8pLYjflLbET+p7Yif1HbET2o74ie1HfGT2o74SW1H/KS2I35S2xE/qe2In9R2xE9qO+IntR3xk9qO+EltR/yktiN+UtsRP6ntiJ/UdsRPajviJ7Ud8ZPajvhJbUf8pLYjflLbET+p7Yif1HbET2o74ie1HfGT2o74SW1H/KS2I35S2xE/qe2In9R2xE9qO+IntR3xk9qO+EltR/yktiN+UtsRP6ntiJ/UdsRPajviJ7Ud8ZPajvhJbUf8lGuD+FqeT12Xk+/9zXMsy7L+/cXLUt9Q3uZ/+Z3v3+Ex4Xzb39ntP33neX1+53ryndet/f216347ED+VJ0H878RP5c8Q/zvxC+Lrip/KtyP+d+KnyjCI/534qfIc4n8nfqpsi/jfiZ/qJyqI/434c65rLYj/nfg0fMLi0/AlFX+7Pb7xNs8H4tPwCYtfEF9XfBo+YfFp+LIavvYSfzkQn4ZPWHwaPmHxafh0xc91JRDxvxOfhk9YfBq+rOLXx9eurRyIT8MnLH5BfF3xafiExafhExafhk9YfBo+YfFp+HTFz3WdGvG/E5+GT1h8Gj5h8Wn4hMUviK8rPg2fsPg0fMLi0/AJi0/DJyw+DZ+u+AsNn7D4NHzC4tPwCYtPwycsfkF8XfFp+ITFp+ETFp+GT1h8Gj5h8Wn4dMUvNHzC4tPwCYtPwycsPg2fsPgF8XXFp+ETFp+GT1h8Gj5h8Wn4hMWn4dMVf6XhExafnO8q/tRKfTxza4ul+OeXNtaC+Lrik/OFxSfnC4tPzhcWn5wvLD45X1f8jZwvLD6/ySMsPr/JIyw+DZ+w+AXxc4rfcVRxo+ETFp+GT1h8Gj5h8Wn4shq+89NqGw2frvg7DZ+w+DR8wuLT8AmLT8MnLH5B/KTin//27k7DJyw+DZ+w+DR8wuLT8AmLT8OnK36l4RMWn4ZPWHwaPmHxafiExS+Irys+DZ+w+DR8wuLT8AmLT8MnLD4Nn674jYZPWHwaPmHxafiExafhExa/IL6u+DR8wuLT8AmLT8MnLD4Nn7D4NHyy4i83Gj5h8Wn4hMWn4RMWn4ZPWPyC+Lri0/AJi0/DJyw+DZ+w+DR8wuLT8OmKP9HwCYtPwycsPg2fsPjkfHvxTe9hLBNpPLxEZObwEpFsw0tE/owu0UxKDC8RWS68RCSu8BLxmw/hJSpIFF0i2oXwEtEuuEp0fhxtmWkXwktEuxBeItqF6BIttAu+duH0dM+y0C6El4h2IbxEtAvhJSpIFF0i2oXwEtEu+Ep0/htAC+1CeIloF8JLRLsQXaJCuxBeItqF8BLRLoSXiHYhvEQFiaJLRLsQXiLahfAS0S6El4h2IbxEtAvRJVppF8JLRLsQXiLahfAS0S6El6ggUXSJaBfCS0S7EF4i2oXwEtEuhJeIdiG6RBvtQniJaBfCS0S7EF4i2oXwEhUkii4R7UJ4iWgXwktEuxBeItqF8BLRLkSXaKddCC8R7UJ4iWgXwktEuxBeooJE0SUiF/VINNUHj2WeN0uJzrc67uSi8BKRi6JLVMlF4SUiF4WXiFwUXiJyUXiJChJFl4ifuoaXiJ+6hpeIdiG8RLQLrhJ1rFKvtAvRJWq0C+Elol0ILxHtgq9dOF8C3WgXwktUkCi6RLQL4SWiXQgvEe1CeIloF3wlOv8NoEa7EFyicqNdCC8R7UJ4iWgXwktEuxBeooJE0SWiXQgvEe1CeIloF8JLRLsQXiLahegSTbQL4SWiXQgvEe1CeIloF8JLVJAoukS0C+Elol0ILxHtQniJaBfCS0S7EF2imXYhvES0C+Elol0ILxHtQniJChJFl4h2IbxEtAvhJaJdCC8R7UJ4iWgXoku00C6El4h2IbxEtAvhJaJdCC9RQaLoEtEuhJeIdiG8ROSiLolu9SHR9D7hL2x1LIVcFF4iclF4ichF4SUiF4WXqCBRdInIReElIheFl4ifuoaXiJ+6hpeIdiG6RCvtgqtE56vUy0q7EF4i2oXwEtEuhJeoIJGrXThdAl1W2oXwEtEuhJeIdiG8RLQL4SWiXYgu0Ua74CvR+W8AbbQL4SWiXQgvEe1CeIkKEkWXiHYhvES0C+Elol0ILxHtQniJaBeiS7TTLoSXiHYhvES0C+Elol0IL1FBougS0S6El4h2IbxEtAvhJaJdCC8R7UJ0iSrtQniJaBfCS0S7EF4i2oXwEhUkii4R7UJ4iWgXwktEuxBeItqF8BLRLkSXqNEuhJeIdiG8RLQL4SWiXQgvUUGi6BLRLoSXiHYhvES0C+Elol0ILtF6Ixf1SHRbHiSXW71ZSnS61XG9kYvCS0QuCi9RQaLoEpGLwktELgovEbkovETkovAS8VPX6BJN/NQ1vES0C+Elol1wleh8lfo60S6El6ggUXSJaBfCS0S74GsXTpdArxPtQniJaBfCS0S7EF2imXYhvES0C+Elol3wlej8N4Bm2oXwEhUkii4R7UJ4iWgXwktEuxBeItqF8BLRLkSXaKFdCC8R7UJ4iWgXwktEuxBeooJE0SWiXQgvEe1CeIloF8JLRLsQXiLahegSFdqF8BLRLoSXiHYhvES0C+ElKkgUXSLahfAS0S6El4h2IbxEtAvhJaJdiC7RSrsQXiLahfAS0S6El4h2IbxEBYmiS0S7EF4i2oXwEtEuhJeIdiG8RLQL0SXaaBfCS6Sbi2x3L24FkDYgdTOGMUjdJGAMUtevG4PUddXGIHW9ry3IXdehGoPU/SmVMUjdnyUZgyTZGIEsgDRZibyTbIxAkmyMQJJsjECSbHpeNudLRneSjQ3ISrIxAkmyMQJJsjECSbIxAlkAafJTxEqyMQJJsjECSbIxAkmyMQJJsrEB2Ug2RiBJNkYgSTZGIEk2RiALIG1AkmyMQJJsjECSbIxAkmyMQJJsTEBuN5KNEUiSjRFIko0RSJKNEcgCSBuQJBsjkCQbI5AkGyOQJBsjkCQbG5ATycYIJMnGCCTJxggkycYIZAGkDUiSjRFIko0RSJKNEUiSjRFIko0NyJlkYwSSZGMEkmRjBDK2j9yf07Y6305Bztvzqef9YODYfu+CgWP7sgsGju2fLhg4ts+xH3iJ7Ue+HPibT/+/Bnt+9Tod4IntMtzxxPYO7nhid53ueAp4PuFJ5Sft8aRyn/Z4UnnVq2Ld8TO/QKbywJ4gU3lrR5BF1rNbg5R199YgZXOANUjZxGANsgDSBqRsCrEGKZtXrEGSbIxAkmyMQJJsbEAGvy8+EEiSjRFIko0RSJKNEcgCSBuQJBsjkCQbI5AkGyOQJBsjkCQbG5DBbxsPBJJkYwSSZGMEkmRjBLIA0gYkycYIJMnGCCTJxggkycYIJMnGBmTww7lBQJ4fzt2CH84dCCQvG5u/aA1+pnQgkLxsbEAGP1M6EEhqNCOQ1GhGIPGRHSC38njm+89mDkAWQNqApEYzAkmNZgSSZGMEkmRjBJJkYwMy+JnSgUCSbIxAkmyMQJJsjEAWQNqAJNkYgdRNNl88x7Ssjy+elu2NR5vfUOpmG3OUuunGHKVuvjFGuQc/VzoUSt2MY45SN+WYo9TNOV+hfP4sbFrefhj2J8oCSiuUulnHHCVpxwwlaccMJWnHDCVpxwpl8BOmAVGW23SAkrRjhpK0Y4aStNODsryOkJRlPUBZQGmFkrRjhpK0Y4aStGOGkrRjhpK0Y4Uy+FlTF5QvOOSXD3BIJB/gkDE+wCnAOYZDDvgAB2f/AU4qr35+KW3PdeS2Z+BUvrdj4FxHbnsGTuU4ewZO5SJ7Bk7lDHsGLmoDp3JwPQOncmU9A6s5rVynVHsGVnNauU6T9gys5rRynfrsGVjNaeU6ndkzsJrTynWKsmdgNaeV67Rjz8BqTivXqcSegdWcVq7Tgz0DqzmtXKf8egZWc1q5TuP1DKzmtHKdmusZWM1p5Trd1jOwmtPKdQqtZ2A1p5XrtFjPwGpOK9eprp6B1ZxWrtNXPQOrOa1dzWntak5rV3Naua6j9Qxc1AZWc1q7mtPKdU+uZ2A1p5XrPlvHwLnuqPUMrOa0ct0l6xlYzWnluvPVM7Ca08p1N6tnYDWnlesOVc/Aak4r112nnoHVnFauO0k9A6s5rVx3h3oGVnNaue749Ays5rRy3cTpGVjMadVc92V6BhZzWjXXrZaegcWcVr0VtYHFnFbNdUOkZ2Axp1Vz3ePoGVjNaeW6bdEzsJrTynUnomdgNaeV6+ZCz8BqTivX/YKegdWcVq5bAD0DqzmtXHv1ewZWc1q59t/3DKzmtHLtqe8ZWM1p5don3zOwmtNS2xFf1XbEV7Ud8VVtR3xV2xFf1XbEV7Ud8VVtR3xV2xFf1XbEV7Ud8TXXBvGvjlE9v3Ut9eRr1639/bXrfjsAqXtJ0Bik7tVBY5AFkDYgda8ZGoPUvXxoDFL3orkxSN175sYgda+Z24LMtVnfEyTJxggkyaYD5Hbb//7abZ4PQJJsjEAWQNqAJNkYgSTZ9Lxs2gvkcgCSZGMEkmRjBJJkYwMy1yULT5AkGyOQJJsekPXxtWsrByBJNkYgCyBtQJJsjECSbIxAkmyMQJJsjECSbGxA5roc4wmSZGMEkmRjBJJkYwSyANIGJMnGCCTJxggkycYIJMnGCCTJxgZkrktNniBJNkYgSTZGIEk2RiALIG1AkmyMQJJsjECSbIxAkmyMQJJsbEDmuozmCZJkYwSSZGMEkmRjBLIA0gYkycYIJMnGCCTJxggkycYIJMnGBGTLdYnQE2RsH7ndniC31k5Bztvzqef9YOCiNnBsX3bBwLH90wUDx/Y5Fwwc2498OfA3n/49+y5b8Gt53niC39ZzxxO763THE7vBdMeTyk/a4yng+YQnlVe9KtYdP/MLZCoP7Akylbf2BCnr2a1Byrp7Y5DBLz8OBFI2MViDlM0W1iBlU4g1yAJIG5AkGyOQJBsjkCQbI5AkGyOQJBsbkMEvrQ4EkmRjBJJkYwSSZGMEsgDSBiTJxggkycYIJMnGCCTJxggkycYGZCHZGIEk2RiBJNkYgSTZGIHE/vT8bczpUcgW/HDuOCCDnymNAvL8r7WCnykdCCQvGyOQBZA2IKnRjEBSoxmBxEd2gNzK45m39cCQBz9TOhBIajQbkMHPlA4EkmRjBJJkYwSSZGMEsgDSBiTJxggkycYIJMnGCCTJxggkycYGZPAzpVeC/OI57hBePNa3BXX7/oZSN9uYo9RNN+YodfONOcoCSiuUuhnHHKVuyjFHqZtzvkK5L6/vPB+g1E065ih1s441yuCnS4dCSdoxQ0naMUNJ2jFDWUD5Lcp2gJK0Y4aStGOGkrRz/EchwY+TOsMhkRzDCX5E1BkOqeEDHHLABzg4+w9wSiY4HYvvgx/PvGDgVL63Z+BU7rRn4FSOs2fgVC7ydOB6C36E8YKBU7m9noFTObiegVO5sp6Bi9rAWk7rPrCW07oPrOW07gNrOa37wGpOK9fJyp6B1ZxWrrOSPQOrOa1cpx97BlZzWrmOLvYMrOa0ch0x7BlYzWnlOgrYM7Ca08p1ZK9nYDWnletoXc/Aak4r1xG4noHVnFauo2o9A6s5rVxHynoGVnNauY5+9Qys5rRyHdHqGVjNaeU6StUzsJrTynXkqWdgNaeV62hSz8BqTivXEaKegdWcVilqA6s5raLmtHLdqeoZWM1pFTWntao5rVyXvXoGVnNauS5l9Qxc1AZWc1q5LkT1DKzmtHJdXOoZWM1p5bpg1DOwmtPKdRGoZ2A1p5Xrwk7PwGpOK9fFmp6B1ZxWrgswPQOrOa1cF1V6BlZzWrmuk/QMzEW6/6fjRPTW/v7adb8dgOQinRFILtIZgeQinRFILtLZgBS+0WAMklvbRiC5tW0EklvbRiALIG1AkmyMQJJsOkBut/3vr93m+QAkycYIJMnGCCTJxgak8GWIb1427QVyOQBJsjECSbIxAkmyMQJZAGkDkmRjBJJk0wOyPr52beUAJMnGCCTJxggkycYE5JTrsoknSJKNEUiSjRFIko0RyAJIG5AkGyOQJBsjkCQbI5AkGyOQJBsbkLkuCXmCJNkYgSTZGIEk2RiBLIC0AUmyMQJJsjECSbIxAkmyMQJJsrEBmetylydIko0RSJKNEUiSjRHIAkgbkCQbI5AkGyOQJBsjkCQbI5AkGxuQuS7leYIk2RiBJNkYgSTZGIEsgLQBGdtHlvmBpq17PQU5b8+nnveDgWP7vQsGju3L7AcOfv/ugoFj+5wLBo7tR74c+JtP/559l1Pwa3nueAp4PuGJ3XW644ndYLrjSeUn7fGkcp/2eFJ51ati3fEzP0EGv0w4EMhU3toTpKxntwYp6+6tQRZA2oCUTQzWIGWzhTVI2RRiDVI2r1iDJNnYgAx+CXQgkCQbI5AkGyOQJBsjkAWQNiBJNkYgSTZGIEk2RiBJNkYgSTY2IINf3h0IJMnGCCTJxggkycYIZAGkDUiSjRFIko0RSJKNEUiSjRFIko0NyOA3sQcCSbIxAkmyMQJJsjECWQBpA5JkYwSSZGMEkmRjBJJkYwSSZGMDMvjh3CAg1639/bXrfjsAWQBpA5KXTQ/I880owc+UDgSSl40JyDn4mdKBQFKjGYGkRjMCiY/sALmVxzNvazsAWQBpA5IazQgkNZoRSJKNEUiSjRFIko0NyOBnSgcCSbIxAkmyMQJJsjECWQBpA5JkYwSSZGMEkmRjBJJkYwSSZGMDMviZ0oFA6iabL55jWp4T3hG88aj7P8Sum4NcseumJlfsBewe2HUTmRH2F0rdTGaOUjeVmaPUzWXmKHWTmTXK4IdWh0JJOjNDSeIyQ0mKMkNZQGmFkrTTg7Jst8d3XqflD5Q/fPX0eo5pe//q+gaebOQEniRlDt72DxnnXGeRc0pE8osuUa7T0zklIqmGl4gEHF4iknV4iQoSRZeIJiC8RHQG4SWiXQgvEe1CeIloF6JLtNIuhJeIdiG8RLQL4SWiXQgvUUGi6BLRLoSXiHYhvES0C+Elol0ILxHtQnSJNtqF8BLRLoSXiHYhvES0C+ElKkgUXSLahfAS0S6El4h2IbxEtAvhJaJdiC7RTrsQXiLahfAS0S6El4h2IbxE5CJXic6vWM47uSi6RBVH5yvR+VW5iqMLLxGOLrxEOLrwEhUkii4RPy8KLxG5yFWijk3ZlVwUXiJ+XhReIn5eFF2iRrsQXiLahfAS0S6El4h2IbxEBYmiS0S7EF4i2oXwEtEuhJeIdsFeom++823fXs+8vn3nt333jX4hvEjLjYZhAJHoGAYQiZZhAJHoGQYQqSBSfJHoGpxFas/vfGvtQCTahgFEom8YQCQahwFEonGIL9JE4zCASDQOA4hE4+Ar0jQ9n3malwORaBwGEKkgUnyRaBwGEInGYQCRaBwGEInGYQCRaBziiLRMP4s00zgMIBKNwwAi0Tg4i/R65mk7eCfNNA4DiFQQKb5INA4DiETjMIBINA4DiETjMIBINA6/KNIT+0KH4IKdVqAH+1rWJ/a1nmC/f8zU58dMrQfgSfpO4Env5uDn8oA3b8sB9gJ2D+wkbBfsZGYX7KRgF+zkWhfsJFV77PsTRz2ITIWk6oKdpOqCnZzqgp2U6oK9gN0DOynVBTsp1QU7KdUFOynVBTsp1QP7Skp1wU5K7cK+tyf2tztB/+LHeis51Qk8SdUJfAG8D3jSqhN48qoTeBKrE3gyqxN4UqsP+I3c6gSe5OoEnuTqBJ7k6gS+AN4HPMnVCTzJ1Qk8ydUJPMnVCTzJ1Qf8TnJ1Ak9ydQJPcnUCT3J1Al8A7wOe5OoEnuTqBJ7k6gSe5OoEnuTqA76SXJ3Ak1ydwJNcncCTXJ3AF8D7gCe5OoEnuTqBJ7k6gSe5OoEnufqAbyRXJ/AkVyfwJFcn8CRXJ/AF8D7gSa5O4EmuTuBJrk7gSa5O4EmuLuDLjeTqBJ7k6gSe5OoEnuTqBL4A3gc8ydUJPMnVCTzJ1Qk8ydUJPMnVB/xEcnUCT3J1Ak9ydQJPcnUCXwDvA57k6gSe5OoEnuTqBJ7k6gSe5OoDfia5OoEnuTqBJ7k6gSe5OoEvgPcBT3J1Ak9ydQJPcnUCT3J1Ak9y9QG/kFydwJNcncCTXJ3Ak1ydwBfA+4AnuTqBJ7k6gSe5OoEnuTqBJ7n6gC8kVyfwJFcn8CRXJ/AkVyfwBfA+4EmuTuBJrk7gSa5O4EmuTuBJrj7gV5KrE3iSqxN4kqsTeJKrE/gCeB/wJFcn8CRXJ/AkVyfwJFcn8CRXH/AbydUJPMnVCTzJ1Qk8ydUJfAG8D3iSqxN4kqsTeJKrE3iSqxN4kqsP+J3k6gSe5OoEnuTqBJ7k6gS+AN4HPMnVCTzJ1Qk8ydUJPMnVCTzJ1Qd8Jbk6gSe5OoEnuTqBJ7k6gS+A9wFPcnUCT3J1Ak9ydQJPcnUCT3L1Ad9Irk7gSa5O4EmuTuBJrk7gC+B9wJNcncCTXJ3Ak1ydwJNcncCTXF3ArzeSqxN4kqsTeJKrE3iSqxP4Angf8CRXJ/Ak1/95jhcc0uUHOCTAD3BIacdwJpLUBziknQ9wSCQf4JAaPsApwDmGg/v+AAeH/AEODvkDnFQOuczPp16ng4FTud6OgedUTrZn4FTutGfgVI6zZ+BULrJn4KI2cCq31zNwKgfXM3AqV9YzsJrTmtWc1qLmtBY1p7WoOa1FzWktRW1gNae1qDmtRc1pLWpOa1FzWkXNaRU1p1XUnFZRc1qlqA2s5rSKmtMqak6rqDmtXLfnOwbOdfO9Z2A1p5XrxnnPwGpOK9dN756B1ZxWrhvWPQOrOa1cN5t7BlZzWrluFPcMrOa0ct3k7RlYzWnlukHbM7Ca08p1c7VnYDWnlevGaM/Aak4r103NnoHVnFauG5I9A6s5rVw3E3sGVnNauW4E9gys5rRy3cTrGVjNaeW6AdczsJrTynXzrGdgNaeV68ZXz8BqTivXTauegdWcVq4bTj0DqzmtXDeLegZWc1q5bvT0DKzmtHLdpOkZWM1p5brB0jOwmtPKdXOkZ2Axp7XlurHRM7CY09py3ZToGVjMaW23ojawmNPact0M6BlYzGltuXb79wys5rRy7eDvGVjNaeXald8zsJrTyrXTvmdgNaeVa/d8z8BqTkttR/ymtiN+U9sRv6ntiN/UdsRvajviN7Ud8ZvajvhNbUf8prYjflPbEb+p7Yjf1HbEb2o74je1HfGb2o74TW1H/Ka2I35T2xG/qe2I39R2xG9qO+I3tR3xm9qO+E1tR/ymtiN+U9sRv6ntiN/UdsRvajviN7Ud8ZvajvhNbUf8prYjflPbEb+p7Yjf1HbEb2o74je1HfGb2o74TW1H/Ka2I35T2xG/qe2I39R2xG9qO+I3tR3xm9qO+E1tR/ymtiN+U9sRv6ntiN/UdsRvajviN7Ud8ZvajvhNbUf8prYjflPbEb+p7Yjf1HbEb2o74je1HfGb2o74TW1H/Ka2I35T2xG/qe2I39R2xG9qO+I3tR3xm9qO+E1tR/ymtiN+U9sRv6ntiN/UdsRvajvit1wbxNfyfOq6nHzvb55jKtvt8Z3XaXl7jv2n7zyvz+9cT77zurW/v3bdbwcSpXIOGSXac21pzylRKneWU6JUfjKnRKkccE6JChJFlyhVysgpUaoGOqdEqTrznBLRLoSXiHbBVaLttv/9tds8/yxRrsskOSWiXQgvEe1CeIloF3ztQntJtBxIVJAoukS0C+Elol0ILxHtQniJaBfCS0S74CtRfXzt2srPEuW6xpVTItqF8BLRLoSXiHYhvEQFiaJLRLsQXiLahfAS0S6El4h2IbxEtAvRJcp1gTKnRLQL4SWiXQgvEe1CeIkKEkWXiHYhvES0C+Elol0ILxHtQniJaBeiS5Tr6nJOiWgXwktEuxBeItqF8BIVJIouEe1CeIloF8JLRLsQXiLahfAS0S5El2ilXQgvEe1CeIloF8JLRLsQXqKCRNElol0ILxHtQniJaBeiS7Tp5iLb3YubbnoxBqmbMYxB6iYBY5AFkDYgdV21MUhd72sMUtehGoPU/SmVMUjdnyXZgtxJNkYgSTYdIDtWIu8kGyOQJBsjkAWQNiBJNj0vm/MlozvJxggkycYIJMnGCCTJxgZkJdkYgSTZ2PwUsZJsjECSbIxAFkDagCTZGIEk2RiBJNkYgSTZGIEk2diAbCQbI5AkGyOQJBsjkCQbI5AFkDYgSTZGIEk2RiBJNkYgSTZGIEk2JiDrjWRjBJJkYwSSZGMEkmRjBLIA0gYkycYIJMnGCCTJxggkycYIJMnGBuREsjECSbIxAkmyMQJJsjECWQBpA5JkYwSSZGMEkmRjBJJkYwSSZGMDco7tI+e1PkAub3+7fwRy3p5PPe8HA8f2excMXNQGju2fLhg4ts+5YODYfuTLgb/59P9rsOdXr9MBntguwx1PbO/gjWeJ3XW644ndYLrjSeUn7fGkcp/2eIoqnm9i3fEzv0Cm8sCeIFN5a0+Qsp7dGqSsu7cGKZsDjEEGv2o/EEjZbGENUjaFWIOUzSvWIAsgbUCSbIxAkmyMQJJsjECSbIxAkmxsQAa/qD0QSJKNEUiSjRFIko0RyAJIG5AkGyOQJBsjkCQbI5AkGyOQJBsbkMFvYg8EkmRjBJJkYwQS+9PztzGnRyFr8MO544AMfqY0Csjzv9YKfqZ0IJC8bIxAUqMZgSyAtAFJjWYEEh/ZAXIrj2fe1gNDHvxM6UAgqdGMQFKj2YAMfqZ0IJAkGyOQJBsjkCQbI5AFkDYgSTZGIEk2RiBJNkYgSTZGIHWTzRfPMd3m9vzOy/uCuvJCGfxQ6VAoddONOUrdfGOOUjfhmKMsoLRCqZtyzFHq5pyvUG4vHn88xztK3aRjjlI365ijJO0YoWzBj5cOhZK0Y4aStGOGkrTzNcr9AGUBpRVK0o4ZStLO4R+FtODHSZ3hkEg+wCFjHMMJfhjUGQ454AMcnP0HOKm8+vni+xb8eOYFA6fyvT0Dp3KnPQOncpw9A6dykT0Dp3KGHQPPqdxez8CpHFzPwKlcWc/Aak4r1znMnoHVnFauc5g9A6s5rVwHLnsGVnNauY5Q9gys5rRyHYrsGVjNaeU65tgzsJrTynUcsWdgNaeV69hgz8BqTivX8b6egdWcVq5jeD0DqzmtXMflegZWc1q5jrX1DKzmtHIdP+sZWM1p5Tom1jOwmtPKdZyrZ2A1p5Xr2FXPwGpOK9fxqJ6B1ZxWrmNMPQOrOa1cx416BlZzWrmOBfUMrOa0tqI2sJrTynWnqmdgNae1qTmtTc1p5brs1TOwmtPKdSmrZ2A1p5Xr8lTPwGpOK9clp56B1ZxWrstIPQOrOa1cl4Z6BlZzWrku9/QMrOa0cl3C6RlYzWnluizTM7Ca08p1qaVnYDWnlevuSc/Aak5L+FrDNyeit8eFgfXtKf4EyUU6I5BcpDMCyUU6I5BcpDMCya1tC5DtJnyhwRgkt7aNQHJr2wgkt7aNQBZA2oAk2XSA3G7731+7zfMBSJKNEUiSjRFIko0RSJJNz8umvUAuP4MUviJhDJJkYwSSZGMEkmRjBLIA0gYkyaYHZH187drKAUiSjRFIko0RSJKNEUiSjQ3IXBdTPEGSbIxAkmyMQJJsjEAWQNqAJNkYgSTZGIEk2RiBJNkYgSTZ2IDMdaHIEyTJxggkycYIJMnGCGQBpA1Iko0RSJKNEUiSjRFIko0RSJKNDchcF8E8QZJsjECSbIxAkmyMQBZA2oAk2RiBJNkYgSTZGIEk2RiBJNnYgMx1gc8TJMnGCCTJxggkycYIZGwfOT3/LLXd/5VTkPP2fOp5Pxg4tt+7YODYvuyCgWP7J/uBg9+/u2Dg2H7ky4G/+fTv2Hd5xxPbZbjjie0d3PEU8HzCE7vBdMeTyk/a40nlPu3xpPKqV8W642d+gUzlgR1BBr94OBBIWc9uDVLW3VuDlM0B1iALIG1AymYLa5CyKcQapGxesQZJsjECSbKxARn8wuhAIEk2RiBJNkYgSTZGIAsgbUCSbIxAkmyMQJJsjECSbIxAkmxsQAa/6DsQSJKNEUiSjRFIko0RyAJIG5AkGyOQJBsTkFPww7lBQJ4fhZyCH84dCCQvG5O/1pqCnykdCCQvGyOQ1GhGIKnRjEBSo9mADH6mNAjIrTyeeVsPDHnwM6UDgaRGMwJJjWYEsgDSBiTJxggkycYIJMnGCCTJxggkycYGZPAzpQOBJNkYgSTZGIHUTTZfPMd0m9vzOy/17TnKG8oCSiuUuunGHKVuvjFHqZtwzFHqZhxzlLopxxpl8KOlYVBuLx5/bOt9R6mbdMxR6mYdc5SkHTOUBZRWKEk7ZihJO2YoSTtfo9wPUJJ2zFCSdqxQBj9k6oLyBYf88gEOieQDHDLGBzgFOMdwyAEf4ODsP8BJ5dXPF99PwY9nXjBwKt/bMXDwY5QXDJzKcfYMnMpF9gycyhn2DFzUBk7l4HoGTuXKegZWc1q5zmH2DKzmtHKdw+wZWM1p5Tpw2TOwmtPKdYSyZ2A1p5XrUGTPwGpOK9cxx56B1ZxWruOIPQOrOa1cxwZ7BlZzWrmO9/UMrOa0ch3D6xlYzWnlOi7XM7Ca08p1rK1nYDWnlev4Wc/Aak4r1zGxnoHVnFau41w9A6s5rVzHrnoGVnNauY5H9Qys5rRyHWPqGVjNaeU6btQzsJrTynUsqGdgNafV1JxWE3Nac647VT0Dizmt+SbmtOabmNOab0VtYDGnNee6lNUzsJjTmnNdnuoZWM1p5brk1DOwmtPKdRmpZ2A1p5Xr0lDPwGpOK9flnp6B1ZxWrks4PQOrOa1cl2V6BlZzWrkutfQMrOa0ct096RlYzWkJX2v45kT09rgwsL7t1P0TJBfpbEAKX2owBslFOiOQXKQzAsmtbSOQBZA2ILm1bQSSW9tGILm1bQSSZGMEkmTTAXJ7PsY2zz+DFL7KYAySZGMEkmRjBJJk0/OyaS+QywHIAkgbkCQbI5AkGyOQJBsjkCQbI5Akmx6Q9fG1ays/g8x10cMTJMnGCCTJxggkycYIZAGkDUiSjRFIko0RSJKNEUiSjRFIko0NyFwXdDxBkmyMQJJsjECSbIxAFkDagCTZGIEk2RiBJNkYgSTZGIEk2diAzHWxyhMkycYIJMnGCCTJxghkAaQNSJKNEUiSjRFIko0RSJKNEUiSjQ3IXBfiPEGSbIxAkmyMQJJsjEAWQNqAJNkYgSTZGIEk2diADH7/7jY/nqPdtnoC0ngnQPBLea5oYns9VzSx3ZsrmgKaIzSxHZYrmtieyRVNbBfkiiZ2Y+uKJnYH64hmCX6j0BWNqBs+X4yzBL976IpG1A33oCmgOUKj6oZP13kswe8zuqJRdcMdaFTdcAcaVTd8jib4HUlXNKrd8OlPFJbgtyld0ah2wx1oCmiO0Ki64Q40qm64A42qG+5Ao+qGO9CouuFzNMFvfbqiwQ0fosENH6LBDR+iKaA5QoMbPkSDGz5Egxs+RIMbPkSDGz5CE/yCrSsa3PAhGtzwIRrc8CGaApojNLjhQzS44UM0uOFDNLjhQzS44SM0wa+euqLBDR+iwQ0fosENH6IpoDlCgxs+RIMbPkSDGz5Egxs+RIMbPkIT+y5h3dfb44v3txF+5a/oYl8a9EVTQHOEJrSv8UUT2tf4ognta3zRhPY1vmhC+xpXNLHv5PmiCd3y+aLBDR+iEXXDHX8CH/venC8aUTfcg0bUDfegUXXD53/MHPtumy8aVTd8jib2bTVfNKpuuAONqhvuQKPaDZ//RCH2jTJfNKrdcAca1W64A42qG+5Ao+qGO9CouuFzNLHvcfmiUXXDHWhU3XAHGtzwIZoCmiM0uOFDNLjhQzS44UM0uOFDNLjhIzSxr4r5osENH6LBDR+iwQ0foimgOUKDGz5Egxs+RIMbPkSDGz5Egxs+QFNiXxXzRYMbPkSDGz5Egxs+RFNAc4QGN3yIBjd8iAY3fIgGN3yIBjd8hCb2VTFfNLjhQzTl19GY/q1bcbjiZDzANvoA++gD1NEHaIMP4HADyHiAafQB5tEHWEYfYPQ38Rz6TXz+p6xlDv0m7hkg9Ju4Z4DQb+KeAWK/iU//WK4ssd/EHQPEfhN3DBD7TdwxQOw3cccAsd/EHQPEzsTnrcQSOxN3DBA7E3cMEDsTdwwQ+018PkCJ/SbuGCD2m7hjgNhv4o4BYr+JOwaI/SbuGGD0N3EZ/U1cRn8Tl9HfxGX0N/E6+pt4Hf1NvI7+Jl5HfxM7bJE3HmD0N/E6+pt4Hf1NvI7+Jl5HfxNvo7+Jt9HfxNvob+Jt9DexwwZr4wFGfxNvo7+Jt9HfxNvob+Jt9DfxPvqbeB/9TbyP/ibeR38T2+xBnR6/WHV/5mI5wPlvbNlsK/UcoI4+QBt8AJv9nJ4DTKMPMI8+wDL6AGX0AdbRBxj9TVxDv4k7fvG1hn4T9wwQ+k3cMUAL/SbuGSD2m/j81y5b7DdxxwCx38QdA8R+E3cMEPtN3DFA7DdxxwCxM/F5K9FiZ+KOAWJn4tMB1lvsTNwxQOw3cccAsd/EHQPEfhN3DBD7TdwxQOw3cccAsd/EHQMM/iZeb4O/idfb6G/iafQ38TT6m3ga/U08jf4mttnw5DnA6G/iafQ38TT6m3ga/U08jf4mnkd/E8+jv4nn0d/E8+hvYpsNT54DjP4mnkd/E8+jv4nn0d/E8+hv4mX0N/Ey+pt4Gf1NvIz+JrbZ8OQ5wOhvYpP9Qrfy+HfmW7tZDnD6G1uryX4hzwFM9gu5DjCNPsA8+gDL6AOU0QdYRx9gG32AffQBRn8Tl9Bv4vNffF3X0G/ingFCv4l7Bgj9Ju4ZIPab+PTXLleT/UKuA8R+E3cMEPtN3DFA7DdxxwCx38QdA8TOxOetxBY7E3cMEDsTdwwQOxN3DBD7TdwxQOw3cccAsd/EHQPEfhN3DBD7TdwxQOw3cccAo7+J99HfxPvob+J99DfxPvqbeB/9TbyP/ibeR38T76O/iffR38T76G/iOvqbuI7+Jq6jv4nr6G9ikw1PrgOM/iauo7+J6+hv4jr6m7iO/iZuo7+J2+hv4jb6m7iN/iY22fDkOsDob+I2+pu4jfsmvv906f8e/AXNPj3+d1O77W+Pvz3/h+0f/g8P/mKk4384/dP/4fwP/odb2/7v/POfKtfbY0t4e4P6l7TP/139h/+79s/+dz//PWzH/276h/+7+R/+75Z/+L8z+Jye2rY89a7byf+RbeXxxdva/v//h/PfZ1oDPtMW8Jn2gM9Ur32m57/TfuffsfgrvK5/Z/qlf2f+pX9n+aV/p/zSv7P+0r+z/dK/s//Sv/PrbcQ0Pb96mvaX+5hbfT1Vi/hUsf/Sq07L82t//uyP/YdeHc8fujXoeP7QpUHH85fBnz90ZdDx/KEbg47nD10YdDx/6Oa+4/lDF/fnzx/777s6nn/w92/sv+7qeP7B37+x/7ar4/kHf//G/suujucf/P0b+++6Op5/8Pdv7L/q6nj+wd+/sf+mq+P5B3//xv6Lro7nH3fFxn+ff9wNG//f8w/8pyz/ff5xf2vnv88/7i/t/Pf5Q3/+dDz/uL+y89/nH/c3dv77/KE//89/dh37b1g6nj/2gqXT54/9Fywdzx97vdL588fernT+/KHfvx3PH/r92/H8od+/Hc8f+v3b8fyDv39j/+VKx/MP/v51+LuVw07hf792mrbHYqtp2t9+2+jtN2gc/nDFeoJ5+AmW4Scow0+wDj/BNvwEe5wJns9UAz7Trx9qmab5pd77e3N+qrf8/m3wrqcKfVLlVOsl9r3vjucPfVCl4/nL4M8f+pxKx/OHvmvW8fyhz5p1PH/oq2Ydzx/6qNn588e+893x/IO/f2Nf+e54/sHfv7FvfHc8/+Dv39gXvjuef/D3b+z73h3PP/j7N/Z1747nH/z9G/u2d8fzD/7+jX3Zu+P5B3//xr7r3fH8g79/Y1/17nj+wd+/wS9Kn/2G8RL8oPT584f+/Dn9DctlCf350/H8oT9/Op4/9OfP+fOX0P6/4/lD+/+O5w/9+X/6G0JLCf353/H8ZfDnD+3/O54/9Pu34/lDv387nj/0+7fj+UO/f8+ffw39/u14/tDv347nH/z9uw7+/jXZMOL5/L///v3mtxJv9fUbZLe3BPz2G2TrNvwE+/AT1OEnaKNPsN2Gn2AafoI59gRrfU0w/THB/371vpe/v3h/34R7e707tkVq2iI1bWxf8Mdvlh/832JsX9AzQWxf0DNBbF/QM0FsX9AxwR7bF/RMENsX9EwQ2xd0/J3OHvtd3zNB7Pd3zwSB3snPZwr0ln0+k8l7sz3+mXle55Nnmvbnt97nn5+pBnym9tvPZPu7JybbdTyffxr8+efBn38Z/PnL4M+/Dv782+DPvw/+/HXw5x/8/dsGf/+2wd+/bfD3bxv8/WuyVcfz+Qd//7bB379t8PdvG/z928Z+/5bb2O/fchv7/VtuY79/y23s92+5jf3+Lbex37/lNvb7t9zGfv+W29jv33Ib/P07hf78P/3bwTKF/vzveP7Qnz+nfztVptCfPx3PH/rzp+P5Q3/+nD//HNr/dzx/aP/f8fyhP/9Pf/e/zKE//zuevwz+/KH9f8fzh37/djx/6Pdvx/OHfv92PH/o9+/58y+h378dzx/6/dvx/IO/f5fB37/L4O/fZfD37zL4+3cZ/P27DP7+XQZ//5bff/9+8RvddXv+Am7d3hLkVG//qG0sk9S0s9S0i9S0ZdRpnxOsw0+wDT/BPvwEdfgJ2ugTrMN6iOcEw/qC5wTDvuufEwz7/n5OEPudvK+3xxfvpw7kdLtBWWO/v62njf2u/2pa29/gWGN7CE8ysb2JJ5nYnseRzBbbS3mSie3RPMnE9n6eZGJ7Sk8yBTIHZBL5WmMyeOAjMnjgIzJ44CMyeOADMjse+IgMHviIDB74iAwe+IhMgcwBGTzwERk88BEZPPARGTzwERk88AGZigc+IoMHPiKDBz4igwc+IlMgc0AGD3xEBg98RAYPfEQGD3xEBg98QKbhgY/I4IGPyOCBj8jggY/IFMgckMEDH5HBAx+REfUzp7vW1puon+kgI/puOt2Ptd5E300dZETfTR1kRN9NHWRE+5kOMqL9TAcZUT9zujtknUT9TAcZ0X6mg4xoP9NBRtQDd5ApkDkgI+qBO8iIeuAOMqIeuIOMqAfuIIMHPiAz44GPyGTywF9856mszyv0pb71nXP5ZxwzOWZPjpn8tSfHAkcTjpm8uxHHJ5tM7t2aTSb/bs0mk4O3ZpPJwxuzWTK5eGs2+PhjNnjzYzaqfntdH188rdv2B5sfvnpa6+Orp1p/dIoON0KyklT13F+RnMsDx7wtP3NU9efWHFW9vDVHVd9vzVE1IxhzDH5VZxyOqtnDmqNqTvmO4/4csP7c2Qa/MTQOxyLKcVvmx4RbWQ0STfArSiORVM00X5HseNeoZhprjqqZxpqjaqYx5hj8ytc4HFUzjTVH1UxjzVE103zH8TTTZLr+5spRNdHst2dG2efJINGkulnnS1I103xFsuNdo5pprDmqZhpjjqmu7XlyVM001hxVM401R9VMY82xwLGD42mmSXVT0JOj7M9o9vbiOJ9wPL1mvqa6V+jJUfZnNMYcZfPMWp4ct92gqUh1O9GXpGym+YbkuYdMdZnRk6NspjHmWOBowlE20xhzlP0pjTFH2Z/RGHOU/RnNVxxPu4pUty0dOaa6hPlPOe5//l7Fkw0Z5ZgNueOYjWqWqLfHirupTvU//74lSHU/05ekap74iuS5f0t1ndOTo2qesOaomiesOarmCWOOqa6KenJUzR7WHFVzynccT3uCVPdNPTkWOJpwJM/YcCTP2HAkz9hwJM/YcCTPWHDcUl0V/qcc5z93Ej3ZkFGO2ZA7jtlIZInntEVq2ti+vE6P36yudZn//bSx3bP1tLE97lfTnjZHW/CbzdbTxvaLxtMGv61sPW1sn2Y9bWznZT1tbC/13bSnaSz4rWLraRN5qY5pE3mpjmkzeanzaTN5qfNpg3up7Zn46r7861QQ/Eav9bTBvdQ30567i+DXca2nDe6ljKctUtMG91LG0wb3UsbTBvdSX0176i6CX2G1njaRlzqfNvilVOtpM3mp82kzeanzaWN7qTY/v7gt279OBcFviFpPG9tLfTXtubsIfo3TetrYXsp62theynra2F7KeNrgVyKtp43tpb6b9tRdBL+4aD1tIi/VMW2RmjaTlzqfNpOXOp92HC9V/kx8zwnG8UdHE4zjeQ4mCH4Zru3Tc4L6739/NPj9Nutpg/uYb6Y996jBb6FZT1ukpg3uY4ynDe5jjKcN7mOMpw3ueb6a9tSjBr91ZTxt8ItU1tMm8lId02byUufTZvJS59MWqWkH8lLtx8wa/JJQzwShPU+7zY/naLetnvwXV+f5+Z3fnmJeX9OG9jzm04b2PN9Ouz6/cz377/60j4h938aVTGgv5UomtO9yJRPao7mSKZA5IBPa+7mSCe0pXcmk8qqmZFL5WlMyeOADMrEvoriSwQMfkcEDH5HBAx+RKZA5IIMHPiKDBz4igwc+IoMHPiKDBz4gE/uKhysZPPARGTzwERk88BGZApkDMnjgIzJ44CMyeOCfyeyxt/hfR2bdHovt1v32MxlRP9NBRvTdtNbH165v++D/ICP6buogI/pu6iAj+m7qICPaz3SQEe1nzsnE3l9/HZmtPJ5iW392erF33buSEe1nOsiI9jMdZApkDsiIeuAOMqIeuIOMqAfuICPqgTvIiHrgczKx7w64ksEDH5HBAx+RyeSBv/jO+/6guNf3a8Hri0yBzAGZTB7YlkwmD2xLJpMHtiWTyQPbksnkgU3JxL4X8Stk2vYzmUwe2JZMJg9sS0bUA79tzFjWn8kUyByQEfXAHWREPXAHGVEP3EFG1AN3kBH1wOdkYt/5+BUyP++52mPfBHElI+qBO8hIeODntEVq2thedbrtj2nv/8rJtNNtez31vr99dXnNG9uB2s8b21fazxvbLdrPG9sDms8b+/LJBfPG9mv288Z2YfbzxvZW9vMWsXnF/FXsKygXzCvmr2JfQrlgXjF/FfsaygXzivmr2BdRLphXzF/Fvopywbxi/ir2FZUL5hXzV8GvrtjPK+avgl9TsZ9XzF8Fv3xiP6+Yvwp+pcR+XjF/FfyiiP28Yv4q+PUP+3nF/FXwSx3284r5q+BXNeznTfX+nbfnU8/7H9/7OW+q92/HvKk+n8v8fOp1+nHe4Fvk7edN9fncMW+qz+eOeVPl3455i9i8qd6/HfOmev92zJsq/3bMmyr/dsyr5a9q8K329vMO66+eEwzrmJ4TxPZA81ofEyxve/3/cSavtyI2b2wPZD9vbA9kP29sD2Q/b2wPZD9vbA9kPm/wTfj288b2QPbzxnZM9vOK+avgG+bt5xXzV8G3wdvPK+avgm9ut59XzF8F37JuP6+Yvwq+Ed1+XjF/FXx7uf28Yv4q+KZx+3nF/FXwreD284r5q+AbvO3nFfNXwbdt288r5q+Cb8a2n1fMXwXfYm0/r5i/Cr5x2n5eMX8VfDu0/bxi/ir4Bt8v5z39G5IafIev/bypPp/Pf8cx+I5X83mD73i1nzfV53PHvKnyb8e8qfJvx7yp3r8d86Z6/3bMmyr/dsybKv92zCvmr4LveDWfN/iO1w/zPicY1jE9J4jtgcpcHhOs+9mVmWl/PvQ+//xfXGwHZD1tkZo2tvuxnja297GeNrbzsZ42tu+xnja26zGeNvjeVetpY/sj62mlvFTwjavW0xapaaW8VPBdq9bTSnmp4HtWraeV8lLBd6xaTyvlpYLvV7WeVspL1SI1rZSXCr4313paKS9VpbxU8I3IxtMG34dsPa2Ulwq+C9l6WikvFXwPsvW0Ul4q+A5k62mlvFTw/cfW0yp5qRZ897H1tEpeqgXfkmw9rZKXarciNa2Sl2rBdylbT6vkpVrwPcrW00p5qeA7lK2nlfJSwfcnW0+b6Q10/tfRLfi2WfN5g28j/XLe07/eacG3kdrPm+nTqmfeTNmvZ94iNm+m/Nczb6r3b8e8qd6/HfNmSoE982bKgR3zBt9Gaj+vmL8Kvo30w7zPCYZ1TM8JSugJttv6mGBr7fS/uX15PnV9++p9f80b2wPZzxvbA9nPG9sD2c8b2wPZzxvbA5nPG3xjqP28sT2Q/byxPZD9vLEdk/28RWxeMX9VxPxVEfNXwTf+2s8r5q+Cb/y1n1fMXwXf+Gs/r5i/Cr7x135eMX8VfOOv/bxi/ir4xl/7ecX8VfCNv/bzivmr4NuE7ecV81fBNwrbzyvmr4JvFbafV8xfBd8sbD+vmL8Kvl3Yfl4xfxV8w7D9vKnev+d/QxJ8E639vKk+n89/xzH4xlL7eVN9PnfMm+rzuWPeVPm3Y94iNm+q92/HvKnevx3zpsq/HfOmyr8d84r5q+BbTO3nHdZfPScY1jE9J4jtgfb5OUGdT692lldmK8v6+uo2v+YtYvPG9kD288b2QPbzxvZA9vPG9kD288b2QNbz3geLbYIuGDi2C7pg4Nim6YKBtTzWfbCiNrCWy7oPpmWz7oNp+az7YFpG6z6YmtMKvpz0goHVnFbwFaUXDKzmtKaiNrCa0wq+ePeCgdWc1qTmtCY1pxV8ufIFA6s5reDrlS8YWM1pBV+wfMHAak4r+IrlCwZWc1rBlyxfMLCa0wq+ZvmCgdWcVvBFyxcMrOa0gq9xvmBgNacVfNHvdwOf/6HYfeBM7+GegYOvgv1y4NNfZb5/SaZP6a6BM31Kdw2c6VO6a+BMebhr4Ex5uGvgVO/hnoFTvYc7Bg6+EvaCgTPl4a6B1ZxW8K2wFwxcRh34NcKw3uk1Qmw3VNf9McL9/332n93Zuef7uLG9kPm4sZ2Q+bixfZD1uMEXt5qPG9sDmY8b2wGZjxvb/5iPW7TGje2UzMfVclXBN7aaj6vlqoLva7UeN/i6VvNxtVxV8GWt5uNquaq9aI2r5aqCL+I1H1fLVe1arir4lmXrcYMvWTYfV8tVBV+xbD6ulqsKvmDZfFwtVxV8vbL5uFquKvhyZfNxtVxV8NXK5uNquarga5jNx9VyVcFXNpuPq+Wqgi9sNh9Xy1UFX9dsPq6Uq5qC72o2H1fKVU3B9zSbjyvlqu7DaI0r5aqm4PuZzceVclVT8N3M5uNquarge5nNx9VyVcF3MpuPq+Wqgu9jNh9Xy1UF38VsPq6Wqwq+h9l8XC1XFXwHs/m4Wq4q+P5l83G1XFXw3cvm42q5quB7l83H1XJVwXcum4+r5aqC71s2H1fLVQXftWw+rparCr5n2XxcLVe1aLmqRctVBd+gbT6ulqsqWq6qaLmq4LvRzcfVclXB96Kbj6vlqoLvRDcfV8tVBd+Hbj6ulqsKvgvdfFwtVxV8D7r5uFquKvgOdPNxtVyV1m71SWu3+qS1W33S2q0+ae1Wn7R2q09au9Unrd3qk9Zu9Ulrt/qktVt90tqtPmntVp+0dqtPWrvVJ63d6pPWbvVJa7f6pLVbfdLarT5p7VaftHarT1q71Set3eqT1m71SWu3+qS1W33S2q0+ae1Wn7R2q09au9Unrd3qk9Zu9Ulrt/qktVt90tqtPmntVp+0dqtPWrvVJ63d6pPWbvVJa7f6pLVbfdLarT5r7VaftXarz1q71Wet3erzrWiNK+WqZq3d6rPWbvVZa7f6rLVbfdbarT5r7VaftXarz1q71Wet3eqz1m71WWu3+qy1W33W2q0+a+1Wn7V2q89au9Vnrd3qs9Zu9Vlrt/qstVt91tqtPmvtVp+1dqvPWrvVZ63d6rPWbvVZa7f6rLVbfdbarT5r7VaftXarz1q71Wet3eqz1m71WWu3+qy1W33W2q0+a+1Wn7V2q89au9Vnrd3qs9Zu9Vlrt/qstVt91tqtPmvtVp+1dqvPWrvVZ63d6rPWbvVZa7f6rLVbfdbarT5r7VaftXarz1q71Wet3eqz1m71WWu3+qy1W33W2q0+a+1Wn7V2q89au9Vnrd3qs9Zu9Vlrt/qstVt91tqtPmvtVp+1dqvPWrvVZ63d6rPWbvVZa7f6rLVbfdbarT5r7VaftXarz1q71Wet3eqz1m71WWu3+qy1W33W2q0+a+1Wn7V2q89au9Vnrd3qs9Zu9Vlrt/qstVt91tqtPmvtVl+0dqsvWrvVF63d6ovWbvXlVrTGlXJVi9Zu9UVrt/qitVt90dqtvmjtVl+0dqsvWrvVF63d6ovWbvVFa7f6orVbfdHarb5o7VZfUm3fvs3b86nn/WDgTG/eroEzfTrfH/X51Ot0MHCmz+eugTN9QncNnOkzumvgTNm3Z+BU25q7Bk71Hu4ZONV7uGfgTBm4a+CiNrCa00q1ublr4GGd1muEYb3Ta4TQbuj+HPP6fJBb3U7+wzv+3s+BY29ZvmLg0G7oioFDu6ErBg7thq4YuKgNHNoNXTFwaDd0xcCh3dAVA4f2TlcMrOa0Ym9evmJgNacVe/vyFQOrOa3YG5ivGFjNacXewnzFwGpOK/Ym5isGVnNasbcxXzGwmtOKvZH5ioHVnFbsrcxXDKzmtGJvZr5iYDWnFXs78xUDqzmt2Ettvx143drfX73ut4OBU72WegZO9aG11sdXr60cDJzqQ6tn4FQfWh0Dx16AesXAqeJhz8Cp4mHPwKnew1t5fO9tPTAesRehXjFwqnjYM3CqeNgzcCqn1TNwKqfVM3Aqp9UxcOylqFcMnMpp9Qycymn1DKzmtGIvR71i4IGd1muIgd3Ta4jgjmhaXg8ylXLyn15HnRp7mekVAwd3RN8NPJfHV8/b8uPAJfZC0ysGDu6I7AcO7ojsBw7uiOwHLmoDB3dEXw68Px+ktoOBg7sn+4FTOa2egVM5rZ6Bczmt84FjLzm9YuBcTqtj4FxOq2Pg6E7rOcJfK+PaycB/7fh4fPny/iTL+jZy0Rs5utu6YOTofuuCkaM7rgtGju65Lhg5uuuyH3mO7rsuGDm687pg5Oje64KR9dzXXPRG1nNfsZcaXzOynvuKvdj4mpH13Ffs5cbXjKznvmIvOL5mZD33FXvJ8TUj67mv2IuOrxlZz33FXo18zch67iv6MuUrRtZzX9EXKl8xsp77ir5U+YqR9dxX9MXKV4ys576iL1e+YmQ99xV9wfIVI+u5r+hLlq8YWc99RV+0fMXIeu4r+rLlK0bWc1/RFy5fMHL0hbxfjtxxC7pEX8l7xci5PrE7rhSW6Etbrxg51yd218i5PrG7Rs6Vl3tG3nPl5a6Rk72Xe0ZO9l7uGTlXXu4aueiNrOe+dj33FX3/9KeRX0MM7KdeQwR3SMt8ez7Isiwn//GdLycq0fdE2w8c3B3ZDxzcG303cMcml+h7ou0HLmoDB3dF9gMH90T2Awd3RPYDB3dP9gOnclodi02i74m2HziV0+oZOJfT6hg4l9PqGLioDZzLaXUMPJLTKrefW4zoO6X7hhjJER0OEd3l7O01RJv/dduwRt/9bD9wdJfz1cDnxn2NvvvZfuDoLsd84KI2cHSXYz5wdJdjPnB0R/TdwKc+do2++9l+4FROq2Pg6Luf7QfO5bQ6Bs7ltDoGzuW0OgYuIw388+9MrNF3OfcNMZQjOhoiuMsp5fUgazn71alaS31887q9HYWe2tvIwX3OFSMHdzoXjBx93/IVIwd3O1eMHNzvXDFycMdzxchFb+TgDumKkYP7qStG1nNf0fctXzGynvuKvm/5ipH13Ff0fctXjKznvqLvW75iZD33FX3f8hUj67mv6PuWrxhZz31F37d8xch67iv6vuUrRtZzX9H3LV8xsp77ir5v+YqR9dxX9H3LV4ys576i71u+YmQ99xV93/IVI+u5r+j7lq8YWc99Rd+3fMXIeu4r+r7lK0bWc1+bnvuKvlX7ipH13Nem576ib9X+buSe3elr9K3aF4wcfd/ytyOfb+9co+9bvmLkVJ/YfSOn+sTuG7nojZwqL/eNnOy93DNysvdyz8ip8nLfyKnyctfI0bc5XzGynvuKvtH508ivIQb2U68hSuwh1vpKbFs7+4+v7Nvjucu+336O8dF3L18xcnCHdMXIwR3SFSMHd0hXjBzcIV0wcvQtzFeMHNwhXTFycId0xcjB/dQVIxe9kfXcV/SNzFeMrOe+om97vmJkOfe1Rd8OfcXIcu5ri74h+oqR5dzXdit6I8u5ry36pugrRpZzX1v0bdFXjKznvqJvjL5iZD33FX1r9BUj67mv6JujrxhZz31F30p9xch67iv6DusrRtZzX9F3WF8xsp77ir7D+oqR9dxX9B3WV4ys576i77C+YmQ99xV9h/UVI+u5r+g7rK8YWc99Rd9hfcXIeu4r+g7rK0bWc1/Rd1hfMbKe+4q+w/qKkfXcV/Qd1leMrOe+ou+wvmJkPfcVfYf1FSPrua/oO6yvGFnPfUXfYX3FyHruK/oO6ytG1nNf0XdYXzGynvuKvsP6ipH13Ff0HdZXjKznvqLvsL5iZD33FX2H9RUj67mv6DusrxhZz31tRW9kPfcVfVP5FSPrua9Nz31teu4r+qby70buWcG/Rd9UfsXIqT6xe5bAbtF3WF8xcqpP7L6RU31id40cfYf1FSOnyst9Iyd7L/eMnOy93DNy0Rs5VV7uG1nPfeXaj9038sDu6zXEwH7qOUT0Hdb7Up8PUpf17D++pd0eX768jfxHjI++w/qKkYM7pCtGDu6Qrhi56I0c3CFdMXJwh3TFyMEd0hUjB3dIV4wc3E/Zj7xH32F9xchy7muPvsP6ipHl3Nd+K3ojy7mvPfoO6ytGlnNfe/Qd1leMrOe+ou+wvmJkPfcVfYf1FSPrua/oO6yvGFnPfUXfYX3FyHruK/oO6ytG1nNf0XdYXzGynvuKvsP6ipH13Ff0HdZXjKznvqLvsL5iZD33FX2H9RUj67mv6DusrxhZz31F32F9xch67iv6DusrRtZzX9F3WF8xsp77ir7D+oqR9dxX9B3WV4ys576i77C+YmQ99xV9h/UVI+u5r+g7rK8YWc99Rd9hfcXIeu4r+g7rK0bWc1/Rd1hfMbKe+4q+w/qKkfXcV/Qd1leMrOe+ou+wvmJkPfcVfbvxlyN3rBTco283vmLkXJ/YHUtt9uh7b68YOdcndtfIuT6xe0bec+XlrpFz5eWukZO9l3tGTvZe7hm56I2cKy93jaznvqLvsL5i5IHd12uIgf3Uc4joe6br9hqi3faT//i22yPFb7ft9b3r8jZwcH9kP3Bwd/TdwHVen9+7nnzv4+d4wQnuo3zhFOAcwwnuzXzhBHdxvnCC+z1fOMGdoS+c4I7TFU70feC+cFK5Xms4OOQPcHDIH+AU4BzDwSF/gIND/gAHh/wBDg75Axwc8iGcGn1nuy8cHPIHODjkD3BwyB/gFOAcw8Ehf4CDQ/4AB4f8AQ4O+QMcHPIxnOh79X3h4JA/wMEhf4Aj+ypft/b316777QCO7Ku8A070VdsXwqmPr11bOYAj+4HcA0f2A7kHjmxl0QOnAOcYjmxl0QNH1uds5fEc23pgAqMvJPeFI1tZ9MCRrSw64ERfh+4LR9Yh98CRdcg9cGQdcg+cApxjOLIOuQcODvkDHBzyBzg45A9wcMjHcKKvrPeFg0P+AAeH/AEODvkDnJIKzjffe3t96217++qyv+HJ5ZHN8eRyyeZ4cvlkczy5nLI5nlxe+Zvvvd+e60/3/U88P7zlTlfL1OjnCEZCmcuHu6LM5dpdUeby+K4oCyitUOqmB3OUuknDHKVuKjFHqZtgzFGSdqxQbqQdM5SkHTOUpB0zlKQdM5QFlFYoSTtmKEk7ZihJO2YoSTtmKEk7Viijn84aCSW+sgvluu9/f/Fa2wHKAkorlLzBzf4PnDe4GUre4FYoc5128kVJX2mGkr7yB5QvPHjFj3gKeD7hEe4K2/Nb1+UIj3D/14NHOBH04BF2+T14hJ17B55k56nM8eg67Lslfnzr9v63Z//UYSc7Z+WKUteNm6MsoLRCqevyzVHqJgJzlLrpwRylbtIwR6mbSoxRtmTnw1xRknbMUJJ2zFCSdsxQFlBaoSTtmKEk7ZihJO2YoSTtmKEk7VihTHYKzhUlaccMJWnHDCVpxwxlAaUVStKOGUrSjhlK0o4ZStKOGUrSjhXKZHdWXVEWUPagPP8TxZbs2KQrSl47Zv8HzmvHCmWy44WuKCnZzFBSspmhpGT7AeULTwHPJzz4v494dAuutj0c73wf9wCPbmnVhUc3EXTh0XX5PXiSHVU0x6PrxrvwyDrs+bZMTzyt/IHnh2KnPBz2ut1eXzu/OexkZxhdURZQWqGUde72KGVdvj1K2URgj1I2PdijlE0a5ih1D1Lao5RNMPYoSTtmKEk7ZigLKK1QknbMUJJ2zFCSdsxQknbMUJJ2rFDqHqS0R0naMUNJ2jFDSdoxQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhVL3IKU9StKOGUrSjhlK0o4ZygJKK5SkHTOUpB0zlKQdM5SkHTOUpB0rlLrHe+1RknbMUJJ2zFCSdsxQFlBaoSTtmKEk7ZihJO1YodS9s/olyvOVarp3Vu1R8trpQtmxcUn3oqU9Sl47Zigp2cxQUrLZoJxvuhctP6F84cErfsSD//uIR7fgmp5fPE/lCE8Bzyc8uomgC4+uy+/Co+vcu/DouvEuPLoOe6rr86nfv/qf1Y3zTfeKoj1KXTdujlLXuZujFHb51igLKK1QCqcHa5TCScMapXAqsUYpnGCsUZJ2rFDqXlG0R0naMUNJ2jFDSdoxQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhVL3eK89StKOGUrSjhlK0o4ZygJKK5SkHTOUpB0zlKQdM5SkHTOUpB0rlLoHj+1RknbMUJJ2zFCSdsxQFlBaoSTtmKEk7ZihJO2YoSTtmKEk7VihFD6kbI6StGOGkrRjhpK0Y4aygNIKJWaoD+XZSrU7SsyQFUrhi5ZfoezYuCR80dIcJa8dM5SUbGYoKdnMUFKy/YDyhQev+BEP/u8THuFrkvPzW8/L7XaAR7e06sKjmwi68Oi6/C48BTyf8Oi68S48ug57mV94ynaAR9c1d+HRdc1deHRdcw8e4auEXXh0XXMXHl3XvLT58dSl1D/w/O9Xl/Z4jnWaXl/7/oMy4euB5igLKK1Q6jp3c5TCLt8apXAisEYpnB6sUQonjW9Qvv3W0Lr8jLIJpxJrlMIJxholaccMJWnHDGUBpRVK0o4ZStLOtyiPfoVa+GitOUrSjhlK3bRT6hPlupz9WuBeHyj39vZZWdYnykn4aK05St20Y45SN+2Yo9RNO+YoCyitUOqmna9Q1vn5nZftAKVu2jFHqZt2zFHqph1zlKQdK5TCB4TNUZJ2+lCuj78Ir/vtACVpxwwlaccMZQGlFUrSjhlK0o4ZStKOGUrSTh/K5w+C2m09QEnasUIpfEDYHCVpxwwlaccMJWnHDGUBpRVK3bSzbo+ffM3bbTpBec8yD2N5/3++/VrMur/B1M07F8DUTTwXwNTNPBfA1E0938Gcp/J4kLnuf8D8368+X4s3CZ8ddgavm6icwevmL2fwumnNGXwBvA94kqATeFKjE3gSphN40qgTeJKrD3jhE9LO4EmuTuBJrk7gSa5O4AvgfcCTXJ3Ak1ydwJNcncCTXJ3Ak1x9wAufA3cGj4+/APz5zddJ+KizM3hcjdNHDa7GCTyuxgf8hqtxAk8f7wSePv5fg3/BxJsbwizAtINJF94Hc7ltjwdZyhFM+m1DmKQ7Q5gkNkOYpDA7mDvJyhAmaakT5t4eD1LW2x8wf/jqvTzR1/K+9La9oScvuaEnXbmhL6D3Qk9yc0NPznNDTyp0Q0+GdENP4vRCX8mnbuhJs27oSbNu6EmzbugL6L3Qk2bd0JNm3dCTZt3Qk2bd0JNmvdA30qwbetKsG3rSrBt60qwb+gJ6L/SkWTf0pFk39KRZN/SkWTf0pFkn9PONNOuGnjTrhp4064aeNOuGvoDeCz1p1g09adYNPWnWDT1p1gv9hLm8AP35MrN5wlo6gecVewH48w1D88QL1gk8r1cn8FTFPuBnimIn8NTE/xr8Cybe3BAmfrsP5vr81tO615OPhNIeT71Ob995fv9IKID3AU+N6wSehOkEnoTpBJ6E6QSehOkDfiFhXgB+LY9vva7LAXgSphN40qgTeJKrE/gCeB/wJFcn8CRXJ/Ak12vBb7cD8CRXJ/AkVx/wheTaB357EdnW6QT8tJbn8Z113d++99sv2xWyqxt60qsbevKrG/oCei/0ZFg39KTYS9Cv7WVE5wP05Fg39CRZN/RkWS/0K2nWDT1p1g09afYK9KXdnujrn+byH1VtK8l3CJkKMo0gE4n6Cpm2/fXVtRy8b0jUbuhJ1G7oSdRu6EnUXug3ErUbehK1G3oS9SXo63MF0dbaAXpSshv6Anov9KRZN/SkWTf0pFk39KRZN/Sk2UvQT49lf9M+/enr/1HBvJN8h5CJlDyETCTqK2SqzyVs0/2Zfn7f7CRqN/QF9F7oSdRu6EnUbuhJ1G7oSdRu6EnUl6Cf1if6uf6MvpKS3dCTfN3Qk2bd0JNm3dAX0HuhJ826oSfNXoH+wzmyf1QwV5LvEDKRkoeQSTdRb8vzqe8/zT+TaW2vH/hP7e05lp++9/781vXP53iCb7p52hm8bpp2Bq+bpZ3B6yZpM/AvmAWYdjB10+4FMHXz6wUwdVPmBTB1s+AFMElsZjCXGynMECbJqg/mtj13PW11/gPm/371vj6eem/vv5/7xp1g5cOdXHUB97lMz2+9/Bhol1sBvA948poTeLKdE3hyoBN4MqMTePLlFeBPa/plIos6gSe39oHfb8/fotqn+q/z00Ru9eFObr2Ae8erdSqA9wFPbnUCT251Ak9udQJPbnUCT269Avx5fJrJrU7gya2d4F+/NL+vZ79QeZ6fZnKrD3dy6wXcO16tcwG8D3hyqxN4cqsTeHKrE3hyqxN4cusV4M/j00JudQJPbu0EX59X7/e2/+v8tJBbfbiTWy/g3vFqXQrgfcCTW53Ak1udwJNbncCTW53Ak1uvAH8enwq51Qk8ufVr8PVW/gD/gkkYNYRJwjSEWYDZBbOuTyJ1K//5tzVJITT6cCczXsC9w0EXMqMTeDKjE3gyow/4lczoBJ7M6ASefHkF+POWZCWLOoEvgO8DP9cX+PUEfFseywba9vYcbf9HWWsl48bXiDwcXyOic3yNSNnxNSKQh9doI7vH14iYH18jGoH4GlEexNeooFF4jegZ+jRq03OXZFvOdkl2cKc78OFOH3AB944fs2yEfCfwJHcf8Dtx3Ak8GdsJPMHZCTxp+Arw5z9K3wvgfcCTW53AE1ydwJNcO8Gv+xP86V/zffrqF3qyqxt60usF6Ou8Pp+jnjzH8TM/Raok3QFEIhUPIBIJegCRSNsDiFQQKb5IpPgBRCLxDyAS7cAAItEjDCASjUN8kRqNwwAi0TgMIBKNwwAi0TgMIFJBpPgi0TgMIBKNwwAi0TgMIBKNwwAi0TiEF6ncaBwGEInGYQCRaBwGEInGYQCRCiLFF4nGYQCRaBwGEInGIb5IEznJWaR1e/zh0brfDkQiJw0gUkEkZ5Hq42vX93Uyf4iEuxtAJNzdACLh7gYQiZ8nDSASP0+KL9JMTnIWaSuPx9jWgzA7k5MGEImfJw0gEj9PGkCkgkjxRaJxGEAkGocBRKJxGEAkGocBRKJxiC/SQuMwgEg0DgOIROMwgEg0DleI9MVztDL//bVtfbtqtNc3kQoixReJxmEAkWgcBhCJxmEAkWgcBhCJxiG+SIXGwVuk5zdub79m/KdINA4DiETjMIBINA4DiFQQKb5INA4DiETjMIBINA6/KtILPC2CE3iaAR/wK2nfCTwJ3gk8qdwJPEnbCXzRAP8aWCSJvgYWSXWvgUUS0mtgkWTyGlgkETwH3kSc+Gvg4A64PV/a9//3vp4MPO3Px97ng4GDO0/7gYM7vu8GNt65thXgHMMJ7uB84QR3e75wgjtDXzjBXaQvnOCO0xXOHtyd+sJJ5WSt4aRyvdZwcMgf4BTgHMPBIX+Ag0P+AAeH/AEODvkDHBzyMZyKQ/4AB4f8AQ4O+QMcHPIHOAU4x3BwyB/g4JA/wMEhf4CDQ/4AB4d8DKfhkD/AwSF/gIND/gAHh/wBTgHOMRwc8gc4OOQPcHDIH+DgkD/AwSEfwllvOOQPcHDIH+DgkD/AwSF/gFOAcwwHh/wBDg75Axwc8gc4OOQPcHDIx3AmHPIHODjkD3BwyB/g4JA/wCnAOYaDQ/4AB4f8AQ4O+QMcHPIHODjkYzjRL2tfB2fd2t9fu75t1vwTjqzP6YEj+7Za6+Nr11YO4Mi+rXrgyL6teuDIvq064ES/b+oLR7bP6YEj63PO72iu0e9o+sIpwDmGI9vn9MCRdcg9cGQdcg8cWYfcA0fWIXfAiX6PzxeOrEPugYND/gAHh/wBTgHOMRwc8gc4OOQPcHDIH+DgkD/AwSEfw4l+w+pLON9873V93POe1rfvfP8R+U8z7s8R6xHKXH7aFWUu9+2KMpdXd0VZQPm/KF94cnl7czy53L05nlz+3hxPLodvjieXx7fGE/0+ljcenPtHPLpufJsfv/k5bW8z/mwhO+J2sqterigLKHtQzuUBZN6WA5S6zt0cpa7LN0epmwjMUeqmB3OUuknDGmWyu2iuKHUTzHcoz1veZDfXXFEKp51tfaLc679PO8nuubmiFE4736Dsee0Ipx1rlMJpxxqlcNqxRimcdoxRJrtx54pSOO1YoxROO1+hPE87ya7tuaIsoLRCSdoxQ6mbdvbb9vjW+3o7QTntTyD7fIBSN+2Yo9RNO1+hNF4Vl+xa4SjYk91BHAa7buJyxa6bzlyx6yY5V+wF7B7YdROiK3bSpAt2kqcLdlKqC3ZSqgP2Ldkt0mGwk1JdsJNSXbCTUl2wF7B7YCelumAnpbpgJ6W6YCelumAnpXpgT3YPeBjspFQX7KRUF+ykVBfsBewe2EmpLthJqS7YSaku2EmpLthJqR7YZ1KqC3ZSqgt2UqoLdlKqC/YCdg/spFQX7KRUF+ykVBfspFQX7KRUD+wLKdUFOynVBTsp1QU7KdUFewG7B3ZSqgt2UqoLdny7OfZ1e+wzX/fbz9gLvt0FO07GHnt9fO3aygH2AnYP7DgZF+w4GRfs9O0u2OnbXbDj282xnx9x2VZ8uwt2+nYX7PTtLthJqS7YC9g9sJNSXbCTUl2wk1JdsJNSXbCTUj2wb6RUF+ykVBfspFQX7KRUF+wF7B7YSaku2EmpLthJqX3Yv/jO87zcXjze7uLe9q++80skMu0AIpGA44u0k5cHEIl0/asivcCTr53Ak7CdwBfA+4AnZTuBJ2c7gSdpO4EnPTuBJxH7gK+kXCfwJNcLwNcn+OUvBm/gf3iO9VYez7Gur6++P9SbTOTcIWQiFTvLZLyCoBYEzSUoKT6ZoLQDyQSldUgmKG1GMkFpSXIJ2mhfkglKq5NMUPqfZILSFCUTtCBoLkFpipIJSlOUTFCaomSC0hQlE5SmKJWg+42mKJmgNEXJBKUpSiYoTVEyQQuC5hKUpiiZoDRFyQSlKUomKE1RMkFpinIJOtEUJROUpiiZoAVBxxH0/ILkPpFDkwmKyx1J0NPLaPuEy80l6IzLTSYoLjeZoPw8NJmg/Dw0maAFQccR9HxD+z6TQ5MJys9DkwnKz0OTCUpTlExQmqJcgi40RckEpSlKJihNUTJBaYqSCVoQNJegNEXJBKUpSiYoTZG3oN888/r84mmdf15Svi90RekkpS3KJmmhL0onKY1ROknpjNJJSmuUTtKCpINKuiwHktIcpZOU7iidpLRHQ0m6rE9J38rDPyWlPUonKe1RNklX2qN0ktIepZOU9iidpLRH6SQtSDqopOt6ICntUTpJaY/SSUp7FFbSl0j0QQOIRMNjL9Iy1adIazkRaVpv5fWBd/Bzyo3WZgiZaGKcZTLehLnRwyQTlBYmmaAFQXMJSgOTTFD6l2SC0r4kE5SmJpmgtDq5BN3pf5IJSlOUTFCaomSC0hQlE7QgaC5BaYqSCUpTlExQmqJkgtIUJROUpiiXoJWmKJmgNEXJBKUpSiYoTVEyQQuC5hKUpiiZoDRFyQSlKUomKE1RMkFpinIJ2sihAwm6bu3vr13324Gg5NBkguJyRxL0/KB5w+UmExSXm0xQXG4qQeuNn4cmE5SfhyYTlBw6kKDnlwHrjRyaTNCCoLkE5eehyQSlKUomKE1RMkFpipIJSlOUS9CJpiiZoDRFyQSlKUomKE1RMkELguYSlKbIW9Bvnrnj5nWd6IrSSUpblE5S+qJ0ktIYZZN0pjNKJymtUTpJ6Y1GlXRZDiSlOUonaUHSbJLSHg0l6fnN6zrTHqWTlPYonaS0R+kkpT3KJulCe5ROUtqjdJLSHo0q6boeSEp7lE7SgqTZJKU9CivpSyT6oAFEouG5QKR1e4rUthOR2vzY9tX++m7Pj7v6JhKdzQAi0cI4i2S7BbMWOphkgtLAJBOU/iWZoLQvyQQtCJpLUJqXZILS0iQTlEYnmaC0P8kEpSnKJehKU5RMUJqiZILSFCUTlKYomaAFQXMJSlOUTFCaomSC0hQlE5SmKJmgNEW5BN1oipIJSlOUTFCaomSC0hQlE7QgaC5BaYqSCUpTlExQmqJcgu7k0IEEXbfHX5+t++1AUHJoMkELgg4k6Pkx8x2Xm0xQXG4yQXG5yQTl56HJBOXnobkEreTQgQTtuApYyaHJBOXnockE5eehyQQtCJpLUJqiZILSFCUTlKYomaA0RckEpSnKJWijKUomKE1RMkFpirwF/eI7tzL//bXtjysLbxutG01RMkELguYSlKYomaA0RckEpSlKJihNUTJBaYpGEnTdH4K+/eb8u6DtRlOUTFCaomSC0hQlE5SmKJmgBUFzCUpTlExQmqKwgr5Eov0ZQCQanQtEas871WWaTkSa5215ffX8x1e/ZKKnGUGmifbFW6byQH3X6+ePvIlGZQCRaEkGEInmYwCRCiLFF4mGYgCRaB28Rdqf8OpBoJ1oHQYQidZhAJHoHOKLNNM4DCASjcMAItE4DCASjcMAIhVEii8SjcMAItE4DCASjcMAItE4/EuRXijpBaxQLqR3M5RkbDOUJGEzlORVM5QFlFYoyX5mKEloZijJUWYoSTtmKEk7VigLaecHlC88wglmn5946n7yX9o0rY9uaJpqPfhvTTjD2MMUTjH2MAsw7WAKJxl7mMJZxh6mcJqxhymcZ+xhCicac5ircKaxh0kCMoRJAjKESQIyhFmAaQeTBGQIkwRkCJMEZAiTBGQIkwRkB3MjARnCJAEZwiQBGcIkARnCLMC0g0kCMoRJAjKESQIyhEkCMoRJArKDuZOADGGSgAxhkoAMYZKADGEWYNrBJAEZwiQBGcIkARnCJAEZwiQB2cGsJCBDmCQgQ5gkIEOYJCBDmAWYdjBJQIYwSUCGMElAhjBJQIYwSUB2MBsJyBAmCcgQJgnIECYJyBBmAaYdTBKQIUwSkCFMEpAhTBKQIUwSkBXM5XYjARnCJAEZwiQBGcIkARnCLMC0g0kCMoRJAjKESQIyhEkCMoRJArKDOZGADGGSgAxhkoAMYZKADGEWYNrBJAEZwiQBGcIkARnCJAEZwiQB2cGcSUCGMElAhjBJQIYwSUCGMAsw7WCSgAxhkoAMYZKADGGSgAxhkoDsYC4kIEOYJCBDmCQgQ5gkIEOYBZh2MElAhjBJQIYwSUCGMElAhjBJQHYwCwnIECYJyBAmCcgQJgnIEGYBph1MEpAhTBKQIUwSkCFMEpAhTBKQHcyVBGQIkwRkCJMEZAiTBGQIswDTDiYJyBAmCcgQJgnIECYJyBAmCcgO5kYCMoRJAjKESQIyhEkCMoRZgGkHkwRkCJMEZAiTBGQIkwRkCJMEZAdzJwEZwiQBGcIkARnCJAEZwizAtINJAjKESQIyhEkCMoRJAjKESQKyg1lJQIYwSUCGMElAhjBJQIYwCzDtYJKADGGSgAxhkoAMYZKADGGSgOxgNhKQIUwSkCFMEpAhTBKQIcwCTDuYJCBDmCIJ6DWwSEp5DSySJF4Di7j9x8D3ydQGFnHNr4FFnO1rYBH3+Rq4qA0s4uJeA4s5rUnlPvxr4IGd1muIgd3Tc4iRb5a/hhjY5byGGNi5vIYY2I28higZhhjYNbyGGNgJvIYY+O3+GiLDG3vkW7/PIUa+sfsaIsMbe+Sbsq8hMryxR76h+hoiwxt75JuhryEyvLFHvpH5GiLDG3vkm5CvIaK/sdv+eJD7Tz3mP4b4Zz/xncJfTLxg5Ohu4IKRi97I0Z3GBSNH9yUXjBzdxVwwcnTPc8HI0R2S/cjhL8xdMLKe+wp/re2CkfXcV/jLZxeMrOe+wl8Ru2BkPfcV/iLXBSPrua/w160uGFnPfYW/FHXByHruK/zVpQtG1nNf4S8YXTCynvsKfw3ogpH13Ff4yzoXjKznvsJfqblgZD33Ff7iywUj67mv8NdTLhhZz32Fv0Rywch67iv8VY8LRtZzX+EvZFwwsp77Cn9t4oKR9dxX+MsNF4ys577CX0G4YGQ99xX+osAFI+u5r/Db+S8YWc99hd90f8HIeu4r/Nb4C0bWc1/hN7BfMLKe+wq/zfyCkfXcV/jN4BeMrOe+wm/ZvmBkPfcVfmP1BSPrua/wW6svGFnOfc3hN1dfMLKc+5rDb6++YGQ59zXfit7Icu5rDr/F+oKR5dzXHH6T9QUj67mv8FuyLxhZz32F38B9wch67iv8du8LRtZzX+E3h18wsp77Cr+V/IKR9dxX+I3nF4ys577Cb1O/YGQ99xV+U/sFI+u5r/Bb4C8YWc99hd8wf8HIeu4r/Pb6C0bWc196u+5nvV33s96u+1lv1/2st+t+1tt1P+vtup/1dt3PervuZ71d97PervtZb9f9rLfrftbbdT/r7bqf9Xbdz3q77me9Xfez3q77WW/X/ay3637W23U/6+26n/V23c96u+5nvV33s96u+1lv1/2st+t+1tt1P+vtup/1dt3PervuZ71d97PervtZb9f9rLfrftbbdT/r7bqf9Xbdz3q77me9Xfez3q77OdKu+9dDBfJHr4cK5GBeDxXIY7weKpALeD5UpK3or4cK9CZ9PVSgd93roQK9jV4PFeh98XqoiJ/okTZcvx4q4id6pC3Rr4eK+IkeadPy66EifqJH2lb8eqiIn+iRNv6+HiriJ3qkrbmvh4r4iR5p8+zroQJ+oi+Rtre+HirgJ/oSaQPq66ECfqIvt4Cf6EukPZ+vhwr4ib5E2pX5eqiAn+jL1fsmn//Q1VseX//Q9Fv/0Pxb/9DyW/9Q+a1/aP2tf2j7rX9o/61/qP7WP/Rbnwzzb30yzL/1yTD/1ifD/FufDPNvfTLMv/XJMP/WJ8P8W58M8299Msy/9cmw/NYnw/JbnwzLb30yLL/1ybD81ifD8lufDMtvfTIsv/XJsPzWJ8PyW58M5bc+GcpvfTKU3/pkKL/1yVB+65Oh/NYnQ/mtT4byW58M5bc+GcpvfTKsv/XJsP7WJ8P6W58M6299Mpj8tei8l+c/VNsf/9A/+622xeQvOi94rC3mY+0xH6vGfKwW8rFM/grwgseaYj7WHPOxlpiPFfNTfov5Kb/F/JTfYn7KbzE/5beYn/J7zE/5Pean/B7zU36P+Sm/x/yU32N+yu8xP+X3mJ/ye8xP+T3mp3yN+SlfY37K15if8jXmp3yN+SlfY37K15if8jXmp3yN+SlfY37Kt5if8i3mp3yL+SnfYn7Kt5if8i3mp3yL+SnfYn7Kt5if8i3kp3y5hfyUL7eQn/LlFvJTvtxCfsqXW8hP+XIL+SlfbiE/5cst5Kd8uYX8lC+3mJ/yU8xP+Snmp/wU81N+ivkpP8X8lJ9ifspPMT/lp5if8lPMT/kp5qf8HPNTfo75KT/H/JSfY37KzzE/5eeYn/JzzE/5Oean/BzzU36O+Sm/xPyUX2J+yi8xP+WXmJ/yS8xP+SXmp/wS81N+ifkpv8T8lF9ifsqXmJ/yJeanfIn5KV9ifsqXmJ/yJeanfIn5KV9ifsqXmJ/yJean/BrzU36N+Sm/xvyUX2N+ysf829cS829fS8y/fS0x//a1xPzb1xLzb19LzL99LTH/9rXE/NvXEvNvX0vMv30tMf/2tcT829cS829fS8y/fS0x//a1xPzb1xLzb19LzL99LTH/9rXE/NvXEvNvX0vMv30tMf/2tcT829cS829fS8y/fS0x//a1xPzb1xLzb19LzL99LTH/9rXE/NvXEvNvX0vMv30tMf/2tcT829cS829fS8y/fS0x//a1xPzb1xLzb19LzL99LTH/9nW7eon0/371lxfCl+X5IG1fX0/y44Xwr773ftse33pfb6+vXqd/+Z3nZX1853lp2+urb/tP33len9+5nnzndWt/f+263w4EDXRIDUEtBA10hA5BLQQtCJpL0EDHDxHUQtBAhyMR1ELQQEc3EdRC0EAHSxHUQtBA57sR1EDQq4/dIOhvC0pTlExQmqKBBN1u+99fu83zf34WlKYomaAFQXMJSlOUTFCaopFMUXsJuhwISlOUTFCaomSC0hTlEnSjKUomKE1RMkFpikYStD6+dm3lQFCaomSCFgTNJShNUTJBaYqSCUpTlExQmqJkgtIU5RJ0pylKJihNUTJBaYqSCUpTlEzQgqC5BKUpSiYoTVEyQWmKkglKU5RMUJqiXIJWmqJkgtIUJROUpiiZoDRFyQQtCJpLUJqiZILSFCUTlKYomaA0RckEpSnKJWijKUomKE1RMkFpipIJSlOUTNCCoLkEpSlKJihNUTJBaYqSCUpTlExQmqJUgu43mqJkgpJDLxB0qk9B12Ip6OlG6/1WEDSXoOTQZIKSQ5MJSg5NJig5NJmg5NBcgk7k0GSC8hsLyQTlNxaSCUpTlEzQgqDjCHp+iGefaIqSCUpTlExQmqJkgtIUjWSKTs987BNNUS5BZ5qiZILSFCUTlKYomaA0RckELQg6kKDnv/U30xQlE5SmKJmgNEXJBKUpSiYoTVEuQReaomSC0hQlE5SmKJmgNEXJBC0ImktQmqJkgtIUJROUpiiZoDRFyQSlKcolaKEpSiYoTVEyQWmKkglKU5RM0IKguQSlKUomKE1RMkFpipIJSlOUTFCaolyCrjRFyQSlKUomKE1RMkFpipIJWhA0l6A0RckEpSlKJihNUTJBaYqSCUpTlEvQjaYomaA0RckEpSlKJig51F7Qud6egk6mx+zON1pv5NBkgpJDkwlKDk0mKDk0l6A7OTSZoOTQZIKSQ5MJym8sJBO0IGguQWmKkglKUzSQoB2HeHaaomSC0hQlE5SmKJeglaZoJFN0fuaj0hQlE5SmKJmgNEXJBC0ImktQmqJkgtIUjSTo+W/9VZqiZILSFCUTlKYol6CNpiiZoDRFyQSlKUomKE1RMkELguYSlKYomaA0RckEpSlKJihNUTJBaYpSCVpvNEXJBKUpSiYoTVEyQWmKkglaEDSXoDRFyQSlKUomKE1RMkFpipIJSlOUS9CJpiiZoDRFyQSlKUomKE1RMkELguYSlKYomaA0RckEpSlKJihNUTJBaYpyCTrTFCUTlKYomaA0RckEpSlKJmhB0FyCkkP7BDXdO11n0qILdjKdB/aF5OWCnXzkgp0U44KdrOGCvYDdAzs/4XXBzs9hXbCTUl2wk1LNsZ8f1KgLKdUDeyGlumAnpbpgJ6Xav1JP18jXQkp1wV7A7oGdlOqCnZTqgp2U6oKdlGqP/fw3Bwop1QP7Skp1wU5KdcFOSnXBTkp1wV7A7oGdlOqCnZTqgp2U6oKdlOqCnZTqgX0jpbpgJ6W6YCelumAnpbpgL2D3wE5KdcFOSnXBTkp1wU5KdcFOSvXAvpNSXbCTUl2wk1JdsJNSXbAXsHtgJ6W6YCelumAnpbpgJ6W6YCelemCvpFQX7KRUF+ykVBfspFQX7AXsHthJqS7YSaku2HP5dtsdRy2XuzaGk8sDG8PJ5VSN4eTyk8ZwCnCO4eTyZsZwcjkoYzi52nhjOLk6c2M4OORDOO0m65DP1+i1m6xD7oEj65B74Mg65B44RfYD+XThVbvpOuQOOLoOuQOOrkPugKPrkDvg6DrkcziTbod8+tOHNul2yB1wdDvkDji6HXIHnAKcYzi6DrkDjq5D7oCj65A74Og65A44ug75HM6MQ/4AB4f8AQ4O+QMcHPIHOAU4x3BwyB/g4JA/wMEhf4CDQ/4AB4d8DGfBIX+Ag0P+AAeH/AEODvkDnAKcYzg45A9wcMgf4OCQP8DBIX+Ag0M+hpPsPrsxHBzyBzg45A9wcMgf4BTgHMPBIX+Ag0P+AAeH/AEODvkYTvQ7vHWrLzi3/QzOF9973p7c561ur68u+09P0tbHry1Prb0/x/JvRTr/i8HoV3sR6S+Rgvs+RPpLpIJI8UUK7oMR6S+RgvtxRPpLpOC5AJH+Eil4PkGkv0QK/pMERLqLFP1KMiL9JRKNwwAi0Tg4i9Sx1CX6vWZE+kukgkjxRaJxGEAkGgdv43C+uiX6nWlE+kskGocBRKJxiC9S9IvXiPSXSDQOA4hE4+At0vlvC0W/vY1If4lUECm+SDQOA4hE4zCASDQOA4hE4zCASDQO8UWKfr0ckf4Sicbh/8QXicZhAJFoHAYQqSBSfJFoHAYQicZhAJFoHAYQicZhAJFoHOKL1GgcBhCJxmEAkWgcBhCJxmEAkQoixReJxmEAkWgcBhCJxmEAkWgcBhCJxiG6SOV2o3EYQCQahwFEonEYQCQahwFEKogUXyQahwFEonEYQCQahwFEonEYQCQah/giTTQOA4ikm5PW7fYU6TadibTsjwWPU1nfNjyuP331uj8UXevbc9wFfYEvgPcBr5tnnMHrZhRn8Lq5wxm8bpa4EPz2fI4/Fh/9AV43H/iCn3U9vzN43Z8cOoPX/WngleBv7Qm+HIAnuTqBL4D3AU9ydQJPcnUCT3J1Ak9yvQT841tvt+0APMnVB/xCcnUCT3J1Ak9ydQJPcnUCXwDvA57k6gSe5OoEnuTqBJ7k6gSe5OoDvpBcncCTXJ3Ak1ydwJNcncAXwPuAJ7k6gSe5OoEnuTqBJ7k6gSe5+oBfSa5O4EmuTuBJrk7gSa5O4AvgfcCTXJ3Ak1ydwJNcncCTXJ3Ak1x9wG8kVyfwJFcn8CRXJ/AkVyfwBfA+4EmuTuBJrk7g8fF94OepPB5krvsJ+I4NTTs+3gk8Pt4JPD7eCTw+3gl8Abw9+I4lEjs+3gk8Pt4JPD+BcgLPT6CcwJNcfcBXkusl4E+7mkpydQJPcnUCT3J1Al8A7wOe5OoEnuTqBJ7k6gSe5OoEnuTqA76RXJ3Ak1ydwJNcncCTXJ3AF8D7gCe5OoEnuTqBJ7k6gSe5OoEnubqAvxMGvA94kqsTeJKrE3iSqxP4Angf8CRXJ/AkVyfwJFcn8CRXJ/AkVx/wE8nVCTzJ1Qk8ydUJPMnVCXwBvA94kqsTeJKrE3iSqxN4kqsP+FnXx091fT71+1f/CP58H8c06zpzc5S6XtscZQGlFUpdP2yOUtfhfoVye37nbV4OUOp6VnOUui7UHKXuT0SsUS66P+P4DuXpcplpIe2YoSTtmKEk7ZihLKC0QknaMUNJ2ulEedpXLqQdM5SkHTOUpB0rlIW0Y4aStGOGkrRjhpK0Y4aygNIKJWnHDCVpxwwlaccMJWnHDCVpxwrlStoxQ0naMUNJ2jFDSdoxQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhXIj7ZihJO2YoSTtmKEk7ZihLKC0QknaMUNJ2jFDSdoxQ0naMUNJ2rFCuZN2zFCSdsxQknbMUJJ2zFAWUFqh1PWVt+Ux43xr5QRlx5aCXddXmqPU9ZXWKKuurzRHqesrzVHq+sqvUHYsfKi6vtIcZQGlFUrdFt0cpW6L/h3K8z+tr6QdM5SkHTOUpB0rlI20Y4aStGOGkrTTifK0r2ykHTOUBZRWKEk7ZihJO2YoSTtmKEk7ZihJO0Yo5xtpxwwlaccMJWnHDCVpxwxlAaUVStKOGUrSjhlK0o4ZStKOGUrSjhVK4evt5ihJO2YoSTtmKEk7ZigLKK1QknbMUJJ2zFCSdsxQknbMUJJ2rFDOpB0zlKQdM5SkHTOUpB0zlAWUVihJO2YoSTtmKEk7ZihJO2YoSTtWKIWv1pujlPWVU63z41u3Uk9Qnm8pmHXvg9ujlPWV9ihlfaU9SllfaY9S1ld+h/J84cOsex/cHKXufXB7lLItuj1K2Rb9S5Snf1o/694Ht0dZQGmFkrRjhpK0Y4aStGOGkrTTifK0r9S9D26OUvc+uD1K0o4ZStKOGUrSjhnKAkorlKQdM5SkHTOUpB0zlKQdM5SkHSuUuvfB7VGSdsxQknbMUJJ2zFAWUFqhJO2YoSTtmKEk7ZihJO2YoSTtWKHUvQ9uj5K0Y4aStGOGkrRjhrKA0golaccMJWnHDCVpxwwlaccMJWnHCqXu1Xp7lKQdM5SkHTOUpB0zlAWUVihJO2YoSTtmKHV95X7bHt9639sJyo4tBbr3we1R6vpKc5S6vtIcpa6vNEdZQNmDsuPPRXXvg9uj1PWV5ih1W3RzlLotujlK0o4RykX3Pvi3KM8y+KJ7H9weJWnHDCVpxwxlAaUVStKOGUrSjhlK0o4ZStKOGUrSjhVK3fvg9ihJO2YoSTtmKEk7ZigLKK1QknbMUJJ2zFCSdsxQknbMUJJ2rFDq3ge3R0naMUNJ2jFDSdoxQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhVL3Prg9StKOGUrSjhlK0o4ZygJKK5SkHTOUpB0zlKQdM5SkHSuUye6Dz+vze9eT771uj7/EWffbH1/7gpPLKRrDyeX9jOEU4BzDyeXPjOHkclzGcHJ5KGM4uVyRMZxcra4tnGQXqI3h4JA/wJF1yNvtsYpnm+cDOLIOuQdOAc4xHFmH3ANH1yG3F5zlAI6uQ+6Ao+uQO+DoOuRzOMmuFhvD0XXIHXB0O+T6+Nq1lQM4uh1yB5wCnGM4uh1yBxxdh9wBR9chd8DRdcgdcHQd8jmcZJdujeHoOuQOODjkD3BwyB/gFOAcw8Ehf4CDQ/4AB4f8AQ4O+QMcHPIxnGTXUY3h4JA/wMEhf4CDQ/4ApwDnGA4O+QMcHPIHODjkD3BwyB/g4JCP4SS782oMB4f8AQ4O+QMcHPIHOAU4x3BwyB/g4JA/wMEhf4CDQ/4AB4d8CKckuw1qDCe4z9mXF5y6rCdwptv8XPVxm/eDkYveyME9yRUjB3caV4wc3D9cMXJwV/DtyGt5+/LT717m51ev0wGg4M7AHVD0W3r+gIJ3aP6Agvdo/oCSeUx7QAVAnwEl86/fAPom8B0/9QtlMl/siTKZ3/ZEKezjrVEKO35jlNEvz42EUjhFWKMUzhvWKIWTiTXKAkorlKQdM5SkHTOUpB0zlKQdM5SkHSuU0S/PjYSStGOGkrRjhpK0Y4aygNIKJWnHDCVpxwwlaccMJWnHDCVpxwplIe2YoSTtmKEk7ZihJO2YoSygtEJJ2jFDSdoxQ0nasUIZ/fRdFJTnh/JK9EN5I6HktdOH8vwvZqOfUhsJJa8dM5SUbGYoKdmsUEY/ATcSSnxlF8qtPJ56Ww8sevTzciOhpGQzQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhTL6Ob+RUJJ2zFCSdsxQknbMUBZhlN88yTLfHt95md++empvMJXzjjlM5cRjDlM585jDVE495jCVc481zOhnGseCqZx9voK5PjcHLtt0AFM5/ZjDVM4/5jALMO1gkoAMYZKADGGSgAxhkoD+Acx6AJMEZAcz+hnOsWCSgDphtlecbAdxMvqZz7FgkoAMYRZg2sEkARnCJAEZwiQBGcIkAf3wJC88ZJoPeNbop1C98ZA7PuIhSXzEQzb4iKeA5xOeZP79/Krbmu1Eb8/Iybxwz8jJHGvPyMlcaMfI2c7o9oyczC32jJzMAfaMnMzV9Yxc9EbWc1/ZDsH2jKznvrIdVu0ZWc99ZTtU2jOynvvKdvizZ2Q995XtkGbPyHruK9thyp6R9dxXtkOPPSPrua9shxN7RtZzX9kOEfaMrOe+sh326xlZz31lO5TXM7Ke+8p2eK5nZD33le2QW8/Ieu4r22G0npH13Fe2Q2M9I+u5r2yHu3pG1nNfRc99FT33teq5r2wX3npG1nNfq577WoveyHruK9v9up6R9dxXtntwPSPrua9s99V6RtZzX9nulfWMrOe+st3/6hlZz31lu6fVM7Ke+8p2n6pnZD33le3eU8/Ieu4r2/2knpH13Fe2e0Q9I+u5r2y3fXpG1nNf2e7k9Iys576y3ZzpGVnPfWW739Izsp77ynYLpWdkPfeV7a5Iz8h67ivbjY6ekfXcV7Z7Fz0j67mvbLcjekbWc1/Z7jD0jKznvrLdNOgZWc99ZbsP0DOynPvasu3x7xlZzn1t2fbt94ws5762W9EbWc59bXq77je9Xfeb3q77TW/X/aa3637T23W/6e263/R23W96u+43vV33m96u+y3bFvSvzm3N6/NJ6snXrlv7+2vX/fYzymzb1T1RKl9YNEapfI3RGKXy5UZjlAWUViiVL7obo1S+526MUvmauzFK5VvuxihJO1Yos10zuArl/ecbf3/t3YofoCTtmKEk7ZihJO2YoSyg7HrttBfK5QAlaccMJWnHDCVpxwwlaccMJWnHCmW26yGXoayPr11bOUBJ2jFDSdoxQ0naMUNZQGmFkrRjhpK0Y4aStGOGkrRjhpK0Y4Uy27UeT5SkHTOUpB0zlKQdM5QFlFYoSTtmKEk7ZihJO2YoSTtmKEk7ViizXcfyREnaMUNJ2jFDSdoxQ1lAaYWStGOGkrRjhpK0Y4aStGOGkrRjhTLbNTpPlKQdM5SkHTOUpB0zlAWUVihJO2YoSTtmKEk7ZihJO1Yoo9/vW+v2fJCttVOU8+vL5/1g5OD+74qRg/u0K0YueiMH9z1XjBzcn3w78jdvgq6dm9Gv/fkDCu4l/AEF70PdAUW/O+gPKJnHtAeUzJHaA0rmX68KfMdP/UJZQGmFMpnf9kQp7OOtUQo7fmuUwtnAGqVwirBFuUe/tDkSSuFkYo1SOMNYoyTtmKEsoLRCSdoxQ0naMUNJ2jFDSdoxQ0nasUIZ/bLtSChJO2YoSTtmKEk7ZigLKK1QknbMUJJ2zFCSdsxQknbMUJJ2rFBGv+s9EkrSjhlK0o4ZStKOGcoCSiuUpB0zlKQdM5SkHTOUpB0zlKQdK5TRz/5GQXl+In2PfvZ3JJS8dvpQnm4X2KMfWB0JJa8dK5TRD6yOhJKSzQwlJZsZSnxlF8qtPJ56Ww8sevQDqyOhpGQzQ0nJZoaStGOGkrRjhpK0Y4Uy+oHVkVCSdsxQknbMUJJ2zFAWUFqhJO2YoVROO188yV+naP/+4r9OXr3N2N5gKucdc5jKicccpnLmsYYZ/dDqWDCVc485TOXkYw5TOft8BbPWJ8y2H8AswLSDqZx/zGGSgAxhkoAMYZKADGGSgOxgRj++GhHmfisHMElAhjBJQIYwSUB9MPfnOamyLwdxMvoR1rFgkoAMYZKADGGSgAxhkoAMYZKA7GBWElAnzG16wnz/q8g/YJKADGGSgAxhkoAMYRZg2sEkARnCJAEZwiQB/fAkLzxkmo94SCmf8CgfhO7BQ5L4iIds8BEPbv8jnpILz/lx8D3bGeaekZN54Z6RkznWnpGTudCekZM5y/ORa7Zzvj0jJ3OAPSMnc3U9Iydzaj0jF72R5dxXzXa+tWdkOfdVs51D7RlZz31lOy/aM7Ke+8p2rrNnZD33le38Zc/Ieu4r2znJnpH13Fe284w9I+u5r2znDntG1nNf2c4H9oys576ynePrGVnPfWU7b9czsp77ynYurmdkPfe16LmvRc99LXruK9tdwZ6Ri97Ieu5r0XNf2a4x9oys576yXTfsGDnbFcKekfXcV7arfj0j67mvbFfyekbWc1/Zrs71jKznvrJdcesZWc99ZbuK1jOynvvKdmWsZ2Q995XtalfPyHruK9sVrJ6R9dxXtotSPSPrua9s15l6RtZzX9kuHfWMrOe+sl0N6hlZz31lu8DTM7Ke+8p2zaZnZD33le0yTM/Ieu4r25WVnpH13Fe2iyU9I+u5r2zXP3pG1nNf2S5p9Iys576yXaXoGVnPfWW78NAzsp77ynYtoWdkPfeV7fJAz8h67ivbzv+ekfXcV7bd/D0j67mvbDv0e0bWc196u+6r3q77qrfrvurtuq96u+6r3q77prfrvuntum96u+6b3q77dit6I8u5r6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3677p7bpvervum96u+6a3675l24K+lueX1+Xku9d5fT5JPfnadWt/f+263w5QJnvfe6JM5iM8URZQWqFM5ns8USbzU54ok/k0T5TJ/J8nymStniPKbNcBPFGSdsxQkna6UG63/e+v3eb5ACVpxwxlAaUVStKOGUrSTt9rp71QLgcoSTtmKEk7ZihJO1Yos13j8ERJ2jFDSdrpQ1kfX7u2coCStGOGsoDSCiVpxwwlaccMJWnHDCVpxwwlaccKZbbrN54oSTtmKEk7ZihJO2YoCyitUJJ2zFCSdsxQknbMUJJ2zFCSdqxQZrs25YmStGOGkrRjhpK0Y4aygNIKJWnHDCVpxwwlaccMJWnHDCVpxwpltutunihJO2YoSTtmKEk7ZigLKK1QknbMUJJ2zFCSdsxQknbMUJJ2bFCut2zXFD1RBveVpbweZC3nKOcX+Xk/GLnojRzcp10xcnA/dcXIwX3PFSMH9yff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Pontb5/E9rdPYvvbJ7H97ZPY/vZJbH/7JLa/fRLb3z6J7W+fxPa3T2L72yex/e2T2P72SWx/+yS2v30S298+ie1vn8T2t09i+9snsf3tk9j+9klsf/sktr99EtvfPontb29i+9ub2P72Jra/vYntb2+3LqZXK181sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/exPb397E9rc3sf3tTWx/+yy2v30W298+i+1vn8X2t8+3LqZXK1/NYvvbZ7H97bPY/vZZbH/7LLa/fRbb3z6L7W+fxfa3z2L722ex/e2z2P72WWx/+yy2v30utd/71tbHu27bmeJKT2Cb4kqf0V9v9fGul+lMcaVPaZviSp/TNsWVPqltiit1YZPiUtugbYpLPY9Niks9j02KK3Vim+Iup1guc5XaDG1TPGzmetIwbIp60pA6F329j7Y83shtX9/8t3f+s78V597ifIni1LnoEsWpc9ElilPnoksUdznFqXPRJYpT56JLFKfORZcoTp2iLlEsl7lyb3a+RLFc5sq93fkSxXKZK/eG50sUy2Wu3FueL1Esl7lyb3q+RLFc5sq97fkSxXKZK/fG50sUy2Wu3FufL1Esl7lyb36+RLFc5sq9/fkSxXKZK/fG3E8VL+vx69XLdjtTXOrpZFJc6pNr2e+vXo5+prjUJ5dJcalPLovi3LtVL1Fcqi2aFJdqiybFpZ7Ha7//7HU5SyC5d6xeorhUWzQpLtUWTYpLZS6T4lKZy6S4VOayKM69b/USxaUyl0lxqcxlUiyXuXLv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Fzj76xXLV8HXN/vrFctXwZc3++sVy1fBVzf76xXLV8HXPPvrFctXwVdC++sVy1fBF0L76xXLV8HXQfvr1cpXc/Bd0P56tfLVHHwPtL9erXx1UyOmVytfzcH3P/vr1cpXc/Ddz/56xfJV8L3P/nrF8lXwnc/+esXyVfB9z/56xfJV8F3P/nrF8lXwPc/+esXyVfAdz/56xfJV8P3O/nrF8lXw3c7+esXyVfC9zv56xfJV8J3O/nrF8lXwfc7+esXyVfBdzv56xfJV8D3O/nrF8tUilq8WsXwVfEe3v16xfFXF8lUVy1fB96/76xXLV8F3r/vrFctXwfeu++sVy1fBd6776xXLV8H3rfvrFctXwXet++sVy1fB96z76xXLV2L722ex/e2z2P72WWx/+yy2v30W298+i+1vn8X2t89i+9tnsf3ts9j+9llsf/sstr99FtvfPovtb5/F9rfPYvvbZ7H97bPY/vZZbH/7LLa/fRbb3z6L7W+fxfa3z2L722ex/e2z2P72WWx/+yy2v30W298+i+1vn8X2t89i+9tnsf3ts9j+9llsf/sstr99FtvfPovtb5/F9rfPYvvbZ7H97bPY/vZZbH97EdvfXsT2txex/e1FbH97maqYXq18VcT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e1FbH97EdvfXsT2txex/e2L2P72RWx/+yK2v30R29++TFVMr1a+WsT2ty9i+9sXsf3ti9j+9kVsf/sitr99Edvfvojtb1/E9rcvYvvbF7H97YvY/vZF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317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb317E9rcXsf3tRWx/exHb376I7W9fxPa3L2L72xex/e3LVMX0auWrRWx/+yK2v30R29++iO1vX8T2ty9i+9sXsf3ti9j+9kVsf/sitr99Edvfvojtb1/E9rcvqfZ7T2V7vOuyXynO9AS2Kc70GX17q493vc5XijN9StsUZ/qctinO9EltU5ypC5sUp9oGbVOc6nlsUpzqeWxSnKkT2xRXOcVymSvVZmib4mEz14uGYVPUi4bQuej2Psr6eCPTsX343971z34qjr3FuYni0LmoieLQuaiJ4tC5qIniKqc4dC5qojh0LmqiOHQuaqI4dIpqolguc8Xe7NxEsVzmir3duYliucwVe8NzE8VymSv2lucmiuUyV+xNz00Uy2Wu2NuemyiWy1yxNz43USyXuWJvfW6iWC5zxd783ESxXOaKvf25iWK5zBV7Y+63itft/PXqdZ+uFKd6OpkUp/rkWo/7q9ezXilO9cllUpzqk8uiOPZu1SaKU7VFk+JUbdGkONXzeKv3n72tVwkk9o7VJopTtUWT4lRt0aQ4VeYyKU6Vuf7/9t5u2XW1WdK6F67Akl799d00BAcdQTQENERwsO+dsRbTHpr7m5LL6yuNqrfyOSBiQ5uxXE/utjLT01WmiUt5LsvEufet3jJxKc9lmriU5zJNLOe5cu9dvWXijj3XYYqOfdRhiuTeaJi+38jQ2pv/7bO0rLn3pN4ycXJv9NnEY3u+elymP0/ccu9KvWXi5N7ohomTe6MbJk7ujW6YuMlNnNwbfTjx+noj2342cXIfdcPEpTyXaeJSnss0cS3PZZg49/7UWyau5bksE9fyXJaJs3uu1wx/raHb30z8166Q58un4zuZ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cnvoN7k99JvcHvpNbg/9JreHfpPbQ7/J7aHf5PbQb3J76De5PfSb3B76TW4P/Sa3h36T20O/ye2h3+T20G9ye+g3uT30m9we+k1uD/0mt4d+k9tDv8ntod/k9tBvcnvoN7k99JvcHvpNbg/9JreHfpPbQ7/J7aHf5PbQb3J76De5PfSb3B76TW4P/Sa3h36T20O/ye2h3+T20G9ye+g3uT30m9we+k1uD/0mt4d+k9tDv8ntod/k9tBvcnvoN7k99JvcHvpNbg/9JreHfpPbQ7/J7aHf5PbQb3J76De5PfSb3B76TW4P/Sa3h36T20O/ye2h3+T20G9ye+g3uT30m9we+k1uD/0mt4d+k9tDv8ntod/k9tBvcnvoN7k99JvcHvpNbg/9JreHfpPbQ7/L7aHf5fbQ73J76He5PfT7o8lNrOa5drk99LvcHvpdbg/9LreHfpfbQ7/L7aHf5fbQ73J76He5PfS73B76XW4P/S63h36X20O/y+2h3+X20O9ye+h3uT30u9we+l1uD/0ut4d+l9tDv8vtod/l9tDvcnvod7k99LvcHvpdbg/9LreHfpfbQ7/L7aHf5fbQ73J76He5PfS73B76XW4P/S63h36X20O/y+2h3+X20O9ye+h3uT30u9we+l1uD/0ut4d+l9tDv8vtod/l9tDvcnvod7k99LvcHvpdbg/9LreHfpfbQ7/L7aHf5fbQ73J76He5PfS73B76XW4P/S63h36X20O/y+2h3+X20O9ye+h3uT30u9we+l1uD/0ut4d+l9tDv8vtod/l9tDvcnvod7k99LvcHvpdbg/9LreHfpfbQ7/L7aHf5fbQ73J76He5PfS73B76XW4P/S63h36X20O/y+2h3+X20O9ye+h3uT30u9we+l1uD/0ut4d+l9tDv6vtoV8fanvovyYW81xfE4t5rq+JxTzX18RNbmIxz/U1sZjn+ppYzHN9TSzmub4mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8mlvNcanvovyaW81xqe+i/JpbzXGp76L8m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"}],"outputs":{"globals":{},"structs":{"functions":[{"fields":[{"name":"parameters","type":{"fields":[{"name":"app_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":4,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}}],"kind":"struct","path":"authwit::entrypoint::app::AppPayload"}},{"name":"fee_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":2,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}},{"name":"is_fee_payer","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::fee::FeePayload"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::entrypoint_parameters"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::entrypoint_abi"},{"fields":[{"name":"parameters","type":{"fields":[{"name":"inner_hash","type":{"kind":"field"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::verify_private_authwit_parameters"}},{"name":"return_type","type":{"kind":"field"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::verify_private_authwit_abi"}]}},"file_map":{"127":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/hash.nr","source":"use dep::protocol_types::{\n address::{AztecAddress, EthAddress},\n constants::{\n GENERATOR_INDEX__SECRET_HASH, GENERATOR_INDEX__MESSAGE_NULLIFIER, ARGS_HASH_CHUNK_COUNT,\n GENERATOR_INDEX__FUNCTION_ARGS, ARGS_HASH_CHUNK_LENGTH, MAX_ARGS_LENGTH\n},\n traits::Hash, hash::{pedersen_hash, compute_siloed_nullifier, sha256_to_field}\n};\nuse crate::oracle::logs_traits::{LensForEncryptedLog, ToBytesForUnencryptedLog};\n\npub fn compute_secret_hash(secret: Field) -> Field {\n pedersen_hash([secret], GENERATOR_INDEX__SECRET_HASH)\n}\n\npub fn compute_unencrypted_log_hash<T, let N: u32, let M: u32>(\n contract_address: AztecAddress,\n log: T\n) -> Field where T: ToBytesForUnencryptedLog<N, M> {\n let message_bytes: [u8; N] = log.to_be_bytes_arr();\n // can't use N - not in scope error\n let n = message_bytes.len();\n let mut hash_bytes = [0; M];\n // Address is converted to 32 bytes in ts\n let address_bytes = contract_address.to_be_bytes_arr();\n for i in 0..32 {\n hash_bytes[i] = address_bytes[i];\n }\n let len_bytes = (n as Field).to_be_bytes(4);\n for i in 0..4 {\n hash_bytes[32 + i] = len_bytes[i];\n }\n for i in 0..n {\n hash_bytes[36 + i] = message_bytes[i];\n }\n\n sha256_to_field(hash_bytes)\n}\n\npub fn compute_message_hash(\n sender: EthAddress,\n chain_id: Field,\n recipient: AztecAddress,\n version: Field,\n content: Field,\n secret_hash: Field\n) -> Field {\n let mut hash_bytes = [0 as u8; 192];\n let sender_bytes = sender.to_field().to_be_bytes(32);\n let chain_id_bytes = chain_id.to_be_bytes(32);\n let recipient_bytes = recipient.to_field().to_be_bytes(32);\n let version_bytes = version.to_be_bytes(32);\n let content_bytes = content.to_be_bytes(32);\n let secret_hash_bytes = secret_hash.to_be_bytes(32);\n\n for i in 0..32 {\n hash_bytes[i] = sender_bytes[i];\n hash_bytes[i + 32] = chain_id_bytes[i];\n hash_bytes[i + 64] = recipient_bytes[i];\n hash_bytes[i + 96] = version_bytes[i];\n hash_bytes[i + 128] = content_bytes[i];\n hash_bytes[i + 160] = secret_hash_bytes[i];\n }\n\n sha256_to_field(hash_bytes)\n}\n\n// The nullifier of a l1 to l2 message is the hash of the message salted with the secret and index of the message hash\n// in the L1 to L2 message tree\npub fn compute_message_nullifier(message_hash: Field, secret: Field, leaf_index: Field) -> Field {\n pedersen_hash(\n [message_hash, secret, leaf_index],\n GENERATOR_INDEX__MESSAGE_NULLIFIER\n )\n}\n\nstruct ArgsHasher {\n fields: [Field],\n}\n\nimpl Hash for ArgsHasher {\n fn hash(self) -> Field {\n hash_args(self.fields)\n }\n}\n\nimpl ArgsHasher {\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<let N: u32>(&mut self, fields: [Field; N]) {\n for i in 0..N {\n self.fields = self.fields.push_back(fields[i]);\n }\n }\n}\n\npub fn hash_args_array<let N: u32>(args: [Field; N]) -> Field {\n hash_args(args.as_slice())\n}\n\npub fn hash_args(args: [Field]) -> Field {\n if args.len() == 0 {\n 0\n } else {\n assert(args.len() <= MAX_ARGS_LENGTH, \"Args length exceeds maximum\");\n let mut chunks_hashes = [0; ARGS_HASH_CHUNK_COUNT];\n let mut current_chunk_values = [0; ARGS_HASH_CHUNK_LENGTH];\n\n let mut current_chunk_index = 0;\n let mut index_inside_current_chunk = 0;\n for i in 0..args.len() {\n current_chunk_values[index_inside_current_chunk] = args[i];\n index_inside_current_chunk+=1;\n if index_inside_current_chunk == ARGS_HASH_CHUNK_LENGTH {\n chunks_hashes[current_chunk_index] = pedersen_hash(current_chunk_values, GENERATOR_INDEX__FUNCTION_ARGS);\n current_chunk_values = [0; ARGS_HASH_CHUNK_LENGTH];\n current_chunk_index+=1;\n index_inside_current_chunk = 0;\n }\n }\n if index_inside_current_chunk > 0 {\n chunks_hashes[current_chunk_index] = pedersen_hash(current_chunk_values, GENERATOR_INDEX__FUNCTION_ARGS);\n }\n pedersen_hash(chunks_hashes, GENERATOR_INDEX__FUNCTION_ARGS)\n }\n}\n\n#[test]\nfn compute_var_args_hash() {\n let mut input = ArgsHasher::new();\n for i in 0..MAX_ARGS_LENGTH {\n input.add(i as Field);\n }\n let hash = input.hash();\n assert(hash == 0x11e40f2a780822f7971803048c9a2100579de352e7dadd99981760964da65b57);\n}\n\n#[test]\nfn compute_unenc_log_hash_array() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let log = [\n 0x20660de09f35f876e3e69d227b2a35166ad05f09d82d06366ec9b6f65a51fec2,\n 0x1b52bfe3b8689761916f76dc3d38aa8810860db325cd39ca611eed980091f01c,\n 0x2e559c4045c378a56ad13b9edb1e8de4e7ad3b3aa35cc7ba9ec77f7a68fa43a4,\n 0x25d0f689c4a4178a29d59306f2675824d19be6d25e44fa03b03f49c263053dd2,\n 0x2d513a722d6f352dc0961f156afdc5e31495b9f0e35cb069261a8e55e2df67fd\n ];\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0095b2d17ab72f4b27a341f7ac63e49ec73935ae8c9181a0ac02023eb12f3284);\n}\n\n#[test]\nfn compute_unenc_log_hash_addr() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let log = AztecAddress::from_field(0x26aa302d4715fd8a687453cb26d616b0768027bd54bcae56b09d908ecd9f8303);\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0083ab647dfb26e7ddee90a0f4209d049d4660cab42000c544b986aaa84c55a3);\n}\n\n#[test]\nfn compute_unenc_log_hash_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let log = \"dummy\";\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x00629e88ebd6374f44aa6cfe07e251ecf07213ebc7267e8f6b578ae57ffd6c20);\n}\n\n#[test]\nfn compute_unenc_log_hash_longer_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let log = \"Hello this is a string\";\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0098637962f7d34fa202b7ffad8a07a238c5d1fd897b82a108f7f467fa73b841);\n}\n"},"133":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/returns.nr","source":"#[oracle(packReturns)]\nunconstrained fn pack_returns_oracle<let N: u32>(_returns: [Field]) -> Field {}\n\nunconstrained pub fn pack_returns(returns: [Field]) {\n let _unused = pack_returns_oracle(returns);\n}\n\n#[oracle(unpackReturns)]\nunconstrained fn unpack_returns_oracle<let N: u32>(_return_hash: Field) -> [Field; N] {}\n\nunconstrained pub fn unpack_returns<let N: u32>(return_hash: Field) -> [Field; N] {\n unpack_returns_oracle(return_hash)\n}\n"},"141":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/call_private_function.nr","source":"use dep::protocol_types::{\n abis::{function_selector::FunctionSelector, private_call_stack_item::PrivateCallStackItem},\n address::AztecAddress, constants::PRIVATE_CALL_STACK_ITEM_LENGTH\n};\n\n#[oracle(callPrivateFunction)]\nunconstrained fn call_private_function_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _start_side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) -> [Field; PRIVATE_CALL_STACK_ITEM_LENGTH] {}\n\nunconstrained pub fn call_private_function_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n start_side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) -> PrivateCallStackItem {\n let fields = call_private_function_oracle(\n contract_address,\n function_selector,\n args_hash,\n start_side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n PrivateCallStackItem::deserialize(fields)\n}\n"},"146":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/enqueue_public_function_call.nr","source":"use dep::protocol_types::{\n abis::{\n function_selector::FunctionSelector, public_call_stack_item::PublicCallStackItem,\n function_data::FunctionData, public_circuit_public_inputs::PublicCircuitPublicInputs,\n call_context::CallContext, read_request::ReadRequest, note_hash::NoteHash, nullifier::Nullifier,\n log_hash::LogHash, global_variables::GlobalVariables, gas::Gas\n},\n contrakt::{storage_read::StorageRead, storage_update_request::StorageUpdateRequest},\n messaging::l2_to_l1_message::L2ToL1Message, header::Header, address::AztecAddress,\n utils::reader::Reader,\n constants::{\n MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,\n MAX_NOTE_HASHES_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_NULLIFIERS_PER_CALL,\n MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_DATA_READS_PER_CALL,\n MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL,\n MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL, MAX_UNENCRYPTED_LOGS_PER_CALL,\n ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH\n}\n};\n\n#[oracle(enqueuePublicFunctionCall)]\nunconstrained fn enqueue_public_function_call_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) -> [Field; ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH] {}\n\nunconstrained pub fn enqueue_public_function_call_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) -> [Field; ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH] {\n enqueue_public_function_call_oracle(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n )\n}\n\n#[oracle(setPublicTeardownFunctionCall)]\nunconstrained fn set_public_teardown_function_call_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) -> [Field; ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH] {}\n\nunconstrained pub fn set_public_teardown_function_call_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) -> [Field; ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH] {\n set_public_teardown_function_call_oracle(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n )\n}\n\npub fn parse_public_call_stack_item_from_oracle(fields: [Field; ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_LENGTH]) -> PublicCallStackItem {\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 // WARNING: if updating, see comment in public_call_stack_item.ts's PublicCallStackItem.hash()\n let item = PublicCallStackItem {\n contract_address: AztecAddress::from_field(reader.read()),\n function_data: FunctionData { selector: FunctionSelector::from_field(reader.read()), is_private: false },\n public_inputs: PublicCircuitPublicInputs {\n call_context: reader.read_struct(CallContext::deserialize),\n start_side_effect_counter: reader.read_u32(),\n args_hash: reader.read(),\n returns_hash: 0,\n note_hash_read_requests: [ReadRequest::empty(); MAX_NOTE_HASH_READ_REQUESTS_PER_CALL],\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 l1_to_l2_msg_read_requests: [ReadRequest::empty(); MAX_L1_TO_L2_MSG_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 note_hashes: [NoteHash::empty(); MAX_NOTE_HASHES_PER_CALL],\n nullifiers: [Nullifier::empty(); MAX_NULLIFIERS_PER_CALL],\n l2_to_l1_msgs: [L2ToL1Message::empty(); MAX_L2_TO_L1_MSGS_PER_CALL],\n end_side_effect_counter: 0,\n unencrypted_logs_hashes: [LogHash::empty(); MAX_UNENCRYPTED_LOGS_PER_CALL],\n historical_header: Header::empty(),\n global_variables: GlobalVariables::empty(),\n prover_address: AztecAddress::zero(),\n revert_code: 0,\n start_gas_left: Gas::empty(),\n end_gas_left: Gas::empty(),\n transaction_fee: 0\n },\n is_execution_request: true\n };\n reader.finish();\n\n item\n}\n"},"175":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/gas.nr","source":"use crate::{\n abis::function_selector::FunctionSelector, address::{EthAddress, AztecAddress},\n constants::{GAS_LENGTH, FIXED_DA_GAS, FIXED_L2_GAS}, hash::pedersen_hash,\n traits::{Deserialize, Hash, Serialize, Empty}, abis::side_effect::Ordered, utils::reader::Reader,\n abis::gas_fees::GasFees\n};\nuse std::ops::{Add, Sub};\n\nstruct Gas {\n da_gas: u32,\n l2_gas: u32,\n}\n\nimpl Gas {\n pub fn new(da_gas: u32, l2_gas: u32) -> Self {\n Self { da_gas, l2_gas }\n }\n\n pub fn tx_overhead() -> Self {\n Self { da_gas: FIXED_DA_GAS, l2_gas: FIXED_L2_GAS }\n }\n\n pub fn compute_fee(self, fees: GasFees) -> Field {\n (self.da_gas as Field) * fees.fee_per_da_gas + (self.l2_gas as Field) * fees.fee_per_l2_gas\n }\n\n pub fn is_empty(self) -> bool {\n (self.da_gas == 0) & (self.l2_gas == 0)\n }\n\n pub fn within(self, limits: Gas) -> bool {\n (self.da_gas <= limits.da_gas) & (self.l2_gas <= limits.l2_gas)\n }\n}\n\nimpl Add for Gas {\n fn add(self, other: Gas) -> Self {\n Gas::new(self.da_gas + other.da_gas, self.l2_gas + other.l2_gas)\n }\n}\n\nimpl Sub for Gas {\n fn sub(self, other: Gas) -> Self {\n Gas::new(self.da_gas - other.da_gas, self.l2_gas - other.l2_gas)\n }\n}\n\nimpl Serialize<GAS_LENGTH> for Gas {\n fn serialize(self) -> [Field; GAS_LENGTH] {\n [self.da_gas as Field, self.l2_gas as Field]\n }\n}\n\nimpl Deserialize<GAS_LENGTH> for Gas {\n fn deserialize(serialized: [Field; GAS_LENGTH]) -> Gas {\n Gas::new(serialized[0] as u32, serialized[1] as u32)\n }\n}\n\nimpl Eq for Gas {\n fn eq(self, other : Gas) -> bool {\n (self.da_gas == other.da_gas) & (self.l2_gas == other.l2_gas)\n }\n}\n\nimpl Empty for Gas {\n fn empty() -> Self {\n Gas::new(0, 0)\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = Gas::empty();\n let serialized = item.serialize();\n let deserialized = Gas::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n"},"177":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/note_hash.nr","source":"use crate::{\n abis::read_request::ScopedReadRequest, address::AztecAddress,\n abis::side_effect::{Ordered, OrderedValue, Readable, Scoped},\n constants::{NOTE_HASH_LENGTH, SCOPED_NOTE_HASH_LENGTH}, traits::{Empty, Serialize, Deserialize},\n utils::{arrays::array_concat, reader::Reader}\n};\n\nstruct NoteHash {\n value: Field,\n counter: u32,\n}\n\nimpl Ordered for NoteHash {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for NoteHash {\n fn eq(self, other: NoteHash) -> bool {\n (self.value == other.value)\n & (self.counter == other.counter) \n }\n}\n\nimpl Empty for NoteHash {\n fn empty() -> Self {\n NoteHash {\n value: 0,\n counter: 0,\n }\n }\n}\n\nimpl Serialize<NOTE_HASH_LENGTH> for NoteHash {\n fn serialize(self) -> [Field; NOTE_HASH_LENGTH] {\n [self.value, self.counter as Field]\n }\n}\n\nimpl Deserialize<NOTE_HASH_LENGTH> for NoteHash {\n fn deserialize(values: [Field; NOTE_HASH_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n }\n }\n}\n\nimpl NoteHash {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedNoteHash {\n ScopedNoteHash { note_hash: self, contract_address }\n }\n}\n\nstruct ScopedNoteHash {\n note_hash: NoteHash,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<NoteHash> for ScopedNoteHash {\n fn inner(self) -> NoteHash {\n self.note_hash\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Ordered for ScopedNoteHash {\n fn counter(self) -> u32 {\n self.note_hash.counter\n }\n}\n\nimpl OrderedValue<Field> for ScopedNoteHash {\n fn value(self) -> Field {\n self.note_hash.value\n }\n fn counter(self) -> u32 {\n self.note_hash.counter\n }\n}\n\nimpl Eq for ScopedNoteHash {\n fn eq(self, other: ScopedNoteHash) -> bool {\n (self.note_hash == other.note_hash)\n & (self.contract_address == other.contract_address)\n }\n}\n\nimpl Empty for ScopedNoteHash {\n fn empty() -> Self {\n ScopedNoteHash {\n note_hash: NoteHash::empty(),\n contract_address: AztecAddress::zero(),\n }\n }\n}\n\nimpl Serialize<SCOPED_NOTE_HASH_LENGTH> for ScopedNoteHash {\n fn serialize(self) -> [Field; SCOPED_NOTE_HASH_LENGTH] {\n array_concat(self.note_hash.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_NOTE_HASH_LENGTH> for ScopedNoteHash {\n fn deserialize(values: [Field; SCOPED_NOTE_HASH_LENGTH]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n note_hash: reader.read_struct(NoteHash::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\nimpl Readable for ScopedNoteHash {\n fn assert_match_read_request(self, read_request: ScopedReadRequest) {\n assert_eq(self.note_hash.value, read_request.value(), \"Value of the note hash does not match read request\");\n assert_eq(self.contract_address, read_request.contract_address, \"Contract address of the note hash does not match read request\");\n assert(\n read_request.counter() > self.note_hash.counter, \"Read request counter must be greater than the counter of the note hash\"\n );\n }\n}\n\nimpl ScopedNoteHash {\n pub fn expose_to_public(self) -> NoteHash {\n // Hide the actual counter when exposing it to the public kernel.\n NoteHash { value: self.note_hash.value, counter: 0 }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = NoteHash::empty();\n let serialized = item.serialize();\n let deserialized = NoteHash::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn serialization_of_empty_scoped() {\n let item = ScopedNoteHash::empty();\n let serialized = item.serialize();\n let deserialized = ScopedNoteHash::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"178":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/gas_fees.nr","source":"use crate::{\n abis::function_selector::FunctionSelector, address::{EthAddress, AztecAddress},\n constants::GAS_FEES_LENGTH, hash::pedersen_hash, traits::{Deserialize, Hash, Serialize, Empty},\n abis::side_effect::Ordered, utils::reader::Reader\n};\n\nstruct GasFees {\n fee_per_da_gas: Field,\n fee_per_l2_gas: Field,\n}\n\nimpl GasFees {\n pub fn new(fee_per_da_gas: Field, fee_per_l2_gas: Field) -> Self {\n Self { fee_per_da_gas, fee_per_l2_gas }\n }\n\n pub fn default() -> Self {\n GasFees::new(1, 1)\n }\n\n pub fn is_empty(self) -> bool {\n (self.fee_per_da_gas == 0) & (self.fee_per_l2_gas == 0)\n }\n}\n\nimpl Serialize<GAS_FEES_LENGTH> for GasFees {\n fn serialize(self) -> [Field; GAS_FEES_LENGTH] {\n [self.fee_per_da_gas, self.fee_per_l2_gas]\n }\n}\n\nimpl Deserialize<GAS_FEES_LENGTH> for GasFees {\n fn deserialize(serialized: [Field; GAS_FEES_LENGTH]) -> GasFees {\n GasFees::new(serialized[0], serialized[1])\n }\n}\n\nimpl Eq for GasFees {\n fn eq(self, other : GasFees) -> bool {\n (self.fee_per_da_gas == other.fee_per_da_gas) & (self.fee_per_l2_gas == other.fee_per_l2_gas)\n }\n}\n\nimpl Empty for GasFees {\n fn empty() -> Self {\n GasFees::new(0, 0)\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = GasFees::empty();\n let serialized = item.serialize();\n let deserialized = GasFees::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"180":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/private_circuit_public_inputs.nr","source":"use crate::{\n abis::{\n call_context::CallContext, max_block_number::MaxBlockNumber, gas_settings::GasSettings,\n validation_requests::KeyValidationRequestAndGenerator, note_hash::NoteHash, nullifier::Nullifier,\n private_call_request::PrivateCallRequest, read_request::ReadRequest,\n log_hash::{LogHash, NoteLogHash, EncryptedLogHash}\n},\n constants::{\n MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL,\n MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_NOTE_HASHES_PER_CALL, MAX_NULLIFIERS_PER_CALL,\n MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL,\n MAX_L2_TO_L1_MSGS_PER_CALL, PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH,\n GENERATOR_INDEX__PRIVATE_CIRCUIT_PUBLIC_INPUTS, MAX_ENCRYPTED_LOGS_PER_CALL,\n MAX_UNENCRYPTED_LOGS_PER_CALL, MAX_NOTE_ENCRYPTED_LOGS_PER_CALL\n},\n header::Header, hash::pedersen_hash, messaging::l2_to_l1_message::L2ToL1Message,\n traits::{Deserialize, Hash, Serialize, Empty}, utils::reader::Reader,\n transaction::tx_context::TxContext, utils::arrays::validate_array\n};\n\nstruct PrivateCircuitPublicInputsArrayLengths {\n note_hash_read_requests: u32,\n nullifier_read_requests: u32,\n key_validation_requests_and_generators: u32,\n note_hashes: u32,\n nullifiers: u32,\n l2_to_l1_msgs: u32,\n private_call_requests: u32,\n public_call_stack_hashes: u32,\n note_encrypted_logs_hashes: u32,\n encrypted_logs_hashes: u32,\n unencrypted_logs_hashes: u32,\n}\n\nimpl PrivateCircuitPublicInputsArrayLengths {\n pub fn new(public_inputs: PrivateCircuitPublicInputs) -> Self {\n PrivateCircuitPublicInputsArrayLengths {\n note_hash_read_requests: validate_array(public_inputs.note_hash_read_requests),\n nullifier_read_requests: validate_array(public_inputs.nullifier_read_requests),\n key_validation_requests_and_generators: validate_array(public_inputs.key_validation_requests_and_generators),\n note_hashes: validate_array(public_inputs.note_hashes),\n nullifiers: validate_array(public_inputs.nullifiers),\n l2_to_l1_msgs: validate_array(public_inputs.l2_to_l1_msgs),\n private_call_requests: validate_array(public_inputs.private_call_requests),\n public_call_stack_hashes: validate_array(public_inputs.public_call_stack_hashes),\n note_encrypted_logs_hashes: validate_array(public_inputs.note_encrypted_logs_hashes),\n encrypted_logs_hashes: validate_array(public_inputs.encrypted_logs_hashes),\n unencrypted_logs_hashes: validate_array(public_inputs.unencrypted_logs_hashes)\n }\n }\n}\n\nstruct PrivateCircuitPublicInputs {\n call_context: CallContext,\n\n args_hash: Field,\n returns_hash: Field,\n\n min_revertible_side_effect_counter: u32,\n is_fee_payer: bool,\n\n max_block_number: MaxBlockNumber,\n\n note_hash_read_requests: [ReadRequest; MAX_NOTE_HASH_READ_REQUESTS_PER_CALL],\n nullifier_read_requests: [ReadRequest; MAX_NULLIFIER_READ_REQUESTS_PER_CALL],\n key_validation_requests_and_generators: [KeyValidationRequestAndGenerator; MAX_KEY_VALIDATION_REQUESTS_PER_CALL],\n\n note_hashes: [NoteHash; MAX_NOTE_HASHES_PER_CALL],\n nullifiers: [Nullifier; MAX_NULLIFIERS_PER_CALL],\n private_call_requests: [PrivateCallRequest; MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL],\n public_call_stack_hashes: [Field; MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL],\n public_teardown_function_hash: Field,\n l2_to_l1_msgs: [L2ToL1Message; MAX_L2_TO_L1_MSGS_PER_CALL],\n\n start_side_effect_counter : u32,\n end_side_effect_counter : u32,\n note_encrypted_logs_hashes: [NoteLogHash; MAX_NOTE_ENCRYPTED_LOGS_PER_CALL],\n encrypted_logs_hashes: [EncryptedLogHash; MAX_ENCRYPTED_LOGS_PER_CALL],\n unencrypted_logs_hashes: [LogHash; MAX_UNENCRYPTED_LOGS_PER_CALL],\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 // Note: The chain_id and version here are not redundant to the values in self.historical_header.global_variables because\n // they can be different in case of a protocol upgrade. In such a situation we could be using header from a block\n // before the upgrade took place but be using the updated protocol to execute and prove the transaction.\n tx_context: TxContext,\n}\n\nimpl Eq for PrivateCircuitPublicInputs {\n fn eq(self, other: Self) -> bool {\n self.call_context.eq(other.call_context) &\n self.args_hash.eq(other.args_hash) &\n (self.returns_hash == other.returns_hash) &\n (self.min_revertible_side_effect_counter == other.min_revertible_side_effect_counter) &\n (self.is_fee_payer == other.is_fee_payer) &\n (self.max_block_number == other.max_block_number) &\n (self.note_hash_read_requests == other.note_hash_read_requests) &\n (self.nullifier_read_requests == other.nullifier_read_requests) &\n (self.key_validation_requests_and_generators == other.key_validation_requests_and_generators) &\n (self.note_hashes == other.note_hashes) &\n (self.nullifiers == other.nullifiers) &\n (self.private_call_requests == other.private_call_requests) &\n (self.public_call_stack_hashes == other.public_call_stack_hashes) &\n (self.l2_to_l1_msgs == other.l2_to_l1_msgs) &\n (self.start_side_effect_counter == other.start_side_effect_counter) &\n (self.end_side_effect_counter == other.end_side_effect_counter) &\n (self.note_encrypted_logs_hashes == other.note_encrypted_logs_hashes) &\n (self.encrypted_logs_hashes == other.encrypted_logs_hashes) &\n (self.unencrypted_logs_hashes == other.unencrypted_logs_hashes) &\n self.historical_header.eq(other.historical_header) &\n self.tx_context.eq(other.tx_context)\n }\n}\n\nimpl Serialize<PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH> for PrivateCircuitPublicInputs {\n fn serialize(self) -> [Field; PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH] {\n let mut fields: BoundedVec<Field, PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH> = BoundedVec::new();\n fields.extend_from_array(self.call_context.serialize());\n fields.push(self.args_hash);\n fields.push(self.returns_hash);\n\n fields.push(self.min_revertible_side_effect_counter as Field);\n fields.push(if self.is_fee_payer { 1 } else { 0 } as Field);\n\n fields.extend_from_array(self.max_block_number.serialize());\n\n for i in 0..self.note_hash_read_requests.len() {\n fields.extend_from_array(self.note_hash_read_requests[i].serialize());\n }\n for i in 0..self.nullifier_read_requests.len() {\n fields.extend_from_array(self.nullifier_read_requests[i].serialize());\n }\n for i in 0..self.key_validation_requests_and_generators.len() {\n fields.extend_from_array(self.key_validation_requests_and_generators[i].serialize());\n }\n for i in 0..self.note_hashes.len() {\n fields.extend_from_array(self.note_hashes[i].serialize());\n }\n for i in 0..self.nullifiers.len() {\n fields.extend_from_array(self.nullifiers[i].serialize());\n }\n for i in 0..self.private_call_requests.len() {\n fields.extend_from_array(self.private_call_requests[i].serialize());\n }\n fields.extend_from_array(self.public_call_stack_hashes);\n fields.push(self.public_teardown_function_hash);\n for i in 0..self.l2_to_l1_msgs.len() {\n fields.extend_from_array(self.l2_to_l1_msgs[i].serialize());\n }\n fields.push(self.start_side_effect_counter as Field);\n fields.push(self.end_side_effect_counter as Field);\n for i in 0..self.note_encrypted_logs_hashes.len() {\n fields.extend_from_array(self.note_encrypted_logs_hashes[i].serialize());\n }\n for i in 0..self.encrypted_logs_hashes.len() {\n fields.extend_from_array(self.encrypted_logs_hashes[i].serialize());\n }\n for i in 0..self.unencrypted_logs_hashes.len() {\n fields.extend_from_array(self.unencrypted_logs_hashes[i].serialize());\n }\n fields.extend_from_array(self.historical_header.serialize());\n fields.extend_from_array(self.tx_context.serialize());\n\n assert_eq(fields.len(), PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH> for PrivateCircuitPublicInputs {\n fn deserialize(serialized: [Field; PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH]) -> Self {\n // TODO(#4390): This should accept a reader ^ to avoid copying data.\n let mut reader = Reader::new(serialized);\n let inputs = Self {\n call_context: reader.read_struct(CallContext::deserialize),\n args_hash: reader.read(),\n returns_hash: reader.read(),\n min_revertible_side_effect_counter: reader.read() as u32,\n is_fee_payer: reader.read() == 1,\n max_block_number: reader.read_struct(MaxBlockNumber::deserialize),\n note_hash_read_requests: reader.read_struct_array(ReadRequest::deserialize, [ReadRequest::empty(); MAX_NOTE_HASH_READ_REQUESTS_PER_CALL]),\n nullifier_read_requests: reader.read_struct_array(ReadRequest::deserialize, [ReadRequest::empty(); MAX_NULLIFIER_READ_REQUESTS_PER_CALL]),\n key_validation_requests_and_generators: reader.read_struct_array(KeyValidationRequestAndGenerator::deserialize, [KeyValidationRequestAndGenerator::empty(); MAX_KEY_VALIDATION_REQUESTS_PER_CALL]),\n note_hashes: reader.read_struct_array(NoteHash::deserialize, [NoteHash::empty(); MAX_NOTE_HASHES_PER_CALL]),\n nullifiers: reader.read_struct_array(Nullifier::deserialize, [Nullifier::empty(); MAX_NULLIFIERS_PER_CALL]),\n private_call_requests: reader.read_struct_array(PrivateCallRequest::deserialize, [PrivateCallRequest::empty(); MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL]),\n public_call_stack_hashes: reader.read_array([0; MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL]),\n public_teardown_function_hash: reader.read(),\n l2_to_l1_msgs: reader.read_struct_array(L2ToL1Message::deserialize, [L2ToL1Message::empty(); MAX_L2_TO_L1_MSGS_PER_CALL]),\n start_side_effect_counter: reader.read() as u32,\n end_side_effect_counter: reader.read() as u32,\n note_encrypted_logs_hashes: reader.read_struct_array(NoteLogHash::deserialize, [NoteLogHash::empty(); MAX_NOTE_ENCRYPTED_LOGS_PER_CALL]),\n encrypted_logs_hashes: reader.read_struct_array(EncryptedLogHash::deserialize, [EncryptedLogHash::empty(); MAX_ENCRYPTED_LOGS_PER_CALL]),\n unencrypted_logs_hashes: reader.read_struct_array(LogHash::deserialize, [LogHash::empty(); MAX_UNENCRYPTED_LOGS_PER_CALL]),\n historical_header: reader.read_struct(Header::deserialize),\n tx_context: reader.read_struct(TxContext::deserialize),\n };\n\n reader.finish();\n inputs\n }\n}\n\nimpl Hash for PrivateCircuitPublicInputs {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__PRIVATE_CIRCUIT_PUBLIC_INPUTS)\n }\n}\n\nimpl Empty for PrivateCircuitPublicInputs {\n fn empty() -> Self {\n PrivateCircuitPublicInputs {\n call_context: CallContext::empty(),\n args_hash: 0,\n returns_hash: 0,\n min_revertible_side_effect_counter: 0 as u32,\n is_fee_payer: false,\n max_block_number: MaxBlockNumber::empty(),\n note_hash_read_requests: [ReadRequest::empty(); MAX_NOTE_HASH_READ_REQUESTS_PER_CALL],\n nullifier_read_requests: [ReadRequest::empty(); MAX_NULLIFIER_READ_REQUESTS_PER_CALL],\n key_validation_requests_and_generators: [KeyValidationRequestAndGenerator::empty(); MAX_KEY_VALIDATION_REQUESTS_PER_CALL],\n note_hashes: [NoteHash::empty(); MAX_NOTE_HASHES_PER_CALL],\n nullifiers: [Nullifier::empty(); MAX_NULLIFIERS_PER_CALL],\n private_call_requests: [PrivateCallRequest::empty(); MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL],\n public_call_stack_hashes: [0; MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL],\n public_teardown_function_hash: 0,\n l2_to_l1_msgs: [L2ToL1Message::empty(); MAX_L2_TO_L1_MSGS_PER_CALL],\n start_side_effect_counter : 0 as u32,\n end_side_effect_counter : 0 as u32,\n note_encrypted_logs_hashes: [NoteLogHash::empty(); MAX_NOTE_ENCRYPTED_LOGS_PER_CALL],\n encrypted_logs_hashes: [EncryptedLogHash::empty(); MAX_ENCRYPTED_LOGS_PER_CALL],\n unencrypted_logs_hashes: [LogHash::empty(); MAX_UNENCRYPTED_LOGS_PER_CALL],\n historical_header: Header::empty(),\n tx_context: TxContext::empty(),\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let pcpi = PrivateCircuitPublicInputs::empty();\n let serialized = pcpi.serialize();\n let deserialized = PrivateCircuitPublicInputs::deserialize(serialized);\n assert(pcpi.eq(deserialized));\n}\n\n#[test]\nfn empty_hash() {\n let inputs = PrivateCircuitPublicInputs::empty();\n let hash = inputs.hash();\n // Value from private_circuit_public_inputs.test.ts \"computes empty item hash\" test\n let test_data_empty_hash = 0x15c9b0a92b9b541598e24c9f0b0b4b04b7f2408599751c45aa12de671fd9b363;\n assert_eq(hash, test_data_empty_hash);\n}\n"},"181":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/public_call_stack_item_compressed.nr","source":"use crate::abis::{call_context::CallContext, function_data::FunctionData, gas::Gas};\nuse crate::address::AztecAddress;\nuse crate::constants::{GENERATOR_INDEX__CALL_STACK_ITEM, PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH};\nuse crate::traits::{Hash, Empty, Serialize, Deserialize};\nuse crate::utils::reader::Reader;\n\n/**\n * A compressed version of the PublicCallStackItem struct used to compute the \"hash\"\n * of a PublicCallStackItem.\n * \n * Historically, we have been zeroing most values in the PublicCallStackItem struct\n * to compute the hash involved when adding a PublicCallStackItem to the PublicCallStack.\n * \n * This struct is used to store the values that we did not zero out, and allow us to hash\n * only these, thereby skipping a lot of computation and saving us a lot of constraints\n * \n * Essentially this struct exists such that we don't have a `hash` function in the \n * PublicCallStackItem struct that practically throws away some values of the struct\n * without clearly indicating that it does so.\n */\nstruct PublicCallStackItemCompressed {\n contract_address: AztecAddress,\n call_context: CallContext,\n function_data: FunctionData,\n args_hash: Field,\n returns_hash: Field,\n revert_code: u8,\n start_gas_left: Gas,\n end_gas_left: Gas,\n}\n\nimpl Eq for PublicCallStackItemCompressed {\n fn eq(self, other: PublicCallStackItemCompressed) -> bool {\n (self.contract_address == other.contract_address)\n & (self.call_context == other.call_context)\n & (self.function_data == other.function_data)\n & (self.args_hash == other.args_hash)\n & (self.returns_hash == other.returns_hash)\n & (self.revert_code == other.revert_code)\n & (self.start_gas_left == other.start_gas_left)\n & (self.end_gas_left == other.end_gas_left)\n }\n}\n\nimpl Hash for PublicCallStackItemCompressed {\n fn hash(self) -> Field {\n std::hash::pedersen_hash_with_separator(self.serialize(), GENERATOR_INDEX__CALL_STACK_ITEM)\n }\n}\n\nimpl Empty for PublicCallStackItemCompressed {\n fn empty() -> Self {\n PublicCallStackItemCompressed {\n contract_address: AztecAddress::empty(),\n call_context: CallContext::empty(),\n function_data: FunctionData::empty(),\n args_hash: 0,\n returns_hash: 0,\n revert_code: 0,\n start_gas_left: Gas::empty(),\n end_gas_left: Gas::empty(),\n }\n }\n}\n\nimpl Serialize<PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH> for PublicCallStackItemCompressed {\n fn serialize(self) -> [Field; PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH] {\n let mut fields: BoundedVec<Field, PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH> = BoundedVec::new();\n\n fields.push(self.contract_address.to_field());\n fields.extend_from_array(self.call_context.serialize());\n fields.extend_from_array(self.function_data.serialize());\n fields.push(self.args_hash);\n fields.push(self.returns_hash);\n fields.push(self.revert_code as Field);\n fields.extend_from_array(self.start_gas_left.serialize());\n fields.extend_from_array(self.end_gas_left.serialize());\n\n assert_eq(fields.len(), PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH> for PublicCallStackItemCompressed {\n fn deserialize(fields: [Field; PUBLIC_CALL_STACK_ITEM_COMPRESSED_LENGTH]) -> PublicCallStackItemCompressed {\n let mut reader = Reader::new(fields);\n\n let item = PublicCallStackItemCompressed {\n contract_address: reader.read_struct(AztecAddress::deserialize),\n call_context: reader.read_struct(CallContext::deserialize),\n function_data: reader.read_struct(FunctionData::deserialize),\n args_hash: reader.read(),\n returns_hash: reader.read(),\n revert_code: reader.read() as u8,\n start_gas_left: reader.read_struct(Gas::deserialize),\n end_gas_left: reader.read_struct(Gas::deserialize),\n };\n reader.finish();\n item\n }\n}\n"},"183":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/global_variables.nr","source":"use crate::{\n address::{AztecAddress, EthAddress}, abis::gas_fees::GasFees,\n constants::{GENERATOR_INDEX__GLOBAL_VARIABLES, GLOBAL_VARIABLES_LENGTH},\n traits::{Deserialize, Empty, Hash, Serialize}, utils::reader::Reader\n};\n\n// docs:start:global-variables\nstruct GlobalVariables {\n chain_id : Field,\n version : Field,\n block_number : Field,\n timestamp : u64,\n coinbase : EthAddress,\n fee_recipient : AztecAddress,\n gas_fees : GasFees\n}\n// docs:end:global-variables\n\nimpl GlobalVariables {\n fn is_empty(self) -> bool {\n (self.chain_id == 0)\n & (self.version == 0)\n & (self.block_number == 0)\n & (self.timestamp == 0)\n & (self.coinbase.is_zero())\n & (self.fee_recipient.is_zero())\n & (self.gas_fees.is_empty())\n }\n}\n\nimpl Serialize<GLOBAL_VARIABLES_LENGTH> for GlobalVariables {\n fn serialize(self) -> [Field; GLOBAL_VARIABLES_LENGTH] {\n let mut serialized: BoundedVec<Field, GLOBAL_VARIABLES_LENGTH> = BoundedVec::new();\n\n serialized.push(self.chain_id);\n serialized.push(self.version);\n serialized.push(self.block_number);\n serialized.push(self.timestamp as Field);\n serialized.push(self.coinbase.to_field());\n serialized.push(self.fee_recipient.to_field());\n serialized.extend_from_array(self.gas_fees.serialize());\n\n serialized.storage\n }\n}\n\nimpl Deserialize<GLOBAL_VARIABLES_LENGTH> for GlobalVariables {\n fn deserialize(serialized: [Field; GLOBAL_VARIABLES_LENGTH]) -> GlobalVariables {\n let mut reader = Reader::new(serialized);\n GlobalVariables {\n chain_id: reader.read(),\n version: reader.read(),\n block_number: reader.read(),\n timestamp: reader.read() as u64,\n coinbase: EthAddress::from_field(reader.read()),\n fee_recipient: AztecAddress::from_field(reader.read()),\n gas_fees: reader.read_struct(GasFees::deserialize)\n }\n }\n}\n\nimpl Eq for GlobalVariables {\n fn eq(self, other : GlobalVariables) -> bool {\n (self.chain_id == other.chain_id) &\n (self.version == other.version) &\n (self.block_number == other.block_number) &\n (self.timestamp == other.timestamp) &\n (self.coinbase == other.coinbase) &\n (self.fee_recipient == other.fee_recipient) &\n (self.gas_fees == other.gas_fees) \n }\n}\n\nimpl Empty for GlobalVariables {\n fn empty() -> Self {\n Self {\n chain_id: 0,\n version: 0,\n block_number: 0,\n timestamp: 0,\n coinbase: EthAddress::empty(),\n fee_recipient: AztecAddress::empty(),\n gas_fees: GasFees::empty()\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let vars = GlobalVariables::empty();\n let _serialized = vars.serialize();\n let _deserialized = GlobalVariables::deserialize(_serialized);\n}\n"},"184":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/read_request.nr","source":"use crate::{\n abis::side_effect::{Ordered, Scoped}, traits::{Empty, Serialize, Deserialize},\n address::AztecAddress, constants::{READ_REQUEST_LENGTH, SCOPED_READ_REQUEST_LEN},\n utils::{arrays::array_concat, reader::Reader}\n};\n\nstruct ReadRequest {\n value: Field,\n counter: u32,\n}\n\nimpl Ordered for ReadRequest {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for ReadRequest {\n fn eq(self, read_request: ReadRequest) -> bool {\n (self.value == read_request.value)\n & (self.counter == read_request.counter)\n }\n}\n\nimpl Empty for ReadRequest {\n fn empty() -> Self {\n ReadRequest {\n value: 0,\n counter: 0,\n }\n }\n}\n\nimpl Serialize<READ_REQUEST_LENGTH> for ReadRequest {\n fn serialize(self) -> [Field; READ_REQUEST_LENGTH] {\n [self.value, self.counter as Field]\n }\n}\n\nimpl Deserialize<READ_REQUEST_LENGTH> for ReadRequest {\n fn deserialize(values: [Field; READ_REQUEST_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n }\n }\n}\n\nimpl ReadRequest {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedReadRequest {\n ScopedReadRequest { read_request: self, contract_address }\n }\n}\n\nstruct ScopedReadRequest {\n read_request: ReadRequest,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<ReadRequest> for ScopedReadRequest {\n fn inner(self) -> ReadRequest {\n self.read_request\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Eq for ScopedReadRequest {\n fn eq(self, other: ScopedReadRequest) -> bool {\n (self.read_request == other.read_request)\n & (self.contract_address.eq(other.contract_address))\n }\n}\n\nimpl Empty for ScopedReadRequest {\n fn empty() -> Self {\n ScopedReadRequest {\n read_request: ReadRequest::empty(),\n contract_address: AztecAddress::empty(),\n }\n }\n}\n\nimpl Serialize<SCOPED_READ_REQUEST_LEN> for ScopedReadRequest {\n fn serialize(self) -> [Field; SCOPED_READ_REQUEST_LEN] {\n array_concat(self.read_request.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_READ_REQUEST_LEN> for ScopedReadRequest {\n fn deserialize(values: [Field; SCOPED_READ_REQUEST_LEN]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n read_request: reader.read_struct(ReadRequest::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\nimpl ScopedReadRequest {\n pub fn value(self) -> Field {\n self.read_request.value\n }\n pub fn counter(self) -> u32 {\n self.read_request.counter\n }\n}\n\n#[test]\nfn serialization_of_empty_read() {\n let item = ReadRequest::empty();\n let serialized = item.serialize();\n let deserialized = ReadRequest::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn serialization_of_empty_scoped() {\n let item = ScopedReadRequest::empty();\n let serialized = item.serialize();\n let deserialized = ScopedReadRequest::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"187":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/validation_requests/key_validation_request_and_generator.nr","source":"use crate::{\n address::AztecAddress,\n abis::validation_requests::{\n key_validation_request::KeyValidationRequest,\n scoped_key_validation_request_and_generator::ScopedKeyValidationRequestAndGenerator\n},\n constants::KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH, traits::{Empty, Serialize, Deserialize},\n utils::{arrays::array_concat, reader::Reader}\n};\n\nstruct KeyValidationRequestAndGenerator {\n request: KeyValidationRequest,\n sk_app_generator: Field,\n}\n\nimpl Eq for KeyValidationRequestAndGenerator {\n fn eq(self, other: KeyValidationRequestAndGenerator) -> bool {\n (self.request == other.request) & (self.sk_app_generator == other.sk_app_generator)\n }\n}\n\nimpl Empty for KeyValidationRequestAndGenerator {\n fn empty() -> Self {\n KeyValidationRequestAndGenerator {\n request: KeyValidationRequest::empty(),\n sk_app_generator: 0,\n }\n }\n}\n\nimpl Serialize<KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH> for KeyValidationRequestAndGenerator {\n fn serialize(self) -> [Field; KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH] {\n array_concat(self.request.serialize(), [self.sk_app_generator])\n }\n}\n\nimpl Deserialize<KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH> for KeyValidationRequestAndGenerator {\n fn deserialize(fields: [Field; KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH]) -> Self {\n let mut reader = Reader::new(fields);\n let res = Self {\n request: reader.read_struct(KeyValidationRequest::deserialize),\n sk_app_generator: reader.read(),\n };\n reader.finish();\n res\n }\n}\n\nimpl KeyValidationRequestAndGenerator {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedKeyValidationRequestAndGenerator {\n ScopedKeyValidationRequestAndGenerator { request: self, contract_address }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = KeyValidationRequestAndGenerator::empty();\n let serialized = item.serialize();\n let deserialized = KeyValidationRequestAndGenerator::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"188":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/validation_requests/key_validation_request.nr","source":"use crate::{constants::KEY_VALIDATION_REQUEST_LENGTH, traits::{Empty, Serialize, Deserialize}, point::Point};\n\nstruct KeyValidationRequest {\n pk_m: Point,\n sk_app: Field, // not a grumpkin scalar because it's output of poseidon2\n}\n\nimpl Eq for KeyValidationRequest {\n fn eq(self, request: KeyValidationRequest) -> bool {\n (request.pk_m.eq(self.pk_m))\n & (request.sk_app.eq(self.sk_app))\n }\n}\n\nimpl Empty for KeyValidationRequest {\n fn empty() -> Self {\n KeyValidationRequest {\n pk_m: Point::empty(),\n sk_app: 0,\n }\n }\n}\n\nimpl Serialize<KEY_VALIDATION_REQUEST_LENGTH> for KeyValidationRequest {\n fn serialize(self) -> [Field; KEY_VALIDATION_REQUEST_LENGTH] {\n [\n self.pk_m.x,\n self.pk_m.y,\n self.pk_m.is_infinite as Field,\n self.sk_app,\n ]\n }\n}\n\nimpl Deserialize<KEY_VALIDATION_REQUEST_LENGTH> for KeyValidationRequest {\n fn deserialize(fields: [Field; KEY_VALIDATION_REQUEST_LENGTH]) -> Self {\n Self {\n pk_m: Point { x:fields[0], y: fields[1], is_infinite: fields[2] as bool},\n sk_app: fields[3],\n }\n }\n}\n\n"},"192":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/nullifier.nr","source":"use crate::{\n abis::{side_effect::{Ordered, OrderedValue, Readable, Scoped}, read_request::ScopedReadRequest},\n address::AztecAddress, constants::{NULLIFIER_LENGTH, SCOPED_NULLIFIER_LENGTH},\n hash::compute_siloed_nullifier, traits::{Empty, Hash, Serialize, Deserialize},\n utils::{arrays::array_concat, reader::Reader}\n};\n\nstruct Nullifier {\n value: Field,\n counter: u32,\n note_hash: Field,\n}\n\nimpl Ordered for Nullifier {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl OrderedValue<Field> for Nullifier {\n fn value(self) -> Field {\n self.value\n }\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for Nullifier {\n fn eq(self, other: Nullifier) -> bool {\n (self.value == other.value)\n & (self.counter == other.counter)\n & (self.note_hash == other.note_hash) \n }\n}\n\nimpl Empty for Nullifier {\n fn empty() -> Self {\n Nullifier {\n value: 0,\n counter: 0,\n note_hash: 0,\n }\n }\n}\n\nimpl Serialize<NULLIFIER_LENGTH> for Nullifier {\n fn serialize(self) -> [Field; NULLIFIER_LENGTH] {\n [self.value, self.counter as Field, self.note_hash]\n }\n}\n\nimpl Deserialize<NULLIFIER_LENGTH> for Nullifier {\n fn deserialize(values: [Field; NULLIFIER_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n note_hash: values[2],\n }\n }\n}\n\nimpl Readable for Nullifier {\n fn assert_match_read_request(self, read_request: ScopedReadRequest) {\n // Public kernels output Nullifier instead of ScopedNullifier.\n // The nullifier value has been siloed.\n let siloed_request_value = compute_siloed_nullifier(read_request.contract_address, read_request.value());\n assert_eq(self.value, siloed_request_value, \"Value of the nullifier does not match read request\");\n assert(\n read_request.counter() > self.counter, \"Read request counter must be greater than the counter of the nullifier\"\n );\n }\n}\n\nimpl Nullifier {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedNullifier {\n ScopedNullifier { nullifier: self, contract_address }\n }\n}\n\nstruct ScopedNullifier {\n nullifier: Nullifier,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<Nullifier> for ScopedNullifier {\n fn inner(self) -> Nullifier {\n self.nullifier\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Ordered for ScopedNullifier {\n fn counter(self) -> u32 {\n self.nullifier.counter\n }\n}\n\nimpl OrderedValue<Field> for ScopedNullifier {\n fn value(self) -> Field {\n self.nullifier.value\n }\n fn counter(self) -> u32 {\n self.nullifier.counter\n }\n}\n\nimpl Eq for ScopedNullifier {\n fn eq(self, other: ScopedNullifier) -> bool {\n (self.nullifier == other.nullifier)\n & (self.contract_address == other.contract_address) \n }\n}\n\nimpl Empty for ScopedNullifier {\n fn empty() -> Self {\n ScopedNullifier {\n nullifier: Nullifier::empty(),\n contract_address: AztecAddress::empty(),\n }\n }\n}\n\nimpl Serialize<SCOPED_NULLIFIER_LENGTH> for ScopedNullifier {\n fn serialize(self) -> [Field; SCOPED_NULLIFIER_LENGTH] {\n array_concat(self.nullifier.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_NULLIFIER_LENGTH> for ScopedNullifier {\n fn deserialize(values: [Field; SCOPED_NULLIFIER_LENGTH]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n nullifier: reader.read_struct(Nullifier::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\nimpl Readable for ScopedNullifier {\n fn assert_match_read_request(self, read_request: ScopedReadRequest) {\n assert_eq(self.nullifier.value, read_request.value(), \"Value of the nullifier does not match read request\");\n assert_eq(self.contract_address, read_request.contract_address, \"Contract address of the nullifier does not match read request\");\n assert(\n read_request.counter() > self.nullifier.counter, \"Read request counter must be greater than the counter of the nullifier\"\n );\n }\n}\n\nimpl ScopedNullifier {\n pub fn nullified_note_hash(self) -> Field {\n self.nullifier.note_hash\n }\n\n pub fn expose_to_public(self) -> Nullifier {\n // Hide the actual counter and note hash when exposing it to the public kernel.\n Nullifier { value: self.nullifier.value, counter: 0, note_hash: 0 }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = Nullifier::empty();\n let serialized = item.serialize();\n let deserialized = Nullifier::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn serialization_of_empty_scoped() {\n let item = ScopedNullifier::empty();\n let serialized = item.serialize();\n let deserialized = ScopedNullifier::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"201":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/function_selector.nr","source":"use crate::utils::field::field_from_bytes;\nuse crate::traits::{Serialize, Deserialize, FromField, ToField, Empty};\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 Empty for FunctionSelector {\n fn empty() -> Self {\n Self { inner: 0 as u32 }\n }\n}\n\nimpl FunctionSelector {\n pub fn from_u32(value: u32) -> Self {\n Self { inner: value }\n }\n\n pub fn from_signature<let N: u32>(signature: str<N>) -> Self {\n let bytes = signature.as_bytes();\n let hash = 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"},"202":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/private_call_request.nr","source":"use crate::{\n abis::{\n private_call_stack_item::PrivateCallStackItem, call_context::CallContext,\n function_data::FunctionData, caller_context::CallerContext,\n side_effect::{Ordered, RangeOrdered, Scoped}\n},\n address::AztecAddress, constants::{PRIVATE_CALL_REQUEST_LENGTH, SCOPED_PRIVATE_CALL_REQUEST_LENGTH},\n traits::{Empty, Serialize, Deserialize}, utils::reader::Reader\n};\n\nstruct PrivateCallRequest {\n target: AztecAddress,\n call_context: CallContext,\n function_data: FunctionData,\n args_hash: Field,\n returns_hash: Field,\n caller_context: CallerContext,\n start_side_effect_counter: u32,\n end_side_effect_counter: u32,\n}\n\nimpl Ordered for PrivateCallRequest {\n fn counter(self) -> u32 {\n self.start_side_effect_counter\n }\n}\n\nimpl RangeOrdered for PrivateCallRequest {\n fn counter_start(self) -> u32 {\n self.start_side_effect_counter\n }\n fn counter_end(self) -> u32 {\n self.end_side_effect_counter\n }\n}\n\nimpl Eq for PrivateCallRequest {\n fn eq(self, other: PrivateCallRequest) -> bool {\n (self.target == other.target) \n & (self.call_context == other.call_context) \n & (self.function_data == other.function_data) \n & (self.args_hash == other.args_hash) \n & (self.returns_hash == other.returns_hash)\n & (self.caller_context == other.caller_context)\n & (self.start_side_effect_counter == other.start_side_effect_counter)\n & (self.end_side_effect_counter == other.end_side_effect_counter)\n }\n}\n\nimpl Empty for PrivateCallRequest {\n fn empty() -> Self {\n PrivateCallRequest {\n target: AztecAddress::empty(),\n call_context: CallContext::empty(),\n function_data: FunctionData::empty(),\n args_hash: 0,\n returns_hash: 0,\n caller_context: CallerContext::empty(),\n start_side_effect_counter: 0,\n end_side_effect_counter: 0,\n }\n }\n}\n\nimpl Serialize<PRIVATE_CALL_REQUEST_LENGTH> for PrivateCallRequest {\n fn serialize(self) -> [Field; PRIVATE_CALL_REQUEST_LENGTH] {\n let mut fields: BoundedVec<Field, PRIVATE_CALL_REQUEST_LENGTH> = BoundedVec::new();\n\n fields.push(self.target.to_field());\n fields.extend_from_array(self.call_context.serialize());\n fields.extend_from_array(self.function_data.serialize());\n fields.push(self.args_hash);\n fields.push(self.returns_hash);\n fields.extend_from_array(self.caller_context.serialize());\n fields.push(self.start_side_effect_counter as Field);\n fields.push(self.end_side_effect_counter as Field);\n\n assert_eq(fields.len(), PRIVATE_CALL_REQUEST_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<PRIVATE_CALL_REQUEST_LENGTH> for PrivateCallRequest {\n fn deserialize(fields: [Field; PRIVATE_CALL_REQUEST_LENGTH]) -> PrivateCallRequest {\n let mut reader = Reader::new(fields);\n let item = PrivateCallRequest {\n target: reader.read_struct(AztecAddress::deserialize),\n call_context: reader.read_struct(CallContext::deserialize),\n function_data: reader.read_struct(FunctionData::deserialize),\n args_hash: reader.read(),\n returns_hash: reader.read(),\n caller_context: reader.read_struct(CallerContext::deserialize),\n start_side_effect_counter: reader.read_u32(),\n end_side_effect_counter: reader.read_u32(),\n };\n reader.finish();\n item\n }\n}\n\nimpl PrivateCallRequest {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedPrivateCallRequest {\n ScopedPrivateCallRequest { call_request: self, contract_address }\n }\n\n pub fn matches_stack_item(self, stack_item: PrivateCallStackItem) -> bool {\n (self.target == stack_item.contract_address)\n & (self.call_context == stack_item.public_inputs.call_context)\n & (self.function_data == stack_item.function_data)\n & (self.args_hash == stack_item.public_inputs.args_hash)\n & (self.returns_hash == stack_item.public_inputs.returns_hash)\n & (self.start_side_effect_counter\n == stack_item.public_inputs.start_side_effect_counter)\n & (self.end_side_effect_counter\n == stack_item.public_inputs.end_side_effect_counter)\n }\n}\n\nstruct ScopedPrivateCallRequest {\n call_request: PrivateCallRequest,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<PrivateCallRequest> for ScopedPrivateCallRequest {\n fn inner(self) -> PrivateCallRequest {\n self.call_request\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Ordered for ScopedPrivateCallRequest {\n fn counter(self) -> u32 {\n self.call_request.counter_start()\n }\n}\n\nimpl RangeOrdered for ScopedPrivateCallRequest {\n fn counter_start(self) -> u32 {\n self.call_request.counter_start()\n }\n fn counter_end(self) -> u32 {\n self.call_request.counter_end()\n }\n}\n\nimpl Eq for ScopedPrivateCallRequest {\n fn eq(self, other: ScopedPrivateCallRequest) -> bool {\n (self.call_request == other.call_request)\n & (self.contract_address == other.contract_address)\n }\n}\n\nimpl Empty for ScopedPrivateCallRequest {\n fn empty() -> Self {\n ScopedPrivateCallRequest {\n call_request: PrivateCallRequest::empty(),\n contract_address: AztecAddress::zero(),\n }\n }\n}\n\nimpl Serialize<SCOPED_PRIVATE_CALL_REQUEST_LENGTH> for ScopedPrivateCallRequest {\n fn serialize(self) -> [Field; SCOPED_PRIVATE_CALL_REQUEST_LENGTH] {\n let mut fields: BoundedVec<Field, SCOPED_PRIVATE_CALL_REQUEST_LENGTH> = BoundedVec::new();\n\n fields.extend_from_array(self.call_request.serialize());\n fields.extend_from_array(self.contract_address.serialize());\n\n assert_eq(fields.len(), SCOPED_PRIVATE_CALL_REQUEST_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<SCOPED_PRIVATE_CALL_REQUEST_LENGTH> for ScopedPrivateCallRequest {\n fn deserialize(fields: [Field; SCOPED_PRIVATE_CALL_REQUEST_LENGTH]) -> ScopedPrivateCallRequest {\n let mut reader = Reader::new(fields);\n let item = ScopedPrivateCallRequest {\n call_request: reader.read_struct(PrivateCallRequest::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n item\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = ScopedPrivateCallRequest::empty();\n let serialized = item.serialize();\n let deserialized = ScopedPrivateCallRequest::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"207":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/gas_settings.nr","source":"use crate::{\n abis::function_selector::FunctionSelector, address::{EthAddress, AztecAddress}, abis::gas::Gas,\n abis::gas_fees::GasFees,\n constants::{\n GAS_SETTINGS_LENGTH, DEFAULT_GAS_LIMIT, DEFAULT_TEARDOWN_GAS_LIMIT, DEFAULT_MAX_FEE_PER_GAS,\n DEFAULT_INCLUSION_FEE\n},\n hash::pedersen_hash, traits::{Deserialize, Hash, Serialize, Empty}, abis::side_effect::Ordered,\n utils::reader::Reader\n};\n\nstruct GasSettings {\n gas_limits: Gas,\n teardown_gas_limits: Gas,\n max_fees_per_gas: GasFees,\n inclusion_fee: Field,\n}\n\nimpl GasSettings {\n pub fn new(\n gas_limits: Gas,\n teardown_gas_limits: Gas,\n max_fees_per_gas: GasFees,\n inclusion_fee: Field\n ) -> Self {\n Self { gas_limits, teardown_gas_limits, max_fees_per_gas, inclusion_fee }\n }\n\n pub fn default() -> Self {\n GasSettings::new(\n Gas::new(DEFAULT_GAS_LIMIT, DEFAULT_GAS_LIMIT),\n Gas::new(DEFAULT_TEARDOWN_GAS_LIMIT, DEFAULT_TEARDOWN_GAS_LIMIT),\n GasFees::new(DEFAULT_MAX_FEE_PER_GAS, DEFAULT_MAX_FEE_PER_GAS),\n DEFAULT_INCLUSION_FEE\n )\n }\n}\n\nimpl Eq for GasSettings {\n fn eq(self, other: Self) -> bool {\n (self.gas_limits == other.gas_limits) & (self.teardown_gas_limits == other.teardown_gas_limits) & (self.max_fees_per_gas == other.max_fees_per_gas) & (self.inclusion_fee == other.inclusion_fee)\n }\n}\n\nimpl Empty for GasSettings {\n fn empty() -> Self {\n GasSettings::new(\n Gas::empty(), Gas::empty(), GasFees::empty(), 0\n )\n }\n}\n\nimpl Serialize<GAS_SETTINGS_LENGTH> for GasSettings {\n fn serialize(self) -> [Field; GAS_SETTINGS_LENGTH] {\n let mut serialized: BoundedVec<Field, GAS_SETTINGS_LENGTH> = BoundedVec::new();\n\n serialized.extend_from_array(self.gas_limits.serialize());\n serialized.extend_from_array(self.teardown_gas_limits.serialize());\n serialized.extend_from_array(self.max_fees_per_gas.serialize());\n serialized.push(self.inclusion_fee);\n \n serialized.storage\n }\n}\n\nimpl Deserialize<GAS_SETTINGS_LENGTH> for GasSettings {\n fn deserialize(serialized: [Field; GAS_SETTINGS_LENGTH]) -> GasSettings {\n let mut reader = Reader::new(serialized);\n GasSettings::new(reader.read_struct(Gas::deserialize), reader.read_struct(Gas::deserialize), reader.read_struct(GasFees::deserialize), reader.read())\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = GasSettings::empty();\n let serialized = item.serialize();\n let deserialized = GasSettings::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"216":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/private_call_stack_item.nr","source":"use crate::{\n abis::{function_data::FunctionData, private_circuit_public_inputs::PrivateCircuitPublicInputs},\n address::AztecAddress,\n constants::{GENERATOR_INDEX__CALL_STACK_ITEM, PRIVATE_CALL_STACK_ITEM_LENGTH}, hash::pedersen_hash,\n traits::{Deserialize, Hash, Serialize, Empty}, utils::reader::Reader\n};\n\nstruct PrivateCallStackItem {\n // This is the _actual_ contract address relating to where this function's code resides in the\n // contract tree. Regardless of whether this is a call or delegatecall, this\n // `contract_address` _does not change_. Amongst other things, it's used as a lookup for\n // getting the correct code from the tree. There is a separate `storage_contract_address`\n // within a CallStackItem which varies depending on whether this is a call or delegatecall.\n contract_address: AztecAddress,\n function_data: FunctionData,\n public_inputs: PrivateCircuitPublicInputs,\n}\n\nimpl Eq for PrivateCallStackItem {\n fn eq(self, other: Self) -> bool {\n self.contract_address.eq(other.contract_address) &\n self.function_data.eq(other.function_data) &\n self.public_inputs.eq(other.public_inputs)\n }\n}\n\nimpl Serialize<PRIVATE_CALL_STACK_ITEM_LENGTH> for PrivateCallStackItem {\n fn serialize(self) -> [Field; PRIVATE_CALL_STACK_ITEM_LENGTH] {\n let mut fields: BoundedVec<Field, PRIVATE_CALL_STACK_ITEM_LENGTH> = BoundedVec::new();\n\n fields.push(self.contract_address.to_field());\n fields.extend_from_array(self.function_data.serialize());\n fields.extend_from_array(self.public_inputs.serialize());\n\n assert_eq(fields.len(), PRIVATE_CALL_STACK_ITEM_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<PRIVATE_CALL_STACK_ITEM_LENGTH> for PrivateCallStackItem {\n fn deserialize(serialized: [Field; PRIVATE_CALL_STACK_ITEM_LENGTH]) -> Self {\n // TODO(#4390): This should accept a reader ^ to avoid copying data.\n let mut reader = Reader::new(serialized);\n\n let item = Self {\n contract_address: reader.read_struct(AztecAddress::deserialize),\n function_data: reader.read_struct(FunctionData::deserialize),\n public_inputs: reader.read_struct(PrivateCircuitPublicInputs::deserialize),\n };\n\n reader.finish();\n item\n }\n}\n\nimpl Hash for PrivateCallStackItem {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__CALL_STACK_ITEM)\n }\n}\n\nimpl Empty for PrivateCallStackItem {\n fn empty() -> Self {\n PrivateCallStackItem {\n contract_address: AztecAddress::empty(),\n function_data: FunctionData::empty(),\n public_inputs: PrivateCircuitPublicInputs::empty(),\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = PrivateCallStackItem::empty();\n let serialized = item.serialize();\n let deserialized = PrivateCallStackItem::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn empty_hash() {\n let mut item = PrivateCallStackItem::empty();\n item.function_data.is_private = true;\n let hash = item.hash();\n\n // Value from private_call_stack_item.test.ts \"computes empty item hash\" test\n let test_data_empty_hash = 0x065f2831db9ac0db5e710bd3a865b5facd8cf83f1585e1af8fd1d6ce9c47f685;\n assert_eq(hash, test_data_empty_hash);\n}\n"},"217":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/caller_context.nr","source":"use crate::address::AztecAddress;\nuse crate::traits::{Empty, Serialize, Deserialize};\nuse crate::constants::CALLER_CONTEXT_LENGTH;\nuse crate::utils::reader::Reader;\n\nstruct CallerContext {\n msg_sender: AztecAddress,\n storage_contract_address: AztecAddress,\n is_static_call: bool,\n}\n\nimpl Eq for CallerContext {\n fn eq(self, other: CallerContext) -> bool {\n other.msg_sender.eq(self.msg_sender)\n & other.storage_contract_address.eq(self.storage_contract_address)\n & other.is_static_call == self.is_static_call\n }\n}\n\nimpl Empty for CallerContext {\n fn empty() -> Self {\n CallerContext {\n msg_sender: AztecAddress::zero(),\n storage_contract_address: AztecAddress::zero(),\n is_static_call: false,\n }\n }\n}\n\nimpl CallerContext {\n pub fn is_empty(self) -> bool {\n self.msg_sender.is_zero() & self.storage_contract_address.is_zero() & !self.is_static_call\n }\n\n // Different to an empty context, a hidden context won't reveal the caller's msg_sender and storage_contract_address,\n // but will still propagate the is_static_call flag.\n pub fn is_hidden(self) -> bool {\n self.msg_sender.is_zero() & self.storage_contract_address.is_zero()\n }\n}\n\nimpl Serialize<CALLER_CONTEXT_LENGTH> for CallerContext {\n fn serialize(self) -> [Field; CALLER_CONTEXT_LENGTH] {\n let mut fields: BoundedVec<Field, CALLER_CONTEXT_LENGTH> = BoundedVec::new();\n\n fields.extend_from_array(self.msg_sender.serialize());\n fields.extend_from_array(self.storage_contract_address.serialize());\n fields.push(self.is_static_call as Field);\n\n assert_eq(fields.len(), CALLER_CONTEXT_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<CALLER_CONTEXT_LENGTH> for CallerContext {\n fn deserialize(fields: [Field; CALLER_CONTEXT_LENGTH]) -> CallerContext {\n let mut reader = Reader::new(fields);\n\n let item = CallerContext {\n msg_sender: reader.read_struct(AztecAddress::deserialize),\n storage_contract_address: reader.read_struct(AztecAddress::deserialize),\n is_static_call: reader.read_bool(),\n };\n reader.finish();\n item\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = CallerContext::empty();\n let serialized = item.serialize();\n let deserialized = CallerContext::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"219":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/log_hash.nr","source":"use crate::{\n abis::side_effect::{Ordered, OrderedValue, Scoped}, address::AztecAddress,\n constants::{\n LOG_HASH_LENGTH, NOTE_LOG_HASH_LENGTH, ENCRYPTED_LOG_HASH_LENGTH, SCOPED_LOG_HASH_LENGTH,\n SCOPED_ENCRYPTED_LOG_HASH_LENGTH\n},\n traits::{Empty, Serialize, Deserialize}, utils::{arrays::array_concat, reader::Reader}\n};\n\nstruct LogHash {\n value: Field,\n counter: u32,\n length: Field,\n}\n\nimpl Ordered for LogHash {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl OrderedValue<Field> for LogHash {\n fn value(self) -> Field {\n self.value\n }\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for LogHash {\n fn eq(self, other: LogHash) -> bool {\n (self.value == other.value)\n & (self.counter == other.counter)\n & (self.length == other.length) \n }\n}\n\nimpl Empty for LogHash {\n fn empty() -> Self {\n LogHash {\n value: 0,\n counter: 0,\n length: 0,\n }\n }\n}\n\nimpl Serialize<LOG_HASH_LENGTH> for LogHash {\n fn serialize(self) -> [Field; LOG_HASH_LENGTH] {\n [self.value, self.counter as Field, self.length]\n }\n}\n\nimpl Deserialize<LOG_HASH_LENGTH> for LogHash {\n fn deserialize(values: [Field; LOG_HASH_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n length: values[2],\n }\n }\n}\n\nimpl LogHash {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedLogHash {\n ScopedLogHash { log_hash: self, contract_address }\n }\n}\n\nstruct ScopedLogHash {\n log_hash: LogHash,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<LogHash> for ScopedLogHash {\n fn inner(self) -> LogHash {\n self.log_hash\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Ordered for ScopedLogHash {\n fn counter(self) -> u32 {\n self.log_hash.counter\n }\n}\n\nimpl OrderedValue<Field> for ScopedLogHash {\n fn value(self) -> Field {\n self.log_hash.value\n }\n fn counter(self) -> u32 {\n self.log_hash.counter\n }\n}\n\nimpl Eq for ScopedLogHash {\n fn eq(self, other: ScopedLogHash) -> bool {\n (self.log_hash == other.log_hash)\n & (self.contract_address == other.contract_address) \n }\n}\n\nimpl Empty for ScopedLogHash {\n fn empty() -> Self {\n ScopedLogHash {\n log_hash: LogHash::empty(),\n contract_address: AztecAddress::empty(),\n }\n }\n}\n\nimpl Serialize<SCOPED_LOG_HASH_LENGTH> for ScopedLogHash {\n fn serialize(self) -> [Field; SCOPED_LOG_HASH_LENGTH] {\n array_concat(self.log_hash.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_LOG_HASH_LENGTH> for ScopedLogHash {\n fn deserialize(values: [Field; SCOPED_LOG_HASH_LENGTH]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n log_hash: reader.read_struct(LogHash::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\nimpl ScopedLogHash {\n pub fn expose_to_public(self) -> Self {\n // Hide the counter when exposing to public.\n Self {\n log_hash: LogHash { value: self.log_hash.value, counter: 0, length: self.log_hash.length },\n contract_address: self.contract_address\n }\n }\n}\n\nstruct EncryptedLogHash {\n value: Field,\n counter: u32,\n length: Field,\n randomness: Field,\n}\n\nimpl Ordered for EncryptedLogHash {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl OrderedValue<Field> for EncryptedLogHash {\n fn value(self) -> Field {\n self.value\n }\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for EncryptedLogHash {\n fn eq(self, other: EncryptedLogHash) -> bool {\n (self.value == other.value)\n & (self.counter == other.counter)\n & (self.length == other.length) \n & (self.randomness == other.randomness) \n }\n}\n\nimpl Empty for EncryptedLogHash {\n fn empty() -> Self {\n EncryptedLogHash {\n value: 0,\n counter: 0,\n length: 0,\n randomness: 0,\n }\n }\n}\n\nimpl Serialize<ENCRYPTED_LOG_HASH_LENGTH> for EncryptedLogHash {\n fn serialize(self) -> [Field; ENCRYPTED_LOG_HASH_LENGTH] {\n [self.value, self.counter as Field, self.length, self.randomness]\n }\n}\n\nimpl Deserialize<ENCRYPTED_LOG_HASH_LENGTH> for EncryptedLogHash {\n fn deserialize(values: [Field; ENCRYPTED_LOG_HASH_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n length: values[2],\n randomness: values[3],\n }\n }\n}\n\nimpl EncryptedLogHash {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedEncryptedLogHash {\n ScopedEncryptedLogHash { log_hash: self, contract_address }\n }\n}\n\nstruct ScopedEncryptedLogHash {\n log_hash: EncryptedLogHash,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<EncryptedLogHash> for ScopedEncryptedLogHash {\n fn inner(self) -> EncryptedLogHash {\n self.log_hash\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl ScopedEncryptedLogHash {\n pub fn expose_to_public(self) -> LogHash {\n // Hide the secret randomness and counter when exposing to public\n // Expose as a LogHash rather than EncryptedLogHash to avoid bringing an unnec. 0 value around\n // The log hash will already be silo'd when we call this\n LogHash { value: self.log_hash.value, counter: 0, length: self.log_hash.length }\n }\n}\n\nimpl Ordered for ScopedEncryptedLogHash {\n fn counter(self) -> u32 {\n self.log_hash.counter\n }\n}\n\nimpl OrderedValue<Field> for ScopedEncryptedLogHash {\n fn value(self) -> Field {\n self.log_hash.value\n }\n fn counter(self) -> u32 {\n self.log_hash.counter\n }\n}\n\nimpl Eq for ScopedEncryptedLogHash {\n fn eq(self, other: ScopedEncryptedLogHash) -> bool {\n (self.log_hash == other.log_hash)\n & (self.contract_address == other.contract_address) \n }\n}\n\nimpl Empty for ScopedEncryptedLogHash {\n fn empty() -> Self {\n ScopedEncryptedLogHash {\n log_hash: EncryptedLogHash::empty(),\n contract_address: AztecAddress::empty(),\n }\n }\n}\n\nimpl Serialize<SCOPED_ENCRYPTED_LOG_HASH_LENGTH> for ScopedEncryptedLogHash {\n fn serialize(self) -> [Field; SCOPED_ENCRYPTED_LOG_HASH_LENGTH] {\n array_concat(self.log_hash.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_ENCRYPTED_LOG_HASH_LENGTH> for ScopedEncryptedLogHash {\n fn deserialize(values: [Field; SCOPED_ENCRYPTED_LOG_HASH_LENGTH]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n log_hash: reader.read_struct(EncryptedLogHash::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\nstruct NoteLogHash {\n value: Field,\n counter: u32,\n length: Field,\n note_hash_counter: u32,\n}\n\nimpl NoteLogHash {\n pub fn expose_to_public(self) -> LogHash {\n // Hide the actual counter and note hash counter when exposing it to the public kernel.\n // The counter is usually note_hash.counter + 1, so it can be revealing.\n // Expose as a LogHash rather than NoteLogHash to avoid bringing an unnec. 0 value around\n LogHash { value: self.value, counter: 0, length: self.length }\n }\n}\n\nimpl Ordered for NoteLogHash {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl OrderedValue<Field> for NoteLogHash {\n fn value(self) -> Field {\n self.value\n }\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Eq for NoteLogHash {\n fn eq(self, other: NoteLogHash) -> bool {\n (self.value == other.value)\n & (self.counter == other.counter)\n & (self.length == other.length) \n & (self.note_hash_counter == other.note_hash_counter) \n }\n}\n\nimpl Empty for NoteLogHash {\n fn empty() -> Self {\n NoteLogHash {\n value: 0,\n counter: 0,\n length: 0,\n note_hash_counter: 0,\n }\n }\n}\n\nimpl Serialize<NOTE_LOG_HASH_LENGTH> for NoteLogHash {\n fn serialize(self) -> [Field; NOTE_LOG_HASH_LENGTH] {\n [self.value, self.counter as Field, self.length, self.note_hash_counter as Field]\n }\n}\n\nimpl Deserialize<NOTE_LOG_HASH_LENGTH> for NoteLogHash {\n fn deserialize(values: [Field; NOTE_LOG_HASH_LENGTH]) -> Self {\n Self {\n value: values[0],\n counter: values[1] as u32,\n length: values[2],\n note_hash_counter: values[3] as u32,\n }\n }\n}\n"},"22":{"path":"std/embedded_curve_ops.nr","source":"use crate::ops::arith::{Add, Sub, Neg};\nuse crate::cmp::Eq;\n\n/// A point on the embedded elliptic curve\n/// By definition, the base field of the embedded curve is the scalar field of the proof system curve, i.e the Noir Field.\n/// x and y denotes the Weierstrass coordinates of the point, if is_infinite is false.\nstruct EmbeddedCurvePoint {\n x: Field,\n y: Field,\n is_infinite: bool\n}\n\nimpl EmbeddedCurvePoint {\n /// Elliptic curve point doubling operation\n /// returns the doubled point of a point P, i.e P+P\n fn double(self) -> EmbeddedCurvePoint {\n embedded_curve_add(self, self)\n }\n\n /// Returns the null element of the curve; 'the point at infinity'\n fn point_at_infinity() -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n }\n}\n\nimpl Add for EmbeddedCurvePoint {\n /// Adds two points P+Q, using the curve addition formula, and also handles point at infinity\n fn add(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint { \n embedded_curve_add(self, other)\n }\n}\n\nimpl Sub for EmbeddedCurvePoint {\n /// Points subtraction operation, using addition and negation\n fn sub(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint { \n self + other.neg()\n }\n}\n\nimpl Neg for EmbeddedCurvePoint {\n /// Negates a point P, i.e returns -P, by negating the y coordinate.\n /// If the point is at infinity, then the result is also at infinity.\n fn neg(self) -> EmbeddedCurvePoint { \n EmbeddedCurvePoint {\n x: self.x,\n y: -self.y,\n is_infinite: self.is_infinite\n }\n }\n}\n\nimpl Eq for EmbeddedCurvePoint {\n /// Checks whether two points are equal\n fn eq(self: Self, b: EmbeddedCurvePoint) -> bool {\n (self.is_infinite & b.is_infinite) | ((self.is_infinite == b.is_infinite) & (self.x == b.x) & (self.y == b.y))\n }\n}\n\n/// Scalar for the embedded curve represented as low and high limbs\n/// By definition, the scalar field of the embedded curve is base field of the proving system curve.\n/// It may not fit into a Field element, so it is represented with two Field elements; its low and high limbs.\nstruct EmbeddedCurveScalar {\n lo: Field,\n hi: Field,\n}\n\nimpl EmbeddedCurveScalar {\n pub fn new(lo: Field, hi: Field) -> Self {\n EmbeddedCurveScalar { lo, hi }\n }\n\n #[field(bn254)]\n fn from_field(scalar: Field) -> EmbeddedCurveScalar {\n let (a,b) = crate::field::bn254::decompose(scalar);\n EmbeddedCurveScalar { lo: a, hi: b }\n }\n}\n\nimpl Eq for EmbeddedCurveScalar {\n fn eq(self, other: Self) -> bool {\n (other.hi == self.hi) & (other.lo == self.lo)\n }\n}\n\n// Computes a multi scalar multiplication over the embedded curve.\n// For bn254, We have Grumpkin and Baby JubJub.\n// For bls12-381, we have JubJub and Bandersnatch.\n//\n// The embedded curve being used is decided by the \n// underlying proof system.\n// docs:start:multi_scalar_mul\npub fn multi_scalar_mul<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N]\n) -> EmbeddedCurvePoint\n// docs:end:multi_scalar_mul\n{\n let point_array = multi_scalar_mul_array_return(points, scalars);\n EmbeddedCurvePoint { x: point_array[0], y: point_array[1], is_infinite: point_array[2] as bool }\n}\n\n#[foreign(multi_scalar_mul)]\nfn multi_scalar_mul_array_return<let N: u32>(points: [EmbeddedCurvePoint; N], scalars: [EmbeddedCurveScalar; N]) -> [Field; 3] {}\n\n#[foreign(multi_scalar_mul)]\npub(crate) fn multi_scalar_mul_slice(points: [EmbeddedCurvePoint], scalars: [EmbeddedCurveScalar]) -> [Field; 3] {}\n\n// docs:start:fixed_base_scalar_mul\npub fn fixed_base_scalar_mul(scalar: EmbeddedCurveScalar) -> EmbeddedCurvePoint\n// docs:end:fixed_base_scalar_mul\n{\n let g1 = EmbeddedCurvePoint { x: 1, y: 17631683881184975370165255887551781615748388533673675138860, is_infinite: false };\n multi_scalar_mul([g1], [scalar])\n}\n\n// This is a hack as returning an `EmbeddedCurvePoint` from a foreign function in brillig returns a [BrilligVariable::SingleAddr; 2] rather than BrilligVariable::BrilligArray\n// as is defined in the brillig bytecode format. This is a workaround which allows us to fix this without modifying the serialization format.\n// docs:start:embedded_curve_add\nfn embedded_curve_add(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint\n) -> EmbeddedCurvePoint\n// docs:end:embedded_curve_add\n{\n let point_array = embedded_curve_add_array_return(point1, point2);\n let x = point_array[0];\n let y = point_array[1];\n EmbeddedCurvePoint { x, y, is_infinite: point_array[2] == 1 }\n}\n\n#[foreign(embedded_curve_add)]\nfn embedded_curve_add_array_return(_point1: EmbeddedCurvePoint, _point2: EmbeddedCurvePoint) -> [Field; 3] {}\n"},"223":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/append_only_tree_snapshot.nr","source":"struct AppendOnlyTreeSnapshot {\n root : Field,\n // TODO(Alvaro) change this to a u64\n next_available_leaf_index : u32\n}\n\nglobal APPEND_ONLY_TREE_SNAPSHOT_LENGTH: u32 = 2;\n\nimpl AppendOnlyTreeSnapshot {\n pub fn serialize(self) -> [Field; APPEND_ONLY_TREE_SNAPSHOT_LENGTH] {\n [self.root, self.next_available_leaf_index as Field]\n }\n\n pub fn deserialize(serialized: [Field; APPEND_ONLY_TREE_SNAPSHOT_LENGTH]) -> AppendOnlyTreeSnapshot {\n AppendOnlyTreeSnapshot { root: serialized[0], next_available_leaf_index: serialized[1] as u32 }\n }\n\n pub fn zero() -> Self {\n Self { root: 0, next_available_leaf_index: 0 }\n }\n}\n\nimpl Eq for AppendOnlyTreeSnapshot {\n fn eq(self, other : AppendOnlyTreeSnapshot) -> bool {\n (self.root == other.root) & (self.next_available_leaf_index == other.next_available_leaf_index)\n }\n}\n"},"224":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/call_context.nr","source":"use crate::{\n abis::function_selector::FunctionSelector, address::AztecAddress,\n constants::{CALL_CONTEXT_LENGTH, GENERATOR_INDEX__CALL_CONTEXT}, hash::pedersen_hash,\n traits::{Deserialize, Hash, Serialize, Empty}, utils::reader::Reader\n};\n\n// docs:start:call-context\nstruct CallContext {\n msg_sender : AztecAddress,\n storage_contract_address : AztecAddress,\n function_selector : FunctionSelector,\n\n is_delegate_call : bool,\n is_static_call : bool,\n}\n// docs:end:call-context\n\nimpl Eq for CallContext {\n fn eq(self, other: CallContext) -> bool {\n self.serialize() == other.serialize()\n }\n}\n\nimpl Hash for CallContext {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__CALL_CONTEXT)\n }\n}\n\nimpl Serialize<CALL_CONTEXT_LENGTH> for CallContext {\n fn serialize(self) -> [Field; CALL_CONTEXT_LENGTH] {\n let mut serialized: BoundedVec<Field, CALL_CONTEXT_LENGTH> = BoundedVec::new();\n\n serialized.push(self.msg_sender.to_field());\n serialized.push(self.storage_contract_address.to_field());\n serialized.push(self.function_selector.to_field());\n serialized.push(self.is_delegate_call as Field);\n serialized.push(self.is_static_call as Field);\n \n serialized.storage\n }\n}\n\nimpl Deserialize<CALL_CONTEXT_LENGTH> for CallContext {\n fn deserialize(serialized: [Field; CALL_CONTEXT_LENGTH]) -> CallContext {\n let mut reader = Reader::new(serialized);\n CallContext {\n msg_sender: AztecAddress::from_field(reader.read()),\n storage_contract_address: AztecAddress::from_field(reader.read()),\n function_selector: FunctionSelector::from_field(reader.read()),\n is_delegate_call: reader.read() as bool,\n is_static_call: reader.read() as bool,\n }\n }\n}\n\nimpl Empty for CallContext {\n fn empty() -> Self {\n CallContext {\n msg_sender: AztecAddress::empty(),\n storage_contract_address: AztecAddress::empty(),\n function_selector: FunctionSelector::empty(),\n is_delegate_call: false,\n is_static_call: false,\n }\n }\n}\n\n#[test]\nfn serialize_deserialize_of_empty() {\n let context = CallContext::empty();\n let serialized = context.serialize();\n let deserialized = CallContext::deserialize(serialized);\n assert(context.eq(deserialized));\n}\n\n#[test]\nfn test_eq() {\n let mut context1 = CallContext::empty();\n let mut context2 = CallContext::empty();\n\n context1.is_delegate_call = true;\n context2.is_delegate_call = true;\n\n let address: AztecAddress = AztecAddress::from_field(69420);\n context1.msg_sender = address;\n context2.msg_sender = address;\n\n assert(context1.eq(context2));\n}\n\n#[test(should_fail)]\nfn not_eq_test_eq() {\n let mut context1 = CallContext::empty();\n let mut context2 = CallContext::empty();\n\n context1.is_delegate_call = true;\n context2.is_delegate_call = false;\n\n let address1: AztecAddress = AztecAddress::from_field(69420);\n let address2: AztecAddress = AztecAddress::from_field(42069);\n\n context1.msg_sender = address1;\n context2.msg_sender = address2;\n\n assert(context1.eq(context2));\n}\n\n#[test]\nfn hash_smoke() {\n let context = CallContext::empty();\n let _hashed = context.hash();\n}\n"},"225":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/max_block_number.nr","source":"use crate::{constants::MAX_BLOCK_NUMBER_LENGTH, traits::{Deserialize, Serialize, Empty}};\n\nstruct MaxBlockNumber {\n _opt: Option<u32>\n}\n\nimpl Empty for MaxBlockNumber {\n fn empty() -> Self {\n Self { _opt: Option::none() }\n }\n}\n\nimpl Eq for MaxBlockNumber {\n fn eq(self, other: Self) -> bool {\n self._opt == other._opt\n }\n}\n\nimpl Serialize<MAX_BLOCK_NUMBER_LENGTH> for MaxBlockNumber {\n fn serialize(self) -> [Field; MAX_BLOCK_NUMBER_LENGTH] {\n [self._opt._is_some as Field, self._opt._value as Field]\n }\n}\n\nimpl Deserialize<MAX_BLOCK_NUMBER_LENGTH> for MaxBlockNumber {\n fn deserialize(serialized: [Field; MAX_BLOCK_NUMBER_LENGTH]) -> MaxBlockNumber {\n MaxBlockNumber {\n _opt: Option {\n _is_some: serialized[0] as bool,\n _value: serialized[1] as u32,\n }\n }\n }\n}\n\nimpl MaxBlockNumber {\n pub fn new(max_block_number: u32) -> Self {\n Self { _opt: Option::some(max_block_number) }\n }\n\n pub fn is_none(self) -> bool {\n self._opt.is_none()\n }\n\n pub fn is_some(self) -> bool {\n self._opt.is_some()\n }\n\n pub fn unwrap(self) -> u32 {\n self._opt.unwrap()\n }\n\n pub fn unwrap_unchecked(self) -> u32 {\n self._opt.unwrap_unchecked()\n }\n\n pub fn min(lhs: MaxBlockNumber, rhs: MaxBlockNumber) -> MaxBlockNumber {\n if rhs.is_none() {\n lhs // lhs might also be none, but in that case both would be\n } else {\n MaxBlockNumber::min_with_u32(lhs, rhs.unwrap_unchecked())\n }\n }\n\n pub fn min_with_u32(lhs: MaxBlockNumber, rhs: u32) -> MaxBlockNumber {\n if lhs._opt.is_none() {\n MaxBlockNumber::new(rhs)\n } else {\n let lhs_value = lhs._opt.unwrap_unchecked();\n\n MaxBlockNumber::new(if lhs_value < rhs { lhs_value } else { rhs })\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let item = MaxBlockNumber::empty();\n let serialized = item.serialize();\n let deserialized = MaxBlockNumber::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn zeroed_is_none() {\n // Large parts of the kernel rely on zeroed to initialize structs. This conveniently matches what `default` does,\n // and though we should eventually move everything to use `default`, it's good to check for now that both are\n // equivalent.\n let a = MaxBlockNumber::empty();\n assert(a.is_none());\n}\n\n#[test]\nfn serde_default() {\n let a = MaxBlockNumber::empty();\n let b = MaxBlockNumber::deserialize(a.serialize());\n assert(b.is_none());\n}\n\n#[test]\nfn serde_some() {\n let a = MaxBlockNumber::new(13);\n let b = MaxBlockNumber::deserialize(a.serialize());\n assert_eq(b.unwrap(), 13);\n}\n\n#[test(should_fail)]\nfn default_unwrap_panics() {\n let a = MaxBlockNumber::empty();\n let _ = a.unwrap();\n}\n\n#[test]\nfn min_default_default() {\n let a = MaxBlockNumber::empty();\n let b = MaxBlockNumber::empty();\n\n assert(MaxBlockNumber::min(a, b).is_none());\n}\n\n#[test]\nfn min_default_some() {\n let a = MaxBlockNumber::empty();\n let b = MaxBlockNumber::new(13);\n\n assert_eq(MaxBlockNumber::min(a, b).unwrap(), 13);\n assert_eq(MaxBlockNumber::min(b, a).unwrap(), 13);\n}\n\n#[test]\nfn min_some_some() {\n let a = MaxBlockNumber::new(13);\n let b = MaxBlockNumber::new(42);\n\n assert_eq(MaxBlockNumber::min(a, b).unwrap(), 13);\n assert_eq(MaxBlockNumber::min(b, a).unwrap(), 13);\n}\n\n#[test]\nfn min_with_u32_default() {\n let a = MaxBlockNumber::empty();\n let b = 42;\n\n assert_eq(MaxBlockNumber::min_with_u32(a, b).unwrap(), 42);\n}\n\n#[test]\nfn min_with_u32_some() {\n let a = MaxBlockNumber::new(13);\n let b = 42;\n let c = 8;\n\n assert_eq(MaxBlockNumber::min_with_u32(a, b).unwrap(), 13);\n assert_eq(MaxBlockNumber::min_with_u32(a, c).unwrap(), 8);\n}\n"},"228":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/function_data.nr","source":"use crate::{\n abis::function_selector::FunctionSelector,\n constants::{GENERATOR_INDEX__FUNCTION_DATA, FUNCTION_DATA_LENGTH}, hash::pedersen_hash,\n traits::{Serialize, Hash, Deserialize, Empty}\n};\n\nstruct FunctionData {\n selector : FunctionSelector,\n is_private : bool,\n}\n\nimpl Eq for FunctionData {\n fn eq(self, other: Self) -> bool {\n self.selector.eq(other.selector) &\n (self.is_private == other.is_private)\n }\n}\n\nimpl Serialize<FUNCTION_DATA_LENGTH> for FunctionData {\n // A field is ~256 bits\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/3057): Since, function data can fit into a Field,\n // This method will simply return a bit packed Field instead of hashing\n fn serialize(self) -> [Field; FUNCTION_DATA_LENGTH] {\n [\n self.selector.to_field(),\n self.is_private as Field,\n ]\n }\n}\n\nimpl Deserialize<FUNCTION_DATA_LENGTH> for FunctionData {\n fn deserialize(serialized: [Field; FUNCTION_DATA_LENGTH]) -> Self {\n Self {\n selector: FunctionSelector::from_field(serialized[0]),\n is_private: serialized[1] as bool,\n }\n }\n}\n\nimpl Hash for FunctionData {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__FUNCTION_DATA)\n }\n}\n\nimpl Empty for FunctionData {\n fn empty() -> Self {\n FunctionData {\n selector: FunctionSelector::empty(),\n is_private: false\n }\n }\n\n}\n\n#[test]\nfn serialization_of_empty() {\n let data = FunctionData::empty();\n let serialized = data.serialize();\n let deserialized = FunctionData::deserialize(serialized);\n assert(data.eq(deserialized));\n}\n\n#[test]\nfn empty_hash() {\n let data = FunctionData::empty();\n let hash = data.hash();\n\n // Value from function_data.test.ts \"computes empty function data hash\" test\n let test_data_empty_hash = 0x27b1d0839a5b23baf12a8d195b18ac288fcf401afb2f70b8a4b529ede5fa9fed;\n assert_eq(hash, test_data_empty_hash);\n}\n"},"235":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/messaging/l2_to_l1_message.nr","source":"use crate::{\n address::{AztecAddress, EthAddress},\n constants::{L2_TO_L1_MESSAGE_LENGTH, SCOPED_L2_TO_L1_MESSAGE_LENGTH},\n abis::side_effect::{Ordered, Scoped}, traits::{Deserialize, Empty, Serialize},\n utils::{arrays::array_concat, reader::Reader}\n};\n\n// Note: Not to be confused with L2ToL1Msg in Solidity\nstruct L2ToL1Message {\n recipient: EthAddress,\n content: Field,\n counter: u32,\n}\n\nimpl Ordered for L2ToL1Message {\n fn counter(self) -> u32 {\n self.counter\n }\n}\n\nimpl Empty for L2ToL1Message {\n fn empty() -> Self {\n Self {\n recipient: EthAddress::empty(),\n content: 0,\n counter: 0,\n }\n }\n}\n\nimpl Eq for L2ToL1Message {\n fn eq(self, other: Self) -> bool {\n (self.recipient == other.recipient) & (self.content == other.content) & (self.counter == other.counter)\n }\n}\n\nimpl Serialize<L2_TO_L1_MESSAGE_LENGTH> for L2ToL1Message {\n fn serialize(self) -> [Field; L2_TO_L1_MESSAGE_LENGTH] {\n [self.recipient.to_field(), self.content, self.counter as Field]\n }\n}\n\nimpl Deserialize<L2_TO_L1_MESSAGE_LENGTH> for L2ToL1Message {\n fn deserialize(values: [Field; L2_TO_L1_MESSAGE_LENGTH]) -> Self {\n Self {\n recipient: EthAddress::from_field(values[0]),\n content: values[1],\n counter: values[2] as u32,\n }\n }\n}\n\nimpl L2ToL1Message {\n pub fn scope(self, contract_address: AztecAddress) -> ScopedL2ToL1Message {\n ScopedL2ToL1Message { message: self, contract_address }\n }\n}\n\nstruct ScopedL2ToL1Message {\n message: L2ToL1Message,\n contract_address: AztecAddress,\n}\n\nimpl Scoped<L2ToL1Message> for ScopedL2ToL1Message {\n fn inner(self) -> L2ToL1Message {\n self.message\n }\n fn contract_address(self) -> AztecAddress {\n self.contract_address\n }\n}\n\nimpl Ordered for ScopedL2ToL1Message {\n fn counter(self) -> u32 {\n self.message.counter\n }\n}\n\nimpl Eq for ScopedL2ToL1Message {\n fn eq(self, other: ScopedL2ToL1Message) -> bool {\n (self.message == other.message)\n & (self.contract_address == other.contract_address) \n }\n}\n\nimpl Empty for ScopedL2ToL1Message {\n fn empty() -> Self {\n ScopedL2ToL1Message {\n message: L2ToL1Message::empty(),\n contract_address: AztecAddress::empty(),\n }\n }\n}\n\nimpl Serialize<SCOPED_L2_TO_L1_MESSAGE_LENGTH> for ScopedL2ToL1Message {\n fn serialize(self) -> [Field; SCOPED_L2_TO_L1_MESSAGE_LENGTH] {\n array_concat(self.message.serialize(), [self.contract_address.to_field()])\n }\n}\n\nimpl Deserialize<SCOPED_L2_TO_L1_MESSAGE_LENGTH> for ScopedL2ToL1Message {\n fn deserialize(values: [Field; SCOPED_L2_TO_L1_MESSAGE_LENGTH]) -> Self {\n let mut reader = Reader::new(values);\n let res = Self {\n message: reader.read_struct(L2ToL1Message::deserialize),\n contract_address: reader.read_struct(AztecAddress::deserialize),\n };\n reader.finish();\n res\n }\n}\n\n#[test]\nfn serialization_of_empty_l2() {\n let item = L2ToL1Message::empty();\n let serialized = item.serialize();\n let deserialized = L2ToL1Message::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n\n#[test]\nfn serialization_of_empty_scoped_l2() {\n let item = ScopedL2ToL1Message::empty();\n let serialized = item.serialize();\n let deserialized = ScopedL2ToL1Message::deserialize(serialized);\n assert(item.eq(deserialized));\n}\n"},"24":{"path":"std/field/mod.nr","source":"mod bn254;\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n pub fn to_le_bits(self: Self, bit_size: u32) -> [u1] {\n crate::assert_constant(bit_size);\n self.__to_le_bits(bit_size)\n }\n\n pub fn to_be_bits(self: Self, bit_size: u32) -> [u1] {\n crate::assert_constant(bit_size);\n self.__to_be_bits(bit_size)\n }\n\n #[builtin(to_le_bits)]\n fn __to_le_bits(self, _bit_size: u32) -> [u1] {}\n\n #[builtin(to_be_bits)]\n fn __to_be_bits(self, bit_size: u32) -> [u1] {}\n\n #[builtin(apply_range_constraint)]\n fn __assert_max_bit_size(self, bit_size: u32) {}\n\n pub fn assert_max_bit_size(self: Self, bit_size: u32) {\n crate::assert_constant(bit_size);\n assert(bit_size < modulus_num_bits() as u32);\n self.__assert_max_bit_size(bit_size);\n }\n\n pub fn to_le_bytes(self: Self, byte_size: u32) -> [u8] {\n self.to_le_radix(256, byte_size)\n }\n\n pub fn to_be_bytes(self: Self, byte_size: u32) -> [u8] {\n self.to_be_radix(256, byte_size)\n }\n\n pub fn to_le_radix(self: Self, radix: u32, result_len: u32) -> [u8] {\n crate::assert_constant(radix);\n crate::assert_constant(result_len);\n self.__to_le_radix(radix, result_len)\n }\n\n pub fn to_be_radix(self: Self, radix: u32, result_len: u32) -> [u8] {\n crate::assert_constant(radix);\n crate::assert_constant(result_len);\n self.__to_be_radix(radix, result_len)\n }\n\n // decompose `_self` into a `_result_len` vector over the `_radix` basis\n // `_radix` must be less than 256\n #[builtin(to_le_radix)]\n fn __to_le_radix(self, radix: u32, result_len: u32) -> [u8] {}\n\n #[builtin(to_be_radix)]\n fn __to_be_radix(self, radix: u32, result_len: u32) -> [u8] {}\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b = exponent.to_le_bits(32);\n\n for i in 1..33 {\n r *= r;\n r = (b[32-i] as Field) * (r * self) + (1 - b[32-i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x ∈ {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\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 + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n let num_bytes = (modulus_num_bits() as u32 + 7) / 8;\n let x_bytes = x.to_le_bytes(num_bytes);\n let y_bytes = y.to_le_bytes(num_bytes);\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..num_bytes {\n if (!done) {\n let x_byte = x_bytes[num_bytes - 1 - i] as u8;\n let y_byte = y_bytes[num_bytes - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n}\n\n"},"243":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr","source":"use crate::utils::field::field_from_bytes;\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, let N: u32>(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}\nimpl<let N: u32> ToField for str<N> {\n fn to_field(self) -> Field {\n assert(N < 32, \"String doesn't fit in a field, consider using Serialize instead\");\n field_from_bytes(self.as_bytes(), true)\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<let N: u32> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\nimpl<let N: u32> Serialize<N> for [Field; N] {\n fn serialize(self) -> [Field; N] {\n self\n }\n}\nimpl<let N: u32> Serialize<N> for str<N> {\n fn serialize(self) -> [Field; N] {\n let mut result = [0; N];\n let bytes: [u8; N] = self.as_bytes();\n for i in 0..N {\n result[i] = field_from_bytes([bytes[i];1], true);\n }\n result\n }\n}\n\n// docs:start:deserialize\ntrait Deserialize<let N: u32> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n\nimpl<let N: u32> Deserialize<N> for [Field; N] {\n fn deserialize(fields: [Field; N]) -> Self {\n fields\n }\n}\n"},"244":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/debug_log.nr","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)]\nunconstrained fn debug_log_oracle<let M: u32>(_msg: str<M>, args: [Field]) {}\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]);\n/// debug_log_format(\"whole array: {}\", [e1, e2, e3, e4]);\nunconstrained pub fn debug_log_format<let M: u32, let N: u32>(msg: str<M>, args: [Field; N]) {\n debug_log_oracle(msg, args.as_slice());\n}\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<let N: u32>(msg: str<N>) {\n debug_log_format(msg, []);\n}\n"},"245":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/content_commitment.nr","source":"use crate::{\n constants::CONTENT_COMMITMENT_LENGTH, traits::{Deserialize, Empty, Hash, Serialize},\n utils::arr_copy_slice\n};\n\nstruct ContentCommitment {\n num_txs: Field,\n txs_effects_hash: Field,\n in_hash: Field,\n out_hash: Field,\n}\n\nimpl Serialize<CONTENT_COMMITMENT_LENGTH> for ContentCommitment {\n fn serialize(self) -> [Field; CONTENT_COMMITMENT_LENGTH] {\n let mut fields: BoundedVec<Field, CONTENT_COMMITMENT_LENGTH> = BoundedVec::new();\n\n fields.push(self.num_txs);\n fields.push(self.txs_effects_hash);\n fields.push(self.in_hash);\n fields.push(self.out_hash);\n\n fields.storage\n }\n}\n\nimpl Deserialize<CONTENT_COMMITMENT_LENGTH> for ContentCommitment {\n fn deserialize(serialized: [Field; CONTENT_COMMITMENT_LENGTH]) -> Self {\n let num_txs = serialized[0];\n\n let txs_effects_hash = serialized[1];\n\n let in_hash = serialized[2];\n\n let out_hash = serialized[3];\n\n Self {\n num_txs,\n txs_effects_hash,\n in_hash,\n out_hash,\n }\n }\n}\n\nimpl Empty for ContentCommitment {\n fn empty() -> Self {\n Self {\n num_txs: 0,\n txs_effects_hash: 0,\n in_hash: 0,\n out_hash: 0,\n }\n }\n}\n\nimpl Eq for ContentCommitment {\n fn eq(self, other: Self) -> bool {\n (self.num_txs == other.num_txs)\n & (self.txs_effects_hash == other.txs_effects_hash)\n & (self.in_hash == other.in_hash)\n & (self.out_hash == other.out_hash)\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let empty = ContentCommitment::empty();\n let serialized = empty.serialize();\n let deserialized = ContentCommitment::deserialize(serialized);\n\n assert(empty.eq(deserialized));\n}\n"},"247":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/header.nr","source":"use crate::{\n abis::{\n append_only_tree_snapshot::{AppendOnlyTreeSnapshot, APPEND_ONLY_TREE_SNAPSHOT_LENGTH},\n global_variables::{GlobalVariables, GLOBAL_VARIABLES_LENGTH}\n},\n constants::{GENERATOR_INDEX__BLOCK_HASH, HEADER_LENGTH, STATE_REFERENCE_LENGTH, CONTENT_COMMITMENT_LENGTH},\n hash::pedersen_hash, state_reference::StateReference, traits::{Deserialize, Empty, Hash, Serialize},\n utils::arr_copy_slice, content_commitment::ContentCommitment\n};\n\n// docs:start:header\nstruct Header {\n last_archive: AppendOnlyTreeSnapshot,\n content_commitment: ContentCommitment,\n state: StateReference,\n global_variables: GlobalVariables,\n total_fees: Field\n}\n// docs:end:header\n\nimpl Eq for Header {\n fn eq(self, other: Self) -> bool {\n self.last_archive.eq(other.last_archive) &\n self.content_commitment.eq(other.content_commitment) &\n self.state.eq(other.state) &\n self.global_variables.eq(other.global_variables) &\n self.total_fees.eq(other.total_fees)\n }\n}\n\nimpl Serialize<HEADER_LENGTH> for Header {\n fn serialize(self) -> [Field; HEADER_LENGTH] {\n let mut fields: BoundedVec<Field, HEADER_LENGTH> = BoundedVec::new();\n\n fields.extend_from_array(self.last_archive.serialize());\n fields.extend_from_array(self.content_commitment.serialize());\n fields.extend_from_array(self.state.serialize());\n fields.extend_from_array(self.global_variables.serialize());\n fields.push(self.total_fees);\n\n fields.storage\n }\n}\n\nimpl Deserialize<HEADER_LENGTH> for Header {\n fn deserialize(serialized: [Field; HEADER_LENGTH]) -> Self {\n let mut offset = 0;\n\n let last_archive_fields = arr_copy_slice(serialized, [0; APPEND_ONLY_TREE_SNAPSHOT_LENGTH], offset);\n offset = offset + APPEND_ONLY_TREE_SNAPSHOT_LENGTH;\n\n let content_commitment_fields = arr_copy_slice(serialized, [0; CONTENT_COMMITMENT_LENGTH], offset);\n offset = offset + CONTENT_COMMITMENT_LENGTH;\n\n let state_fields = arr_copy_slice(serialized, [0; STATE_REFERENCE_LENGTH], offset);\n offset = offset + STATE_REFERENCE_LENGTH;\n\n let global_variables_fields = arr_copy_slice(serialized, [0; GLOBAL_VARIABLES_LENGTH], offset);\n offset = offset + GLOBAL_VARIABLES_LENGTH;\n\n let total_fees = serialized[offset];\n\n Header {\n last_archive: AppendOnlyTreeSnapshot::deserialize(last_archive_fields),\n content_commitment: ContentCommitment::deserialize(content_commitment_fields),\n state: StateReference::deserialize(state_fields),\n global_variables: GlobalVariables::deserialize(global_variables_fields),\n total_fees\n }\n }\n}\n\nimpl Empty for Header {\n fn empty() -> Self {\n Self {\n last_archive: AppendOnlyTreeSnapshot::zero(),\n content_commitment: ContentCommitment::empty(),\n state: StateReference::empty(),\n global_variables: GlobalVariables::empty(),\n total_fees: 0\n }\n }\n}\n\nimpl Hash for Header {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__BLOCK_HASH)\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let header = Header::empty();\n let serialized = header.serialize();\n let deserialized = Header::deserialize(serialized);\n assert(header.eq(deserialized));\n}\n\n#[test]\nfn hash_smoke() {\n let header = Header::empty();\n let _hashed = header.hash();\n}\n\n#[test]\nfn empty_hash_is_zero() {\n let header = Header::empty();\n let hash = header.hash();\n\n // Value from new_contract_data.test.ts \"computes empty hash\" test\n let test_data_empty_hash = 0x124e8c40a6eca2e3ad10c04050b01a3fad00df3cea47b13592c7571b6914c7a7;\n assert_eq(hash, test_data_empty_hash);\n}\n"},"248":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr","source":"use crate::{\n abis::{\n contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage,\n function_selector::FunctionSelector, log_hash::{LogHash, ScopedLogHash, ScopedEncryptedLogHash},\n note_hash::ScopedNoteHash, nullifier::ScopedNullifier\n},\n address::{AztecAddress, EthAddress},\n constants::{\n FUNCTION_TREE_HEIGHT, GENERATOR_INDEX__SILOED_NOTE_HASH, GENERATOR_INDEX__OUTER_NULLIFIER,\n GENERATOR_INDEX__VK, GENERATOR_INDEX__NOTE_HASH_NONCE, GENERATOR_INDEX__UNIQUE_NOTE_HASH,\n MAX_ENCRYPTED_LOGS_PER_TX, MAX_NOTE_ENCRYPTED_LOGS_PER_TX\n},\n merkle_tree::root::root_from_sibling_path, messaging::l2_to_l1_message::ScopedL2ToL1Message,\n recursion::verification_key::VerificationKey, traits::is_empty,\n utils::field::field_from_bytes_32_trunc\n};\nuse std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<let N: u32>(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 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\nfn compute_note_hash_nonce(tx_hash: Field, note_index_in_tx: u32) -> Field {\n // Hashing tx hash with note index in tx is guaranteed to be unique\n pedersen_hash(\n [\n tx_hash,\n note_index_in_tx as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_note_hash(nonce: Field, inner_note_hash: Field) -> Field {\n let inputs = [nonce, inner_note_hash];\n pedersen_hash(inputs, GENERATOR_INDEX__UNIQUE_NOTE_HASH)\n}\n\npub fn compute_siloed_note_hash(app: AztecAddress, unique_note_hash: Field) -> Field {\n pedersen_hash(\n [\n app.to_field(),\n unique_note_hash\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_note_hash(note_hash: ScopedNoteHash, tx_hash: Field, note_index_in_tx: u32) -> Field {\n if note_hash.contract_address.is_zero() {\n 0\n } else {\n let nonce = compute_note_hash_nonce(tx_hash, note_index_in_tx);\n let unique_note_hash = compute_unique_note_hash(nonce, note_hash.value());\n compute_siloed_note_hash(note_hash.contract_address, unique_note_hash)\n }\n}\n\npub fn compute_siloed_nullifier(app: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n app.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn silo_nullifier(nullifier: ScopedNullifier) -> Field {\n if nullifier.contract_address.is_zero() {\n nullifier.value() // Return value instead of 0 because the first nullifier's contract address is zero.\n } else {\n compute_siloed_nullifier(nullifier.contract_address, nullifier.value())\n }\n}\n\npub fn compute_siloed_encrypted_log_hash(address: AztecAddress, randomness: Field, log_hash: Field) -> Field {\n // TODO: Using 0 GENERATOR_INDEX here as interim before we move to posiedon\n // NB: A unique separator will be needed for masked_contract_address\n let mut masked_contract_address = pedersen_hash([address.to_field(), randomness], 0);\n if randomness == 0 {\n // In some cases, we actually want to reveal the contract address we are siloing with:\n // e.g. 'handshaking' contract w/ known address\n // An app providing randomness = 0 signals to not mask the address.\n masked_contract_address = address.to_field();\n }\n accumulate_sha256([masked_contract_address, log_hash])\n}\n\npub fn silo_encrypted_log_hash(log_hash: ScopedEncryptedLogHash) -> Field {\n if log_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_encrypted_log_hash(\n log_hash.contract_address,\n log_hash.log_hash.randomness,\n log_hash.log_hash.value\n )\n }\n}\n\nfn compute_siloed_unencrypted_log_hash(address: AztecAddress, log_hash: Field) -> Field {\n accumulate_sha256([address.to_field(), log_hash])\n}\n\npub fn silo_unencrypted_log_hash(log_hash: ScopedLogHash) -> Field {\n if log_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_unencrypted_log_hash(log_hash.contract_address, log_hash.value())\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 recipient: EthAddress,\n content: Field,\n rollup_version_id: Field,\n chain_id: Field\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [contract_address.to_field(), rollup_version_id, recipient.to_field(), chain_id, content];\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\npub fn silo_l2_to_l1_message(msg: ScopedL2ToL1Message, rollup_version_id: Field, chain_id: Field) -> Field {\n if msg.contract_address.is_zero() {\n 0\n } else {\n compute_l2_to_l1_hash(\n msg.contract_address,\n msg.message.recipient,\n msg.message.content,\n rollup_version_id,\n chain_id\n )\n }\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\n// Computes the final logs hash for a tx.\n// NB: this assumes MAX_ENCRYPTED_LOGS_PER_TX == MAX_UNENCRYPTED_LOGS_PER_TX\n// to avoid doubling code, since we can't define the byte len to be 32*N directly.\npub fn compute_tx_logs_hash(logs: [LogHash; MAX_ENCRYPTED_LOGS_PER_TX]) -> Field {\n // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n let mut hash_input_flattened = [0; MAX_ENCRYPTED_LOGS_PER_TX * 32];\n for offset in 0..MAX_ENCRYPTED_LOGS_PER_TX {\n let input_as_bytes = logs[offset].value.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 // Ideally we would push to a slice then hash, but there is no sha_slice\n // Hardcode to 256 bytes for now\n let mut hash = sha256_to_field(hash_input_flattened);\n // Not having a 0 value hash for empty logs causes issues with empty txs\n // used for padding. Returning early is currently unsupported.\n // We always provide sorted logs here, so 0 being empty means all are empty.\n if is_empty(logs[0]) {\n hash = 0;\n }\n hash\n}\n\npub fn compute_tx_note_logs_hash(logs: [LogHash; MAX_NOTE_ENCRYPTED_LOGS_PER_TX]) -> Field {\n // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n let mut hash_input_flattened = [0; MAX_NOTE_ENCRYPTED_LOGS_PER_TX * 32];\n for offset in 0..MAX_NOTE_ENCRYPTED_LOGS_PER_TX {\n let input_as_bytes = logs[offset].value.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 // Ideally we would push to a slice then hash, but there is no sha_slice\n // Hardcode to 256 bytes for now\n let mut hash = sha256_to_field(hash_input_flattened);\n // Not having a 0 value hash for empty logs causes issues with empty txs\n // used for padding. Returning early is currently unsupported.\n // We always provide sorted logs here, so 0 being empty means all are empty.\n if is_empty(logs[0]) {\n hash = 0;\n }\n hash\n}\n\npub fn pedersen_hash<let N: u32>(inputs: [Field; N], hash_index: u32) -> Field {\n std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<let N: u32>(inputs: [Field; N]) -> Field {\n std::hash::poseidon2::Poseidon2::hash(inputs, N)\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_l2_l1_hash() {\n // All zeroes\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(0), EthAddress::zero(), 0, 0, 0);\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), EthAddress::from_field(3), 5, 2, 4);\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n"},"249":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/partial_state_reference.nr","source":"use crate::{\n abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot, constants::PARTIAL_STATE_REFERENCE_LENGTH,\n traits::{Deserialize, Empty, Serialize}\n};\n\nstruct PartialStateReference {\n note_hash_tree: AppendOnlyTreeSnapshot,\n nullifier_tree: AppendOnlyTreeSnapshot,\n public_data_tree: AppendOnlyTreeSnapshot,\n}\n\nimpl Eq for PartialStateReference {\n fn eq(self, other: PartialStateReference) -> bool {\n self.note_hash_tree.eq(other.note_hash_tree) &\n self.nullifier_tree.eq(other.nullifier_tree) &\n self.public_data_tree.eq(other.public_data_tree)\n }\n}\n\nimpl Serialize<PARTIAL_STATE_REFERENCE_LENGTH> for PartialStateReference {\n fn serialize(self) -> [Field; PARTIAL_STATE_REFERENCE_LENGTH] {\n let serialized_note_hash_tree = self.note_hash_tree.serialize();\n let serialized_nullifier_tree = self.nullifier_tree.serialize();\n let serialized_public_data_tree = self.public_data_tree.serialize();\n\n [\n serialized_note_hash_tree[0], \n serialized_note_hash_tree[1],\n serialized_nullifier_tree[0],\n serialized_nullifier_tree[1],\n serialized_public_data_tree[0],\n serialized_public_data_tree[1],\n ]\n }\n}\n\nimpl Deserialize<PARTIAL_STATE_REFERENCE_LENGTH> for PartialStateReference {\n fn deserialize(serialized: [Field; PARTIAL_STATE_REFERENCE_LENGTH]) -> PartialStateReference {\n PartialStateReference {\n note_hash_tree: AppendOnlyTreeSnapshot::deserialize(\n [serialized[0], serialized[1]]\n ),\n nullifier_tree: AppendOnlyTreeSnapshot::deserialize(\n [serialized[2], serialized[3]]\n ),\n public_data_tree: AppendOnlyTreeSnapshot::deserialize(\n [serialized[4], serialized[5]]\n ),\n }\n }\n}\n\nimpl Empty for PartialStateReference {\n fn empty() -> Self {\n Self {\n note_hash_tree: AppendOnlyTreeSnapshot::zero(),\n nullifier_tree: AppendOnlyTreeSnapshot::zero(),\n public_data_tree: AppendOnlyTreeSnapshot::zero(),\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let partial = PartialStateReference::empty();\n let _serialized = partial.serialize();\n let _deserialized = PartialStateReference::deserialize(_serialized);\n}\n"},"251":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/transaction/tx_context.nr","source":"use crate::{\n constants::{GENERATOR_INDEX__TX_CONTEXT, TX_CONTEXT_LENGTH}, hash::pedersen_hash,\n traits::{Deserialize, Hash, Serialize, Empty}, utils::reader::Reader,\n abis::gas_settings::GasSettings\n};\n\n// docs:start:tx-context\nstruct TxContext {\n chain_id : Field,\n version : Field,\n gas_settings: GasSettings,\n}\n// docs:end:tx-context\n\nimpl TxContext {\n pub fn new(chain_id: Field, version: Field, gas_settings: GasSettings) -> Self {\n TxContext { chain_id, version, gas_settings }\n }\n}\n\nimpl Eq for TxContext {\n fn eq(self, other: Self) -> bool {\n (self.chain_id == other.chain_id) &\n (self.version == other.version) &\n (self.gas_settings.eq(other.gas_settings))\n }\n}\n\nimpl Empty for TxContext {\n fn empty() -> Self {\n TxContext {\n chain_id: 0,\n version: 0,\n gas_settings: GasSettings::empty(),\n }\n }\n}\n\nimpl Serialize<TX_CONTEXT_LENGTH> for TxContext {\n fn serialize(self) -> [Field; TX_CONTEXT_LENGTH] {\n let mut fields: BoundedVec<Field, TX_CONTEXT_LENGTH> = BoundedVec::new();\n\n fields.push(self.chain_id);\n fields.push(self.version);\n fields.extend_from_array(self.gas_settings.serialize());\n\n assert_eq(fields.len(), TX_CONTEXT_LENGTH);\n\n fields.storage\n }\n}\n\nimpl Deserialize<TX_CONTEXT_LENGTH> for TxContext {\n fn deserialize(serialized: [Field; TX_CONTEXT_LENGTH]) -> Self {\n // TODO(#4390): This should accept a reader ^ to avoid copying data.\n let mut reader = Reader::new(serialized);\n\n let context = Self {\n chain_id: reader.read(),\n version: reader.read(),\n gas_settings: reader.read_struct(GasSettings::deserialize),\n };\n\n reader.finish();\n context\n }\n}\n\nimpl Hash for TxContext {\n fn hash(self) -> Field {\n pedersen_hash(self.serialize(), GENERATOR_INDEX__TX_CONTEXT)\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let context = TxContext::empty();\n let serialized = context.serialize();\n let deserialized = TxContext::deserialize(serialized);\n assert(context.eq(deserialized));\n}\n\n#[test]\nfn empty_hash() {\n let context = TxContext::empty();\n let hash = context.hash();\n\n // Value from tx_context.test.ts \"computes empty item hash\" test\n let test_data_empty_hash = 0x17e4357684c5a4349b4587c95b0b6161dcb4a3c5b02d4eb2ecc3b02c80193261;\n assert_eq(hash, test_data_empty_hash);\n}\n"},"257":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/state_reference.nr","source":"use crate::{\n abis::append_only_tree_snapshot::{AppendOnlyTreeSnapshot, APPEND_ONLY_TREE_SNAPSHOT_LENGTH},\n constants::{PARTIAL_STATE_REFERENCE_LENGTH, STATE_REFERENCE_LENGTH},\n partial_state_reference::PartialStateReference, traits::{Deserialize, Empty, Hash, Serialize},\n utils::arr_copy_slice\n};\n\nstruct StateReference {\n l1_to_l2_message_tree: AppendOnlyTreeSnapshot,\n partial: PartialStateReference,\n}\n\nimpl Eq for StateReference {\n fn eq(self, other: StateReference) -> bool {\n self.l1_to_l2_message_tree.eq(other.l1_to_l2_message_tree) &\n self.partial.eq(other.partial)\n }\n}\n\nimpl Serialize<STATE_REFERENCE_LENGTH> for StateReference {\n fn serialize(self) -> [Field; STATE_REFERENCE_LENGTH] {\n let mut fields: BoundedVec<Field, STATE_REFERENCE_LENGTH> = BoundedVec::new();\n\n fields.extend_from_array(self.l1_to_l2_message_tree.serialize());\n fields.extend_from_array(self.partial.serialize());\n\n fields.storage\n }\n}\n\nimpl Deserialize<STATE_REFERENCE_LENGTH> for StateReference {\n fn deserialize(serialized: [Field; STATE_REFERENCE_LENGTH]) -> StateReference {\n let mut offset = 0;\n\n let l1_to_l2_message_tree_fields = arr_copy_slice(serialized, [0; APPEND_ONLY_TREE_SNAPSHOT_LENGTH], offset);\n offset = offset + APPEND_ONLY_TREE_SNAPSHOT_LENGTH;\n\n let partial_fields = arr_copy_slice(serialized, [0; PARTIAL_STATE_REFERENCE_LENGTH], offset);\n\n StateReference {\n l1_to_l2_message_tree: AppendOnlyTreeSnapshot::deserialize(l1_to_l2_message_tree_fields),\n partial: PartialStateReference::deserialize(partial_fields),\n }\n }\n}\n\nimpl Empty for StateReference {\n fn empty() -> Self {\n Self {\n l1_to_l2_message_tree: AppendOnlyTreeSnapshot::zero(),\n partial: PartialStateReference::empty(),\n }\n }\n}\n\n#[test]\nfn serialization_of_empty() {\n let state = StateReference::empty();\n let _serialized = state.serialize();\n let _deserialized = StateReference::deserialize(_serialized);\n}\n"},"27":{"path":"std/hash/mod.nr","source":"mod poseidon;\nmod mimc;\nmod poseidon2;\nmod keccak;\n\nuse crate::default::Default;\nuse crate::uint128::U128;\nuse crate::sha256::{digest, sha256_var};\nuse crate::collections::vec::Vec;\nuse crate::embedded_curve_ops::{EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_slice};\n\n#[foreign(sha256)]\n// docs:start:sha256\npub fn sha256<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:sha256\n{}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n#[foreign(blake3)]\n// docs:start:blake3\npub fn blake3<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment<let N: u32>(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\npub fn pedersen_hash_with_separator<let N: u32>(input: [Field; N], separator: u32) -> Field {\n __pedersen_hash_with_separator(input, separator)\n}\n\nfn pedersen_commitment_with_separator<let N: u32>(input: [Field; N], separator: u32) -> EmbeddedCurvePoint {\n let value = __pedersen_commitment_with_separator(input, separator);\n if (value[0] == 0) & (value[1] == 0) {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n } else {\n EmbeddedCurvePoint { x: value[0], y: value[1], is_infinite: false }\n }\n}\n\nfn pedersen_commitment_with_separator_noir<let N: u32>(input: [Field; N], separator: u32) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constraint the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\nfn pedersen_hash_with_separator_noir<let N: u32>(input: [Field; N], separator: u32) -> Field {\n let mut scalars: Vec<EmbeddedCurveScalar> = Vec::from_slice([EmbeddedCurveScalar { lo: 0, hi: 0 }; N].as_slice()); //Vec::new();\n\n for i in 0..N {\n scalars.set(i, from_field_unsafe(input[i]));\n }\n scalars.push(EmbeddedCurveScalar { lo: N as Field, hi: 0 });\n let domain_generators :[EmbeddedCurvePoint; N]= derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n let mut vec_generators = Vec::from_slice(domain_generators.as_slice());\n let length_generator : [EmbeddedCurvePoint; 1] = derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n vec_generators.push(length_generator[0]);\n multi_scalar_mul_slice(vec_generators.slice, scalars.slice)[0]\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash<let N: u32>(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n __pedersen_hash_with_separator(input, 0)\n}\n\n#[foreign(pedersen_hash)]\nfn __pedersen_hash_with_separator<let N: u32>(input: [Field; N], separator: u32) -> Field {}\n\n#[foreign(pedersen_commitment)]\nfn __pedersen_commitment_with_separator<let N: u32>(input: [Field; N], separator: u32) -> [Field; 2] {}\n\n#[field(bn254)]\nfn derive_generators<let N: u32, let M: u32>(domain_separator_bytes: [u8; M], starting_index: u32) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n crate::assert_constant(starting_index);\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators<let N: u32, let M: u32>(\n domain_separator_bytes: [u8; M],\n starting_index: u32\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n // Same as from_field but:\n // does not assert the limbs are 128 bits\n // does not assert the decomposition does not overflow the EmbeddedCurveScalar\n fn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n let (xlo, xhi) = crate::field::bn254::decompose_hint(scalar);\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\npub fn hash_to_field(inputs: [Field]) -> Field {\n let mut sum = 0;\n\n for input in inputs {\n let input_bytes: [u8; 32] = input.to_le_bytes(32).as_array();\n sum += crate::field::bytes32_to_field(blake2s(input_bytes));\n }\n\n sum\n}\n\n// docs:start:keccak256\npub fn keccak256<let N: u32>(input: [u8; N], message_size: u32) -> [u8; 32]\n// docs:end:keccak256\n{\n crate::hash::keccak::keccak256(input, message_size)\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation<let N: u32>(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n#[foreign(sha256_compression)]\npub fn sha256_compression(_input: [u32; 16], _state: [u32; 8]) -> [u32; 8] {}\n\n// Generic hashing support. \n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\ntrait Hash{\n fn hash<H>(self, state: &mut H) where H: Hasher;\n}\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\ntrait Hasher{\n fn finish(self) -> Field;\n \n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\ntrait BuildHasher<H> where H: Hasher{\n fn build_hasher(self) -> H;\n}\n\nstruct BuildHasherDefault<H>;\n\nimpl<H> BuildHasher<H> for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn build_hasher(_self: Self) -> H{\n H::default()\n }\n}\n\nimpl<H> Default for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn default() -> Self{\n BuildHasherDefault{}\n } \n}\n\nimpl Hash for Field {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self);\n }\n}\n\nimpl Hash for u8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash<H>(_self: Self, _state: &mut H) where H: Hasher {}\n}\n\nimpl Hash for U128 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self.lo as Field);\n H::write(state, self.hi as Field);\n }\n}\n\nimpl<T, let N: u32> Hash for [T; N] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<T> Hash for [T] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<A, B> Hash for (A, B) where A: Hash, B: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl<A, B, C> Hash for (A, B, C) where A: Hash, B: Hash, C: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl<A, B, C, D> Hash for (A, B, C, D) where A: Hash, B: Hash, C: Hash, D: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl<A, B, C, D, E> Hash for (A, B, C, D, E) where A: Hash, B: Hash, C: Hash, D: Hash, E: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1), 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1), EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false\n }\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2), 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2), EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3), 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3), EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4), 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4), EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5), 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5), EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6), 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6), EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7), 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7), EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8), 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8), EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9), 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9), EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10), 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10), EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false\n }\n );\n}\n\n"},"271":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/reader.nr","source":"struct Reader<let N: u32> {\n data: [Field; N],\n offset: u32,\n}\n\nimpl<let N: u32> Reader<N> {\n pub fn new(data: [Field; N]) -> Self {\n Self { data, offset: 0 }\n }\n\n pub fn read(&mut self) -> Field {\n let result = self.data[self.offset];\n self.offset += 1;\n result\n }\n\n pub fn read_u32(&mut self) -> u32 {\n self.read() as u32\n }\n\n pub fn read_bool(&mut self) -> bool {\n self.read() as bool\n }\n\n pub fn read_array<let K: u32>(&mut self, mut result: [Field; K]) -> [Field; K] {\n for i in 0..K {\n result[i] = self.data[self.offset + i];\n }\n self.offset += K;\n result\n }\n\n // TODO(#4394)\n pub fn read_struct<T, let K: u32>(&mut self, deserialise: fn([Field; K]) -> T) -> T {\n let result = deserialise(self.read_array([0; K]));\n result\n }\n\n pub fn read_struct_array<T, let K: u32, let C: u32>(&mut self, deserialise: fn([Field; K]) -> T, mut result: [T; C]) -> [T; C] {\n for i in 0..C {\n result[i] = self.read_struct(deserialise);\n }\n result\n }\n\n pub fn finish(self) {\n assert(self.offset == self.data.len(), \"Reader did not read all data\");\n }\n}\n"},"283":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/mod.nr","source":"// general util packages/modules are usually bad practice\n// because there is no criteria for what we should not put in here.\n// Reducing the size of this package would be welcome.\n\nmod arrays;\nmod field;\nmod reader;\nmod uint256;\n\n// if predicate == true then return lhs, else return rhs\npub fn conditional_assign(predicate: bool, lhs: Field, rhs: Field) -> Field {\n if predicate { lhs } else { rhs }\n}\n\npub fn arr_copy_slice<T, let N: u32, let M: u32>(src: [T; N], mut dst: [T; M], offset: u32) -> [T; M] {\n let iterator_len = if N > M { M } else { N };\n for i in 0..iterator_len {\n dst[i] = src[i + offset];\n }\n dst\n}\n"},"297":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/eth_address.nr","source":"use crate::{\n constants::ETH_ADDRESS_LENGTH, hash::pedersen_hash,\n traits::{Empty, ToField, Serialize, Deserialize}, utils\n};\n\nstruct EthAddress{\n inner : Field\n}\n\nimpl Eq for EthAddress {\n fn eq(self, other : Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for EthAddress {\n fn empty() -> Self {\n Self {\n inner : 0\n }\n }\n}\n\nimpl ToField for EthAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn serialize(self: Self) -> [Field; ETH_ADDRESS_LENGTH] {\n [self.inner]\n }\n}\n\nimpl Deserialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn deserialize(fields: [Field; ETH_ADDRESS_LENGTH]) -> Self {\n EthAddress::from_field(fields[0])\n }\n}\n\nimpl EthAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn from_field(field: Field) -> Self {\n field.assert_max_bit_size(160);\n Self { inner: field }\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"},"298":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr","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_V1},\n contract_class_id::ContractClassId, hash::poseidon2_hash,\n traits::{Empty, FromField, 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 FromField for AztecAddress {\n fn from_field(value: Field) -> AztecAddress {\n AztecAddress { inner: value }\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 FromField::from_field(fields[0])\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn compute(pub_keys_hash: PublicKeysHash, partial_address: PartialAddress) -> AztecAddress {\n AztecAddress::from_field(\n poseidon2_hash([pub_keys_hash.to_field(), partial_address.to_field(), GENERATOR_INDEX__CONTRACT_ADDRESS_V1])\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_from_partial_and_pub_keys_hash() {\n let pub_keys_hash = PublicKeysHash::from_field(1);\n let partial_address = PartialAddress::from_field(2);\n\n let address = AztecAddress::compute(pub_keys_hash, partial_address);\n let expected_computed_address_from_partial_and_pubkey = 0x1b6ead051e7b42665064ca6cf1ec77da0a36d86e00d1ff6e44077966c0c3a9fa;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkey);\n}\n\n#[test]\nfn from_field_to_field() {\n let address = AztecAddress { inner: 37 };\n assert_eq(FromField::from_field(address.to_field()), address);\n}\n\n#[test]\nfn serde() {\n let address = AztecAddress { inner: 37 };\n assert_eq(Deserialize::deserialize(address.serialize()), address);\n}\n"},"32":{"path":"std/hash/poseidon2.nr","source":"use crate::hash::Hasher;\nuse crate::default::Default;\n\nglobal RATE: u32 = 3;\n\nstruct Poseidon2 {\n cache: [Field;3],\n state: [Field;4],\n cache_size: u32,\n squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2 {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n if message_size == N {\n Poseidon2::hash_internal(input, N, false)\n } else {\n Poseidon2::hash_internal(input, message_size, true)\n }\n }\n\n fn new(iv: Field) -> Poseidon2 {\n let mut result = Poseidon2 { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) -> [Field; RATE] {\n // zero-pad the cache\n for i in 0..RATE {\n if i >= self.cache_size {\n self.cache[i] = 0;\n }\n }\n // add the cache into sponge state\n for i in 0..RATE {\n self.state[i] += self.cache[i];\n }\n self.state = crate::hash::poseidon2_permutation(self.state, 4);\n // return `RATE` number of field elements from the sponge state.\n let mut result = [0; RATE];\n for i in 0..RATE {\n result[i] = self.state[i];\n }\n result\n }\n\n fn absorb(&mut self, input: Field) {\n if (!self.squeeze_mode) & (self.cache_size == RATE) {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n let _ = self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else if (!self.squeeze_mode) & (self.cache_size != RATE) {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n } else if self.squeeze_mode {\n // If we're in squeeze mode, switch to absorb mode and add the input into the cache.\n // N.B. I don't think this code path can be reached?!\n self.cache[0] = input;\n self.cache_size = 1;\n self.squeeze_mode = false;\n }\n }\n\n fn squeeze(&mut self) -> Field {\n if self.squeeze_mode & (self.cache_size == 0) {\n // If we're in squeze mode and the cache is empty, there is nothing left to squeeze out of the sponge!\n // Switch to absorb mode.\n self.squeeze_mode = false;\n self.cache_size = 0;\n }\n if !self.squeeze_mode {\n // If we're in absorb mode, apply sponge permutation to compress the cache, populate cache with compressed\n // state and switch to squeeze mode. Note: this code block will execute if the previous `if` condition was\n // matched\n let new_output_elements = self.perform_duplex();\n self.squeeze_mode = true;\n for i in 0..RATE {\n self.cache[i] = new_output_elements[i];\n }\n self.cache_size = RATE;\n }\n // By this point, we should have a non-empty cache. Pop one item off the top of the cache and return it.\n let result = self.cache[0];\n for i in 1..RATE {\n if i < self.cache_size {\n self.cache[i - 1] = self.cache[i];\n }\n }\n self.cache_size -= 1;\n self.cache[self.cache_size] = 0;\n result\n }\n\n fn hash_internal<let N: u32>(input: [Field; N], in_len: u32, is_variable_length: bool) -> Field {\n let two_pow_64 = 18446744073709551616;\n let iv : Field = (in_len as Field) * two_pow_64;\n let mut sponge = Poseidon2::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n\nstruct Poseidon2Hasher{\n _state: [Field],\n}\n\nimpl Hasher for Poseidon2Hasher {\n fn finish(self) -> Field {\n let iv : Field = (self._state.len() as Field)*18446744073709551616; // iv = (self._state.len() << 64)\n let mut sponge = Poseidon2::new(iv);\n for i in 0..self._state.len() {\n sponge.absorb(self._state[i]);\n }\n sponge.squeeze()\n }\n\n fn write(&mut self, input: Field){\n self._state = self._state.push_back(input);\n }\n}\n\nimpl Default for Poseidon2Hasher {\n fn default() -> Self {\n Poseidon2Hasher {\n _state: &[],\n }\n }\n}\n"},"392":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/auth_oracle.nr","source":"use dep::authwit::auth_witness;\nuse dep::aztec::{\n protocol_types::{address::PartialAddress, utils::arr_copy_slice},\n keys::{PublicKeys, PUBLIC_KEYS_LENGTH}\n};\n\nstruct AuthWitness {\n keys: PublicKeys,\n signature: [u8; 64],\n partial_address: PartialAddress,\n}\n\nimpl AuthWitness {\n fn deserialize(values: [Field; 77]) -> Self {\n let mut signature = [0; 64];\n for i in 0..64 {\n signature[i] = values[i + PUBLIC_KEYS_LENGTH] as u8;\n }\n Self {\n keys: PublicKeys::deserialize(arr_copy_slice(values, [0; PUBLIC_KEYS_LENGTH], 0)),\n signature,\n partial_address: PartialAddress::from_field(values[76])\n }\n }\n}\n\nunconstrained pub fn get_auth_witness(message_hash: Field) -> AuthWitness {\n let witness: [Field; 77] = auth_witness::get_auth_witness(message_hash);\n AuthWitness::deserialize(witness)\n}\n"},"393":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/main.nr","source":"mod util;\nmod auth_oracle;\n\ncontract SchnorrSingleKeyAccount {\n use dep::aztec::prelude::{AztecAddress, FunctionSelector, PrivateContext};\n\n use dep::authwit::{entrypoint::{app::AppPayload, fee::FeePayload}, account::AccountActions};\n\n use crate::{util::recover_address, auth_oracle::get_auth_witness};\n\n // Note: If you globally change the entrypoint signature don't forget to update default_entrypoint.ts\n #[aztec(private)]\n fn entrypoint(app_payload: AppPayload, fee_payload: FeePayload) {\n let actions = AccountActions::init(&mut context, is_valid_impl);\n actions.entrypoint(app_payload, fee_payload);\n }\n\n #[aztec(private)]\n #[aztec(view)]\n fn verify_private_authwit(inner_hash: Field) -> Field {\n let actions = AccountActions::init(&mut context, is_valid_impl);\n actions.verify_private_authwit(inner_hash)\n }\n\n #[contract_library_method]\n fn is_valid_impl(context: &mut PrivateContext, outer_hash: Field) -> bool {\n let witness = get_auth_witness(outer_hash);\n assert(recover_address(outer_hash, witness).eq(context.this_address()));\n true\n }\n}\n"},"394":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/util.nr","source":"use std::{schnorr::verify_signature_slice};\nuse dep::aztec::prelude::AztecAddress;\nuse crate::auth_oracle::AuthWitness;\n\npub fn recover_address(message_hash: Field, witness: AuthWitness) -> AztecAddress {\n let message_bytes = message_hash.to_be_bytes(32);\n // In a single key account contract we re-used ivpk_m as signing key\n let verification = verify_signature_slice(\n witness.keys.ivpk_m.x,\n witness.keys.ivpk_m.y,\n witness.signature,\n message_bytes\n );\n assert(verification == true);\n\n AztecAddress::compute(witness.keys.hash(), witness.partial_address)\n}\n"},"5":{"path":"std/collections/bounded_vec.nr","source":"use crate::{cmp::Eq, convert::From};\n\nstruct BoundedVec<T, let MaxLen: u32> {\n storage: [T; MaxLen],\n len: u32,\n}\n\nimpl<T, let MaxLen: u32> BoundedVec<T, MaxLen> {\n pub fn new() -> Self {\n let zeroed = crate::unsafe::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n /// Get an element from the vector at the given index.\n /// Panics if the given index points beyond the end of the vector (`self.len()`).\n pub fn get(self, index: u32) -> T {\n assert(index < self.len, \"Attempted to read past end of BoundedVec\");\n self.get_unchecked(index)\n }\n\n /// Get an element from the vector at the given index.\n /// Responds with undefined data for `index` where `self.len < index < self.max_len()`.\n pub fn get_unchecked(self, index: u32) -> T {\n self.storage[index]\n }\n\n /// Write an element to the vector at the given index.\n /// Panics if the given index points beyond the end of the vector (`self.len()`).\n pub fn set(&mut self, index: u32, value: T) {\n assert(index < self.len, \"Attempted to write past end of BoundedVec\");\n self.set_unchecked(index, value)\n }\n\n /// Write an element to the vector at the given index.\n /// Does not check whether the passed `index` is a valid index within the vector.\n ///\n /// Silently writes past the end of the vector for `index` where `self.len < index < self.max_len()`\n /// Panics if the given index points beyond the maximum length of the vector (`self.max_len()`).\n pub fn set_unchecked(&mut self, index: u32, value: T) {\n self.storage[index] = value;\n }\n\n pub fn push(&mut self, elem: T) {\n assert(self.len < MaxLen, \"push out of bounds\");\n\n self.storage[self.len] = elem;\n self.len += 1;\n }\n\n pub fn len(self) -> u32 {\n self.len\n }\n\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u32 {\n MaxLen\n }\n\n // This is a intermediate method, while we don't have an\n // .extend method\n pub fn storage(self) -> [T; MaxLen] {\n self.storage\n }\n\n pub fn extend_from_array<let Len: u32>(&mut self, array: [T; Len]) {\n let new_len = self.len + array.len();\n assert(new_len <= MaxLen, \"extend_from_array out of bounds\");\n for i in 0..array.len() {\n self.storage[self.len + i] = array[i];\n }\n self.len = new_len;\n }\n\n pub fn extend_from_slice(&mut self, slice: [T]) {\n let new_len = self.len + slice.len();\n assert(new_len <= MaxLen, \"extend_from_slice out of bounds\");\n for i in 0..slice.len() {\n self.storage[self.len + i] = slice[i];\n }\n self.len = new_len;\n }\n\n pub fn extend_from_bounded_vec<let Len: u32>(&mut self, vec: BoundedVec<T, Len>) {\n let append_len = vec.len();\n let new_len = self.len + append_len;\n assert(new_len <= MaxLen, \"extend_from_bounded_vec out of bounds\");\n\n let mut exceeded_len = false;\n for i in 0..Len {\n exceeded_len |= i == append_len;\n if !exceeded_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n }\n self.len = new_len;\n }\n\n pub fn from_array<let Len: u32>(array: [T; Len]) -> Self {\n assert(Len <= MaxLen, \"from array out of bounds\");\n let mut vec: BoundedVec<T, MaxLen> = BoundedVec::new();\n vec.extend_from_array(array);\n vec\n }\n\n pub fn pop(&mut self) -> T {\n assert(self.len > 0);\n self.len -= 1;\n\n let elem = self.storage[self.len];\n self.storage[self.len] = crate::unsafe::zeroed();\n elem\n }\n\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n let mut exceeded_len = false;\n for i in 0..MaxLen {\n exceeded_len |= i == self.len;\n if !exceeded_len {\n ret |= predicate(self.storage[i]);\n }\n }\n ret\n }\n\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n }\n ret\n }\n}\n\nimpl<T, let MaxLen: u32> Eq for BoundedVec<T, MaxLen> where T: Eq {\n fn eq(self, other: BoundedVec<T, MaxLen>) -> bool {\n // TODO: https://github.com/noir-lang/noir/issues/4837\n //\n // We make the assumption that the user has used the proper interface for working with `BoundedVec`s\n // rather than directly manipulating the internal fields as this can result in an inconsistent internal state.\n \n (self.len == other.len) & (self.storage == other.storage)\n }\n}\n\nimpl<T, let MaxLen: u32, let Len: u32> From<[T; Len]> for BoundedVec<T, MaxLen> {\n fn from(array: [T; Len]) -> BoundedVec<T, MaxLen> {\n BoundedVec::from_array(array)\n }\n}\n\nmod bounded_vec_tests {\n\n mod get {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_elements_past_end_of_vec() {\n let vec: BoundedVec<Field, 5> = BoundedVec::new();\n\n crate::println(vec.get(0));\n }\n }\n\n mod set {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn set_updates_values_properly() {\n let mut vec = BoundedVec::from_array([0, 0, 0, 0, 0]);\n\n vec.set(0, 42);\n assert_eq(vec.storage, [42, 0, 0, 0, 0]);\n\n vec.set(1, 43);\n assert_eq(vec.storage, [42, 43, 0, 0, 0]);\n\n vec.set(2, 44);\n assert_eq(vec.storage, [42, 43, 44, 0, 0]);\n\n vec.set(1, 10);\n assert_eq(vec.storage, [42, 10, 44, 0, 0]);\n\n vec.set(0, 0);\n assert_eq(vec.storage, [0, 10, 44, 0, 0]);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_writing_elements_past_end_of_vec() {\n let mut vec: BoundedVec<Field, 5> = BoundedVec::new();\n vec.set(0, 42);\n\n // Need to use println to avoid DIE removing the write operation.\n crate::println(vec.get(0));\n }\n }\n\n mod map {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-map-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| value * 2);\n // docs:end:bounded-vec-map-example\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.map(|value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.storage()[2], 0);\n }\n }\n\n mod from_array {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty() {\n let empty_array: [Field; 0] = [];\n let bounded_vec = BoundedVec::from_array([]);\n\n assert_eq(bounded_vec.max_len(), 0);\n assert_eq(bounded_vec.len(), 0);\n assert_eq(bounded_vec.storage(), empty_array);\n }\n\n #[test]\n fn equal_len() {\n let array = [1, 2, 3];\n let bounded_vec = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 3);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage(), array);\n }\n\n #[test]\n fn max_len_greater_then_array_len() {\n let array = [1, 2, 3];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage()[0], 1);\n assert_eq(bounded_vec.storage()[1], 2);\n assert_eq(bounded_vec.storage()[2], 3);\n }\n\n #[test(should_fail_with=\"from array out of bounds\")]\n fn max_len_lower_then_array_len() {\n let _: BoundedVec<Field, 2> = BoundedVec::from_array([0; 3]);\n }\n }\n\n mod trait_from {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn simple() {\n let array = [1, 2];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 2);\n assert_eq(bounded_vec.storage()[0], 1);\n assert_eq(bounded_vec.storage()[1], 2);\n }\n }\n\n mod trait_eq {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty_equality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n\n assert_eq(bounded_vec1, bounded_vec2);\n }\n\n #[test]\n fn inequality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n bounded_vec1.push(1);\n bounded_vec2.push(2);\n\n assert(bounded_vec1 != bounded_vec2);\n }\n }\n}\n"},"58":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/auth_witness.nr","source":"#[oracle(getAuthWitness)]\nunconstrained fn get_auth_witness_oracle<let N: u32>(_message_hash: Field) -> [Field; N] {}\n\n/**\n * Oracle wrapper to fetch an `auth_witness` for a given `message_hash` from the PXE.\n * \n * @param message_hash The hash of the message for which the `auth_witness` is to be fetched.\n * @return The `auth_witness` for the given `message_hash` as Field array.\n */\nunconstrained pub fn get_auth_witness<let N: u32>(message_hash: Field) -> [Field; N] {\n get_auth_witness_oracle(message_hash)\n}\n"},"59":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/auth.nr","source":"use dep::aztec::protocol_types::{\n abis::function_selector::FunctionSelector, address::AztecAddress,\n constants::{\n GENERATOR_INDEX__AUTHWIT_INNER, GENERATOR_INDEX__AUTHWIT_OUTER, GENERATOR_INDEX__AUTHWIT_NULLIFIER,\n CANONICAL_AUTH_REGISTRY_ADDRESS\n},\n hash::pedersen_hash\n};\nuse dep::aztec::{prelude::Deserialize, context::{PrivateContext, PublicContext, gas::GasOpts}, hash::hash_args_array};\n\n/**\n * Authenticaion witness helper library\n *\n * Authentication Witness is a scheme for authenticating actions on Aztec, so users can allow third-parties \n * (e.g. protocols or other users) to execute an action on their behalf.\n * \n * This library provides helper functions to manage such witnesses.\n * The authentication witness, is some \"witness\" (data) that authenticates a `message_hash`.\n * The simplest example of an authentication witness, is a signature. The signature is the \"evidence\",\n * that the signer has seen the message, agrees with it, and has allowed it.\n * It does not need to be a signature. It could be any kind of \"proof\" that the message is allowed.\n * Another proof could be knowing some kind of secret, or having some kind of \"token\" that allows the message.\n *\n * The `message_hash` is a hash of the following structure:\n * hash(consumer, chain_id, version, inner_hash)\n * - consumer: the address of the contract that is \"consuming\" the message,\n * - chain_id: the chain id of the chain that the message is being consumed on,\n * - version: the version of the chain that the message is being consumed on,\n * - inner_hash: the hash of the \"inner\" message that is being consumed, this is the \"actual\" message or action.\n *\n * While the `inner_hash` could be anything, such as showing you signed a specific message, it will often be \n * a hash of the \"action\" to approve, along with who made the call. As part of this library, we provide a few \n * helper functions to deal with such messages.\n *\n * For example, we provide helper function that is used for checking that the message is an encoding of the current call.\n * This can be used to let some contract \"allow\" another contract to act on its behalf, as long as it can \n * show that it is acting on behalf of the contract.\n *\n * If we take a case of allowing a contract to transfer tokens on behalf of an account, the `inner_hash` can be \n * derived as:\n * inner_hash = hash(caller, \"transfer\", hash(to, amount))\n * \n * Where the `caller` would be the address of the contract that is trying to transfer the tokens, and `to` and `amount`\n * the arguments for the transfer. \n * \n * Note that we have both a `caller` and a `consumer`, the `consumer` will be the contract that is consuming the message,\n * in the case of the transfer, it would be the `Token` contract itself, while the caller, will be the actor that is \n * allowed to transfer the tokens.\n *\n *\n * The authentication mechanism works differently in public and private contexts. In private, we recall that everything\n * is executed on the user's device, so we can use `oracles` to \"ask\" the user (not contract) for information. In public\n * we cannot do this, since it is executed by the sequencer (someone else). Therefore we can instead use a \"registry\"\n * to store the messages that we have approved.\n * \n * A simple example would be a \"token\" that is being \"pulled\" from one account into another. We will first outline \n * how this would look in private, and then in public later. \n *\n * Say that a user `Alice` wants to deposit some tokens into a DeFi protocol (say a DEX). \n * `Alice` would make a `deposit` transaction, that she is executing using her account contract. \n * The account would call the `DeFi` contract to execute `deposit`, which would try to pull funds from the `Token` \n * contract. Since the `DeFi` contract is trying to pull funds from an account that is not its own, it needs to \n * convince the `Token` contract that it is allowed to do so. \n * \n * This is where the authentication witness comes in! The `Token` contract computes a `message_hash` from the \n * `transfer` call, and then asks `Alice Account` contract to verify that the `DeFi` contract is allowed to \n * execute that call.\n * \n * `Alice Account` contract can then ask `Alice` if she wants to allow the `DeFi` contract to pull funds from her \n * account. If she does, she will sign the `message_hash` and return the signature to the `Alice Account` which\n * will validate it and return success to the `Token` contract which will then allow the `DeFi` contract to pull\n * funds from `Alice`.\n * \n * To ensure that the same \"approval\" cannot be used multiple times, we also compute a `nullifier` for the\n * authentication witness, and emit it from the `Token` contract (consumer).\n * \n * Note that we can do this flow as we are in private were we can do oracle calls out from contracts. \n * \n *\n * Person Contract Contract Contract\n * Alice Alice Account Token DeFi\n * | | | |\n * | Defi.deposit(Token, 1000) | |\n * |----------------->| | |\n * | | deposit(Token, 1000) |\n * | |---------------------------------------->|\n * | | | |\n * | | | transfer(Alice, Defi, 1000)\n * | | |<---------------------|\n * | | | |\n * | | Check if Defi may call transfer(Alice, Defi, 1000)\n * | |<-----------------| |\n * | | | |\n * | Please give me AuthWit for DeFi | |\n * | calling transfer(Alice, Defi, 1000) | |\n * |<-----------------| | |\n * | | | |\n * | | | |\n * | AuthWit for transfer(Alice, Defi, 1000) |\n * |----------------->| | |\n * | | AuthWit validity | |\n * | |----------------->| |\n * | | | |\n * | | throw if invalid AuthWit |\n * | | | |\n * | | emit AuthWit nullifier |\n * | | | |\n * | | transfer(Alice, Defi, 1000) |\n * | | | |\n * | | | |\n * | | | success |\n * | | |--------------------->|\n * | | | |\n * | | | |\n * | | | deposit(Token, 1000)\n * | | | |\n * | | | |\n *\n * \n * If we instead were in public, we cannot do the same flow. Instead we would use an authentication registry to store \n * the messages that we have approved. \n * \n * To approve a message, `Alice Account` can make a `set_authorized` call to the registry, to set a `message_hash`\n * as authorized. This is essentially a mapping from `message_hash` to `true` for `Alice Contract`. Every account\n * has its own map in the registry, so `Alice` cannot approve a message for `Bob`.\n *\n * The `Token` contract can then try to \"spend\" the approval by calling `consume` on the registry. If the message\n * was approved, the value is updated to `false`, and we return the success flag. For more information on the\n * registry, see `main.nr` in `auth_registry_contract`.\n *\n * Person Contract Contract Contract Contract\n * Alice Alice Account Registry Token DeFi\n * | | | | |\n * | Registry.set_authorized(..., true) | | |\n * |----------------->| | | |\n * | | set_authorized(..., true) | |\n * | |------------------->| | |\n * | | | | |\n * | | set authorized to true | |\n * | | | | |\n * | | | | |\n * | Defi.deposit(Token, 1000) | | |\n * |----------------->| | | |\n * | | deposit(Token, 1000) | |\n * | |-------------------------------------------------------------->|\n * | | | | |\n * | | | transfer(Alice, Defi, 1000) |\n * | | | |<---------------------|\n * | | | | |\n * | | | Check if Defi may call transfer(Alice, Defi, 1000)\n * | | |<------------------| |\n * | | | | |\n * | | throw if invalid AuthWit | |\n * | | | | |\n * | | | | |\n * | | set authorized to false | |\n * | | | | |\n * | | | | |\n * | | | AuthWit validity | |\n * | | |------------------>| |\n * | | | | |\n * | | | | transfer(Alice, Defi, 1000)\n * | | | |<-------------------->|\n * | | | | |\n * | | | | success |\n * | | | |--------------------->|\n * | | | | |\n * | | | | deposit(Token, 1000)\n * | | | | |\n *\n *\n * --- FAQ ---\n * Q: Why are we using a success flag of `keccak256(\"IS_VALID()\")` instead of just returning a boolean?\n * A: We want to make sure that we don't accidentally return `true` if there is a collision in the function selector.\n * By returning a hash of `IS_VALID()`, it becomes very unlikely that there is both a colission and we return \n * a success flag.\n * \n * Q: Why are we using static calls?\n * A: We are using static calls to ensure that the account contract cannot re-enter. If it was a normal call, it\n * could make a new call and do a re-entry attack. Using a static ensures that it cannot update any state.\n *\n * Q: Would it not be cheaper to use a nullifier instead of updating state in public?\n * A: At a quick glance, a public state update + nullifier is 96 bytes, but two state updates are 128, so it would be \n * cheaper to use a nullifier, if this is the way it would always be done. However, if both the approval and the \n * consumption is done in the same transaction, then we will be able to squash the updates (only final tx state diff is posted to DA), and now it is cheaper.\n * \n * Q: Why is the chain id and the version part of the message hash?\n * A: The chain id and the version is part of the message hash to ensure that the message is only valid on a specific\n * chain to avoid a case where the same message could be used across multiple chains. \n */\n\nglobal IS_VALID_SELECTOR = 0xabf64ad4; // 4 first bytes of keccak256(\"IS_VALID()\")\n\n/** \n * Assert that `on_behalf_of` have authorized the current call with a valid authentication witness\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n * \n * @param on_behalf_of The address that have authorized the current call\n */\n// docs:start:assert_current_call_valid_authwit\npub fn assert_current_call_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress) {\n let inner_hash = compute_inner_authwit_hash([context.msg_sender().to_field(), context.selector().to_field(), context.args_hash]);\n assert_inner_hash_valid_authwit(context, on_behalf_of, inner_hash);\n}\n// docs:end:assert_current_call_valid_authwit\n\n/** \n * Assert that a specific `inner_hash` is valid for the `on_behalf_of` address\n * \n * Used as an internal function for `assert_current_call_valid_authwit` and can be used as a standalone function when\n * the `inner_hash` is from a different source, e.g., say a block of text etc.\n * \n * @param on_behalf_of The address that have authorized the current call\n * @param inner_hash The hash of the message to authorize \n */\npub fn assert_inner_hash_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress, inner_hash: Field) {\n // We perform a static call here and not a standard one to ensure that the account contract cannot re-enter.\n let result: Field = context.static_call_private_function(\n on_behalf_of,\n FunctionSelector::from_signature(\"verify_private_authwit(Field)\"),\n [inner_hash]\n ).unpack_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n // Compute the nullifier, similar computation to the outer hash, but without the chain_id and version.\n // Those should already be handled in the verification, so we just need something to nullify, that allow same inner_hash for multiple actors.\n let nullifier = compute_authwit_nullifier(on_behalf_of, inner_hash);\n context.push_nullifier(nullifier, 0);\n}\n\n/** \n * Assert that `on_behalf_of` have authorized the current call in the authentication registry\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n * \n * Note that the authentication registry will take the `msg_sender` into account as the consumer, so this will only\n * work if the `msg_sender` is the same as the `consumer` when the `message_hash` was inserted into the registry.\n * \n * @param on_behalf_of The address that have authorized the current call\n */\n// docs:start:assert_current_call_valid_authwit_public\npub fn assert_current_call_valid_authwit_public(context: &mut PublicContext, on_behalf_of: AztecAddress) {\n let inner_hash = compute_inner_authwit_hash(\n [(*context).msg_sender().to_field(), (*context).selector().to_field(), (*context).get_args_hash()]\n );\n assert_inner_hash_valid_authwit_public(context, on_behalf_of, inner_hash);\n}\n// docs:end:assert_current_call_valid_authwit_public\n\n/** \n * Assert that `on_behalf_of` have authorized a speicifc `inner_hash` in the authentication registry\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n *\n * Note that the authentication registry will take the `msg_sender` into account as the consumer, so this will only\n * work if the `msg_sender` is the same as the `consumer` when the `message_hash` was inserted into the registry.\n * \n * @param on_behalf_of The address that have authorized the the `inner_hash`\n */\npub fn assert_inner_hash_valid_authwit_public(context: &mut PublicContext, on_behalf_of: AztecAddress, inner_hash: Field) {\n let result: Field = context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"consume((Field),Field)\"),\n [on_behalf_of.to_field(), inner_hash].as_slice(),\n GasOpts::default()\n ).deserialize_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n\n/**\n * Compute the `message_hash` from a function call to be used by an authentication witness \n * \n * Useful for when you need a non-account contract to approve during execution. For example if you need a contract\n * to make a call to nested contract, e.g., contract A wants to exit token T to L1 using bridge B, so it needs to allow\n * B to transfer T on its behalf.\n * \n * @param caller The address of the contract that is calling the function, in the example above, this would be B\n * @param consumer The address of the contract that is consuming the message, in the example above, this would be T\n * @param chain_id The chain id of the chain that the message is being consumed on\n * @param version The version of the chain that the message is being consumed on\n * @param selector The function selector of the function that is being called\n * @param args The arguments of the function that is being called\n */\n// docs:start:compute_authwit_message_hash_from_call\npub fn compute_authwit_message_hash_from_call<let N: u32>(\n caller: AztecAddress,\n consumer: AztecAddress,\n chain_id: Field,\n version: Field,\n selector: FunctionSelector,\n args: [Field; N]\n) -> Field {\n let args_hash = hash_args_array(args);\n let inner_hash = compute_inner_authwit_hash([caller.to_field(), selector.to_field(), args_hash]);\n compute_authwit_message_hash(consumer, chain_id, version, inner_hash)\n}\n// docs:end:compute_authwit_message_hash_from_call\n\n/**\n * Computes the `inner_hash` of the authentication witness\n * \n * This is used internally, but also useful in cases where you want to compute the `inner_hash` for a specific message\n * that is not necessarily a call, but just some \"bytes\" or text.\n * \n * @param args The arguments to hash\n */\npub fn compute_inner_authwit_hash<let N: u32>(args: [Field; N]) -> Field {\n pedersen_hash(args, GENERATOR_INDEX__AUTHWIT_INNER)\n}\n\n/** \n * Computs the `authwit_nullifier` for a specific `on_behalf_of` and `inner_hash`\n * \n * Using the `on_behalf_of` and the `inner_hash` to ensure that the nullifier is siloed for a specific `on_behalf_of`.\n * \n * @param on_behalf_of The address that have authorized the the `inner_hash`\n * @param inner_hash The hash of the message to authorize\n */\npub fn compute_authwit_nullifier(on_behalf_of: AztecAddress, inner_hash: Field) -> Field {\n pedersen_hash(\n [on_behalf_of.to_field(), inner_hash],\n GENERATOR_INDEX__AUTHWIT_NULLIFIER\n )\n}\n\n/**\n * Computes the `message_hash` for the authentication witness\n * \n * @param consumer The address of the contract that is consuming the message\n * @param chain_id The chain id of the chain that the message is being consumed on\n * @param version The version of the chain that the message is being consumed on\n * @param inner_hash The hash of the \"inner\" message that is being consumed\n */\npub fn compute_authwit_message_hash(consumer: AztecAddress, chain_id: Field, version: Field, inner_hash: Field) -> Field {\n pedersen_hash(\n [\n consumer.to_field(),\n chain_id,\n version,\n inner_hash\n ],\n GENERATOR_INDEX__AUTHWIT_OUTER\n )\n}\n\n/**\n * Helper function to set the authorization status of a message hash\n * \n * Wraps a public call to the authentication registry to set the authorization status of a `message_hash`\n * \n * @param message_hash The hash of the message to authorize\n * @param authorize True if the message should be authorized, false if it should be revoked\n */\npub fn set_authorized(context: &mut PublicContext, message_hash: Field, authorize: bool) {\n context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"set_authorized(Field,bool)\"),\n [message_hash, authorize as Field].as_slice(),\n GasOpts::default()\n ).assert_empty();\n}\n\n/**\n * Helper function to reject all authwits\n * \n * Wraps a public call to the authentication registry to set the `reject_all` flag\n *\n * @param reject True if all authwits should be rejected, false otherwise \n */\npub fn set_reject_all(context: &mut PublicContext, reject: bool) {\n context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"set_reject_all(bool)\"),\n [context.this_address().to_field(), reject as Field].as_slice(),\n GasOpts::default()\n ).assert_empty();\n}\n"},"60":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/account.nr","source":"use dep::aztec::context::{PrivateContext, PublicContext};\nuse dep::aztec::protocol_types::{address::AztecAddress, abis::function_selector::FunctionSelector, hash::pedersen_hash};\n\nuse crate::entrypoint::{app::AppPayload, fee::FeePayload};\nuse crate::auth::{IS_VALID_SELECTOR, compute_authwit_message_hash};\n\nstruct AccountActions<Context> {\n context: Context,\n is_valid_impl: fn(&mut PrivateContext, Field) -> bool,\n}\n\nimpl<Context> AccountActions<Context> {\n pub fn init(context: Context, is_valid_impl: fn(&mut PrivateContext, Field) -> bool) -> Self {\n AccountActions { context, is_valid_impl }\n }\n}\n\n/**\n * An implementation of the Account Action struct for the private context.\n * \n * Implements logic to verify authorization and execute payloads.\n */\nimpl AccountActions<&mut PrivateContext> {\n\n /** \n * Verifies that the `app_hash` and `fee_hash` are authorized and then executes them.\n * \n * Executes the `fee_payload` and `app_payload` in sequence.\n * Will execute the `fee_payload` as part of the setup, and then enter the app phase.\n * \n * @param app_payload The payload that contains the calls to be executed in the app phase.\n * @param fee_payload The payload that contains the calls to be executed in the setup phase.\n */\n // docs:start:entrypoint\n pub fn entrypoint(self, app_payload: AppPayload, fee_payload: FeePayload) {\n let valid_fn = self.is_valid_impl;\n\n let fee_hash = fee_payload.hash();\n assert(valid_fn(self.context, fee_hash));\n fee_payload.execute_calls(self.context);\n self.context.end_setup();\n\n let app_hash = app_payload.hash();\n assert(valid_fn(self.context, app_hash));\n app_payload.execute_calls(self.context);\n }\n // docs:end:entrypoint\n\n /**\n * Verifies that the `msg_sender` is authorized to consume `inner_hash` by the account.\n * \n * Computes the `message_hash` using the `msg_sender`, `chain_id`, `version` and `inner_hash`.\n * Then executes the `is_valid_impl` function to verify that the message is authorized.\n * \n * Will revert if the message is not authorized. \n * \n * @param inner_hash The hash of the message that the `msg_sender` is trying to consume.\n */\n // docs:start:verify_private_authwit\n pub fn verify_private_authwit(self, inner_hash: Field) -> Field {\n // The `inner_hash` is \"siloed\" with the `msg_sender` to ensure that only it can \n // consume the message.\n // This ensures that contracts cannot consume messages that are not intended for them.\n let message_hash = compute_authwit_message_hash(\n self.context.msg_sender(),\n self.context.chain_id(),\n self.context.version(),\n inner_hash\n );\n let valid_fn = self.is_valid_impl;\n assert(valid_fn(self.context, message_hash) == true, \"Message not authorized by account\");\n IS_VALID_SELECTOR\n }\n // docs:end:verify_private_authwit\n}\n"},"61":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/entrypoint/app.nr","source":"use dep::aztec::prelude::PrivateContext;\nuse dep::aztec::protocol_types::{constants::GENERATOR_INDEX__SIGNATURE_PAYLOAD, hash::pedersen_hash, traits::{Hash, Serialize}};\n\nuse crate::entrypoint::function_call::{FunctionCall, FUNCTION_CALL_SIZE_IN_BYTES};\n\n// FUNCTION_CALL_SIZE * ACCOUNT_MAX_CALLS + 1\nglobal APP_PAYLOAD_SIZE: u64 = 21;\n// FUNCTION_CALL_SIZE_IN_BYTES * ACCOUNT_MAX_CALLS + 32\nglobal APP_PAYLOAD_SIZE_IN_BYTES: u64 = 424;\n\nglobal ACCOUNT_MAX_CALLS: u64 = 4;\n\n// Note: If you change the following struct you have to update default_entrypoint.ts\n// docs:start:app-payload-struct\nstruct AppPayload {\n function_calls: [FunctionCall; ACCOUNT_MAX_CALLS],\n nonce: Field,\n}\n// docs:end:app-payload-struct\n\nimpl Serialize<APP_PAYLOAD_SIZE> for AppPayload {\n // Serializes the entrypoint struct\n fn serialize(self) -> [Field; APP_PAYLOAD_SIZE] {\n let mut fields: BoundedVec<Field, APP_PAYLOAD_SIZE> = BoundedVec::new();\n for call in self.function_calls {\n fields.extend_from_array(call.serialize());\n }\n fields.push(self.nonce);\n fields.storage\n }\n}\n\nimpl Hash for AppPayload {\n fn hash(self) -> Field {\n pedersen_hash(\n self.serialize(),\n GENERATOR_INDEX__SIGNATURE_PAYLOAD\n )\n }\n}\n\nimpl AppPayload {\n // Serializes the payload as an array of bytes. Useful for hashing with sha256.\n fn to_be_bytes(self) -> [u8; APP_PAYLOAD_SIZE_IN_BYTES] {\n let mut bytes: BoundedVec<u8, APP_PAYLOAD_SIZE_IN_BYTES> = BoundedVec::new();\n\n for i in 0..ACCOUNT_MAX_CALLS {\n bytes.extend_from_array(self.function_calls[i].to_be_bytes());\n }\n bytes.extend_from_slice(self.nonce.to_be_bytes(32));\n\n bytes.storage\n }\n\n // Executes all private and public calls\n // docs:start:entrypoint-execute-calls\n fn execute_calls(self, context: &mut PrivateContext) {\n for call in self.function_calls {\n if !call.target_address.is_zero() {\n if call.is_public {\n context.call_public_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n } else {\n let _result = context.call_private_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n }\n }\n }\n }\n // docs:end:entrypoint-execute-calls\n}\n"},"63":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/entrypoint/fee.nr","source":"use dep::aztec::prelude::PrivateContext;\nuse dep::aztec::protocol_types::{constants::GENERATOR_INDEX__FEE_PAYLOAD, hash::pedersen_hash, traits::{Hash, Serialize}};\nuse crate::entrypoint::function_call::FunctionCall;\n\n// 2 * 5 (FUNCTION_CALL_SIZE) + 2\nglobal FEE_PAYLOAD_SIZE: Field = 12;\n\n// 2 * 98 (FUNCTION_CALL_SIZE_IN_BYTES) + 32\nglobal FEE_PAYLOAD_SIZE_IN_BYTES: Field = 228;\n\nglobal MAX_FEE_FUNCTION_CALLS = 2;\n\n// docs:start:fee-payload-struct\nstruct FeePayload {\n function_calls: [FunctionCall; MAX_FEE_FUNCTION_CALLS],\n nonce: Field,\n is_fee_payer: bool,\n}\n// docs:end:fee-payload-struct\n\nimpl Serialize<FEE_PAYLOAD_SIZE> for FeePayload {\n // Serializes the entrypoint struct\n fn serialize(self) -> [Field; FEE_PAYLOAD_SIZE] {\n let mut fields: BoundedVec<Field, FEE_PAYLOAD_SIZE> = BoundedVec::new();\n for i in 0..MAX_FEE_FUNCTION_CALLS {\n fields.extend_from_array(self.function_calls[i].serialize());\n }\n fields.push(self.nonce);\n fields.push(self.is_fee_payer as Field);\n fields.storage\n }\n}\n\nimpl Hash for FeePayload {\n fn hash(self) -> Field {\n pedersen_hash(\n self.serialize(),\n GENERATOR_INDEX__FEE_PAYLOAD\n )\n }\n}\n\nimpl FeePayload {\n fn to_be_bytes(self) -> [u8; FEE_PAYLOAD_SIZE_IN_BYTES] {\n let mut bytes: BoundedVec<u8, FEE_PAYLOAD_SIZE_IN_BYTES> = BoundedVec::new();\n\n for i in 0..MAX_FEE_FUNCTION_CALLS {\n bytes.extend_from_array(self.function_calls[i].to_be_bytes());\n }\n bytes.extend_from_slice(self.nonce.to_be_bytes(32));\n bytes.push(self.is_fee_payer as u8);\n\n bytes.storage\n }\n\n fn execute_calls(self, context: &mut PrivateContext) {\n for call in self.function_calls {\n if !call.target_address.is_zero() {\n if call.is_public {\n context.call_public_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n } else {\n let _result = context.call_private_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n }\n }\n }\n if self.is_fee_payer {\n context.set_as_fee_payer();\n }\n }\n}\n"},"71":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/keys/public_keys.nr","source":"use dep::protocol_types::{\n address::PublicKeysHash, constants::GENERATOR_INDEX__PUBLIC_KEYS_HASH, hash::poseidon2_hash,\n point::Point, traits::{Deserialize, Serialize, Empty, is_empty}\n};\nuse crate::keys::constants::{NUM_KEY_TYPES, NULLIFIER_INDEX, INCOMING_INDEX, OUTGOING_INDEX};\n\nglobal PUBLIC_KEYS_LENGTH = 12;\n\nstruct PublicKeys {\n npk_m: Point,\n ivpk_m: Point,\n ovpk_m: Point,\n tpk_m: Point,\n}\n\nimpl Empty for PublicKeys {\n fn empty() -> Self {\n PublicKeys {\n npk_m : Point::empty(),\n ivpk_m : Point::empty(),\n ovpk_m : Point::empty(),\n tpk_m : Point::empty()\n }\n }\n}\n\nimpl Eq for PublicKeys {\n fn eq(self, other: PublicKeys) -> bool {\n ( self.npk_m == other.npk_m ) &\n ( self.ivpk_m == other.ivpk_m ) &\n ( self.ovpk_m == other.ovpk_m ) &\n ( self.tpk_m == other.tpk_m )\n }\n}\n\nimpl PublicKeys {\n pub fn hash(self) -> PublicKeysHash {\n PublicKeysHash::from_field(\n if is_empty(self) {\n 0\n } else {\n poseidon2_hash(\n [\n self.npk_m.x,\n self.npk_m.y,\n self.npk_m.is_infinite as Field,\n self.ivpk_m.x,\n self.ivpk_m.y,\n self.ivpk_m.is_infinite as Field,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.ovpk_m.is_infinite as Field,\n self.tpk_m.x,\n self.tpk_m.y,\n self.tpk_m.is_infinite as Field,\n GENERATOR_INDEX__PUBLIC_KEYS_HASH\n ]\n )\n }\n )\n }\n\n pub fn get_key_by_index(self, index: Field) -> Point {\n assert(index as u8 < NUM_KEY_TYPES, \"Invalid key index\");\n if index == NULLIFIER_INDEX {\n self.npk_m\n } else if index == INCOMING_INDEX {\n self.ivpk_m\n } else if index == OUTGOING_INDEX {\n self.ovpk_m\n } else {\n self.tpk_m\n }\n }\n}\n\nimpl Serialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn serialize(self) -> [Field; PUBLIC_KEYS_LENGTH] {\n [\n self.npk_m.x,\n self.npk_m.y,\n self.npk_m.is_infinite as Field,\n self.ivpk_m.x,\n self.ivpk_m.y,\n self.ivpk_m.is_infinite as Field,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.ovpk_m.is_infinite as Field,\n self.tpk_m.x,\n self.tpk_m.y,\n self.tpk_m.is_infinite as Field\n ]\n }\n}\n\nimpl Deserialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn deserialize(serialized: [Field; PUBLIC_KEYS_LENGTH]) -> PublicKeys {\n PublicKeys {\n npk_m: Point { x:serialized[0], y:serialized[1], is_infinite: serialized[2] as bool },\n ivpk_m: Point { x:serialized[3], y: serialized[4], is_infinite: serialized[5] as bool },\n ovpk_m: Point { x:serialized[6], y: serialized[7], is_infinite: serialized[8] as bool },\n tpk_m: Point { x:serialized[9], y: serialized[10], is_infinite: serialized[11] as bool }\n }\n }\n}\n\n#[test]\nfn compute_public_keys_hash() {\n let keys = PublicKeys {\n npk_m: Point { x: 1, y: 2, is_infinite: false },\n ivpk_m: Point { x: 3, y: 4, is_infinite: false },\n ovpk_m: Point { x: 5, y: 6, is_infinite: false },\n tpk_m: Point { x: 7, y: 8, is_infinite: false }\n };\n\n let actual = keys.hash();\n let expected_public_keys_hash = 0x146f68c0e0ba4067d61a3304bbfdec0797d5df1357db6c01247c48bfb345c7d7;\n\n assert(actual.to_field() == expected_public_keys_hash);\n}\n\n#[test]\nfn compute_empty_hash() {\n let keys = PublicKeys::empty();\n\n let actual = keys.hash();\n let test_data_empty_hash = 0x0000000000000000000000000000000000000000000000000000000000000000;\n\n assert(actual.to_field() == test_data_empty_hash);\n}\n\n#[test]\nfn test_public_keys_serialization() {\n let keys = PublicKeys {\n npk_m: Point { x: 1, y: 2, is_infinite: false },\n ivpk_m: Point { x: 3, y: 4, is_infinite: false },\n ovpk_m: Point { x: 5, y: 6, is_infinite: false },\n tpk_m: Point { x: 7, y: 8, is_infinite: false }\n };\n\n let serialized = keys.serialize();\n let deserialized = PublicKeys::deserialize(serialized);\n\n assert_eq(keys.npk_m.x, deserialized.npk_m.x);\n assert_eq(keys.npk_m.y, deserialized.npk_m.y);\n assert_eq(keys.ivpk_m.x, deserialized.ivpk_m.x);\n assert_eq(keys.ivpk_m.y, deserialized.ivpk_m.y);\n assert_eq(keys.ovpk_m.x, deserialized.ovpk_m.x);\n assert_eq(keys.ovpk_m.y, deserialized.ovpk_m.y);\n assert_eq(keys.tpk_m.x, deserialized.tpk_m.x);\n assert_eq(keys.tpk_m.y, deserialized.tpk_m.y);\n}\n"},"99":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/private_context.nr","source":"use crate::{\n context::{inputs::PrivateContextInputs, packed_returns::PackedReturns},\n messaging::process_l1_to_l2_message, hash::{hash_args_array, ArgsHasher},\n keys::constants::{NULLIFIER_INDEX, OUTGOING_INDEX, NUM_KEY_TYPES, sk_generators},\n oracle::{\n key_validation_request::get_key_validation_request, arguments, returns::pack_returns,\n call_private_function::call_private_function_internal, header::get_header_at,\n logs::{emit_encrypted_note_log, emit_encrypted_event_log},\n enqueue_public_function_call::{\n enqueue_public_function_call_internal, set_public_teardown_function_call_internal,\n parse_public_call_stack_item_from_oracle\n}\n}\n};\nuse dep::protocol_types::{\n abis::{\n caller_context::CallerContext, function_selector::FunctionSelector,\n max_block_number::MaxBlockNumber,\n validation_requests::{KeyValidationRequest, KeyValidationRequestAndGenerator},\n private_call_request::PrivateCallRequest, private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_stack_item::PublicCallStackItem, read_request::ReadRequest, note_hash::NoteHash,\n nullifier::Nullifier, log_hash::{LogHash, NoteLogHash, EncryptedLogHash}\n},\n address::{AztecAddress, EthAddress},\n constants::{\n MAX_NOTE_HASHES_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_NULLIFIERS_PER_CALL,\n MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL,\n MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL,\n MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_ENCRYPTED_LOGS_PER_CALL, MAX_UNENCRYPTED_LOGS_PER_CALL,\n MAX_NOTE_ENCRYPTED_LOGS_PER_CALL\n},\n header::Header, messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::Empty\n};\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 is_fee_payer: bool,\n\n args_hash: Field,\n return_hash: Field,\n\n max_block_number: MaxBlockNumber,\n\n note_hash_read_requests: BoundedVec<ReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL>,\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n key_validation_requests_and_generators: BoundedVec<KeyValidationRequestAndGenerator, MAX_KEY_VALIDATION_REQUESTS_PER_CALL>,\n\n note_hashes: BoundedVec<NoteHash, MAX_NOTE_HASHES_PER_CALL>,\n nullifiers: BoundedVec<Nullifier, MAX_NULLIFIERS_PER_CALL>,\n\n private_call_requests : BoundedVec<PrivateCallRequest, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL>,\n public_call_stack_hashes : BoundedVec<Field, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n public_teardown_function_hash: Field,\n l2_to_l1_msgs : BoundedVec<L2ToL1Message, MAX_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 note_encrypted_logs_hashes: BoundedVec<NoteLogHash, MAX_NOTE_ENCRYPTED_LOGS_PER_CALL>,\n encrypted_logs_hashes: BoundedVec<EncryptedLogHash, MAX_ENCRYPTED_LOGS_PER_CALL>,\n unencrypted_logs_hashes: BoundedVec<LogHash, MAX_UNENCRYPTED_LOGS_PER_CALL>,\n\n // Contains the last key validation request for each key type. This is used to cache the last request and avoid\n // fetching the same request multiple times.\n // The index of the array corresponds to the key type (0 nullifier, 1 incoming, 2 outgoing, 3 tagging).\n last_key_validation_requests: [Option<KeyValidationRequest>; NUM_KEY_TYPES],\n}\n\nimpl PrivateContext {\n pub fn new(inputs: PrivateContextInputs, args_hash: Field) -> PrivateContext {\n PrivateContext {\n inputs,\n side_effect_counter: inputs.start_side_effect_counter + 1,\n min_revertible_side_effect_counter: 0,\n is_fee_payer: false,\n args_hash,\n return_hash: 0,\n max_block_number: MaxBlockNumber::empty(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n key_validation_requests_and_generators: BoundedVec::new(),\n note_hashes: BoundedVec::new(),\n nullifiers: BoundedVec::new(),\n historical_header: inputs.historical_header,\n private_call_requests: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n public_teardown_function_hash: 0,\n l2_to_l1_msgs: BoundedVec::new(),\n note_encrypted_logs_hashes: BoundedVec::new(),\n encrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n last_key_validation_requests: [Option::none(); NUM_KEY_TYPES]\n }\n }\n\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 chain_id(self) -> Field {\n self.inputs.tx_context.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.tx_context.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 fn push_note_hash(&mut self, note_hash: Field) {\n self.note_hashes.push(NoteHash { value: note_hash, counter: self.next_counter() });\n }\n\n // TODO(#7112): This function is called with non-zero note hash only in 1 of 25 cases in aztec-packages repo\n // - consider creating a separate function with 1 arg for the zero note hash case.\n fn push_nullifier(&mut self, nullifier: Field, nullified_note_hash: Field) {\n self.nullifiers.push(Nullifier { value: nullifier, note_hash: nullified_note_hash, counter: self.next_counter() });\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 // 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 set_return_hash(&mut self, returns_hasher: ArgsHasher) {\n pack_returns(returns_hasher.fields);\n self.return_hash = returns_hasher.hash();\n }\n\n pub fn finish(self) -> PrivateCircuitPublicInputs {\n PrivateCircuitPublicInputs {\n call_context: self.inputs.call_context,\n args_hash: self.args_hash,\n returns_hash: self.return_hash,\n min_revertible_side_effect_counter: self.min_revertible_side_effect_counter,\n is_fee_payer: self.is_fee_payer,\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 key_validation_requests_and_generators: self.key_validation_requests_and_generators.storage,\n note_hashes: self.note_hashes.storage,\n nullifiers: self.nullifiers.storage,\n private_call_requests: self.private_call_requests.storage,\n public_call_stack_hashes: self.public_call_stack_hashes.storage,\n public_teardown_function_hash: self.public_teardown_function_hash,\n l2_to_l1_msgs: self.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 note_encrypted_logs_hashes: self.note_encrypted_logs_hashes.storage,\n encrypted_logs_hashes: self.encrypted_logs_hashes.storage,\n unencrypted_logs_hashes: self.unencrypted_logs_hashes.storage,\n historical_header: self.historical_header,\n tx_context: self.inputs.tx_context\n }\n }\n\n pub fn set_as_fee_payer(&mut self) {\n dep::protocol_types::debug_log::debug_log_format(\"Setting {0} as fee payer\", [self.this_address().to_field()]);\n self.is_fee_payer = true;\n }\n\n pub fn end_setup(&mut self) {\n // dep::protocol_types::debug_log::debug_log_format(\n // \"Ending setup at counter {0}\",\n // [self.side_effect_counter as Field]\n // );\n self.min_revertible_side_effect_counter = self.side_effect_counter;\n }\n\n // docs:start:max-block-number\n pub fn set_tx_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 = ReadRequest { value: note_hash, counter: self.next_counter() };\n self.note_hash_read_requests.push(side_effect);\n }\n\n pub fn push_nullifier_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.next_counter() };\n self.nullifier_read_requests.push(request);\n }\n\n pub fn request_nsk_app(&mut self, npk_m_hash: Field) -> Field {\n self.request_sk_app(npk_m_hash, NULLIFIER_INDEX)\n }\n\n pub fn request_ovsk_app(&mut self, ovpk_m_hash: Field) -> Field {\n self.request_sk_app(ovpk_m_hash, OUTGOING_INDEX)\n }\n\n fn request_sk_app(&mut self, pk_m_hash: Field, key_index: Field) -> Field {\n let cached_request = self.last_key_validation_requests[key_index].unwrap_or(KeyValidationRequest::empty());\n\n if cached_request.pk_m.hash() == pk_m_hash {\n // We get a match so the cached request is the latest one \n cached_request.sk_app\n } else {\n // We didn't get a match meaning the cached result is stale. We fetch new values from oracle and instruct\n // protocol circuits to validate them by storing the validation request in context.\n let request = get_key_validation_request(pk_m_hash, key_index);\n let request_and_generator = KeyValidationRequestAndGenerator { request, sk_app_generator: sk_generators[key_index] };\n // We constrain that the pk_m_hash matches the one in the request (otherwise we could get an arbitrary\n // valid key request and not the one corresponding to pk_m_hash).\n assert(request.pk_m.hash() == pk_m_hash);\n self.key_validation_requests_and_generators.push(request_and_generator);\n self.last_key_validation_requests[key_index] = Option::some(request);\n request.sk_app\n }\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, counter: self.next_counter() };\n self.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_nullifier(nullifier, 0)\n }\n // docs:end:consume_l1_to_l2_message\n\n // NB: A randomness value of 0 signals that the kernels should not mask the contract address\n // used in siloing later on e.g. 'handshaking' contract w/ known address.\n pub fn emit_raw_event_log_with_masked_address<let M: u32>(\n &mut self,\n randomness: Field,\n log: [u8; M],\n log_hash: Field\n ) {\n let counter = self.next_counter();\n let contract_address = self.this_address();\n let len = log.len() as Field + 4;\n let side_effect = EncryptedLogHash { value: log_hash, counter, length: len, randomness };\n self.encrypted_logs_hashes.push(side_effect);\n\n emit_encrypted_event_log(contract_address, randomness, log, counter);\n }\n\n pub fn emit_raw_note_log<let M: u32>(&mut self, note_hash_counter: u32, log: [u8; M], log_hash: Field) {\n let counter = self.next_counter();\n let len = log.len() as Field + 4;\n let side_effect = NoteLogHash { value: log_hash, counter, length: len, note_hash_counter };\n self.note_encrypted_logs_hashes.push(side_effect);\n\n emit_encrypted_note_log(note_hash_counter, log, counter);\n }\n\n pub fn call_private_function<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<RETURNS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<RETURNS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<RETURNS_COUNT>(\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 ) -> PackedReturns {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let start_side_effect_counter = self.side_effect_counter;\n let item = call_private_function_internal(\n contract_address,\n function_selector,\n args_hash,\n start_side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n assert_eq(item.public_inputs.start_side_effect_counter, start_side_effect_counter);\n let end_side_effect_counter = item.public_inputs.end_side_effect_counter;\n self.side_effect_counter = end_side_effect_counter + 1;\n\n // TODO (fees) figure out why this crashes the prover and enable it\n // we need this in order to pay fees inside child call contexts\n // assert(\n // (item.public_inputs.min_revertible_side_effect_counter == 0 as u32)\n // | (item.public_inputs.min_revertible_side_effect_counter\n // > self.min_revertible_side_effect_counter)\n // );\n\n // if item.public_inputs.min_revertible_side_effect_counter\n // > self.min_revertible_side_effect_counter {\n // self.min_revertible_side_effect_counter = item.public_inputs.min_revertible_side_effect_counter;\n // }\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 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 let mut caller_context = CallerContext::empty();\n caller_context.is_static_call = self.inputs.call_context.is_static_call;\n if is_delegate_call {\n caller_context.msg_sender = self.inputs.call_context.msg_sender;\n caller_context.storage_contract_address = self.inputs.call_context.storage_contract_address;\n }\n self.private_call_requests.push(\n PrivateCallRequest {\n target: item.contract_address,\n call_context: item.public_inputs.call_context,\n function_data: item.function_data,\n args_hash: item.public_inputs.args_hash,\n returns_hash: item.public_inputs.returns_hash,\n caller_context,\n start_side_effect_counter,\n end_side_effect_counter\n }\n );\n\n PackedReturns::new(item.public_inputs.returns_hash)\n }\n\n pub fn call_public_function<let ARGS_COUNT: u32>(\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_array(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<let ARGS_COUNT: u32>(\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_array(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<let ARGS_COUNT: u32>(\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_array(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 item = parse_public_call_stack_item_from_oracle(fields);\n self.validate_call_stack_item_from_oracle(\n item,\n contract_address,\n function_selector,\n args_hash,\n is_static_call,\n is_delegate_call\n );\n\n self.side_effect_counter = self.side_effect_counter + 1;\n self.public_call_stack_hashes.push(item.get_compressed().hash());\n }\n\n pub fn set_public_teardown_function<let ARGS_COUNT: u32>(\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_array(args));\n self.set_public_teardown_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn set_public_teardown_function_with_packed_args<let ARGS_COUNT: u32>(\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 = set_public_teardown_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 item = parse_public_call_stack_item_from_oracle(fields);\n self.validate_call_stack_item_from_oracle(\n item,\n contract_address,\n function_selector,\n args_hash,\n is_static_call,\n is_delegate_call\n );\n\n self.side_effect_counter = self.side_effect_counter + 1;\n self.public_teardown_function_hash = item.get_compressed().hash();\n }\n\n fn validate_call_stack_item_from_oracle(\n self,\n item: PublicCallStackItem,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n is_static_call: bool,\n is_delegate_call: bool\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.start_side_effect_counter, self.side_effect_counter);\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\n fn next_counter(&mut self) -> u32 {\n let counter = self.side_effect_counter;\n self.side_effect_counter += 1;\n counter\n }\n}\n\nimpl Empty for PrivateContext {\n fn empty() -> Self {\n PrivateContext {\n inputs: PrivateContextInputs::empty(),\n side_effect_counter: 0 as u32,\n min_revertible_side_effect_counter: 0 as u32,\n is_fee_payer: false,\n args_hash: 0,\n return_hash: 0,\n max_block_number: MaxBlockNumber::empty(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n key_validation_requests_and_generators: BoundedVec::new(),\n note_hashes: BoundedVec::new(),\n nullifiers: BoundedVec::new(),\n private_call_requests: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n public_teardown_function_hash: 0,\n l2_to_l1_msgs: BoundedVec::new(),\n historical_header: Header::empty(),\n note_encrypted_logs_hashes: BoundedVec::new(),\n encrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n last_key_validation_requests: [Option::none(); NUM_KEY_TYPES]\n }\n }\n}\n"}}}
1
+ {"transpiled":true,"noir_version":"0.32.0+92ff2fa2e944722e5c3fa43fb3363f093b8f1d12","name":"SchnorrSingleKeyAccount","functions":[{"name":"verify_private_authwit","is_unconstrained":false,"custom_attributes":["aztec(private)","aztec(view)"],"abi":{"error_types":{},"parameters":[{"name":"inputs","type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs"},"visibility":"private"},{"name":"inner_hash","type":{"kind":"field"},"visibility":"private"}],"return_type":{"abi_type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"is_fee_payer","type":{"kind":"boolean"}},{"name":"max_block_number","type":{"fields":[{"name":"_opt","type":{"fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"std::option::Option"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::max_block_number::MaxBlockNumber"}},{"name":"note_hash_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"key_validation_requests_and_generators","type":{"kind":"array","length":16,"type":{"fields":[{"name":"request","type":{"fields":[{"name":"pk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}},{"name":"is_infinite","type":{"kind":"boolean"}}],"kind":"struct","path":"std::embedded_curve_ops::EmbeddedCurvePoint"}},{"name":"sk_app","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request::KeyValidationRequest"}},{"name":"sk_app_generator","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request_and_generator::KeyValidationRequestAndGenerator"}}},{"name":"note_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash"}}},{"name":"nullifiers","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier"}}},{"name":"private_call_requests","type":{"kind":"array","length":4,"type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","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}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_call_request::PrivateCallRequest"}}},{"name":"public_call_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"item","type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"end_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_stack_item_compressed::PublicCallStackItemCompressed"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_request::PublicCallRequest"}}},{"name":"public_teardown_call_request","type":{"fields":[{"name":"item","type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"end_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_stack_item_compressed::PublicCallStackItemCompressed"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_request::PublicCallRequest"}},{"name":"l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"fields":[{"name":"recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"content","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message"}}},{"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":"note_encrypted_logs_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"note_hash_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::NoteLogHash"}}},{"name":"encrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"randomness","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::EncryptedLogHash"}}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::LogHash"}}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs"},"visibility":"public"}},"bytecode":"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","debug_symbols":"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"},{"name":"compute_note_hash_and_optionally_a_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"error_types":{},"parameters":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"},"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":"compute_nullifier","type":{"kind":"boolean"},"visibility":"private"},{"name":"serialized_note","type":{"kind":"array","length":0,"type":{"kind":"field"}},"visibility":"private"}],"return_type":{"abi_type":{"kind":"array","length":4,"type":{"kind":"field"}},"visibility":"public"}},"bytecode":"H4sIAAAAAAAA/+2b0W7aMBSGHRq6tGlTSAiBQgt0baXdpazt6N1eZnvuXU/aOwwHH/HXdZDRjmcsEQnFie3zf/6PbdIqRGJzJOtPpMpddT4VHw9q812d6387nhhj1S45o0A4O4FwngTCGTNyRgZOeY5VWa47ueY+ic16/FCJnWWiT6Be7AqkqyaqkGh1bKNd1W+nIIDwQsHHqo7Okfqkqh4BUzXYph3cowF34B5pncA92slIK1HmOBj3S7LF5o29no1yLGcqFvGnUMa6KVgYOxxr181Yn53laO2jwxw1q5zy0FWxE7imnJyDPuO3yxPqU+xzbX7EUJ5AW2pHbTrAK49LsV1L5zv6xVq/DNqcQr9E60fXlHfpV1+V5bmbbNtSfEc+1jJ26ib2uxzFmocpjC0Dfb45ulxJjQvx/oi0a/xiyYDp0gnTZk26Ge8ml1cQm+8p6eVZxutpvl1ovmXQ5gq87DnyMgJtYqLrXos+nyevKxmvb+FJ38DU9+BJv0Wf0ZM3GS+38CQ3MOUePMlb9Pk8+fZVxissPCkMTIUHT4oWfT5Pls3zw8DCk4GBaeDBk0GLPuPaaeZJaeFJaWAqPXhStugzevJTxhtaeDI0MA09eDJs0Wf05IeMV1l4UhmYKg+eVC36jHts83wysvBkZGAaefBk1KLP6MlSxhtbeDI2MI09eDJu0WdcO43+tYUn1wamaw+eoOY+3INAuatAuYsD4db1GddOs8dOLDyZGJgmHjxBzX24ywPh1vUZc/ki400tPJkamKYePEHNfbjzQLmLQLmHgXKXgXJXgXIfyvzW9Rmfv5s99sbCkxsD040HT1BzH+48UO5JoNzFgXDr+oxrp/n/4K2FJ7cGplsPnqDmPtyjQLn7B8Kt6zPOwVcZb2bhyczANPPgCWruwz0OlLsKlHsSKHcRKPcwUO4yUO7juvy/3PmBcMt79L7PH+dMy7dUYyINoXEKjTOFcgacc4jRZeOsa8zVHPQWTnzZ5EqfP3S9cK6/XMnYnx2NTca+dxO7+ZvjQcWidxrvDb49gn7EnLcHLTZpPUAuqfwb2lI7akP7BfHL99nuVPlxR7+Z1i+DNnfQ717rR9eUd+nfL1V2Odds5npPbNf5F2BytFc+4/vLAjSExknHDJjmbpieHI63xncaheBdjwvNszPNswza4F7uc289ch+5bbjxOeQM7lH9HO51tPHgb0UWEOMv7Ab1lOo2AAA=","debug_symbols":"ndpBattQGIXRvWgciu9v6T0pWymlOIlTDMYOsVMoJnuv3NIF9Mz0JN3ZNzq82/Cyf/r48f1wej1fhsevt+F4ft5dD+fTeroNmy81/3l7edud7i8u1937dXjctv4w7E8v61Ovz4fh9XDcr89LfX57uI8WGG03MoqMSkZbGY0ymmTUZNRlJEVspYhRihiliFGKGKWIUYoYpYhRihiliFGKGKWISYqYpIhJipikiEmKmKSISYqYpIhJipikiCZFNCmiSRFNimhSRJMimhTRpIgmRTQpoksRXYroUkSXIroU0aWILkV0KaJLEV2KmKWIWYqYpYhZipiliFmKmKWIWYqYpYhZilikiEWKWKSIRYpYpIhFilikiEWKWKSIRYrIZkOr0KpotaXVSKuJVo1WnVYzraiNUBuhNkJthNoItRFqI9RGqI1QG6E2itooaqOojaI2itooaqOojaI2CDRDohkizZBphlAzpJoh1gy5Zgg2Q7IZos2QbYZwM6SbId4M+WYIOEPCGSLOkHGGkDOknCHmDDlnCDpD0hmizpB1hrAzpJ0h7gx5Zwg8Q+IZIs+QeYbQM6SeIfYMuWcIPkPyGaLPkH2G8DOknyH+DPlnCEBDAhoi0JCBhhA0pKAhBg05aAhCQxIaotCQhYYwNKShIQ4NeWgIREMiGiLRkImGUDSkoiEWDblokYsWuWiRixa5aJGLFrlokYsWuWiRixa5aJGLFrlokYsWuWiRixa5aJGLFrlokYsWuWiRixa5aJGLFrlokYsWuWiRixa5aNlFT3LRIhctctEiFy1y0SIXLXLR+m8XXU8/d++H3dNxf7/be//4cXr+d9V3PV5/vf39sv77Gw=="},{"name":"entrypoint","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"error_types":{},"parameters":[{"name":"inputs","type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs"},"visibility":"private"},{"name":"app_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":4,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}}],"kind":"struct","path":"authwit::entrypoint::app::AppPayload"},"visibility":"private"},{"name":"fee_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":2,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}},{"name":"is_fee_payer","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::fee::FeePayload"},"visibility":"private"}],"return_type":{"abi_type":{"fields":[{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"is_fee_payer","type":{"kind":"boolean"}},{"name":"max_block_number","type":{"fields":[{"name":"_opt","type":{"fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"std::option::Option"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::max_block_number::MaxBlockNumber"}},{"name":"note_hash_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest"}}},{"name":"key_validation_requests_and_generators","type":{"kind":"array","length":16,"type":{"fields":[{"name":"request","type":{"fields":[{"name":"pk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}},{"name":"is_infinite","type":{"kind":"boolean"}}],"kind":"struct","path":"std::embedded_curve_ops::EmbeddedCurvePoint"}},{"name":"sk_app","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request::KeyValidationRequest"}},{"name":"sk_app_generator","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::validation_requests::key_validation_request_and_generator::KeyValidationRequestAndGenerator"}}},{"name":"note_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash"}}},{"name":"nullifiers","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier"}}},{"name":"private_call_requests","type":{"kind":"array","length":4,"type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","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}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_call_request::PrivateCallRequest"}}},{"name":"public_call_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"item","type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"end_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_stack_item_compressed::PublicCallStackItemCompressed"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_request::PublicCallRequest"}}},{"name":"public_teardown_call_request","type":{"fields":[{"name":"item","type":{"fields":[{"name":"contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"call_context","type":{"fields":[{"name":"msg_sender","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"storage_contract_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"end_gas_left","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_stack_item_compressed::PublicCallStackItemCompressed"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_call_request::PublicCallRequest"}},{"name":"l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"fields":[{"name":"recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"content","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message"}}},{"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":"note_encrypted_logs_hashes","type":{"kind":"array","length":16,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"note_hash_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::NoteLogHash"}}},{"name":"encrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}},{"name":"randomness","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::EncryptedLogHash"}}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"length","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::log_hash::LogHash"}}},{"name":"historical_header","type":{"fields":[{"name":"last_archive","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"content_commitment","type":{"fields":[{"name":"num_txs","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment"}},{"name":"state","type":{"fields":[{"name":"l1_to_l2_message_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"partial","type":{"fields":[{"name":"note_hash_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"nullifier_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}},{"name":"public_data_tree","type":{"fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot"}}],"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference"}}],"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference"}},{"name":"global_variables","type":{"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":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress"}},{"name":"fee_recipient","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"gas_fees","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables"}},{"name":"total_fees","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"tx_context","type":{"fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"gas_settings","type":{"fields":[{"name":"gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"teardown_gas_limits","type":{"fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas"}},{"name":"max_fees_per_gas","type":{"fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees"}},{"name":"inclusion_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_settings::GasSettings"}}],"kind":"struct","path":"authwit::aztec::protocol_types::transaction::tx_context::TxContext"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs"},"visibility":"public"}},"bytecode":"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","debug_symbols":"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NZqM1GgyUhMapzQZqdFkpEaTkRpNRjoUwPqh00MBrB87pclIhwJYP3ZKk5EOBbB+7JQmIzlNRnKajITM0e7slCYjIRO0OzulyUjI7OzOTmky0pE42xtOaTLSkTjbG05pMhINZ7vRcLadhrPtNJxtp+FsOw1n25PQOGXJSE7D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsOw1n22k4207D2XYazrbTcLadhrPtNJxtp+FsBw1nO2g420HD2Q4aznYkoXHKkpGChrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g420HD2Q4aznbQcLaDhrMdNJztoOFsBw1nO2g428HC2bbEwtm+OCXJSBenJBnp4pQkI12cCo1Tkox0cUqSkS5OSTLSxSlJRro4pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44pclILJzti1OajMTC2b44PVJGaroI8XunR8pIj53OzUilFrlq17DHTrN6SdemLckPTt/VT2Zn91afgdVbarGoz8nu1Zddq6+7Vi+7Vq/I6kNlabrk2Kiu5l/VNZXfV9fJfOlXOm00Tp3GKXI26OpUkXPELzp9nOEVOnN0dQqdT7o6hc4yXZ0KjdMDZaQNpwfKSBtOD5SRNpweKCNtOD1QRnrs1GgyktFkJKPJSEaTkSbzpV/plCYjGU1GMpqMZDQZyWgyUqPJSI0mIzWajNRoMtJkvvQrndJkpEaTkRpNRmo0GanRZCSnyUhOk5GcJiM5TUaazJd+pVOajOQ0GclpMpLTZCSnyUhBk5GCJiMFTUYKmow0mS/9Sqc0GSloMlLQZKSgyUjBkpFyYslIObFkpJxYMlJOLBkpJ6FxypKRcmLJSDmxZKScWDJSTjQZKdNkpEyTkTJNRso0GWkyX/qVTmkyUqbJSJkmI2WajJRpMlKhyUiFJiMVmoxUaDLSZL70K53SZKRCk5EKTUYqNBmp0GSkSpORKk1GqjQZqdJkpMl86Vc6pclIlSYjVZqMVGkyEjRfuqtTaBZ1X6c0GQmbcd3VKU1GwmZnd3VKk5GOxNnecEqTkY7E2d5wSpORaDjbmYaznWk425mGs51pONuZhrOdaTjbmYaznWk425mGs51pONuZhrOdaTjbmYaznWk425mGs51pONuZhrOdaTjbmYaznWk425mGs51pONuZhrOdaTjbmYaznWk425mGs51pONuZhrOdaTjbmYaznWk425mGs51pONuZhrOdaTjbmYaznQ/F2W66HO33To+UkR46nczZzrG0XIrVDadhtvw9hrk+dlpKeL02XlMut4d/mM1MZguT2cpkVpjMKpNZYzLbmMw6k9ngMVsSUYIqHbC3KumqSFtsmLVYDm7p5uD6KadhyXEsOQElpwOKtaucjCWnYMmpWHIES45CySlzR+dyNfz6KyEl3cpZa9mkLE1b+N1vStFdq7ddq2+7Vu97Vr8OcLnKSRvKa6RrVKtR4751G9p6G9q6D209Rra+DsHo1noe2noZ2nod2roMbR26TnpZmrYk+V49dJ3cVB97Vq9p1+rzrtWXXauvu1Yvu1YPfU+yqR76nmRDvdTjPBewmj8P9vLVchb7dHqchwJbTo/zRGDDqRznccCW0+O8TbHl9DivUmw5Pc57FFtOhcbpcd6g2HJ6nNcnNpwq1NMiUainRTL53mNTDtTTIlGoZ/iiUM/wRaGe4YtCPcMXg3qGLwb1DF/a5NHxfP1FKcnb3x7fd0crefn9aa3d3Xe3vGv1Zdfq667Vy47V69Andjr0iZ0OfWKnQ5/Y6dAndio6tHUb2nob2roPbX3g03Wfjb35pTu8krS2pS6p/7CyvSbkwcYsn429eaVT4NW1zk6BV9c6OxUap8Cra52dAq+udXYK/ASys1PgJ5CdnQI/gezr1Hk2JPls8s2LzfJs6fbZ/JsXmxUmszxbur0HCKffErX3oNV0lYP0tMV7MDO6ykF6rOo9uBNd5SA9VvUe7IaucrAmeoBNdKTHqt6DIdBVzo53ZPpsRkFv9TvekemzCQi91WNVBShggmMBE3w2MKHrJgefzVforV52rX7go+FL6za09Ta0dR/a+shHw6Wkoa3veCPkRf2ua2XZda3EhrNsqt/xRkgHh7NsqK9KspXs4pRkK9nFKclWsotTkq1kF6dC45RkK9nFKdRqboXaJHORA7WaWw3qsU01qMc2tcNnervKgXpsUw1rohvWRDewiQ61QFsb1AJtbZNnVs9tOBf1tmv1bdfqfdfqsaqCY1UFh3psI0MX32Xo4rsMXXyXoYvvMnTxXUYuvl/+DcnOg4tTkp0HF6ckOw8uTkl2HoQgfwqls1OS3ZkXp7MXrNPyccOoW0t+6svBGl+/GyXap/i6Z/GyZ/E87/hfzPJ8tu1iluezbRezPJ9tu5iFhrQ2X5qOiHanPh8ofFwu5tc9dPn9T3I+UPjYcHogNMSG0wOhITacCo3TI6EhHnwZPn6y7HZIp0daoHns9EgLNI+dHmmB5qHTcqQFmsdOj7RA89jpkfBZj50eCZ/12KnQOKXJSIUmIxWajFRoMlKhyUiVJiNVmoxUaTJSpclIVWic0mSkSpORkD9y2NkpTUZC/shhX6fIHzns7JQmIyF/5LCzU5qMhPyRw85OaTIS8kcOOzulyUhCk5GEJiMh0zs6O6XJSMj0js5OaTISMr2js1OajKQ0GUlpMpLSZCSlyUhGk5GMJiMZTUYymozUASG0F6c0GcloMpLRZCSjyUhGk5EO9cnjx05pMtKhPnn82ClNRjrUJ48fO6XJSIf65PFjpzQZ6VCfPH7slCYjIX/yuLNTmoyE/LHjzk5pMhLyZ447O6XJSE6TkZwmIzlNRnKajBQ0GSloMlLQZKSgyUgdvrK+F6c0GelQAOvHTmky0qEA1o+dsmQkPRTA+rFTloykiSUjaWLJSJqExilLRlJkiHZnpywZSZHx2Z2d0mSkI3G2N5zSZKQjcbY3nNJkpCNxtjec0mQkGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaXhbCsNZ1tpONtKw9lWGs620nC2lYazrTScbaPhbBsNZ9toONtGw9m2JDROWTKS0XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONtGw9k2Gs620XC2jYazbTScbaPhbBsNZ9toONuNhrPdaDjbjYaz3Wg42y0JjVOWjNRoONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPdaDjbjYaz3Wg4242Gs91oONuNhrPd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"}],"outputs":{"globals":{},"structs":{"functions":[{"fields":[{"name":"parameters","type":{"fields":[{"name":"app_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":4,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}}],"kind":"struct","path":"authwit::entrypoint::app::AppPayload"}},{"name":"fee_payload","type":{"fields":[{"name":"function_calls","type":{"kind":"array","length":2,"type":{"fields":[{"name":"args_hash","type":{"kind":"field"}},{"name":"function_selector","type":{"fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"}},{"name":"target_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"is_public","type":{"kind":"boolean"}},{"name":"is_static","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::function_call::FunctionCall"}}},{"name":"nonce","type":{"kind":"field"}},{"name":"is_fee_payer","type":{"kind":"boolean"}}],"kind":"struct","path":"authwit::entrypoint::fee::FeePayload"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::entrypoint_parameters"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::entrypoint_abi"},{"fields":[{"name":"parameters","type":{"fields":[{"name":"inner_hash","type":{"kind":"field"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::verify_private_authwit_parameters"}},{"name":"return_type","type":{"kind":"field"}}],"kind":"struct","path":"SchnorrSingleKeyAccount::verify_private_authwit_abi"}]}},"file_map":{"127":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/hash.nr","source":"use dep::protocol_types::{\n address::{AztecAddress, EthAddress},\n constants::{\n GENERATOR_INDEX__SECRET_HASH, GENERATOR_INDEX__MESSAGE_NULLIFIER, ARGS_HASH_CHUNK_COUNT,\n GENERATOR_INDEX__FUNCTION_ARGS, ARGS_HASH_CHUNK_LENGTH, MAX_ARGS_LENGTH\n},\n traits::Hash, hash::{pedersen_hash, compute_siloed_nullifier, sha256_to_field}\n};\nuse crate::oracle::logs_traits::{LensForEncryptedLog, ToBytesForUnencryptedLog};\n\npub fn compute_secret_hash(secret: Field) -> Field {\n pedersen_hash([secret], GENERATOR_INDEX__SECRET_HASH)\n}\n\npub fn compute_unencrypted_log_hash<T, let N: u32, let M: u32>(\n contract_address: AztecAddress,\n log: T\n) -> Field where T: ToBytesForUnencryptedLog<N, M> {\n let message_bytes: [u8; N] = log.to_be_bytes_arr();\n // can't use N - not in scope error\n let n = message_bytes.len();\n let mut hash_bytes = [0; M];\n // Address is converted to 32 bytes in ts\n let address_bytes = contract_address.to_be_bytes_arr();\n for i in 0..32 {\n hash_bytes[i] = address_bytes[i];\n }\n let len_bytes = (n as Field).to_be_bytes(4);\n for i in 0..4 {\n hash_bytes[32 + i] = len_bytes[i];\n }\n for i in 0..n {\n hash_bytes[36 + i] = message_bytes[i];\n }\n\n sha256_to_field(hash_bytes)\n}\n\npub fn compute_message_hash(\n sender: EthAddress,\n chain_id: Field,\n recipient: AztecAddress,\n version: Field,\n content: Field,\n secret_hash: Field\n) -> Field {\n let mut hash_bytes = [0 as u8; 192];\n let sender_bytes = sender.to_field().to_be_bytes(32);\n let chain_id_bytes = chain_id.to_be_bytes(32);\n let recipient_bytes = recipient.to_field().to_be_bytes(32);\n let version_bytes = version.to_be_bytes(32);\n let content_bytes = content.to_be_bytes(32);\n let secret_hash_bytes = secret_hash.to_be_bytes(32);\n\n for i in 0..32 {\n hash_bytes[i] = sender_bytes[i];\n hash_bytes[i + 32] = chain_id_bytes[i];\n hash_bytes[i + 64] = recipient_bytes[i];\n hash_bytes[i + 96] = version_bytes[i];\n hash_bytes[i + 128] = content_bytes[i];\n hash_bytes[i + 160] = secret_hash_bytes[i];\n }\n\n sha256_to_field(hash_bytes)\n}\n\n// The nullifier of a l1 to l2 message is the hash of the message salted with the secret and index of the message hash\n// in the L1 to L2 message tree\npub fn compute_message_nullifier(message_hash: Field, secret: Field, leaf_index: Field) -> Field {\n pedersen_hash(\n [message_hash, secret, leaf_index],\n GENERATOR_INDEX__MESSAGE_NULLIFIER\n )\n}\n\nstruct ArgsHasher {\n fields: [Field],\n}\n\nimpl Hash for ArgsHasher {\n fn hash(self) -> Field {\n hash_args(self.fields)\n }\n}\n\nimpl ArgsHasher {\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<let N: u32>(&mut self, fields: [Field; N]) {\n for i in 0..N {\n self.fields = self.fields.push_back(fields[i]);\n }\n }\n}\n\npub fn hash_args_array<let N: u32>(args: [Field; N]) -> Field {\n hash_args(args.as_slice())\n}\n\npub fn hash_args(args: [Field]) -> Field {\n if args.len() == 0 {\n 0\n } else {\n assert(args.len() <= MAX_ARGS_LENGTH, \"Args length exceeds maximum\");\n let mut chunks_hashes = [0; ARGS_HASH_CHUNK_COUNT];\n let mut current_chunk_values = [0; ARGS_HASH_CHUNK_LENGTH];\n\n let mut current_chunk_index = 0;\n let mut index_inside_current_chunk = 0;\n for i in 0..args.len() {\n current_chunk_values[index_inside_current_chunk] = args[i];\n index_inside_current_chunk+=1;\n if index_inside_current_chunk == ARGS_HASH_CHUNK_LENGTH {\n chunks_hashes[current_chunk_index] = pedersen_hash(current_chunk_values, GENERATOR_INDEX__FUNCTION_ARGS);\n current_chunk_values = [0; ARGS_HASH_CHUNK_LENGTH];\n current_chunk_index+=1;\n index_inside_current_chunk = 0;\n }\n }\n if index_inside_current_chunk > 0 {\n chunks_hashes[current_chunk_index] = pedersen_hash(current_chunk_values, GENERATOR_INDEX__FUNCTION_ARGS);\n }\n pedersen_hash(chunks_hashes, GENERATOR_INDEX__FUNCTION_ARGS)\n }\n}\n\n#[test]\nfn compute_var_args_hash() {\n let mut input = ArgsHasher::new();\n for i in 0..MAX_ARGS_LENGTH {\n input.add(i as Field);\n }\n let hash = input.hash();\n assert(hash == 0x11e40f2a780822f7971803048c9a2100579de352e7dadd99981760964da65b57);\n}\n\n#[test]\nfn compute_unenc_log_hash_array() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let log = [\n 0x20660de09f35f876e3e69d227b2a35166ad05f09d82d06366ec9b6f65a51fec2,\n 0x1b52bfe3b8689761916f76dc3d38aa8810860db325cd39ca611eed980091f01c,\n 0x2e559c4045c378a56ad13b9edb1e8de4e7ad3b3aa35cc7ba9ec77f7a68fa43a4,\n 0x25d0f689c4a4178a29d59306f2675824d19be6d25e44fa03b03f49c263053dd2,\n 0x2d513a722d6f352dc0961f156afdc5e31495b9f0e35cb069261a8e55e2df67fd\n ];\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0095b2d17ab72f4b27a341f7ac63e49ec73935ae8c9181a0ac02023eb12f3284);\n}\n\n#[test]\nfn compute_unenc_log_hash_addr() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let log = AztecAddress::from_field(0x26aa302d4715fd8a687453cb26d616b0768027bd54bcae56b09d908ecd9f8303);\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0083ab647dfb26e7ddee90a0f4209d049d4660cab42000c544b986aaa84c55a3);\n}\n\n#[test]\nfn compute_unenc_log_hash_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let log = \"dummy\";\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x00629e88ebd6374f44aa6cfe07e251ecf07213ebc7267e8f6b578ae57ffd6c20);\n}\n\n#[test]\nfn compute_unenc_log_hash_longer_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let log = \"Hello this is a string\";\n let hash = compute_unencrypted_log_hash(contract_address, log);\n assert(hash == 0x0098637962f7d34fa202b7ffad8a07a238c5d1fd897b82a108f7f467fa73b841);\n}\n"},"133":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/returns.nr","source":"#[oracle(packReturns)]\nunconstrained fn pack_returns_oracle<let N: u32>(_returns: [Field]) -> Field {}\n\nunconstrained pub fn pack_returns(returns: [Field]) {\n let _unused = pack_returns_oracle(returns);\n}\n\n#[oracle(unpackReturns)]\nunconstrained fn unpack_returns_oracle<let N: u32>(_return_hash: Field) -> [Field; N] {}\n\nunconstrained pub fn unpack_returns<let N: u32>(return_hash: Field) -> [Field; N] {\n unpack_returns_oracle(return_hash)\n}\n"},"141":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/call_private_function.nr","source":"use dep::protocol_types::{abis::function_selector::FunctionSelector, address::AztecAddress, utils::reader::Reader};\n\n#[oracle(callPrivateFunction)]\nunconstrained fn call_private_function_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _start_side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) -> [Field; 2] {}\n\nunconstrained pub fn call_private_function_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n start_side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) -> (u32, Field) {\n let fields = call_private_function_oracle(\n contract_address,\n function_selector,\n args_hash,\n start_side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n let mut reader = Reader::new(fields);\n let end_side_effect_counter = reader.read_u32();\n let returns_hash = reader.read();\n\n (end_side_effect_counter, returns_hash)\n}\n"},"146":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/enqueue_public_function_call.nr","source":"use dep::protocol_types::{abis::{function_selector::FunctionSelector}, address::AztecAddress};\n\n#[oracle(enqueuePublicFunctionCall)]\nunconstrained fn enqueue_public_function_call_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) {}\n\nunconstrained pub fn enqueue_public_function_call_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) {\n enqueue_public_function_call_oracle(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n}\n\n#[oracle(setPublicTeardownFunctionCall)]\nunconstrained fn set_public_teardown_function_call_oracle(\n _contract_address: AztecAddress,\n _function_selector: FunctionSelector,\n _args_hash: Field,\n _side_effect_counter: u32,\n _is_static_call: bool,\n _is_delegate_call: bool\n) {}\n\nunconstrained pub fn set_public_teardown_function_call_internal(\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n side_effect_counter: u32,\n is_static_call: bool,\n is_delegate_call: bool\n) {\n set_public_teardown_function_call_oracle(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n}\n\n"},"22":{"path":"std/embedded_curve_ops.nr","source":"use crate::ops::arith::{Add, Sub, Neg};\nuse crate::cmp::Eq;\n\n/// A point on the embedded elliptic curve\n/// By definition, the base field of the embedded curve is the scalar field of the proof system curve, i.e the Noir Field.\n/// x and y denotes the Weierstrass coordinates of the point, if is_infinite is false.\nstruct EmbeddedCurvePoint {\n x: Field,\n y: Field,\n is_infinite: bool\n}\n\nimpl EmbeddedCurvePoint {\n /// Elliptic curve point doubling operation\n /// returns the doubled point of a point P, i.e P+P\n fn double(self) -> EmbeddedCurvePoint {\n embedded_curve_add(self, self)\n }\n\n /// Returns the null element of the curve; 'the point at infinity'\n fn point_at_infinity() -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n }\n}\n\nimpl Add for EmbeddedCurvePoint {\n /// Adds two points P+Q, using the curve addition formula, and also handles point at infinity\n fn add(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint { \n embedded_curve_add(self, other)\n }\n}\n\nimpl Sub for EmbeddedCurvePoint {\n /// Points subtraction operation, using addition and negation\n fn sub(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint { \n self + other.neg()\n }\n}\n\nimpl Neg for EmbeddedCurvePoint {\n /// Negates a point P, i.e returns -P, by negating the y coordinate.\n /// If the point is at infinity, then the result is also at infinity.\n fn neg(self) -> EmbeddedCurvePoint { \n EmbeddedCurvePoint {\n x: self.x,\n y: -self.y,\n is_infinite: self.is_infinite\n }\n }\n}\n\nimpl Eq for EmbeddedCurvePoint {\n /// Checks whether two points are equal\n fn eq(self: Self, b: EmbeddedCurvePoint) -> bool {\n (self.is_infinite & b.is_infinite) | ((self.is_infinite == b.is_infinite) & (self.x == b.x) & (self.y == b.y))\n }\n}\n\n/// Scalar for the embedded curve represented as low and high limbs\n/// By definition, the scalar field of the embedded curve is base field of the proving system curve.\n/// It may not fit into a Field element, so it is represented with two Field elements; its low and high limbs.\nstruct EmbeddedCurveScalar {\n lo: Field,\n hi: Field,\n}\n\nimpl EmbeddedCurveScalar {\n pub fn new(lo: Field, hi: Field) -> Self {\n EmbeddedCurveScalar { lo, hi }\n }\n\n #[field(bn254)]\n fn from_field(scalar: Field) -> EmbeddedCurveScalar {\n let (a,b) = crate::field::bn254::decompose(scalar);\n EmbeddedCurveScalar { lo: a, hi: b }\n }\n}\n\nimpl Eq for EmbeddedCurveScalar {\n fn eq(self, other: Self) -> bool {\n (other.hi == self.hi) & (other.lo == self.lo)\n }\n}\n\n// Computes a multi scalar multiplication over the embedded curve.\n// For bn254, We have Grumpkin and Baby JubJub.\n// For bls12-381, we have JubJub and Bandersnatch.\n//\n// The embedded curve being used is decided by the \n// underlying proof system.\n// docs:start:multi_scalar_mul\npub fn multi_scalar_mul<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N]\n) -> EmbeddedCurvePoint\n// docs:end:multi_scalar_mul\n{\n let point_array = multi_scalar_mul_array_return(points, scalars);\n EmbeddedCurvePoint { x: point_array[0], y: point_array[1], is_infinite: point_array[2] as bool }\n}\n\n#[foreign(multi_scalar_mul)]\nfn multi_scalar_mul_array_return<let N: u32>(points: [EmbeddedCurvePoint; N], scalars: [EmbeddedCurveScalar; N]) -> [Field; 3] {}\n\n#[foreign(multi_scalar_mul)]\npub(crate) fn multi_scalar_mul_slice(points: [EmbeddedCurvePoint], scalars: [EmbeddedCurveScalar]) -> [Field; 3] {}\n\n// docs:start:fixed_base_scalar_mul\npub fn fixed_base_scalar_mul(scalar: EmbeddedCurveScalar) -> EmbeddedCurvePoint\n// docs:end:fixed_base_scalar_mul\n{\n let g1 = EmbeddedCurvePoint { x: 1, y: 17631683881184975370165255887551781615748388533673675138860, is_infinite: false };\n multi_scalar_mul([g1], [scalar])\n}\n\n// This is a hack as returning an `EmbeddedCurvePoint` from a foreign function in brillig returns a [BrilligVariable::SingleAddr; 2] rather than BrilligVariable::BrilligArray\n// as is defined in the brillig bytecode format. This is a workaround which allows us to fix this without modifying the serialization format.\n// docs:start:embedded_curve_add\nfn embedded_curve_add(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint\n) -> EmbeddedCurvePoint\n// docs:end:embedded_curve_add\n{\n let point_array = embedded_curve_add_array_return(point1, point2);\n let x = point_array[0];\n let y = point_array[1];\n EmbeddedCurvePoint { x, y, is_infinite: point_array[2] == 1 }\n}\n\n#[foreign(embedded_curve_add)]\nfn embedded_curve_add_array_return(_point1: EmbeddedCurvePoint, _point2: EmbeddedCurvePoint) -> [Field; 3] {}\n"},"24":{"path":"std/field/mod.nr","source":"mod bn254;\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n pub fn to_le_bits(self: Self, bit_size: u32) -> [u1] {\n crate::assert_constant(bit_size);\n self.__to_le_bits(bit_size)\n }\n\n pub fn to_be_bits(self: Self, bit_size: u32) -> [u1] {\n crate::assert_constant(bit_size);\n self.__to_be_bits(bit_size)\n }\n\n #[builtin(to_le_bits)]\n fn __to_le_bits(self, _bit_size: u32) -> [u1] {}\n\n #[builtin(to_be_bits)]\n fn __to_be_bits(self, bit_size: u32) -> [u1] {}\n\n #[builtin(apply_range_constraint)]\n fn __assert_max_bit_size(self, bit_size: u32) {}\n\n pub fn assert_max_bit_size(self: Self, bit_size: u32) {\n crate::assert_constant(bit_size);\n assert(bit_size < modulus_num_bits() as u32);\n self.__assert_max_bit_size(bit_size);\n }\n\n pub fn to_le_bytes(self: Self, byte_size: u32) -> [u8] {\n self.to_le_radix(256, byte_size)\n }\n\n pub fn to_be_bytes(self: Self, byte_size: u32) -> [u8] {\n self.to_be_radix(256, byte_size)\n }\n\n pub fn to_le_radix(self: Self, radix: u32, result_len: u32) -> [u8] {\n crate::assert_constant(radix);\n crate::assert_constant(result_len);\n self.__to_le_radix(radix, result_len)\n }\n\n pub fn to_be_radix(self: Self, radix: u32, result_len: u32) -> [u8] {\n crate::assert_constant(radix);\n crate::assert_constant(result_len);\n self.__to_be_radix(radix, result_len)\n }\n\n // decompose `_self` into a `_result_len` vector over the `_radix` basis\n // `_radix` must be less than 256\n #[builtin(to_le_radix)]\n fn __to_le_radix(self, radix: u32, result_len: u32) -> [u8] {}\n\n #[builtin(to_be_radix)]\n fn __to_be_radix(self, radix: u32, result_len: u32) -> [u8] {}\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b = exponent.to_le_bits(32);\n\n for i in 1..33 {\n r *= r;\n r = (b[32-i] as Field) * (r * self) + (1 - b[32-i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x ∈ {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\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 + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n let num_bytes = (modulus_num_bits() as u32 + 7) / 8;\n let x_bytes = x.to_le_bytes(num_bytes);\n let y_bytes = y.to_le_bytes(num_bytes);\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..num_bytes {\n if (!done) {\n let x_byte = x_bytes[num_bytes - 1 - i] as u8;\n let y_byte = y_bytes[num_bytes - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n}\n\n"},"242":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr","source":"use crate::utils::field::field_from_bytes;\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, let N: u32>(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}\nimpl<let N: u32> ToField for str<N> {\n fn to_field(self) -> Field {\n assert(N < 32, \"String doesn't fit in a field, consider using Serialize instead\");\n field_from_bytes(self.as_bytes(), true)\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<let N: u32> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\nimpl<let N: u32> Serialize<N> for [Field; N] {\n fn serialize(self) -> [Field; N] {\n self\n }\n}\nimpl<let N: u32> Serialize<N> for str<N> {\n fn serialize(self) -> [Field; N] {\n let mut result = [0; N];\n let bytes: [u8; N] = self.as_bytes();\n for i in 0..N {\n result[i] = field_from_bytes([bytes[i];1], true);\n }\n result\n }\n}\n\n// docs:start:deserialize\ntrait Deserialize<let N: u32> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n\nimpl<let N: u32> Deserialize<N> for [Field; N] {\n fn deserialize(fields: [Field; N]) -> Self {\n fields\n }\n}\n"},"243":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/debug_log.nr","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)]\nunconstrained fn debug_log_oracle<let M: u32>(_msg: str<M>, args: [Field]) {}\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]);\n/// debug_log_format(\"whole array: {}\", [e1, e2, e3, e4]);\nunconstrained pub fn debug_log_format<let M: u32, let N: u32>(msg: str<M>, args: [Field; N]) {\n debug_log_oracle(msg, args.as_slice());\n}\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<let N: u32>(msg: str<N>) {\n debug_log_format(msg, []);\n}\n"},"247":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr","source":"use crate::{\n abis::{\n contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage,\n function_selector::FunctionSelector, log_hash::{LogHash, ScopedLogHash, ScopedEncryptedLogHash},\n note_hash::ScopedNoteHash, nullifier::ScopedNullifier\n},\n address::{AztecAddress, EthAddress},\n constants::{\n FUNCTION_TREE_HEIGHT, GENERATOR_INDEX__SILOED_NOTE_HASH, GENERATOR_INDEX__OUTER_NULLIFIER,\n GENERATOR_INDEX__VK, GENERATOR_INDEX__NOTE_HASH_NONCE, GENERATOR_INDEX__UNIQUE_NOTE_HASH,\n MAX_ENCRYPTED_LOGS_PER_TX, MAX_NOTE_ENCRYPTED_LOGS_PER_TX\n},\n merkle_tree::root::root_from_sibling_path, messaging::l2_to_l1_message::ScopedL2ToL1Message,\n recursion::verification_key::VerificationKey, traits::is_empty,\n utils::field::field_from_bytes_32_trunc\n};\nuse std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<let N: u32>(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 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\nfn compute_note_hash_nonce(tx_hash: Field, note_index_in_tx: u32) -> Field {\n // Hashing tx hash with note index in tx is guaranteed to be unique\n pedersen_hash(\n [\n tx_hash,\n note_index_in_tx as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_note_hash(nonce: Field, inner_note_hash: Field) -> Field {\n let inputs = [nonce, inner_note_hash];\n pedersen_hash(inputs, GENERATOR_INDEX__UNIQUE_NOTE_HASH)\n}\n\npub fn compute_siloed_note_hash(app: AztecAddress, unique_note_hash: Field) -> Field {\n pedersen_hash(\n [\n app.to_field(),\n unique_note_hash\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_note_hash(note_hash: ScopedNoteHash, tx_hash: Field, note_index_in_tx: u32) -> Field {\n if note_hash.contract_address.is_zero() {\n 0\n } else {\n let nonce = compute_note_hash_nonce(tx_hash, note_index_in_tx);\n let unique_note_hash = compute_unique_note_hash(nonce, note_hash.value());\n compute_siloed_note_hash(note_hash.contract_address, unique_note_hash)\n }\n}\n\npub fn compute_siloed_nullifier(app: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n app.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn silo_nullifier(nullifier: ScopedNullifier) -> Field {\n if nullifier.contract_address.is_zero() {\n nullifier.value() // Return value instead of 0 because the first nullifier's contract address is zero.\n } else {\n compute_siloed_nullifier(nullifier.contract_address, nullifier.value())\n }\n}\n\npub fn compute_siloed_encrypted_log_hash(address: AztecAddress, randomness: Field, log_hash: Field) -> Field {\n // TODO: Using 0 GENERATOR_INDEX here as interim before we move to posiedon\n // NB: A unique separator will be needed for masked_contract_address\n let mut masked_contract_address = pedersen_hash([address.to_field(), randomness], 0);\n if randomness == 0 {\n // In some cases, we actually want to reveal the contract address we are siloing with:\n // e.g. 'handshaking' contract w/ known address\n // An app providing randomness = 0 signals to not mask the address.\n masked_contract_address = address.to_field();\n }\n accumulate_sha256([masked_contract_address, log_hash])\n}\n\npub fn silo_encrypted_log_hash(log_hash: ScopedEncryptedLogHash) -> Field {\n if log_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_encrypted_log_hash(\n log_hash.contract_address,\n log_hash.log_hash.randomness,\n log_hash.log_hash.value\n )\n }\n}\n\nfn compute_siloed_unencrypted_log_hash(address: AztecAddress, log_hash: Field) -> Field {\n accumulate_sha256([address.to_field(), log_hash])\n}\n\npub fn silo_unencrypted_log_hash(log_hash: ScopedLogHash) -> Field {\n if log_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_unencrypted_log_hash(log_hash.contract_address, log_hash.value())\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 recipient: EthAddress,\n content: Field,\n rollup_version_id: Field,\n chain_id: Field\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [contract_address.to_field(), rollup_version_id, recipient.to_field(), chain_id, content];\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\npub fn silo_l2_to_l1_message(msg: ScopedL2ToL1Message, rollup_version_id: Field, chain_id: Field) -> Field {\n if msg.contract_address.is_zero() {\n 0\n } else {\n compute_l2_to_l1_hash(\n msg.contract_address,\n msg.message.recipient,\n msg.message.content,\n rollup_version_id,\n chain_id\n )\n }\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\n// Computes the final logs hash for a tx.\n// NB: this assumes MAX_ENCRYPTED_LOGS_PER_TX == MAX_UNENCRYPTED_LOGS_PER_TX\n// to avoid doubling code, since we can't define the byte len to be 32*N directly.\npub fn compute_tx_logs_hash(logs: [LogHash; MAX_ENCRYPTED_LOGS_PER_TX]) -> Field {\n // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n let mut hash_input_flattened = [0; MAX_ENCRYPTED_LOGS_PER_TX * 32];\n for offset in 0..MAX_ENCRYPTED_LOGS_PER_TX {\n let input_as_bytes = logs[offset].value.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 // Ideally we would push to a slice then hash, but there is no sha_slice\n // Hardcode to 256 bytes for now\n let mut hash = sha256_to_field(hash_input_flattened);\n // Not having a 0 value hash for empty logs causes issues with empty txs\n // used for padding. Returning early is currently unsupported.\n // We always provide sorted logs here, so 0 being empty means all are empty.\n if is_empty(logs[0]) {\n hash = 0;\n }\n hash\n}\n\npub fn compute_tx_note_logs_hash(logs: [LogHash; MAX_NOTE_ENCRYPTED_LOGS_PER_TX]) -> Field {\n // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n let mut hash_input_flattened = [0; MAX_NOTE_ENCRYPTED_LOGS_PER_TX * 32];\n for offset in 0..MAX_NOTE_ENCRYPTED_LOGS_PER_TX {\n let input_as_bytes = logs[offset].value.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 // Ideally we would push to a slice then hash, but there is no sha_slice\n // Hardcode to 256 bytes for now\n let mut hash = sha256_to_field(hash_input_flattened);\n // Not having a 0 value hash for empty logs causes issues with empty txs\n // used for padding. Returning early is currently unsupported.\n // We always provide sorted logs here, so 0 being empty means all are empty.\n if is_empty(logs[0]) {\n hash = 0;\n }\n hash\n}\n\npub fn pedersen_hash<let N: u32>(inputs: [Field; N], hash_index: u32) -> Field {\n std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<let N: u32>(inputs: [Field; N]) -> Field {\n std::hash::poseidon2::Poseidon2::hash(inputs, N)\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_l2_l1_hash() {\n // All zeroes\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(0), EthAddress::zero(), 0, 0, 0);\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), EthAddress::from_field(3), 5, 2, 4);\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n"},"27":{"path":"std/hash/mod.nr","source":"mod poseidon;\nmod mimc;\nmod poseidon2;\nmod keccak;\n\nuse crate::default::Default;\nuse crate::uint128::U128;\nuse crate::sha256::{digest, sha256_var};\nuse crate::collections::vec::Vec;\nuse crate::embedded_curve_ops::{EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_slice};\n\n#[foreign(sha256)]\n// docs:start:sha256\npub fn sha256<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:sha256\n{}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n#[foreign(blake3)]\n// docs:start:blake3\npub fn blake3<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment<let N: u32>(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\npub fn pedersen_hash_with_separator<let N: u32>(input: [Field; N], separator: u32) -> Field {\n __pedersen_hash_with_separator(input, separator)\n}\n\nfn pedersen_commitment_with_separator<let N: u32>(input: [Field; N], separator: u32) -> EmbeddedCurvePoint {\n let value = __pedersen_commitment_with_separator(input, separator);\n if (value[0] == 0) & (value[1] == 0) {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n } else {\n EmbeddedCurvePoint { x: value[0], y: value[1], is_infinite: false }\n }\n}\n\nfn pedersen_commitment_with_separator_noir<let N: u32>(input: [Field; N], separator: u32) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constraint the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\nfn pedersen_hash_with_separator_noir<let N: u32>(input: [Field; N], separator: u32) -> Field {\n let mut scalars: Vec<EmbeddedCurveScalar> = Vec::from_slice([EmbeddedCurveScalar { lo: 0, hi: 0 }; N].as_slice()); //Vec::new();\n\n for i in 0..N {\n scalars.set(i, from_field_unsafe(input[i]));\n }\n scalars.push(EmbeddedCurveScalar { lo: N as Field, hi: 0 });\n let domain_generators :[EmbeddedCurvePoint; N]= derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n let mut vec_generators = Vec::from_slice(domain_generators.as_slice());\n let length_generator : [EmbeddedCurvePoint; 1] = derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n vec_generators.push(length_generator[0]);\n multi_scalar_mul_slice(vec_generators.slice, scalars.slice)[0]\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash<let N: u32>(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n __pedersen_hash_with_separator(input, 0)\n}\n\n#[foreign(pedersen_hash)]\nfn __pedersen_hash_with_separator<let N: u32>(input: [Field; N], separator: u32) -> Field {}\n\n#[foreign(pedersen_commitment)]\nfn __pedersen_commitment_with_separator<let N: u32>(input: [Field; N], separator: u32) -> [Field; 2] {}\n\n#[field(bn254)]\nfn derive_generators<let N: u32, let M: u32>(domain_separator_bytes: [u8; M], starting_index: u32) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n crate::assert_constant(starting_index);\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators<let N: u32, let M: u32>(\n domain_separator_bytes: [u8; M],\n starting_index: u32\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n // Same as from_field but:\n // does not assert the limbs are 128 bits\n // does not assert the decomposition does not overflow the EmbeddedCurveScalar\n fn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n let (xlo, xhi) = crate::field::bn254::decompose_hint(scalar);\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\npub fn hash_to_field(inputs: [Field]) -> Field {\n let mut sum = 0;\n\n for input in inputs {\n let input_bytes: [u8; 32] = input.to_le_bytes(32).as_array();\n sum += crate::field::bytes32_to_field(blake2s(input_bytes));\n }\n\n sum\n}\n\n// docs:start:keccak256\npub fn keccak256<let N: u32>(input: [u8; N], message_size: u32) -> [u8; 32]\n// docs:end:keccak256\n{\n crate::hash::keccak::keccak256(input, message_size)\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation<let N: u32>(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n#[foreign(sha256_compression)]\npub fn sha256_compression(_input: [u32; 16], _state: [u32; 8]) -> [u32; 8] {}\n\n// Generic hashing support. \n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\ntrait Hash{\n fn hash<H>(self, state: &mut H) where H: Hasher;\n}\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\ntrait Hasher{\n fn finish(self) -> Field;\n \n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\ntrait BuildHasher<H> where H: Hasher{\n fn build_hasher(self) -> H;\n}\n\nstruct BuildHasherDefault<H>;\n\nimpl<H> BuildHasher<H> for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn build_hasher(_self: Self) -> H{\n H::default()\n }\n}\n\nimpl<H> Default for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn default() -> Self{\n BuildHasherDefault{}\n } \n}\n\nimpl Hash for Field {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self);\n }\n}\n\nimpl Hash for u8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash<H>(_self: Self, _state: &mut H) where H: Hasher {}\n}\n\nimpl Hash for U128 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self.lo as Field);\n H::write(state, self.hi as Field);\n }\n}\n\nimpl<T, let N: u32> Hash for [T; N] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<T> Hash for [T] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<A, B> Hash for (A, B) where A: Hash, B: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl<A, B, C> Hash for (A, B, C) where A: Hash, B: Hash, C: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl<A, B, C, D> Hash for (A, B, C, D) where A: Hash, B: Hash, C: Hash, D: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl<A, B, C, D, E> Hash for (A, B, C, D, E) where A: Hash, B: Hash, C: Hash, D: Hash, E: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1), 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1), EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false\n }\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2), 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2), EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3), 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3), EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4), 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4), EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5), 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5), EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6), 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6), EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7), 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7), EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8), 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8), EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9), 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9), EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false\n }\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10), 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10), EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false\n }\n );\n}\n\n"},"270":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/reader.nr","source":"struct Reader<let N: u32> {\n data: [Field; N],\n offset: u32,\n}\n\nimpl<let N: u32> Reader<N> {\n pub fn new(data: [Field; N]) -> Self {\n Self { data, offset: 0 }\n }\n\n pub fn read(&mut self) -> Field {\n let result = self.data[self.offset];\n self.offset += 1;\n result\n }\n\n pub fn read_u32(&mut self) -> u32 {\n self.read() as u32\n }\n\n pub fn read_bool(&mut self) -> bool {\n self.read() as bool\n }\n\n pub fn read_array<let K: u32>(&mut self, mut result: [Field; K]) -> [Field; K] {\n for i in 0..K {\n result[i] = self.data[self.offset + i];\n }\n self.offset += K;\n result\n }\n\n // TODO(#4394)\n pub fn read_struct<T, let K: u32>(&mut self, deserialise: fn([Field; K]) -> T) -> T {\n let result = deserialise(self.read_array([0; K]));\n result\n }\n\n pub fn read_struct_array<T, let K: u32, let C: u32>(&mut self, deserialise: fn([Field; K]) -> T, mut result: [T; C]) -> [T; C] {\n for i in 0..C {\n result[i] = self.read_struct(deserialise);\n }\n result\n }\n\n pub fn finish(self) {\n assert(self.offset == self.data.len(), \"Reader did not read all data\");\n }\n}\n"},"282":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/mod.nr","source":"// general util packages/modules are usually bad practice\n// because there is no criteria for what we should not put in here.\n// Reducing the size of this package would be welcome.\n\nmod arrays;\nmod field;\nmod reader;\nmod uint256;\n\n// if predicate == true then return lhs, else return rhs\npub fn conditional_assign(predicate: bool, lhs: Field, rhs: Field) -> Field {\n if predicate { lhs } else { rhs }\n}\n\npub fn arr_copy_slice<T, let N: u32, let M: u32>(src: [T; N], mut dst: [T; M], offset: u32) -> [T; M] {\n let iterator_len = if N > M { M } else { N };\n for i in 0..iterator_len {\n dst[i] = src[i + offset];\n }\n dst\n}\n"},"297":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr","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_V1},\n contract_class_id::ContractClassId, hash::poseidon2_hash,\n traits::{Empty, FromField, 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 FromField for AztecAddress {\n fn from_field(value: Field) -> AztecAddress {\n AztecAddress { inner: value }\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 FromField::from_field(fields[0])\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn compute(pub_keys_hash: PublicKeysHash, partial_address: PartialAddress) -> AztecAddress {\n AztecAddress::from_field(\n poseidon2_hash([pub_keys_hash.to_field(), partial_address.to_field(), GENERATOR_INDEX__CONTRACT_ADDRESS_V1])\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_from_partial_and_pub_keys_hash() {\n let pub_keys_hash = PublicKeysHash::from_field(1);\n let partial_address = PartialAddress::from_field(2);\n\n let address = AztecAddress::compute(pub_keys_hash, partial_address);\n let expected_computed_address_from_partial_and_pubkey = 0x1b6ead051e7b42665064ca6cf1ec77da0a36d86e00d1ff6e44077966c0c3a9fa;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkey);\n}\n\n#[test]\nfn from_field_to_field() {\n let address = AztecAddress { inner: 37 };\n assert_eq(FromField::from_field(address.to_field()), address);\n}\n\n#[test]\nfn serde() {\n let address = AztecAddress { inner: 37 };\n assert_eq(Deserialize::deserialize(address.serialize()), address);\n}\n"},"32":{"path":"std/hash/poseidon2.nr","source":"use crate::hash::Hasher;\nuse crate::default::Default;\n\nglobal RATE: u32 = 3;\n\nstruct Poseidon2 {\n cache: [Field;3],\n state: [Field;4],\n cache_size: u32,\n squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2 {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n if message_size == N {\n Poseidon2::hash_internal(input, N, false)\n } else {\n Poseidon2::hash_internal(input, message_size, true)\n }\n }\n\n fn new(iv: Field) -> Poseidon2 {\n let mut result = Poseidon2 { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) -> [Field; RATE] {\n // zero-pad the cache\n for i in 0..RATE {\n if i >= self.cache_size {\n self.cache[i] = 0;\n }\n }\n // add the cache into sponge state\n for i in 0..RATE {\n self.state[i] += self.cache[i];\n }\n self.state = crate::hash::poseidon2_permutation(self.state, 4);\n // return `RATE` number of field elements from the sponge state.\n let mut result = [0; RATE];\n for i in 0..RATE {\n result[i] = self.state[i];\n }\n result\n }\n\n fn absorb(&mut self, input: Field) {\n if (!self.squeeze_mode) & (self.cache_size == RATE) {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n let _ = self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else if (!self.squeeze_mode) & (self.cache_size != RATE) {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n } else if self.squeeze_mode {\n // If we're in squeeze mode, switch to absorb mode and add the input into the cache.\n // N.B. I don't think this code path can be reached?!\n self.cache[0] = input;\n self.cache_size = 1;\n self.squeeze_mode = false;\n }\n }\n\n fn squeeze(&mut self) -> Field {\n if self.squeeze_mode & (self.cache_size == 0) {\n // If we're in squeze mode and the cache is empty, there is nothing left to squeeze out of the sponge!\n // Switch to absorb mode.\n self.squeeze_mode = false;\n self.cache_size = 0;\n }\n if !self.squeeze_mode {\n // If we're in absorb mode, apply sponge permutation to compress the cache, populate cache with compressed\n // state and switch to squeeze mode. Note: this code block will execute if the previous `if` condition was\n // matched\n let new_output_elements = self.perform_duplex();\n self.squeeze_mode = true;\n for i in 0..RATE {\n self.cache[i] = new_output_elements[i];\n }\n self.cache_size = RATE;\n }\n // By this point, we should have a non-empty cache. Pop one item off the top of the cache and return it.\n let result = self.cache[0];\n for i in 1..RATE {\n if i < self.cache_size {\n self.cache[i - 1] = self.cache[i];\n }\n }\n self.cache_size -= 1;\n self.cache[self.cache_size] = 0;\n result\n }\n\n fn hash_internal<let N: u32>(input: [Field; N], in_len: u32, is_variable_length: bool) -> Field {\n let two_pow_64 = 18446744073709551616;\n let iv : Field = (in_len as Field) * two_pow_64;\n let mut sponge = Poseidon2::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n\nstruct Poseidon2Hasher{\n _state: [Field],\n}\n\nimpl Hasher for Poseidon2Hasher {\n fn finish(self) -> Field {\n let iv : Field = (self._state.len() as Field)*18446744073709551616; // iv = (self._state.len() << 64)\n let mut sponge = Poseidon2::new(iv);\n for i in 0..self._state.len() {\n sponge.absorb(self._state[i]);\n }\n sponge.squeeze()\n }\n\n fn write(&mut self, input: Field){\n self._state = self._state.push_back(input);\n }\n}\n\nimpl Default for Poseidon2Hasher {\n fn default() -> Self {\n Poseidon2Hasher {\n _state: &[],\n }\n }\n}\n"},"391":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/auth_oracle.nr","source":"use dep::authwit::auth_witness;\nuse dep::aztec::{\n protocol_types::{address::PartialAddress, utils::arr_copy_slice},\n keys::{PublicKeys, PUBLIC_KEYS_LENGTH}\n};\n\nstruct AuthWitness {\n keys: PublicKeys,\n signature: [u8; 64],\n partial_address: PartialAddress,\n}\n\nimpl AuthWitness {\n fn deserialize(values: [Field; 77]) -> Self {\n let mut signature = [0; 64];\n for i in 0..64 {\n signature[i] = values[i + PUBLIC_KEYS_LENGTH] as u8;\n }\n Self {\n keys: PublicKeys::deserialize(arr_copy_slice(values, [0; PUBLIC_KEYS_LENGTH], 0)),\n signature,\n partial_address: PartialAddress::from_field(values[76])\n }\n }\n}\n\nunconstrained pub fn get_auth_witness(message_hash: Field) -> AuthWitness {\n let witness: [Field; 77] = auth_witness::get_auth_witness(message_hash);\n AuthWitness::deserialize(witness)\n}\n"},"392":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/main.nr","source":"mod util;\nmod auth_oracle;\n\ncontract SchnorrSingleKeyAccount {\n use dep::aztec::prelude::{AztecAddress, FunctionSelector, PrivateContext};\n\n use dep::authwit::{entrypoint::{app::AppPayload, fee::FeePayload}, account::AccountActions};\n\n use crate::{util::recover_address, auth_oracle::get_auth_witness};\n\n // Note: If you globally change the entrypoint signature don't forget to update default_entrypoint.ts\n #[aztec(private)]\n fn entrypoint(app_payload: AppPayload, fee_payload: FeePayload) {\n let actions = AccountActions::init(&mut context, is_valid_impl);\n actions.entrypoint(app_payload, fee_payload);\n }\n\n #[aztec(private)]\n #[aztec(view)]\n fn verify_private_authwit(inner_hash: Field) -> Field {\n let actions = AccountActions::init(&mut context, is_valid_impl);\n actions.verify_private_authwit(inner_hash)\n }\n\n #[contract_library_method]\n fn is_valid_impl(context: &mut PrivateContext, outer_hash: Field) -> bool {\n let witness = get_auth_witness(outer_hash);\n assert(recover_address(outer_hash, witness).eq(context.this_address()));\n true\n }\n}\n"},"393":{"path":"/usr/src/noir-projects/noir-contracts/contracts/schnorr_single_key_account_contract/src/util.nr","source":"use std::{schnorr::verify_signature_slice};\nuse dep::aztec::prelude::AztecAddress;\nuse crate::auth_oracle::AuthWitness;\n\npub fn recover_address(message_hash: Field, witness: AuthWitness) -> AztecAddress {\n let message_bytes = message_hash.to_be_bytes(32);\n // In a single key account contract we re-used ivpk_m as signing key\n let verification = verify_signature_slice(\n witness.keys.ivpk_m.x,\n witness.keys.ivpk_m.y,\n witness.signature,\n message_bytes\n );\n assert(verification == true);\n\n AztecAddress::compute(witness.keys.hash(), witness.partial_address)\n}\n"},"5":{"path":"std/collections/bounded_vec.nr","source":"use crate::{cmp::Eq, convert::From};\n\nstruct BoundedVec<T, let MaxLen: u32> {\n storage: [T; MaxLen],\n len: u32,\n}\n\nimpl<T, let MaxLen: u32> BoundedVec<T, MaxLen> {\n pub fn new() -> Self {\n let zeroed = crate::unsafe::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n /// Get an element from the vector at the given index.\n /// Panics if the given index points beyond the end of the vector (`self.len()`).\n pub fn get(self, index: u32) -> T {\n assert(index < self.len, \"Attempted to read past end of BoundedVec\");\n self.get_unchecked(index)\n }\n\n /// Get an element from the vector at the given index.\n /// Responds with undefined data for `index` where `self.len < index < self.max_len()`.\n pub fn get_unchecked(self, index: u32) -> T {\n self.storage[index]\n }\n\n /// Write an element to the vector at the given index.\n /// Panics if the given index points beyond the end of the vector (`self.len()`).\n pub fn set(&mut self, index: u32, value: T) {\n assert(index < self.len, \"Attempted to write past end of BoundedVec\");\n self.set_unchecked(index, value)\n }\n\n /// Write an element to the vector at the given index.\n /// Does not check whether the passed `index` is a valid index within the vector.\n ///\n /// Silently writes past the end of the vector for `index` where `self.len < index < self.max_len()`\n /// Panics if the given index points beyond the maximum length of the vector (`self.max_len()`).\n pub fn set_unchecked(&mut self, index: u32, value: T) {\n self.storage[index] = value;\n }\n\n pub fn push(&mut self, elem: T) {\n assert(self.len < MaxLen, \"push out of bounds\");\n\n self.storage[self.len] = elem;\n self.len += 1;\n }\n\n pub fn len(self) -> u32 {\n self.len\n }\n\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u32 {\n MaxLen\n }\n\n // This is a intermediate method, while we don't have an\n // .extend method\n pub fn storage(self) -> [T; MaxLen] {\n self.storage\n }\n\n pub fn extend_from_array<let Len: u32>(&mut self, array: [T; Len]) {\n let new_len = self.len + array.len();\n assert(new_len <= MaxLen, \"extend_from_array out of bounds\");\n for i in 0..array.len() {\n self.storage[self.len + i] = array[i];\n }\n self.len = new_len;\n }\n\n pub fn extend_from_slice(&mut self, slice: [T]) {\n let new_len = self.len + slice.len();\n assert(new_len <= MaxLen, \"extend_from_slice out of bounds\");\n for i in 0..slice.len() {\n self.storage[self.len + i] = slice[i];\n }\n self.len = new_len;\n }\n\n pub fn extend_from_bounded_vec<let Len: u32>(&mut self, vec: BoundedVec<T, Len>) {\n let append_len = vec.len();\n let new_len = self.len + append_len;\n assert(new_len <= MaxLen, \"extend_from_bounded_vec out of bounds\");\n\n let mut exceeded_len = false;\n for i in 0..Len {\n exceeded_len |= i == append_len;\n if !exceeded_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n }\n self.len = new_len;\n }\n\n pub fn from_array<let Len: u32>(array: [T; Len]) -> Self {\n assert(Len <= MaxLen, \"from array out of bounds\");\n let mut vec: BoundedVec<T, MaxLen> = BoundedVec::new();\n vec.extend_from_array(array);\n vec\n }\n\n pub fn pop(&mut self) -> T {\n assert(self.len > 0);\n self.len -= 1;\n\n let elem = self.storage[self.len];\n self.storage[self.len] = crate::unsafe::zeroed();\n elem\n }\n\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n let mut exceeded_len = false;\n for i in 0..MaxLen {\n exceeded_len |= i == self.len;\n if !exceeded_len {\n ret |= predicate(self.storage[i]);\n }\n }\n ret\n }\n\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n }\n ret\n }\n}\n\nimpl<T, let MaxLen: u32> Eq for BoundedVec<T, MaxLen> where T: Eq {\n fn eq(self, other: BoundedVec<T, MaxLen>) -> bool {\n // TODO: https://github.com/noir-lang/noir/issues/4837\n //\n // We make the assumption that the user has used the proper interface for working with `BoundedVec`s\n // rather than directly manipulating the internal fields as this can result in an inconsistent internal state.\n \n (self.len == other.len) & (self.storage == other.storage)\n }\n}\n\nimpl<T, let MaxLen: u32, let Len: u32> From<[T; Len]> for BoundedVec<T, MaxLen> {\n fn from(array: [T; Len]) -> BoundedVec<T, MaxLen> {\n BoundedVec::from_array(array)\n }\n}\n\nmod bounded_vec_tests {\n\n mod get {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_elements_past_end_of_vec() {\n let vec: BoundedVec<Field, 5> = BoundedVec::new();\n\n crate::println(vec.get(0));\n }\n }\n\n mod set {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn set_updates_values_properly() {\n let mut vec = BoundedVec::from_array([0, 0, 0, 0, 0]);\n\n vec.set(0, 42);\n assert_eq(vec.storage, [42, 0, 0, 0, 0]);\n\n vec.set(1, 43);\n assert_eq(vec.storage, [42, 43, 0, 0, 0]);\n\n vec.set(2, 44);\n assert_eq(vec.storage, [42, 43, 44, 0, 0]);\n\n vec.set(1, 10);\n assert_eq(vec.storage, [42, 10, 44, 0, 0]);\n\n vec.set(0, 0);\n assert_eq(vec.storage, [0, 10, 44, 0, 0]);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_writing_elements_past_end_of_vec() {\n let mut vec: BoundedVec<Field, 5> = BoundedVec::new();\n vec.set(0, 42);\n\n // Need to use println to avoid DIE removing the write operation.\n crate::println(vec.get(0));\n }\n }\n\n mod map {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-map-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| value * 2);\n // docs:end:bounded-vec-map-example\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.map(|value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.storage()[2], 0);\n }\n }\n\n mod from_array {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty() {\n let empty_array: [Field; 0] = [];\n let bounded_vec = BoundedVec::from_array([]);\n\n assert_eq(bounded_vec.max_len(), 0);\n assert_eq(bounded_vec.len(), 0);\n assert_eq(bounded_vec.storage(), empty_array);\n }\n\n #[test]\n fn equal_len() {\n let array = [1, 2, 3];\n let bounded_vec = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 3);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage(), array);\n }\n\n #[test]\n fn max_len_greater_then_array_len() {\n let array = [1, 2, 3];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage()[0], 1);\n assert_eq(bounded_vec.storage()[1], 2);\n assert_eq(bounded_vec.storage()[2], 3);\n }\n\n #[test(should_fail_with=\"from array out of bounds\")]\n fn max_len_lower_then_array_len() {\n let _: BoundedVec<Field, 2> = BoundedVec::from_array([0; 3]);\n }\n }\n\n mod trait_from {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn simple() {\n let array = [1, 2];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 2);\n assert_eq(bounded_vec.storage()[0], 1);\n assert_eq(bounded_vec.storage()[1], 2);\n }\n }\n\n mod trait_eq {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty_equality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n\n assert_eq(bounded_vec1, bounded_vec2);\n }\n\n #[test]\n fn inequality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n bounded_vec1.push(1);\n bounded_vec2.push(2);\n\n assert(bounded_vec1 != bounded_vec2);\n }\n }\n}\n"},"58":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/auth_witness.nr","source":"#[oracle(getAuthWitness)]\nunconstrained fn get_auth_witness_oracle<let N: u32>(_message_hash: Field) -> [Field; N] {}\n\n/**\n * Oracle wrapper to fetch an `auth_witness` for a given `message_hash` from the PXE.\n * \n * @param message_hash The hash of the message for which the `auth_witness` is to be fetched.\n * @return The `auth_witness` for the given `message_hash` as Field array.\n */\nunconstrained pub fn get_auth_witness<let N: u32>(message_hash: Field) -> [Field; N] {\n get_auth_witness_oracle(message_hash)\n}\n"},"59":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/auth.nr","source":"use dep::aztec::protocol_types::{\n abis::function_selector::FunctionSelector, address::AztecAddress,\n constants::{\n GENERATOR_INDEX__AUTHWIT_INNER, GENERATOR_INDEX__AUTHWIT_OUTER, GENERATOR_INDEX__AUTHWIT_NULLIFIER,\n CANONICAL_AUTH_REGISTRY_ADDRESS\n},\n hash::pedersen_hash\n};\nuse dep::aztec::{prelude::Deserialize, context::{PrivateContext, PublicContext, gas::GasOpts}, hash::hash_args_array};\n\n/**\n * Authenticaion witness helper library\n *\n * Authentication Witness is a scheme for authenticating actions on Aztec, so users can allow third-parties \n * (e.g. protocols or other users) to execute an action on their behalf.\n * \n * This library provides helper functions to manage such witnesses.\n * The authentication witness, is some \"witness\" (data) that authenticates a `message_hash`.\n * The simplest example of an authentication witness, is a signature. The signature is the \"evidence\",\n * that the signer has seen the message, agrees with it, and has allowed it.\n * It does not need to be a signature. It could be any kind of \"proof\" that the message is allowed.\n * Another proof could be knowing some kind of secret, or having some kind of \"token\" that allows the message.\n *\n * The `message_hash` is a hash of the following structure:\n * hash(consumer, chain_id, version, inner_hash)\n * - consumer: the address of the contract that is \"consuming\" the message,\n * - chain_id: the chain id of the chain that the message is being consumed on,\n * - version: the version of the chain that the message is being consumed on,\n * - inner_hash: the hash of the \"inner\" message that is being consumed, this is the \"actual\" message or action.\n *\n * While the `inner_hash` could be anything, such as showing you signed a specific message, it will often be \n * a hash of the \"action\" to approve, along with who made the call. As part of this library, we provide a few \n * helper functions to deal with such messages.\n *\n * For example, we provide helper function that is used for checking that the message is an encoding of the current call.\n * This can be used to let some contract \"allow\" another contract to act on its behalf, as long as it can \n * show that it is acting on behalf of the contract.\n *\n * If we take a case of allowing a contract to transfer tokens on behalf of an account, the `inner_hash` can be \n * derived as:\n * inner_hash = hash(caller, \"transfer\", hash(to, amount))\n * \n * Where the `caller` would be the address of the contract that is trying to transfer the tokens, and `to` and `amount`\n * the arguments for the transfer. \n * \n * Note that we have both a `caller` and a `consumer`, the `consumer` will be the contract that is consuming the message,\n * in the case of the transfer, it would be the `Token` contract itself, while the caller, will be the actor that is \n * allowed to transfer the tokens.\n *\n *\n * The authentication mechanism works differently in public and private contexts. In private, we recall that everything\n * is executed on the user's device, so we can use `oracles` to \"ask\" the user (not contract) for information. In public\n * we cannot do this, since it is executed by the sequencer (someone else). Therefore we can instead use a \"registry\"\n * to store the messages that we have approved.\n * \n * A simple example would be a \"token\" that is being \"pulled\" from one account into another. We will first outline \n * how this would look in private, and then in public later. \n *\n * Say that a user `Alice` wants to deposit some tokens into a DeFi protocol (say a DEX). \n * `Alice` would make a `deposit` transaction, that she is executing using her account contract. \n * The account would call the `DeFi` contract to execute `deposit`, which would try to pull funds from the `Token` \n * contract. Since the `DeFi` contract is trying to pull funds from an account that is not its own, it needs to \n * convince the `Token` contract that it is allowed to do so. \n * \n * This is where the authentication witness comes in! The `Token` contract computes a `message_hash` from the \n * `transfer` call, and then asks `Alice Account` contract to verify that the `DeFi` contract is allowed to \n * execute that call.\n * \n * `Alice Account` contract can then ask `Alice` if she wants to allow the `DeFi` contract to pull funds from her \n * account. If she does, she will sign the `message_hash` and return the signature to the `Alice Account` which\n * will validate it and return success to the `Token` contract which will then allow the `DeFi` contract to pull\n * funds from `Alice`.\n * \n * To ensure that the same \"approval\" cannot be used multiple times, we also compute a `nullifier` for the\n * authentication witness, and emit it from the `Token` contract (consumer).\n * \n * Note that we can do this flow as we are in private were we can do oracle calls out from contracts. \n * \n *\n * Person Contract Contract Contract\n * Alice Alice Account Token DeFi\n * | | | |\n * | Defi.deposit(Token, 1000) | |\n * |----------------->| | |\n * | | deposit(Token, 1000) |\n * | |---------------------------------------->|\n * | | | |\n * | | | transfer(Alice, Defi, 1000)\n * | | |<---------------------|\n * | | | |\n * | | Check if Defi may call transfer(Alice, Defi, 1000)\n * | |<-----------------| |\n * | | | |\n * | Please give me AuthWit for DeFi | |\n * | calling transfer(Alice, Defi, 1000) | |\n * |<-----------------| | |\n * | | | |\n * | | | |\n * | AuthWit for transfer(Alice, Defi, 1000) |\n * |----------------->| | |\n * | | AuthWit validity | |\n * | |----------------->| |\n * | | | |\n * | | throw if invalid AuthWit |\n * | | | |\n * | | emit AuthWit nullifier |\n * | | | |\n * | | transfer(Alice, Defi, 1000) |\n * | | | |\n * | | | |\n * | | | success |\n * | | |--------------------->|\n * | | | |\n * | | | |\n * | | | deposit(Token, 1000)\n * | | | |\n * | | | |\n *\n * \n * If we instead were in public, we cannot do the same flow. Instead we would use an authentication registry to store \n * the messages that we have approved. \n * \n * To approve a message, `Alice Account` can make a `set_authorized` call to the registry, to set a `message_hash`\n * as authorized. This is essentially a mapping from `message_hash` to `true` for `Alice Contract`. Every account\n * has its own map in the registry, so `Alice` cannot approve a message for `Bob`.\n *\n * The `Token` contract can then try to \"spend\" the approval by calling `consume` on the registry. If the message\n * was approved, the value is updated to `false`, and we return the success flag. For more information on the\n * registry, see `main.nr` in `auth_registry_contract`.\n *\n * Person Contract Contract Contract Contract\n * Alice Alice Account Registry Token DeFi\n * | | | | |\n * | Registry.set_authorized(..., true) | | |\n * |----------------->| | | |\n * | | set_authorized(..., true) | |\n * | |------------------->| | |\n * | | | | |\n * | | set authorized to true | |\n * | | | | |\n * | | | | |\n * | Defi.deposit(Token, 1000) | | |\n * |----------------->| | | |\n * | | deposit(Token, 1000) | |\n * | |-------------------------------------------------------------->|\n * | | | | |\n * | | | transfer(Alice, Defi, 1000) |\n * | | | |<---------------------|\n * | | | | |\n * | | | Check if Defi may call transfer(Alice, Defi, 1000)\n * | | |<------------------| |\n * | | | | |\n * | | throw if invalid AuthWit | |\n * | | | | |\n * | | | | |\n * | | set authorized to false | |\n * | | | | |\n * | | | | |\n * | | | AuthWit validity | |\n * | | |------------------>| |\n * | | | | |\n * | | | | transfer(Alice, Defi, 1000)\n * | | | |<-------------------->|\n * | | | | |\n * | | | | success |\n * | | | |--------------------->|\n * | | | | |\n * | | | | deposit(Token, 1000)\n * | | | | |\n *\n *\n * --- FAQ ---\n * Q: Why are we using a success flag of `keccak256(\"IS_VALID()\")` instead of just returning a boolean?\n * A: We want to make sure that we don't accidentally return `true` if there is a collision in the function selector.\n * By returning a hash of `IS_VALID()`, it becomes very unlikely that there is both a colission and we return \n * a success flag.\n * \n * Q: Why are we using static calls?\n * A: We are using static calls to ensure that the account contract cannot re-enter. If it was a normal call, it\n * could make a new call and do a re-entry attack. Using a static ensures that it cannot update any state.\n *\n * Q: Would it not be cheaper to use a nullifier instead of updating state in public?\n * A: At a quick glance, a public state update + nullifier is 96 bytes, but two state updates are 128, so it would be \n * cheaper to use a nullifier, if this is the way it would always be done. However, if both the approval and the \n * consumption is done in the same transaction, then we will be able to squash the updates (only final tx state diff is posted to DA), and now it is cheaper.\n * \n * Q: Why is the chain id and the version part of the message hash?\n * A: The chain id and the version is part of the message hash to ensure that the message is only valid on a specific\n * chain to avoid a case where the same message could be used across multiple chains. \n */\n\nglobal IS_VALID_SELECTOR = 0xabf64ad4; // 4 first bytes of keccak256(\"IS_VALID()\")\n\n/** \n * Assert that `on_behalf_of` have authorized the current call with a valid authentication witness\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n * \n * @param on_behalf_of The address that have authorized the current call\n */\n// docs:start:assert_current_call_valid_authwit\npub fn assert_current_call_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress) {\n let inner_hash = compute_inner_authwit_hash([context.msg_sender().to_field(), context.selector().to_field(), context.args_hash]);\n assert_inner_hash_valid_authwit(context, on_behalf_of, inner_hash);\n}\n// docs:end:assert_current_call_valid_authwit\n\n/** \n * Assert that a specific `inner_hash` is valid for the `on_behalf_of` address\n * \n * Used as an internal function for `assert_current_call_valid_authwit` and can be used as a standalone function when\n * the `inner_hash` is from a different source, e.g., say a block of text etc.\n * \n * @param on_behalf_of The address that have authorized the current call\n * @param inner_hash The hash of the message to authorize \n */\npub fn assert_inner_hash_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress, inner_hash: Field) {\n // We perform a static call here and not a standard one to ensure that the account contract cannot re-enter.\n let result: Field = context.static_call_private_function(\n on_behalf_of,\n FunctionSelector::from_signature(\"verify_private_authwit(Field)\"),\n [inner_hash]\n ).unpack_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n // Compute the nullifier, similar computation to the outer hash, but without the chain_id and version.\n // Those should already be handled in the verification, so we just need something to nullify, that allow same inner_hash for multiple actors.\n let nullifier = compute_authwit_nullifier(on_behalf_of, inner_hash);\n context.push_nullifier(nullifier, 0);\n}\n\n/** \n * Assert that `on_behalf_of` have authorized the current call in the authentication registry\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n * \n * Note that the authentication registry will take the `msg_sender` into account as the consumer, so this will only\n * work if the `msg_sender` is the same as the `consumer` when the `message_hash` was inserted into the registry.\n * \n * @param on_behalf_of The address that have authorized the current call\n */\n// docs:start:assert_current_call_valid_authwit_public\npub fn assert_current_call_valid_authwit_public(context: &mut PublicContext, on_behalf_of: AztecAddress) {\n let inner_hash = compute_inner_authwit_hash(\n [(*context).msg_sender().to_field(), (*context).selector().to_field(), (*context).get_args_hash()]\n );\n assert_inner_hash_valid_authwit_public(context, on_behalf_of, inner_hash);\n}\n// docs:end:assert_current_call_valid_authwit_public\n\n/** \n * Assert that `on_behalf_of` have authorized a speicifc `inner_hash` in the authentication registry\n * \n * Computing the `inner_hash` using the `msg_sender`, `selector` and `args_hash` and then making a call out to the \n * `on_behalf_of` contract to verify that the `inner_hash` is valid.\n *\n * Note that the authentication registry will take the `msg_sender` into account as the consumer, so this will only\n * work if the `msg_sender` is the same as the `consumer` when the `message_hash` was inserted into the registry.\n * \n * @param on_behalf_of The address that have authorized the the `inner_hash`\n */\npub fn assert_inner_hash_valid_authwit_public(context: &mut PublicContext, on_behalf_of: AztecAddress, inner_hash: Field) {\n let result: Field = context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"consume((Field),Field)\"),\n [on_behalf_of.to_field(), inner_hash].as_slice(),\n GasOpts::default()\n ).deserialize_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n\n/**\n * Compute the `message_hash` from a function call to be used by an authentication witness \n * \n * Useful for when you need a non-account contract to approve during execution. For example if you need a contract\n * to make a call to nested contract, e.g., contract A wants to exit token T to L1 using bridge B, so it needs to allow\n * B to transfer T on its behalf.\n * \n * @param caller The address of the contract that is calling the function, in the example above, this would be B\n * @param consumer The address of the contract that is consuming the message, in the example above, this would be T\n * @param chain_id The chain id of the chain that the message is being consumed on\n * @param version The version of the chain that the message is being consumed on\n * @param selector The function selector of the function that is being called\n * @param args The arguments of the function that is being called\n */\n// docs:start:compute_authwit_message_hash_from_call\npub fn compute_authwit_message_hash_from_call<let N: u32>(\n caller: AztecAddress,\n consumer: AztecAddress,\n chain_id: Field,\n version: Field,\n selector: FunctionSelector,\n args: [Field; N]\n) -> Field {\n let args_hash = hash_args_array(args);\n let inner_hash = compute_inner_authwit_hash([caller.to_field(), selector.to_field(), args_hash]);\n compute_authwit_message_hash(consumer, chain_id, version, inner_hash)\n}\n// docs:end:compute_authwit_message_hash_from_call\n\n/**\n * Computes the `inner_hash` of the authentication witness\n * \n * This is used internally, but also useful in cases where you want to compute the `inner_hash` for a specific message\n * that is not necessarily a call, but just some \"bytes\" or text.\n * \n * @param args The arguments to hash\n */\npub fn compute_inner_authwit_hash<let N: u32>(args: [Field; N]) -> Field {\n pedersen_hash(args, GENERATOR_INDEX__AUTHWIT_INNER)\n}\n\n/** \n * Computs the `authwit_nullifier` for a specific `on_behalf_of` and `inner_hash`\n * \n * Using the `on_behalf_of` and the `inner_hash` to ensure that the nullifier is siloed for a specific `on_behalf_of`.\n * \n * @param on_behalf_of The address that have authorized the the `inner_hash`\n * @param inner_hash The hash of the message to authorize\n */\npub fn compute_authwit_nullifier(on_behalf_of: AztecAddress, inner_hash: Field) -> Field {\n pedersen_hash(\n [on_behalf_of.to_field(), inner_hash],\n GENERATOR_INDEX__AUTHWIT_NULLIFIER\n )\n}\n\n/**\n * Computes the `message_hash` for the authentication witness\n * \n * @param consumer The address of the contract that is consuming the message\n * @param chain_id The chain id of the chain that the message is being consumed on\n * @param version The version of the chain that the message is being consumed on\n * @param inner_hash The hash of the \"inner\" message that is being consumed\n */\npub fn compute_authwit_message_hash(consumer: AztecAddress, chain_id: Field, version: Field, inner_hash: Field) -> Field {\n pedersen_hash(\n [\n consumer.to_field(),\n chain_id,\n version,\n inner_hash\n ],\n GENERATOR_INDEX__AUTHWIT_OUTER\n )\n}\n\n/**\n * Helper function to set the authorization status of a message hash\n * \n * Wraps a public call to the authentication registry to set the authorization status of a `message_hash`\n * \n * @param message_hash The hash of the message to authorize\n * @param authorize True if the message should be authorized, false if it should be revoked\n */\npub fn set_authorized(context: &mut PublicContext, message_hash: Field, authorize: bool) {\n context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"set_authorized(Field,bool)\"),\n [message_hash, authorize as Field].as_slice(),\n GasOpts::default()\n ).assert_empty();\n}\n\n/**\n * Helper function to reject all authwits\n * \n * Wraps a public call to the authentication registry to set the `reject_all` flag\n *\n * @param reject True if all authwits should be rejected, false otherwise \n */\npub fn set_reject_all(context: &mut PublicContext, reject: bool) {\n context.call_public_function(\n AztecAddress::from_field(CANONICAL_AUTH_REGISTRY_ADDRESS),\n FunctionSelector::from_signature(\"set_reject_all(bool)\"),\n [context.this_address().to_field(), reject as Field].as_slice(),\n GasOpts::default()\n ).assert_empty();\n}\n"},"60":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/account.nr","source":"use dep::aztec::context::{PrivateContext, PublicContext};\nuse dep::aztec::protocol_types::{address::AztecAddress, abis::function_selector::FunctionSelector, hash::pedersen_hash};\n\nuse crate::entrypoint::{app::AppPayload, fee::FeePayload};\nuse crate::auth::{IS_VALID_SELECTOR, compute_authwit_message_hash};\n\nstruct AccountActions<Context> {\n context: Context,\n is_valid_impl: fn(&mut PrivateContext, Field) -> bool,\n}\n\nimpl<Context> AccountActions<Context> {\n pub fn init(context: Context, is_valid_impl: fn(&mut PrivateContext, Field) -> bool) -> Self {\n AccountActions { context, is_valid_impl }\n }\n}\n\n/**\n * An implementation of the Account Action struct for the private context.\n * \n * Implements logic to verify authorization and execute payloads.\n */\nimpl AccountActions<&mut PrivateContext> {\n\n /** \n * Verifies that the `app_hash` and `fee_hash` are authorized and then executes them.\n * \n * Executes the `fee_payload` and `app_payload` in sequence.\n * Will execute the `fee_payload` as part of the setup, and then enter the app phase.\n * \n * @param app_payload The payload that contains the calls to be executed in the app phase.\n * @param fee_payload The payload that contains the calls to be executed in the setup phase.\n */\n // docs:start:entrypoint\n pub fn entrypoint(self, app_payload: AppPayload, fee_payload: FeePayload) {\n let valid_fn = self.is_valid_impl;\n\n let fee_hash = fee_payload.hash();\n assert(valid_fn(self.context, fee_hash));\n fee_payload.execute_calls(self.context);\n self.context.end_setup();\n\n let app_hash = app_payload.hash();\n assert(valid_fn(self.context, app_hash));\n app_payload.execute_calls(self.context);\n }\n // docs:end:entrypoint\n\n /**\n * Verifies that the `msg_sender` is authorized to consume `inner_hash` by the account.\n * \n * Computes the `message_hash` using the `msg_sender`, `chain_id`, `version` and `inner_hash`.\n * Then executes the `is_valid_impl` function to verify that the message is authorized.\n * \n * Will revert if the message is not authorized. \n * \n * @param inner_hash The hash of the message that the `msg_sender` is trying to consume.\n */\n // docs:start:verify_private_authwit\n pub fn verify_private_authwit(self, inner_hash: Field) -> Field {\n // The `inner_hash` is \"siloed\" with the `msg_sender` to ensure that only it can \n // consume the message.\n // This ensures that contracts cannot consume messages that are not intended for them.\n let message_hash = compute_authwit_message_hash(\n self.context.msg_sender(),\n self.context.chain_id(),\n self.context.version(),\n inner_hash\n );\n let valid_fn = self.is_valid_impl;\n assert(valid_fn(self.context, message_hash) == true, \"Message not authorized by account\");\n IS_VALID_SELECTOR\n }\n // docs:end:verify_private_authwit\n}\n"},"61":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/entrypoint/app.nr","source":"use dep::aztec::prelude::PrivateContext;\nuse dep::aztec::protocol_types::{constants::GENERATOR_INDEX__SIGNATURE_PAYLOAD, hash::pedersen_hash, traits::{Hash, Serialize}};\n\nuse crate::entrypoint::function_call::{FunctionCall, FUNCTION_CALL_SIZE_IN_BYTES};\n\n// FUNCTION_CALL_SIZE * ACCOUNT_MAX_CALLS + 1\nglobal APP_PAYLOAD_SIZE: u64 = 21;\n// FUNCTION_CALL_SIZE_IN_BYTES * ACCOUNT_MAX_CALLS + 32\nglobal APP_PAYLOAD_SIZE_IN_BYTES: u64 = 424;\n\nglobal ACCOUNT_MAX_CALLS: u64 = 4;\n\n// Note: If you change the following struct you have to update default_entrypoint.ts\n// docs:start:app-payload-struct\nstruct AppPayload {\n function_calls: [FunctionCall; ACCOUNT_MAX_CALLS],\n nonce: Field,\n}\n// docs:end:app-payload-struct\n\nimpl Serialize<APP_PAYLOAD_SIZE> for AppPayload {\n // Serializes the entrypoint struct\n fn serialize(self) -> [Field; APP_PAYLOAD_SIZE] {\n let mut fields: BoundedVec<Field, APP_PAYLOAD_SIZE> = BoundedVec::new();\n for call in self.function_calls {\n fields.extend_from_array(call.serialize());\n }\n fields.push(self.nonce);\n fields.storage\n }\n}\n\nimpl Hash for AppPayload {\n fn hash(self) -> Field {\n pedersen_hash(\n self.serialize(),\n GENERATOR_INDEX__SIGNATURE_PAYLOAD\n )\n }\n}\n\nimpl AppPayload {\n // Serializes the payload as an array of bytes. Useful for hashing with sha256.\n fn to_be_bytes(self) -> [u8; APP_PAYLOAD_SIZE_IN_BYTES] {\n let mut bytes: BoundedVec<u8, APP_PAYLOAD_SIZE_IN_BYTES> = BoundedVec::new();\n\n for i in 0..ACCOUNT_MAX_CALLS {\n bytes.extend_from_array(self.function_calls[i].to_be_bytes());\n }\n bytes.extend_from_slice(self.nonce.to_be_bytes(32));\n\n bytes.storage\n }\n\n // Executes all private and public calls\n // docs:start:entrypoint-execute-calls\n fn execute_calls(self, context: &mut PrivateContext) {\n for call in self.function_calls {\n if !call.target_address.is_zero() {\n if call.is_public {\n context.call_public_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n } else {\n let _result = context.call_private_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n }\n }\n }\n }\n // docs:end:entrypoint-execute-calls\n}\n"},"63":{"path":"/usr/src/noir-projects/aztec-nr/authwit/src/entrypoint/fee.nr","source":"use dep::aztec::prelude::PrivateContext;\nuse dep::aztec::protocol_types::{constants::GENERATOR_INDEX__FEE_PAYLOAD, hash::pedersen_hash, traits::{Hash, Serialize}};\nuse crate::entrypoint::function_call::FunctionCall;\n\n// 2 * 5 (FUNCTION_CALL_SIZE) + 2\nglobal FEE_PAYLOAD_SIZE: Field = 12;\n\n// 2 * 98 (FUNCTION_CALL_SIZE_IN_BYTES) + 32\nglobal FEE_PAYLOAD_SIZE_IN_BYTES: Field = 228;\n\nglobal MAX_FEE_FUNCTION_CALLS = 2;\n\n// docs:start:fee-payload-struct\nstruct FeePayload {\n function_calls: [FunctionCall; MAX_FEE_FUNCTION_CALLS],\n nonce: Field,\n is_fee_payer: bool,\n}\n// docs:end:fee-payload-struct\n\nimpl Serialize<FEE_PAYLOAD_SIZE> for FeePayload {\n // Serializes the entrypoint struct\n fn serialize(self) -> [Field; FEE_PAYLOAD_SIZE] {\n let mut fields: BoundedVec<Field, FEE_PAYLOAD_SIZE> = BoundedVec::new();\n for i in 0..MAX_FEE_FUNCTION_CALLS {\n fields.extend_from_array(self.function_calls[i].serialize());\n }\n fields.push(self.nonce);\n fields.push(self.is_fee_payer as Field);\n fields.storage\n }\n}\n\nimpl Hash for FeePayload {\n fn hash(self) -> Field {\n pedersen_hash(\n self.serialize(),\n GENERATOR_INDEX__FEE_PAYLOAD\n )\n }\n}\n\nimpl FeePayload {\n fn to_be_bytes(self) -> [u8; FEE_PAYLOAD_SIZE_IN_BYTES] {\n let mut bytes: BoundedVec<u8, FEE_PAYLOAD_SIZE_IN_BYTES> = BoundedVec::new();\n\n for i in 0..MAX_FEE_FUNCTION_CALLS {\n bytes.extend_from_array(self.function_calls[i].to_be_bytes());\n }\n bytes.extend_from_slice(self.nonce.to_be_bytes(32));\n bytes.push(self.is_fee_payer as u8);\n\n bytes.storage\n }\n\n fn execute_calls(self, context: &mut PrivateContext) {\n for call in self.function_calls {\n if !call.target_address.is_zero() {\n if call.is_public {\n context.call_public_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n } else {\n let _result = context.call_private_function_with_packed_args(\n call.target_address,\n call.function_selector,\n call.args_hash,\n call.is_static,\n false\n );\n }\n }\n }\n if self.is_fee_payer {\n context.set_as_fee_payer();\n }\n }\n}\n"},"71":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/keys/public_keys.nr","source":"use dep::protocol_types::{\n address::PublicKeysHash, constants::GENERATOR_INDEX__PUBLIC_KEYS_HASH, hash::poseidon2_hash,\n point::Point, traits::{Deserialize, Serialize, Empty, is_empty}\n};\nuse crate::keys::constants::{NUM_KEY_TYPES, NULLIFIER_INDEX, INCOMING_INDEX, OUTGOING_INDEX};\n\nglobal PUBLIC_KEYS_LENGTH = 12;\n\nstruct PublicKeys {\n npk_m: Point,\n ivpk_m: Point,\n ovpk_m: Point,\n tpk_m: Point,\n}\n\nimpl Empty for PublicKeys {\n fn empty() -> Self {\n PublicKeys {\n npk_m : Point::empty(),\n ivpk_m : Point::empty(),\n ovpk_m : Point::empty(),\n tpk_m : Point::empty()\n }\n }\n}\n\nimpl Eq for PublicKeys {\n fn eq(self, other: PublicKeys) -> bool {\n ( self.npk_m == other.npk_m ) &\n ( self.ivpk_m == other.ivpk_m ) &\n ( self.ovpk_m == other.ovpk_m ) &\n ( self.tpk_m == other.tpk_m )\n }\n}\n\nimpl PublicKeys {\n pub fn hash(self) -> PublicKeysHash {\n PublicKeysHash::from_field(\n if is_empty(self) {\n 0\n } else {\n poseidon2_hash(\n [\n self.npk_m.x,\n self.npk_m.y,\n self.npk_m.is_infinite as Field,\n self.ivpk_m.x,\n self.ivpk_m.y,\n self.ivpk_m.is_infinite as Field,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.ovpk_m.is_infinite as Field,\n self.tpk_m.x,\n self.tpk_m.y,\n self.tpk_m.is_infinite as Field,\n GENERATOR_INDEX__PUBLIC_KEYS_HASH\n ]\n )\n }\n )\n }\n\n pub fn get_key_by_index(self, index: Field) -> Point {\n assert(index as u8 < NUM_KEY_TYPES, \"Invalid key index\");\n if index == NULLIFIER_INDEX {\n self.npk_m\n } else if index == INCOMING_INDEX {\n self.ivpk_m\n } else if index == OUTGOING_INDEX {\n self.ovpk_m\n } else {\n self.tpk_m\n }\n }\n}\n\nimpl Serialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn serialize(self) -> [Field; PUBLIC_KEYS_LENGTH] {\n [\n self.npk_m.x,\n self.npk_m.y,\n self.npk_m.is_infinite as Field,\n self.ivpk_m.x,\n self.ivpk_m.y,\n self.ivpk_m.is_infinite as Field,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.ovpk_m.is_infinite as Field,\n self.tpk_m.x,\n self.tpk_m.y,\n self.tpk_m.is_infinite as Field\n ]\n }\n}\n\nimpl Deserialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn deserialize(serialized: [Field; PUBLIC_KEYS_LENGTH]) -> PublicKeys {\n PublicKeys {\n npk_m: Point { x:serialized[0], y:serialized[1], is_infinite: serialized[2] as bool },\n ivpk_m: Point { x:serialized[3], y: serialized[4], is_infinite: serialized[5] as bool },\n ovpk_m: Point { x:serialized[6], y: serialized[7], is_infinite: serialized[8] as bool },\n tpk_m: Point { x:serialized[9], y: serialized[10], is_infinite: serialized[11] as bool }\n }\n }\n}\n\n#[test]\nfn compute_public_keys_hash() {\n let keys = PublicKeys {\n npk_m: Point { x: 1, y: 2, is_infinite: false },\n ivpk_m: Point { x: 3, y: 4, is_infinite: false },\n ovpk_m: Point { x: 5, y: 6, is_infinite: false },\n tpk_m: Point { x: 7, y: 8, is_infinite: false }\n };\n\n let actual = keys.hash();\n let expected_public_keys_hash = 0x146f68c0e0ba4067d61a3304bbfdec0797d5df1357db6c01247c48bfb345c7d7;\n\n assert(actual.to_field() == expected_public_keys_hash);\n}\n\n#[test]\nfn compute_empty_hash() {\n let keys = PublicKeys::empty();\n\n let actual = keys.hash();\n let test_data_empty_hash = 0x0000000000000000000000000000000000000000000000000000000000000000;\n\n assert(actual.to_field() == test_data_empty_hash);\n}\n\n#[test]\nfn test_public_keys_serialization() {\n let keys = PublicKeys {\n npk_m: Point { x: 1, y: 2, is_infinite: false },\n ivpk_m: Point { x: 3, y: 4, is_infinite: false },\n ovpk_m: Point { x: 5, y: 6, is_infinite: false },\n tpk_m: Point { x: 7, y: 8, is_infinite: false }\n };\n\n let serialized = keys.serialize();\n let deserialized = PublicKeys::deserialize(serialized);\n\n assert_eq(keys.npk_m.x, deserialized.npk_m.x);\n assert_eq(keys.npk_m.y, deserialized.npk_m.y);\n assert_eq(keys.ivpk_m.x, deserialized.ivpk_m.x);\n assert_eq(keys.ivpk_m.y, deserialized.ivpk_m.y);\n assert_eq(keys.ovpk_m.x, deserialized.ovpk_m.x);\n assert_eq(keys.ovpk_m.y, deserialized.ovpk_m.y);\n assert_eq(keys.tpk_m.x, deserialized.tpk_m.x);\n assert_eq(keys.tpk_m.y, deserialized.tpk_m.y);\n}\n"},"99":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/private_context.nr","source":"use crate::{\n context::{inputs::PrivateContextInputs, packed_returns::PackedReturns},\n messaging::process_l1_to_l2_message, hash::{hash_args_array, ArgsHasher},\n keys::constants::{NULLIFIER_INDEX, OUTGOING_INDEX, NUM_KEY_TYPES, sk_generators},\n oracle::{\n key_validation_request::get_key_validation_request, arguments, returns::pack_returns,\n call_private_function::call_private_function_internal, header::get_header_at,\n logs::{emit_encrypted_note_log, emit_encrypted_event_log},\n enqueue_public_function_call::{enqueue_public_function_call_internal, set_public_teardown_function_call_internal}\n}\n};\nuse dep::protocol_types::{\n abis::{\n call_context::CallContext, function_selector::FunctionSelector, gas::Gas,\n max_block_number::MaxBlockNumber,\n validation_requests::{KeyValidationRequest, KeyValidationRequestAndGenerator},\n private_call_request::PrivateCallRequest, private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_request::PublicCallRequest, public_call_stack_item::PublicCallStackItem,\n public_call_stack_item_compressed::PublicCallStackItemCompressed, read_request::ReadRequest,\n note_hash::NoteHash, nullifier::Nullifier, log_hash::{LogHash, NoteLogHash, EncryptedLogHash}\n},\n address::{AztecAddress, EthAddress},\n constants::{\n MAX_NOTE_HASHES_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_NULLIFIERS_PER_CALL,\n MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL,\n MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL,\n MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_ENCRYPTED_LOGS_PER_CALL, MAX_UNENCRYPTED_LOGS_PER_CALL,\n MAX_NOTE_ENCRYPTED_LOGS_PER_CALL\n},\n header::Header, messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::Empty\n};\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 is_fee_payer: bool,\n\n args_hash: Field,\n return_hash: Field,\n\n max_block_number: MaxBlockNumber,\n\n note_hash_read_requests: BoundedVec<ReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL>,\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n key_validation_requests_and_generators: BoundedVec<KeyValidationRequestAndGenerator, MAX_KEY_VALIDATION_REQUESTS_PER_CALL>,\n\n note_hashes: BoundedVec<NoteHash, MAX_NOTE_HASHES_PER_CALL>,\n nullifiers: BoundedVec<Nullifier, MAX_NULLIFIERS_PER_CALL>,\n\n private_call_requests : BoundedVec<PrivateCallRequest, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL>,\n public_call_requests : BoundedVec<PublicCallRequest, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n public_teardown_call_request: PublicCallRequest,\n l2_to_l1_msgs : BoundedVec<L2ToL1Message, MAX_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 note_encrypted_logs_hashes: BoundedVec<NoteLogHash, MAX_NOTE_ENCRYPTED_LOGS_PER_CALL>,\n encrypted_logs_hashes: BoundedVec<EncryptedLogHash, MAX_ENCRYPTED_LOGS_PER_CALL>,\n unencrypted_logs_hashes: BoundedVec<LogHash, MAX_UNENCRYPTED_LOGS_PER_CALL>,\n\n // Contains the last key validation request for each key type. This is used to cache the last request and avoid\n // fetching the same request multiple times.\n // The index of the array corresponds to the key type (0 nullifier, 1 incoming, 2 outgoing, 3 tagging).\n last_key_validation_requests: [Option<KeyValidationRequest>; NUM_KEY_TYPES],\n}\n\nimpl PrivateContext {\n pub fn new(inputs: PrivateContextInputs, args_hash: Field) -> PrivateContext {\n PrivateContext {\n inputs,\n side_effect_counter: inputs.start_side_effect_counter + 1,\n min_revertible_side_effect_counter: 0,\n is_fee_payer: false,\n args_hash,\n return_hash: 0,\n max_block_number: MaxBlockNumber::empty(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n key_validation_requests_and_generators: BoundedVec::new(),\n note_hashes: BoundedVec::new(),\n nullifiers: BoundedVec::new(),\n historical_header: inputs.historical_header,\n private_call_requests: BoundedVec::new(),\n public_call_requests: BoundedVec::new(),\n public_teardown_call_request: PublicCallRequest::empty(),\n l2_to_l1_msgs: BoundedVec::new(),\n note_encrypted_logs_hashes: BoundedVec::new(),\n encrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n last_key_validation_requests: [Option::none(); NUM_KEY_TYPES]\n }\n }\n\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 chain_id(self) -> Field {\n self.inputs.tx_context.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.tx_context.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 fn push_note_hash(&mut self, note_hash: Field) {\n self.note_hashes.push(NoteHash { value: note_hash, counter: self.next_counter() });\n }\n\n // TODO(#7112): This function is called with non-zero note hash only in 1 of 25 cases in aztec-packages repo\n // - consider creating a separate function with 1 arg for the zero note hash case.\n fn push_nullifier(&mut self, nullifier: Field, nullified_note_hash: Field) {\n self.nullifiers.push(Nullifier { value: nullifier, note_hash: nullified_note_hash, counter: self.next_counter() });\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 // 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 set_return_hash(&mut self, returns_hasher: ArgsHasher) {\n pack_returns(returns_hasher.fields);\n self.return_hash = returns_hasher.hash();\n }\n\n pub fn finish(self) -> PrivateCircuitPublicInputs {\n PrivateCircuitPublicInputs {\n call_context: self.inputs.call_context,\n args_hash: self.args_hash,\n returns_hash: self.return_hash,\n min_revertible_side_effect_counter: self.min_revertible_side_effect_counter,\n is_fee_payer: self.is_fee_payer,\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 key_validation_requests_and_generators: self.key_validation_requests_and_generators.storage,\n note_hashes: self.note_hashes.storage,\n nullifiers: self.nullifiers.storage,\n private_call_requests: self.private_call_requests.storage,\n public_call_requests: self.public_call_requests.storage,\n public_teardown_call_request: self.public_teardown_call_request,\n l2_to_l1_msgs: self.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 note_encrypted_logs_hashes: self.note_encrypted_logs_hashes.storage,\n encrypted_logs_hashes: self.encrypted_logs_hashes.storage,\n unencrypted_logs_hashes: self.unencrypted_logs_hashes.storage,\n historical_header: self.historical_header,\n tx_context: self.inputs.tx_context\n }\n }\n\n pub fn set_as_fee_payer(&mut self) {\n dep::protocol_types::debug_log::debug_log_format(\"Setting {0} as fee payer\", [self.this_address().to_field()]);\n self.is_fee_payer = true;\n }\n\n pub fn end_setup(&mut self) {\n // dep::protocol_types::debug_log::debug_log_format(\n // \"Ending setup at counter {0}\",\n // [self.side_effect_counter as Field]\n // );\n self.min_revertible_side_effect_counter = self.side_effect_counter;\n }\n\n // docs:start:max-block-number\n pub fn set_tx_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 = ReadRequest { value: note_hash, counter: self.next_counter() };\n self.note_hash_read_requests.push(side_effect);\n }\n\n pub fn push_nullifier_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.next_counter() };\n self.nullifier_read_requests.push(request);\n }\n\n pub fn request_nsk_app(&mut self, npk_m_hash: Field) -> Field {\n self.request_sk_app(npk_m_hash, NULLIFIER_INDEX)\n }\n\n pub fn request_ovsk_app(&mut self, ovpk_m_hash: Field) -> Field {\n self.request_sk_app(ovpk_m_hash, OUTGOING_INDEX)\n }\n\n fn request_sk_app(&mut self, pk_m_hash: Field, key_index: Field) -> Field {\n let cached_request = self.last_key_validation_requests[key_index].unwrap_or(KeyValidationRequest::empty());\n\n if cached_request.pk_m.hash() == pk_m_hash {\n // We get a match so the cached request is the latest one \n cached_request.sk_app\n } else {\n // We didn't get a match meaning the cached result is stale. We fetch new values from oracle and instruct\n // protocol circuits to validate them by storing the validation request in context.\n let request = get_key_validation_request(pk_m_hash, key_index);\n let request_and_generator = KeyValidationRequestAndGenerator { request, sk_app_generator: sk_generators[key_index] };\n // We constrain that the pk_m_hash matches the one in the request (otherwise we could get an arbitrary\n // valid key request and not the one corresponding to pk_m_hash).\n assert(request.pk_m.hash() == pk_m_hash);\n self.key_validation_requests_and_generators.push(request_and_generator);\n self.last_key_validation_requests[key_index] = Option::some(request);\n request.sk_app\n }\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, counter: self.next_counter() };\n self.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_nullifier(nullifier, 0)\n }\n // docs:end:consume_l1_to_l2_message\n\n // NB: A randomness value of 0 signals that the kernels should not mask the contract address\n // used in siloing later on e.g. 'handshaking' contract w/ known address.\n pub fn emit_raw_event_log_with_masked_address<let M: u32>(\n &mut self,\n randomness: Field,\n log: [u8; M],\n log_hash: Field\n ) {\n let counter = self.next_counter();\n let contract_address = self.this_address();\n let len = log.len() as Field + 4;\n let side_effect = EncryptedLogHash { value: log_hash, counter, length: len, randomness };\n self.encrypted_logs_hashes.push(side_effect);\n\n emit_encrypted_event_log(contract_address, randomness, log, counter);\n }\n\n pub fn emit_raw_note_log<let M: u32>(&mut self, note_hash_counter: u32, log: [u8; M], log_hash: Field) {\n let counter = self.next_counter();\n let len = log.len() as Field + 4;\n let side_effect = NoteLogHash { value: log_hash, counter, length: len, note_hash_counter };\n self.note_encrypted_logs_hashes.push(side_effect);\n\n emit_encrypted_note_log(note_hash_counter, log, counter);\n }\n\n pub fn call_private_function<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> PackedReturns {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments_array(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<RETURNS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<RETURNS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<let ARGS_COUNT: u32>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> PackedReturns {\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<RETURNS_COUNT>(\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 ) -> PackedReturns {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let start_side_effect_counter = self.side_effect_counter;\n let (end_side_effect_counter, returns_hash) = call_private_function_internal(\n contract_address,\n function_selector,\n args_hash,\n start_side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n self.side_effect_counter = end_side_effect_counter + 1;\n\n // TODO (fees) figure out why this crashes the prover and enable it\n // we need this in order to pay fees inside child call contexts\n // assert(\n // (item.public_inputs.min_revertible_side_effect_counter == 0 as u32)\n // | (item.public_inputs.min_revertible_side_effect_counter\n // > self.min_revertible_side_effect_counter)\n // );\n\n // if item.public_inputs.min_revertible_side_effect_counter\n // > self.min_revertible_side_effect_counter {\n // self.min_revertible_side_effect_counter = item.public_inputs.min_revertible_side_effect_counter;\n // }\n\n let call_context = self.generate_call_context(\n contract_address,\n function_selector,\n is_static_call,\n is_delegate_call\n );\n\n self.private_call_requests.push(\n PrivateCallRequest {\n contract_address,\n call_context,\n args_hash,\n returns_hash,\n start_side_effect_counter,\n end_side_effect_counter\n }\n );\n\n PackedReturns::new(returns_hash)\n }\n\n pub fn call_public_function<let ARGS_COUNT: u32>(\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_array(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<let ARGS_COUNT: u32>(\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_array(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<let ARGS_COUNT: u32>(\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_array(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 counter = self.next_counter();\n\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n enqueue_public_function_call_internal(\n contract_address,\n function_selector,\n args_hash,\n counter,\n is_static_call,\n is_delegate_call\n );\n\n let call_context = self.generate_call_context(\n contract_address,\n function_selector,\n is_static_call,\n is_delegate_call\n );\n\n let item = PublicCallStackItemCompressed {\n contract_address,\n call_context,\n args_hash,\n returns_hash: 0,\n revert_code: 0,\n start_gas_left: Gas::empty(),\n end_gas_left: Gas::empty()\n };\n\n let call_request = PublicCallRequest { item, counter };\n self.public_call_requests.push(call_request);\n }\n\n pub fn set_public_teardown_function<let ARGS_COUNT: u32>(\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_array(args));\n self.set_public_teardown_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn set_public_teardown_function_with_packed_args<let ARGS_COUNT: u32>(\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 counter = self.next_counter();\n\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n set_public_teardown_function_call_internal(\n contract_address,\n function_selector,\n args_hash,\n counter,\n is_static_call,\n is_delegate_call\n );\n\n let call_context = self.generate_call_context(\n contract_address,\n function_selector,\n is_static_call,\n is_delegate_call\n );\n\n let item = PublicCallStackItemCompressed {\n contract_address,\n call_context,\n args_hash,\n returns_hash: 0,\n revert_code: 0,\n start_gas_left: Gas::empty(),\n end_gas_left: Gas::empty()\n };\n\n self.public_teardown_call_request = PublicCallRequest {\n item,\n counter,\n };\n }\n\n fn generate_call_context(\n self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n is_static_call: bool,\n is_delegate_call: bool\n ) -> CallContext {\n let msg_sender = if is_delegate_call {\n self.msg_sender()\n } else {\n self.this_address()\n };\n let storage_contract_address = if is_delegate_call {\n self.this_address()\n } else {\n contract_address\n };\n CallContext { msg_sender, storage_contract_address, function_selector, is_static_call, is_delegate_call }\n }\n\n fn next_counter(&mut self) -> u32 {\n let counter = self.side_effect_counter;\n self.side_effect_counter += 1;\n counter\n }\n}\n\nimpl Empty for PrivateContext {\n fn empty() -> Self {\n PrivateContext {\n inputs: PrivateContextInputs::empty(),\n side_effect_counter: 0 as u32,\n min_revertible_side_effect_counter: 0 as u32,\n is_fee_payer: false,\n args_hash: 0,\n return_hash: 0,\n max_block_number: MaxBlockNumber::empty(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n key_validation_requests_and_generators: BoundedVec::new(),\n note_hashes: BoundedVec::new(),\n nullifiers: BoundedVec::new(),\n private_call_requests: BoundedVec::new(),\n public_call_requests: BoundedVec::new(),\n public_teardown_call_request: PublicCallRequest::empty(),\n l2_to_l1_msgs: BoundedVec::new(),\n historical_header: Header::empty(),\n note_encrypted_logs_hashes: BoundedVec::new(),\n encrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n last_key_validation_requests: [Option::none(); NUM_KEY_TYPES]\n }\n }\n}\n"}}}