@aztec/protocol-contracts 0.37.0 → 0.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"noir_version":"0.28.0+b6ee6a5888e47e7e17024eb66172459a13bdeb3a","name":"KeyRegistry","functions":[{"name":"register","is_unconstrained":true,"custom_attributes":["aztec(public)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::public_context_inputs::PublicContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"authwit::aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}}]}},{"name":"public_global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"transaction_fee","type":{"kind":"field"}}]},"visibility":"private"},{"name":"address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"partial_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::partial_address::PartialAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"nullifier_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]},"visibility":"private"},{"name":"incoming_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]},"visibility":"private"},{"name":"outgoing_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]},"visibility":"private"},{"name":"tagging_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]},"visibility":"private"}],"param_witnesses":{"address":[{"start":40,"end":41}],"incoming_public_key":[{"start":44,"end":46}],"inputs":[{"start":0,"end":40}],"nullifier_public_key":[{"start":42,"end":44}],"outgoing_public_key":[{"start":46,"end":48}],"partial_address":[{"start":41,"end":42}],"tagging_public_key":[{"start":48,"end":50}]},"return_type":{"abi_type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_circuit_public_inputs::PublicCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_non_existent_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"contract_storage_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_update_request::StorageUpdateRequest","fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"contract_storage_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_read::StorageRead","fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"current_value","type":{"kind":"field"}}]}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}]}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_header","type":{"kind":"struct","path":"authwit::aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}},{"name":"prover_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"end_gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"transaction_fee","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277],"error_types":{}},"bytecode":"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","debug_symbols":"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DuW761C+u77Wd9fbZzS9742mQ41mQI1mIo1mre/u62gS1Ggy1GgK1GgEajQVajRQsThDxeIMFYszVCwuULG4QMXiAhWLC1QsLlCxuEDF4gIViwtULC5QsbhAxWKBisUCFYsFKhYLVCwWqFgsULFYoGKxQMVigYrFAhWLK1QsrlCxuELF4goViytULK5QsbhCxeIKFYsrVCyuULG4QcXiBhWLG1QsblCxuEHF4gYVixtULG5QsbhBxeIGFYs7VCzuULG4Q8XiDhWLO1Qs7lCxuEPF4g4ViztULO5QsXhAxeIBFYsHVCweULF4QMXiARWLB1QsHlCxeEDF4gEViydULJ5QsXhCxeIJFYsnVCyeULF4QsXiCRWLJ1QsnkixeGxIsXhsSLF4bEixeGxIsXhsSLF4bEixeGxIsXhsSLF4bEixeGxQsThBxeIEFYsTVCxOULE4QcXiBBWLoXx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oHx3A8p3N6B8dwPKdzegfHcDync3oXx3E8p3N6F8dxPKdzc3pFg8oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPKdzehfHcTync3oXx3E8p3N6F8dxPK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+qc/9E9/6J/+0D/9oX/6Q//0h/7pD/3TH/qnP/RPf+if/tQ//al/+lP/9Kf+6U/905/6pz/1T3/qn/7UP/2pfvp12/SXJP0lWX9J0V8i+kuq/pKmv6TrLxn6S/RPP+mfftI//aR/+kn/9JP+6Sf900/6p5/0Tz/pn37SP/2sf/pZ//Sz/uln/dPP+qef9U8/659+1j/9rH/6Wf/0i/7pF/3TL/qnX/RPv+ifftE//aJ/+kX/9Iv+6Rf90xf90xf90xf90xf90xf90xf90xf90xf90xf90xf906/6p1/1T7/qn75e66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u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vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW/qtb6p1/qmXuubeq1v6rW+qdf6pl7rm3qtb+q1vqnX+qZe65t6rW+qtb6yqbW+1yVJf0nWX1L0l4j+kqq/pOkv6fpLhv4S/dNP+qef9E8/6Z9+0j/9pH/6Sf/0k/7pJ/3TT/qnn/RPP+ufftY//ax/+ln/9LP+6Wf908/6p5/1Tz/rn37WP/2if/pF//SL/ukX/dMv+qdf9E+/6J9+0T/9on/6Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0Rf/0q/7pV/3Tr/qnX/VPv+qfftU//ap/+lX/9Kv+6Vf902/6p9/0T7/pn37TP/2mf/pN//Sb/uk3/dNv+qff9E+/659+1z/9rn/6Xf/0u/7pd/3T7/qn3/VPv+ufftc//aF/+kP/9If+6Q/90x/6pz/0T3/on/7QP/2hf/pD//Sn/ulP/dOf+qc/9U9/6p/+1D/9qX/6U//0p/7p67W+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqTX+pJe60t6rS/ptb6k1/qSXutLeq0v6bW+pNf6kl7rS3qtL+m1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6s1/qyXuvLeq0v67W+rNf6sl7ry3qtL+u1vqzX+rJe68t6rS/rtb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LW+otf6il7rK3qtr+i1vqLX+ope6yt6ra/otb6i1/qKXusreq2v6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rE73WJ3qtT/Ran+i1PtFrfaLX+kSv9Yle6xO91id6rU/0Wp/otT7Ra32i1/pEr/WJXusTvdYneq1P9Fqf6LU+0Wt9otf6RK/1iV7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe66t6ra/qtb6q1/qqXuureq2v6rW+qtf6ql7rq3qtr+q1vqrX+qpe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXutreq2v6bW+ptf6ml7ra3qtr+m1vqbX+ppe62t6ra/ptb6m1/qaXuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7r63qtr+u1vq7X+rpe6+t6ra/rtb6u1/q6Xuvreq2v67W+rtf6ul7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG3qtb+i1vqHX+oZe6xt6rW/otb6h1/qGXusbeq1v6LW+odf6hl7rG/taX5Zt/HVVllL+zYX/4d99Oo1W//p0GqN+Pp1kfm5T928j5XOb/u02s7/vMkf789n0Zy7N4SYzvaeybXn3Lt1jKvLnLmX3LmP/LuNzl5ry3wY2HW7yFdi+OKqdyjdg+3pqrjl/7lLT3wW2r8Aqb/IdWPGYyldg+zu/tvS5y5h/G1h1uMl3YM1jKl+BHWz8rR/d5X3hsF44jRfKZr0wWS/M1guL9UKxXlitFzbrhdaVI9aVI9aVU60rp1pXTrWunGpdOdW6cqp15VTryqnWlVOtK6daV06zrpxmXTnNunKadeU068pp1pXTrCunWVdOs66cZl053bpyunXldOvK6daV060rp1tXTreunG5dOd26crp15QzryhnWlTOsK2dYV86wrpxhXTnDunKGdeUM68oZ1pUzrStnWlfOtK6caV0507pypnXlTOvKmdaVM60rZxpXztw264XJemG2XlisF4r1wmq9sFkv7NYLh/VC68pJ1pWTrCsnWVdOsq6cZF05ybpyknXlJOvKSdaVk6wrJ1tXTraunGxdOdm6crJ15WTrysnWlZOtKydbV062rpxiXTnFunKKdeUU68op1pVTrCunWFeOVUOeVg15WjXkadWQp1VDnlYNeVo15GnVkKdVQ55WDXlaNeRp1ZCnVUOeVg15WjXkadWQp1VDnlYNeVo15GnVkKdVQ55WDXlaNeRp1ZCnVUOeVg15WjXkadWQp1VDnlYNeVo15GnVkKdVQ55WDXlaNeRp1ZCnVUOeVg15WjXkadWQp1VDnlYNeVo15GnVkKdVQ55WDXlaNeRp1ZCnVUOeVg15WjXkadWQp1VDnlYNeVo15GnVkKdVQ55WDXlaNeRp1ZCnVUOeVg15GjVk2Ywa8uvCZL0wWy8s1gvFemG1XtisF3brhcN6oXXlJOvKSdaVk6wrJ1lXTrKunGRdOcm6cpJ15STryknWlZOtKydbV062rpxsXTnZunKydeVk68rJ1pWTrSsnW1dOsa6cYl05xbpyinXlFOvKKdaVU6wrp1hXTrGunGJdOWJdOWJdOWJdOWJdOWJdOWJdOWJdOWJdOWJdOWJdOdW6cqp15VTryqnWlVOtK6daV061rpxqXTnVunKqdeU068pp1pXTrCunWVdOs66cZl05zbpymnXlNOvKadaV060rp1tXTreunG5dOd26crp15XTryunWldOtK6dbV86wrpxhXTnDunKGdeUM68oZ1pUzrCtnWFfOsK6cYV0507pypnXlTOvKmdaVM60rZ1pXzrSunGldOdO6cqwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnKyasjJqiEnq4acrBpysmrIyaohJ6uGnKwacrJqyMmqISerhpysGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpytmrI2aohZ6uGnK0acrZqyNmqIWerhpytGnK2asjZqiFnq4acrRpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwacrFqyMWqIRerhlysGnKxasjFqiEXq4ZcrBpysWrIxaohF6uGXKwaslg1ZLFqyGLVkMWqIYtVQxarhixWDVmsGrJYNWSxashi1ZDFqiGLVUMWq4YsVg1ZrBqyWDVksWrIYtWQxaohi1VDFquGLFYNWawaslg1ZLFqyGLVkMWqIYtVQxarhixWDVmsGrJYNWSxashi1ZDFqiGLVUMWq4YsVg1ZrBqyWDVksWrIYtWQxaohi1VDFquGLFYNWawaslg1ZLFqyGLVkMWqIYtVQxarhixWDVmsGrJYNWSxashi1ZDFqiGLVUMWq4YsVg1ZrBqyWDVksWrIYtWQxaohi1VDFquGLFYNWawaslg1ZLFqyGLVkMWqIYtVQxarhixWDVmsGrJYNWSxashi1ZDFqiGLVUMWq4YsVg1ZrBqyWDVksWrIYtWQxaohi1VDFquGLFYNWawaslg1ZLFqyGLVkMWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiFXq4ZcrRpytWrI1aohV6uGXK0acrVqyNWqIVerhlytGnK1asjVqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rI7UBDHqX8dWHZ8r+98D/8u0+nWdL7NmlLn0+nmvY+/crK//p0mrP+w6e3nU+/jpr3SF6Btf0ZydZ3Pl3kPd8yxp/Pjr2Ptirvz7ae//mHX2n9exCb/ONH3xQzKTpQLKToQFFI0YFiJUUHio0UHSh2UnSgOEjRgeIkxb9P8eAP96Soo8jaxYMiaxcPiqxdfqFY3t/7SrD3KAopOlBk7eJBkbWLB0XWLh4UByk6UGTt4kCxs3bxoMjaxYMiaxcPiqxdPCgKKTpQZO3iQZG1iwdF1i4eFFm7eFBk7eJAcbB28aDI2sWDImsXD4qsXTwoCik6UGTt4kGRtYsHRdYuHhRZu3hQZO3iQHGydvGgyNrFgyJrFw+KrF08KAopOlBk7eJBkbWLB0XWLh4UWbt4UGTt8vcp9o21iwdF1i4eFFm7eFBk7eJBUUjRgSJrFw+KrF08KLJ28aDI2sWDImsXB4qJtYsHRdYuHhRZu3hQZO3iQVFI8X+k+EbDguQQDauMQzQsHQ7RsB44RMMk/whNZuZ+iIbp+CEa5tiHaJg4H6IRojlCw2z4EA2z4UM0zIYP0TAbPkTDbPgITWE2fIiG2fAhGmbDh2iYDR+iEaI5QsNs+BANs+FDNMyGD9EwGz5Ew2z4CI0wGz5Ew2z4EA2z4UM0zIYP0QjRHKFhNnyIhtnwIRpmw4domA0fomE2fISmMhs+RMNs+BANs+FDNMyGD9EI0RyhYTZ8iIbZ8CEaZsOHaJgNH6JhNnyEhm/nPUbDbPgQDbPhQzTMhg/RCNEcoWE2fIiG2fAhGmbDh2iYDR+iYTZ8hIbvez1Gw2z4EA2z4UM0zIYP0QjRHKFhNnyI5rl5zfyg6dtek5YHvzbyG5rHvn9PUp9/fVbSrOYPvzk+9Tjz5vjUs8+b41MPSm+OT9WYvDk+VZDy5vjULM+b41NTQmeOj30fnzfHp4po3hxZz/hwZD3jw1HI0YUj6xkfjqxnfDiynvHhyHrGhyPrGQ+O47Hv6PPmyHrGhyPrGR+OrGd8OAo5unBkPePDkfWMD0fWMz4cWc/8wDH/GUXOvexxZD3jwvGx7+1Tciz5D0fZ48j88ReOMt8fznXb9jgKObpwZP7ow5H5ow9H5o8+HJk/+nBk/ujC8bFvj/PmSD3chyP1cB+OrGd8OAo5unBkPePDkfWMD0fm4T4cmYe7cHzse+u8OTLv+YXjkM/fFUaTf/7hUvpnFLLtieePfRHapdCZUV0AnenXBdCpPV8AnQnyBdCZTa+H/tiX5F0KnXr5BdAprl8AnRXpBdCF0NdDZ0V6AXRWpOuhP/ZNcudB76P99dk+94Tdx76h7kLk1F28kc/PiGfte8ipuqxG/tiX/ZyIvL/dFnPsmage+xKhC5GzCl2OXIh8NXJWoMuRs/5cjpx5+XLkzMuXI+ffQlcjf+xLsC5EzupzOXJWn8uRs/r0Rp62Ut8T3MbeHyke+5qxS6GzAr0AOmvQC6CzCr0AOuvQC6CzEl0PfbAWvQA6q9ELoLMevQA6K9ILoAuhr4fOivQC6KxIL4DOivQC6KxIL4DOinQ9dL4K9QrorEgvgM6K9ALorEgvgC6E7g09jQ/0NNoedFakF0BnRXoBdFakF0BnRXoBdFaky6FPvsz2CuisSC+Azor0AuisSC+ALoS+Hjor0gugsyK9ADor0gugsyK9ADor0vXQ+TriK6CzIr0AOivSC6CzIr0AuhD6euisSC+Azor0AuisSC+Azor0AuisSNdD54uQ/aHn9IGe09yDLoS+HjoPUn/oRT7QpexB50F6AXQepOuh8w3FV0CntHsBdEq7F0Bnnn4BdCH09dAp7V4AndLuBdBZkV4AnRXpBdBZka6Hzhd3XwGdFekF0FmRXgCdFekF0IXQ10NnRXoBdFakfw/6myOLTB+OrBt9OLIUdOFYWd35cGTB5sORNZgPR5ZVPhyFHF04svjx4ch6xocj6xkfjqxnfDiynnHh2FjP+HBkPePDkXnPLxxnHu8ZzpL3ODLv8eHIc+YnjvUzw7m7rzvPGR+OPGd8OFI38+FI3cyHo5CjC0fmjz4cmT/6cKRu5sORupkPR9YzLhz5IvhfOJY/r7p6/XOvPQTf7e7EkfWMD0fWMz4chRxdOLKe8eHIesaHI+sZH46sZ3w4sp5x4cjXiDtxZD3jw5H1jA9HIUcXjszDfTgyD/fhyDzchyPzcB+OzMN/4finMXhJc/w7jnXjy5OdODIP9+HIPNyHI/+u4MNRyNGFI+sZH47Me37hmPP2/uKcZYcjX9HpxJHnzE8cxx+Os+9x5Dnjw5HnjA9H6mY+HKmb+XCkbubDkfmjC8fM/NGHI3UzH47UzXw4sp7x4Sjk6MKR9cwvHP/hi0vb5ch6xocj6xkfjqxnfDiynnHhyPea/sRRts8Xy7b39xm+qvS39dj/gePe3xX49lEnjqxnfDgKObpwZD3jw5H1jA9H1jM+HFnP+HBkPePCkW/FdOLIesaHI+sZH46sZ3w4Cjm6cGQ948OR9YwPR9YzPhxZz/hwZD3jwpHvgXTiyHrGhyPrGR+OrGd8OAo5unBkPePDkfWMD0fWMz4cWc/4cGQ948KR74F04sh6xocj6xkfjqxnfDgKObpwZD3jw5H1jA9H1jM+HFnP+HBkPePCke8bduLIesaHI+sZH46sZ3w4Cjm6cGQ948OR9YwPR4d6JqdPt/ec5leOIu3NsQ758unTOJZW5f3Z1vM//3DbPoPYpzhI0YHiJMW/T9HjTcOk6PGeYVL0eMswKXq8Y5gUPd4wTIoe7xcmRY+3C5PiYO3iQZG1iwdF1i6/UCzv72217lCcrF08KLJ28aDI2sWDImsXD4pCig4UWbt4UGTt4kGRtYsHRdYuHhRZu/x9imlj7eJBkbWLB0XWLh4UWbt4UBRSdKDI2sWDImsXD4qsXTwosnbxoMjaxYFiYu3iQZG1iwdF1i4eFFm7eFAUUnSgyNrFgyJrFw+KrF08KLJ28aDI2sWBYmbt4kGRtYsHRdYuHhRZu3hQFFJ0oMjaxYMiaxcPiqxdPCiydvGgyNrFgWJh7eJBkbWLB0XWLh4UWbt4UBRSdKDI2sWDImsXD4qsXTwosnbxoMjaxYGisHbxoMjaxYMia5d/R/GNhgXJIRohmiM0LB0O0bAeOETDJP8QDTP3QzRMx4/QVObYh2iYOB+iYTZ8iIbZ8CEaIZojNMyGD9EwGz5Ew2z4EA2z4UM0zIaP0DRmw4domA0fomE2fIiG2fAhGiGaIzTMhg/RMBs+RMNs+BANs+FDNMyGj9B0ZsOHaJgNH6JhNnyIhtnwIRohmiM0zIYP0TAbPkTDbPgQDbPhQzTMho/Q8K3Hx2iYDR+iYTZ8iIbZ8CEaIZojNMyGD9EwGz5Ew2z4EA2z4UM0zIaP0PA9usdomA0fomE2fIiG2fAhGiGaIzTMhg/RMBs+RMNs+BANs+FDNMyGD9Bkvpn1GA2z4UM0zIYP0TAbPkTz3MN7ftD0re6hee7h/Q3NY98cJ6+/af/1WXmVS+YPvzk+NWZ7c3xqgPfmKOTowvGpQoo3x6eqLt4cn5rleXN8akrozfGp4o8zx8e+S86bI+sZH46sZ3w4sp7x4Sjk6MKR9YwPR9YzPhxZz/hwZD3jw5H1jAvHx75fzpsj6xkfjqxnfDiynvHhKOTowpH1jA9H1jM+HFnP/MAx/xnFqwIsexxZz/hwZD3zE8eS/3CUHY6Pfc+XjqPM94dz3bY9jswffTgKObpwZP7ow5H5ow9H5o8+HJk/+nBk/ujC8bHvU/PmSD3chyPrGR+OrGd8OAo5unBkPePDkXm4D0fm4T4cmYe7cHzsO7l0HId8/q4wmvzzD5fSP6OQbU88f+zbvi6FLoS+HjrTrwugU3u+ADoT5AugM5u+ADpT7/XQH/uOuUuhU1y/ADor0gugsyK9ALoQ+nrorEgvgM6U0Rt6H+/59bkn7D72NWwXIqfu4o18fkY8a99DTtVlNfLHvtHmROT97baYY89E9dg35VyInFXocuSsQZcjFyJfjZz153LkzMuXI2devhw5/xa6HDllrcXIy2PfIHUhclafy5Gz+vRGnrYPjrQN2YPO+vMC6ELo66GzBr0AOqvQC6CzDr0AOivRC6CzFl0PPbEavQA669ELoLMivQA6K9ILoAuhr4fOivQC6KxIL4DOivQC6KxIL4DOinQ9dL439QrorEgvgM6K9ALorEjdoafxgZ5G24MuhL4eOivSC6CzIr0AOivSC6CzIr0AOivS9dD55tsroLMivQA6K9ILoLMivQC6EPp66KxIL4DOivQC6KxIL4DOivQC6KxI10MXVqQXQGdFegF0VqQXQGdFegF0IfT10FmRXgCdFekF0FmRXgCdFel66HwRsj/0nD7QXzz2oDNlvAA6D1J/6EU+0KXsQedBegF0HqQXQKe0ux56o7R7AXRKuxdAZ55+AXTm6RdAF0JfD53S7gXQWZFeAJ0V6QXQWZFeAJ0V6XrofHH3FdBZkV4AnRXpBdBZkV4AXQh9PXRWpH8P+psji0wfjqwbfTiyFPThyOrOheNgwebDkTWYD0eWVT4cWSn5cBRydOHIesaHI+sZH46sZ3w4sp7x4ch6xoXjZD3jw1HI8QeOM4/3DGfJexyZ9/hw5DnzE8eaPhz39zXPGQ+OsvGc8eFI3cyHI3UzH47UzXw4Cjm6cGT+6MORupkPR+pmPhxZz/hwZD3zA8fy51VXr3/utIcQvtvdiSPrGR+OrGd8OLKe8eEo5OjCkfWMD0fWMz4cWc/4cGQ948OR9YwLR74Z3Ikj6xkfjszDfTgKObpwZB7uw5F5uA9H5uE+HJmH/8LxT2PwkubY48g83IUj34fsxJF5uA9H/l3BhyPrGR+OQo4uHJn3/MIx5+39xTnv/Z6Cr+j04ch3Ef7GcfzhOPseR54zPhx5zvhwpG7mw5G6mQ9H6mY+HJk/+nBk/ujCsVI38+FI3cyHI+sZH46sZ3w4Cjn+wPEfvri0XY6sZ3w4sp7x4ch6xocj6xkfjqxnfuEo2+eLZdv7+wxfVfrbeuz/wHHv7wp8+6gTR9YzPhxZz/hwFHJ04ch6xocj6xkfjqxnfDiynvHhyHrGhSNfdOnEkfWMD0fWMz4cWc/4cBRydOHIesaHI+sZH46sZ3w4sp7x4ch6xoUj3wPpxJH1jA9H1jM+HFnP+HAUcnThyHrGhyPrGR+OrGd8OLKe8eHIesaFI98D6cSR9YwPR9YzPhxZz/hwFHJ04ch6xocj6xkfjqxnfDiynvHhyHrGg2Pl+4adOLKe8eHIesaHI+sZH45Cji4cWc/4cNytZ8omfzj29G84vi/s1guH9cJpvHD/naG/XJisF2brhcV6oVgvrNYLrSsnWVdOsq6cZF052bpysnXlZOvKydaVk60rJ1tXTraunGxdOdm6crJ15RTryinWlVOsK6dYV06xrpxiXTnFunKKdeUU68op1pUj1pUj1pUj1pUj1pUj1pUj1pUj1pUj1pUj1pUj1pVTrSunWldOta6cal051bpyqnXlVOvKqdaVU60rp1pXTrOunGZdOc26cpp15TTrymnWldOsK6dZV06zrpxmXTndunK6deV068rp1pXTrSunW1dOt66cbl053bpyunXlDOvKGdaVM6wrZ1hXzrCunGFdOcO6coZ15QzryhnWlTOtK2daV860rpxpXTnTunKmdeVM68qZ1pUzrStnGldO2zbrhcl6YbZeWKwXivXCar2wWS/s1guH9ULryrFqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiE3q4bcrBpys2rIzaohN6uG3KwacrNqyM2qITerhtysGnKzasjNqiF3q4bcrRpyt2rI3aohd6uG3K0acrdqyN2qIXerhtytGnK3asjdqiF3q4bcrRpyt2rI3aohd6uG3K0acrdqyN2qIXerhtytGnK3asjdqiF3q4bcrRpyt2rI3aohd6uG3K0acrdqyN2qIXerhtytGnK3asjdqiF3q4bcrRpyt2rI3aohd6uG3K0acrdqyN2qIXerhtytGnI/0JBTezvRSk7ffGu95b8+3PsfA1gpn3v0BfcYC+4xz7/Hgd7te4+04B55wT3KgnvIgnvUBfdYsM/rgn1eF+zzumCftwX7vC3Y523BPm8L9nlbsM/bgn3eFuzztmCftwX7vC3Y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vyNVSHt/OEv/BwWits9ckU9m57k25HPce67nnvrvu+QldylL7iJL7lKX3KUtuUtfcpex5C5zxV1ObrPzvsuSvd+X7P2+ZO+7tIKZUj936bJ3l7rkLm3JXRz2fk7p/emcSt+7y1hyl7niLh4NQH64S1pyl+xxF/n8Ie3fpEd7mVQf6f3hPur85+lReiVT79U7et3J8MfEGf9fQ5ob3pAS3pA8Fl5uf4Y055cU/uta8vCPew9J8IZU8YbU8IbU8YY08IY00YZUPZzR3kNKeEOCi951g4vedYOL3nWDi951g4vedYOL3nWDi951w4veCS96J7zonfCid8KL3gkveie86J3wonfCi94JL3onvOid8aJ3xoveGS96Z7zonfGid8aL3hkveme86J3xonfGi95ldfR+Ke3zrw+/hNIvH24pv/8Q1tL48+G89c8EUvQJ5OgTKNEnINEnUKNPoEWfQI8+gRF9AjP4BCT6SSzRT2KJfhJL9JPYw1547QSin8QS/SQWoJP4PSSgs/U9JKDT8q8hVaDz7z0koBPtPSSgM+o9JKBT5z0koHPkPSSgk+E9JKBY/x4SXvSueNG74kXvhhe9G170bnjRu+FF74YXvRte9G540bvhRe+GF70bXvTueNG740Xvjhe9O1707njRu+NF744XvTte9O540bvjRe+BF70HXvQeeNF74EXvgRe9h0v0lndnw/xvOhvuDal83Nel/UMrkLnz0ZE+7WhHKv8w+l1jbPsYe1Mr2+fDf/qG1NFWz/UzpNLKP871PaCONqCBNqAJNiAXK7PrgBLagDLagAragARtQBVtQGiReqJF6okWqSdYpG4bWKRuG1ikbhtYpG4bWKRuG1ikbhtYpG4bWKRuG1ikbhtYpG4bWqROaJE6oUXqhBapE1qkTmiROqFF6oQWqRNapE5okTqhReqMFqkzWqTOaJE6o0XqjBapM1qkzmiROqNF6owWqTNapC5okbqgReqCFqkLWqQuaJG6oEXqghapC1qkLmiRuqBFakGL1IIWqQUtUgtapBa0SC1okVrQIrWgRWpBi9SCFqkrWqSuaJG6okXqihapK1qkrmiRuqJF6ooWqStapK5okbqhReqGFqkbWqRuaJG6oUXqhhapG1qkbmiRuqFF6oYWqTtapO5okbqjReqOFqk7WqTuaJG6o0XqjhapO1qk7miReqBF6oEWqQdapB5okXqgReqBFqnRPIoNzaPY0DyKDc2j2NA8ig3No9jQPIoNzaPY0DyKDc2j2NA8ig3No9jQPIoNzaPY0TyKHc2j2NE8ih3No9g3sEjd0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIodzaPY0TyKHc2j2NE8ih3No9jRPIoDzaM40DyKA82jONA8imMDi9QDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjQPIoDzaM40DyKA82jONA8igPNozjRPIoTzaM40TyKE82jODewSD3RPIoTzaM40TyKE82jONE8ihPNozjRPIoTzaM40TyKE82jONE8ihPNozjRPIoTzaM40TyKE82jONE8ihPNozjRPIoTzaM40TyKE82jONE8ihPNozjRPIoTzaM40TyKE82jONE8ihPNozjRPIoTzaM40TyKE82j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"},{"name":"compute_note_hash_and_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"parameters":[{"name":"contract_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"nonce","type":{"kind":"field"},"visibility":"private"},{"name":"storage_slot","type":{"kind":"field"},"visibility":"private"},{"name":"note_type_id","type":{"kind":"field"},"visibility":"private"},{"name":"serialized_note","type":{"kind":"array","length":0,"type":{"kind":"field"}},"visibility":"private"}],"param_witnesses":{"contract_address":[{"start":0,"end":1}],"nonce":[{"start":1,"end":2}],"note_type_id":[{"start":3,"end":4}],"serialized_note":[],"storage_slot":[{"start":2,"end":3}]},"return_type":{"abi_type":{"kind":"array","length":4,"type":{"kind":"field"}},"visibility":"public"},"return_witnesses":[4,5,6,7],"error_types":{}},"bytecode":"H4sIAAAAAAAA/+2byW7bMBCGJa9yVC+SZXlf4uTSm+w6tnPzy7Rv3XuBvkPRjMKpx8QkoNARIQImYGhMUfy/+blECRjfey/tt4+v4qZ2pQXbXNQ1+7+yE+wrK5PTd4Sz5ghnXZDTZzjh2lAxXGEut7zbef6vXAQnCRWlUDAwdVL3EdzNQ1BaKgg04IsE9CE7twgNhYYSKnB6MySJ+KQOn62ROtxB6o1rDi35HA4BMU+s37cBDb2r7y3iCcZ4D7RnpK5RUo5N+RzL8i5flehPU/XbJt/Rq46KBXfYHdX21adDND01RhhPSVtsh37UyBhD6XrX8e988lxDe65H2rSY/C+ebP5tjaetMTcVE5QIeLU9oKSxyaDfB/l+b8a8oY3JA8mpK+73/gx7QujdFv2nzIXEXcLzRZwn25WT5/vY9Qi7TL8vB/Cqr3kVal71SBvK0C/BP5/oYt/4vc9oy3lxPIP2wMCLAcMzsOzFgNEW9OIVtCMDLyKGJ7LsRcRoy3lx+gbasYEXMcMTW/YiZrTlvNjn7xZDAy+GDM/QshdDRltwjeTzIjHwImF4EsteJIy2oBc/QHtk4MWI4RlZ9mLEaAt68R20UwMvUoYntexFymgL7p35+8XYwIsxwzO27MWY0Rb0Yg/aEwMvJgzPxLIXE0ZbcI3k2lMDL6YMz9SyF/R31CLMQweZUweZ4wowB1oso33M98+ZgRczhmdm2QvUK8qcVIA50GIZ7eMLaM8NvJgzPHPLXqBeUebIQebYQeaRg8yJg8ypg8xVmM+BFston/I9dGHgxYLhWVj2AvWKMkcOMs8cZI4rwBxosYz2Kf/b3NLAiyXDs7TsBeoVZR47yDyoAHOgxTLapyNorwy8WDE8K8teoF5R5omDzKmDzDMHmWMHmUcOMicOMt/XoB3mqALM9EzT71J59q+hxoOeeRqjpzGGJKbnYNbijFlGx2dNtDbyWjtuvuD3Tana+zP0u5XPKX+Xf1J94Rm+LZPTs4qlz3M9kX59ooP1DRL/Im2xHfqB6xbZYd49qvj5k+dW2nM90uaRyf/iyea/1Xi2GjOMyU/CsRHn2J9N5vXAu67lr4SnhH3wQM/kYjHZd0raY3Yl5ZnRM3x/PNk1vdG8CjSveqQN3aM3JfhnMr/uzHfmj5jp+0RA6vD+mtTVtFzo/zJgezgz/BdsuDj5FjUAAA==","debug_symbols":"ndpBattQGIXRvWgciu8v6UkvWymlOIlTDMYOsVMoJnuv3dIF9Mz0JN3ZNzq86/Cye/r48X1/fD2dh8ev1+Fwet5e9qfj7XQdNl+q/Xl7ftse7y/Ol+37ZXgcKw/D7vhyf2qfD8Pr/rAbHqu3z28P99Eio1VGHUbjRkaRUclolNEko1lGUsQoRYxSxChFTFLEJEVMUsQkRUxSxCRFTFLEJEVMUsQkRcxSxCxFzFLELEXMUsQsRcxSxCxFzFLELEU0KaJJEU2KaFJEkyKaFNGkiCZFNCmiSRGLFLFIEYsUsUgRixSxSBGLFLFIEYsUsUgRqxSxShGrFLFKEasUsUoRqxSxShGrFLFKEV2K6FJElyK6FNGliC5FdCmiSxFdiuhSRDYbWoVWRauRVhOtZlo1Wi20WmlFbYTaCLURaiPURqiNUBuhNkJthNoItVHURlEbRW0UtVHURlEbxJkhzwyBZkg0Q6QZMs0QaoZUM8SaIdcMwWZINkO0GbLNEG6GdDPEmyHfDAFnSDhDxBkyzhByhpQzxJwh5wxBZ0g6Q9QZss4Qdoa0M8SdIe8MgWdIPEPkGTLPEHqG1DPEniH3DMFnSD5D9BmyzxB+hvQzxJ8h/wwBaEhAQwQaMtAQgoYUNMSgIQcNQWhIQkMUGrLQEIaGNDTEoSEPDYFoSERDJBoy0RCKhlQ0xKIhFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLbvmafc87aInuWiRixa5aJGLFrlo/beL3k4/t+/77dNhd7/Ze//4cXz+d9H3drz8evv75fbvbw=="},{"name":"rotate_nullifier_public_key","is_unconstrained":true,"custom_attributes":["aztec(public)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::public_context_inputs::PublicContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"authwit::aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}}]}},{"name":"public_global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"transaction_fee","type":{"kind":"field"}}]},"visibility":"private"},{"name":"address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"new_nullifier_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]},"visibility":"private"},{"name":"nonce","type":{"kind":"field"},"visibility":"private"}],"param_witnesses":{"address":[{"start":40,"end":41}],"inputs":[{"start":0,"end":40}],"new_nullifier_public_key":[{"start":41,"end":43}],"nonce":[{"start":43,"end":44}]},"return_type":{"abi_type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_circuit_public_inputs::PublicCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_non_existent_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"contract_storage_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_update_request::StorageUpdateRequest","fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"contract_storage_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_read::StorageRead","fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"current_value","type":{"kind":"field"}}]}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::note_hash::NoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::nullifier::Nullifier","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash","type":{"kind":"field"}}]}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_header","type":{"kind":"struct","path":"authwit::aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"authwit::aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"authwit::aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"authwit::aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"gas_fees","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas_fees::GasFees","fields":[{"name":"fee_per_da_gas","type":{"kind":"field"}},{"name":"fee_per_l2_gas","type":{"kind":"field"}}]}}]}},{"name":"prover_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"revert_code","type":{"kind":"integer","sign":"unsigned","width":8}},{"name":"start_gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"end_gas_left","type":{"kind":"struct","path":"authwit::aztec::protocol_types::abis::gas::Gas","fields":[{"name":"da_gas","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"l2_gas","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"transaction_fee","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271],"error_types":{}},"bytecode":"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","debug_symbols":"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KDqvRyQwGIui83pEAoOxKDqvRyQwGIui83pEAoOxKDqvRyQwGPuP6bxmG89IVP7RSBpMJAITicJEYjCROEwkARNJh4kkgbHPS2b6koxy6nlJy18i+Us0f4nlL/H8JZG/pOcvyT/9yD/9nn/6Pf/0e/7p9/zT7/mn3/NPv+effs8//Z5/+j3/9Ef+6Y/80x/5pz/yT3/kn/7IP/2Rf/oj//RH/umP/NOf+ac/809/5p/+zD/9mX/6M//0Z/7pz/zTn/mnP9NPv21b/pKWv0Tyl2j+Estf4vlLIn9Jz18y8pfkn37LP/2Wf/ot//Rb/um3/NNv+aff8k+/5Z9+yz/9ln/6kn/6kn/6kn/6kn/6kn/6kn/6kn/6kn/6kn/6kn/6mn/6mn/6mn/6mn/6mn/6mn/6mn/6mn/6mn/6mn/6ln/6ln/6ln/6ln/6ln/6ln/6ln/6ln/6ln/6ln/6nn/6nn/6nn/6nn/6nn/6nn/6nn/6nn/6ea6v5bm+luf6Wp7ra3mur+W5vpbn+lqe62t5rq/lub6W5/panutrea6v5bm+luf6Wp7ra3mur+W5vpbn+lqe62t5rq/lub6W5/panutrea6v5bm+luf6Wp7ra3mur+W5vpbn+lqe62t5rq/lub6W5/panutrea6v5bm+luf6Wp7ra3mur+W5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuvzPNfnea7P81yf57k+z3N9nuf6PM/1eZ7r8zzX53muz/Ncn+e5Ps9zfZ7n+jzP9Xme6/M81+d5rs/zXJ/nuT7Pc32e5/o8z/V5nuvzPNfnea7P81yf57k+z3N9nuf6PM/1eZ7r8zzX53muz/Ncn+e5Ps9zfZ7n+jzP9Xme6/M81+d5rs/zXJ/nuT7Pc32e5/o8z/V5nuvzPNfnea7P81yf57k+z3N9nuf6PM/1eZ7r8zzX53muz/Ncn+e5Ps9zfZ7n+jzP9Xme6/M81+d5rs/zXJ/nuT7Pc32e5/o8z/V5nuvzPNfnea7P81yf57k+z3N9nuf6PM/1eZ7r8zzX53muz/Ncn+e5Ps9zfZ7n+jzP9Xme6/M81+d5rs/zXJ/nuT7Pc32e5/o8z/V5nuvzPNfnea7P81yf57m+yHN9kef6Is/1RZ7rizzXF3muL/JcX+S5vshzfZHn+iLP9UWe64s81xd5ri/yXF/kub7Ic32R5/oiz/VFnuuLPNcXea4v8lxf5Lm+yHN9kef6Is/1RZ7rizzXF3muL/JcX+S5vshzfZHn+iLP9UWe64s81xd5ri/yXF/kub7Ic32R5/oiz/VFnuuLPNcXea4v8lxf5Lm+yHN9kef6Is/1RZ7rizzXF3muL/JcX+S5vshzfZHn+iLP9UWe64s81xd5ri/yXF/kub7Ic32R5/oiz/VFnuuLPNcXea4v8lxf5Lm+yHN9kef6Is/1RZ7rizzXF3muL/JcX+S5vshzfZHn+iLP9UWe64s81xd5ri/yXF/kub7Ic32R5/oiz/VFnuuLPNcXea4v8lxf5Lm+yHN9kef6Is/1RZ7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6+t5rq/nub6e5/p6nuvrea6v57m+nuf6ep7r63mur+e5vp7n+nqe6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnusbea5v5Lm+kef6Rp7rG3mub+S5vpHn+kae6xt5rm/kub6R5/pGnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zp7rm3mub+a5vpnn+mae65t5rm/mub6Z5/pmnuubea5v5rm+mef6Zprr0y3N9T0uaflLJH+J5i+x/CWevyTyl/T8JSN/Sf7pt/zTb/mn3/JPv+Wffss//ZZ/+i3/9Fv+6bf802/5py/5py/5py/5py/5py/5py/5py/5py/5py/5py/5p6/5p6/5p6/5p6/5p6/5p6/5p6/5p6/5p6/5p6/5p2/5p2/5p2/5p2/5p2/5p2/5p2/5p2/5p2/5p2/5p+/5p+/5p+/5p+/5p+/5p+/5p+/5p+/5p+/5p+/5px/5px/5px/5px/5px/5px/5px/5px/5px/5px/5p9/zT7/nn37PP/2ef/o9//R7/un3/NPv+aff80+/55/+yD/9kX/6I//0R/7pj/zTH/mnP/JPf+Sf/sg//ZF/+jP/9Gf+6c/805/5pz/zT3/mn/7MP/2Zf/oz//TzXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lxfy3N9Lc/1tTzX1/JcX8tzfS3P9bU819fyXF/Lc30tz/W1PNfX8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1SZ7rkzzXJ3muT/Jcn+S5PslzfZLn+iTP9Ume65M81yd5rk/yXJ/kuT7Jc32S5/okz/VJnuuTPNcnea5P8lyf5Lk+yXN9kuf6JM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+a5Ps1zfZrn+jTP9Wme69M816d5rk/zXJ/muT7Nc32a5/o0z/VpnuvTPNenea5P81yf5rk+zXN9muf6NM/1aZ7r0zzXp3muT/Ncn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf5bk+y3N9luf6LM/1WZ7rszzXZ3muz/Jcn+W5PstzfZbn+izP9Vme67M812d5rs/yXJ/luT7Lc32W5/osz/VZnuuzPNdnea7P8lyf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VBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMCqJmVBA1o4KoGRVEzaggakYFUTMqiJpRQdSMKqJmVBE1o4qoGVVEzahugIiuiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYVUTOqiJpRRdSMKqJmVBE1o4qoGVVEzagiakYNUTNqiJpRQ9SMGqJm1DZARDdEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYNUTNqiJpRQ9SMGqJm1BA1o4aoGTVEzaghakYN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"}],"outputs":{"structs":{"functions":[{"kind":"struct","path":"KeyRegistry::rotate_nullifier_public_key_abi","fields":[{"name":"parameters","type":{"kind":"struct","path":"KeyRegistry::rotate_nullifier_public_key_parameters","fields":[{"name":"address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"new_nullifier_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"nonce","type":{"kind":"field"}}]}}]},{"kind":"struct","path":"KeyRegistry::register_abi","fields":[{"name":"parameters","type":{"kind":"struct","path":"KeyRegistry::register_parameters","fields":[{"name":"address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"partial_address","type":{"kind":"struct","path":"authwit::aztec::protocol_types::address::partial_address::PartialAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"nullifier_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"incoming_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"outgoing_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"tagging_public_key","type":{"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}}]}}]}]},"globals":{"storage":[{"kind":"struct","fields":[{"name":"nullifier_public_key_hash_registry","value":{"kind":"struct","fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"1"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}]}}]}]}},"file_map":{"3":{"source":"use crate::cmp::Eq;\n\nstruct BoundedVec<T, MaxLen> {\n storage: [T; MaxLen],\n len: u64,\n}\n\nimpl<T, MaxLen> BoundedVec<T, MaxLen> {\n pub fn new() -> Self {\n let zeroed = crate::unsafe::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n pub fn get(mut self: Self, index: u64) -> T {\n assert(index < self.len);\n self.storage[index]\n }\n\n pub fn get_unchecked(mut self: Self, index: u64) -> T {\n self.storage[index]\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) -> u64 {\n self.len\n }\n\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u64 {\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<Len>(&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<Len>(&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 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\nimpl<T, MaxLen> 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\nmod bounded_vec_tests {\n // TODO: Allow imports from \"super\"\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","path":"std/collections/bounded_vec.nr"},"28":{"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\n pub fn hash<N>(input: [Field; N], message_size: u64) -> 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<N>(input: [Field; N], in_len: u64, 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","path":"std/hash/poseidon2.nr"},"33":{"source":"use crate::hash::{Hash, Hasher};\nuse crate::cmp::{Ordering, Ord, Eq};\nuse crate::default::Default;\n\nstruct Option<T> {\n _is_some: bool,\n _value: T,\n}\n\nimpl<T> Option<T> {\n /// Constructs a None value\n pub fn none() -> Self {\n Self { _is_some: false, _value: crate::unsafe::zeroed() }\n }\n\n /// Constructs a Some wrapper around the given value\n pub fn some(_value: T) -> Self {\n Self { _is_some: true, _value }\n }\n\n /// True if this Option is None\n pub fn is_none(self) -> bool {\n !self._is_some\n }\n\n /// True if this Option is Some\n pub fn is_some(self) -> bool {\n self._is_some\n }\n\n /// Asserts `self.is_some()` and returns the wrapped value.\n pub fn unwrap(self) -> T {\n assert(self._is_some);\n self._value\n }\n\n /// Returns the inner value without asserting `self.is_some()`\n /// Note that if `self` is `None`, there is no guarantee what value will be returned,\n /// only that it will be of type `T`.\n pub fn unwrap_unchecked(self) -> T {\n self._value\n }\n\n /// Returns the wrapped value if `self.is_some()`. Otherwise, returns the given default value.\n pub fn unwrap_or(self, default: T) -> T {\n if self._is_some { self._value } else { default }\n }\n\n /// Returns the wrapped value if `self.is_some()`. Otherwise, calls the given function to return\n /// a default value.\n pub fn unwrap_or_else<Env>(self, default: fn[Env]() -> T) -> T {\n if self._is_some {\n self._value\n } else {\n default()\n }\n }\n\n /// Asserts `self.is_some()` with a provided custom message and returns the contained `Some` value\n fn expect<N, MessageTypes>(self, message: fmtstr<N, MessageTypes>) -> T {\n assert(self.is_some(), message);\n self._value\n }\n\n /// If self is `Some(x)`, this returns `Some(f(x))`. Otherwise, this returns `None`.\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> Option<U> {\n if self._is_some {\n Option::some(f(self._value))\n } else {\n Option::none()\n }\n }\n\n /// If self is `Some(x)`, this returns `f(x)`. Otherwise, this returns the given default value.\n pub fn map_or<U, Env>(self, default: U, f: fn[Env](T) -> U) -> U {\n if self._is_some {\n f(self._value)\n } else {\n default\n }\n }\n\n /// If self is `Some(x)`, this returns `f(x)`. Otherwise, this returns `default()`.\n pub fn map_or_else<U, Env1, Env2>(self, default: fn[Env1]() -> U, f: fn[Env2](T) -> U) -> U {\n if self._is_some {\n f(self._value)\n } else {\n default()\n }\n }\n\n /// Returns None if self is None. Otherwise, this returns `other`.\n pub fn and(self, other: Self) -> Self {\n if self.is_none() {\n Option::none()\n } else {\n other\n }\n }\n\n /// If self is None, this returns None. Otherwise, this calls the given function\n /// with the Some value contained within self, and returns the result of that call.\n ///\n /// In some languages this function is called `flat_map` or `bind`.\n pub fn and_then<U, Env>(self, f: fn[Env](T) -> Option<U>) -> Option<U> {\n if self._is_some {\n f(self._value)\n } else {\n Option::none()\n }\n }\n\n /// If self is Some, return self. Otherwise, return `other`.\n pub fn or(self, other: Self) -> Self {\n if self._is_some { self } else { other }\n }\n\n /// If self is Some, return self. Otherwise, return `default()`.\n pub fn or_else<U, Env>(self, default: fn[Env]() -> Self) -> Self {\n if self._is_some { self } else { default() }\n }\n\n // If only one of the two Options is Some, return that option.\n // Otherwise, if both options are Some or both are None, None is returned.\n pub fn xor(self, other: Self) -> Self {\n if self._is_some {\n if other._is_some { Option::none() } else { self }\n } else if other._is_some {\n other\n } else {\n Option::none()\n }\n }\n\n /// Returns `Some(x)` if self is `Some(x)` and `predicate(x)` is true.\n /// Otherwise, this returns `None`\n pub fn filter<Env>(self, predicate: fn[Env](T) -> bool) -> Self {\n if self._is_some {\n if predicate(self._value) {\n self\n } else {\n Option::none()\n }\n } else {\n Option::none()\n }\n }\n\n /// Flattens an Option<Option<T>> into a Option<T>.\n /// This returns None if the outer Option is None. Otherwise, this returns the inner Option.\n pub fn flatten(option: Option<Option<T>>) -> Option<T> {\n if option._is_some {\n option._value\n } else {\n Option::none()\n }\n }\n}\n\nimpl<T> Default for Option<T> {\n fn default() -> Self {\n Option::none()\n }\n}\n\nimpl<T> Eq for Option<T> where T: Eq {\n fn eq(self, other: Self) -> bool {\n if self._is_some == other._is_some {\n if self._is_some {\n self._value == other._value\n } else {\n true\n }\n } else {\n false\n }\n }\n}\n\nimpl<T> Hash for Option<T> where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher {\n self._is_some.hash(state);\n if self._is_some {\n self._value.hash(state);\n }\n }\n}\n\n// For this impl we're declaring Option::none < Option::some\nimpl<T> Ord for Option<T> where T: Ord {\n fn cmp(self, other: Self) -> Ordering {\n if self._is_some {\n if other._is_some {\n self._value.cmp(other._value)\n } else {\n Ordering::greater()\n }\n } else {\n if other._is_some {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n }\n}\n","path":"std/option.nr"},"53":{"source":"use dep::aztec::protocol_types::{\n abis::function_selector::FunctionSelector, address::AztecAddress,\n constants::{GENERATOR_INDEX__AUTHWIT_INNER, GENERATOR_INDEX__AUTHWIT_OUTER}, hash::pedersen_hash\n};\nuse dep::aztec::{\n prelude::Deserialize,\n context::{\n PrivateContext, PublicContext, Context, gas::GasOpts,\n interface::{ContextInterface, PublicContextInterface}\n},\n hash::hash_args_array\n};\n\nglobal IS_VALID_SELECTOR = 0xabf64ad4; // 4 first bytes of keccak256(\"IS_VALID()\")\n\n// docs:start:assert_current_call_valid_authwit\n// Assert that `on_behalf_of` have authorized the current call with a valid authentication witness\npub fn assert_current_call_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress) {\n let function_selector = FunctionSelector::from_signature(\"spend_private_authwit(Field)\");\n let inner_hash = compute_inner_authwit_hash([context.msg_sender().to_field(), context.selector().to_field(), context.args_hash]);\n let result: Field = context.call_private_function(on_behalf_of, function_selector, [inner_hash]).unpack_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n// docs:end:assert_current_call_valid_authwit\n\n// docs:start:assert_current_call_valid_authwit_public\n// Assert that `on_behalf_of` have authorized the current call in a public context\npub fn assert_current_call_valid_authwit_public<TPublicContext>(\n context: &mut TPublicContext,\n on_behalf_of: AztecAddress\n) where TPublicContext: ContextInterface + PublicContextInterface {\n let function_selector = FunctionSelector::from_signature(\"spend_public_authwit(Field)\");\n let inner_hash = compute_inner_authwit_hash(\n [(*context).msg_sender().to_field(), (*context).selector().to_field(), (*context).get_args_hash()]\n );\n let result: Field = PublicContextInterface::call_public_function(\n context,\n on_behalf_of,\n function_selector,\n [inner_hash].as_slice(),\n GasOpts::default()\n ).deserialize_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n// docs:end:assert_current_call_valid_authwit_public\n\n// docs:start:compute_call_authwit_hash\n// Compute the message hash to be used by an authentication witness \npub fn compute_call_authwit_hash<N>(\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_outer_authwit_hash(consumer, chain_id, version, inner_hash)\n}\n// docs:end:compute_call_authwit_hash\n\npub fn compute_inner_authwit_hash<N>(args: [Field; N]) -> Field {\n pedersen_hash(args, GENERATOR_INDEX__AUTHWIT_INNER)\n}\n\npub fn compute_outer_authwit_hash(\n consumer: AztecAddress,\n chain_id: Field,\n version: Field,\n inner_hash: Field\n) -> 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","path":"/usr/src/noir-projects/aztec-nr/authwit/src/auth.nr"},"58":{"source":"use crate::context::{PrivateContext, PublicContext, Context};\nuse dep::protocol_types::{hash::pedersen_hash, traits::ToField};\nuse crate::state_vars::storage::Storage;\n\n// docs:start:map\nstruct Map<K, V> {\n context: Context,\n storage_slot: Field,\n state_var_constructor: fn(Context, Field) -> V,\n}\n// docs:end:map\n\nimpl<K, T> Storage<T> for Map<K, T> {}\n\nimpl<K, V> Map<K, V> {\n // docs:start:new\n pub fn new(\n context: Context,\n storage_slot: Field,\n state_var_constructor: fn(Context, Field) -> V\n ) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n Map { context, storage_slot, state_var_constructor }\n }\n // docs:end:new\n\n // docs:start:at\n pub fn at(self, key: K) -> V where K: ToField {\n // TODO(#1204): use a generator index for the storage slot\n let derived_storage_slot = derive_storage_slot_in_map(self.storage_slot, key);\n\n let state_var_constructor = self.state_var_constructor;\n state_var_constructor(self.context, derived_storage_slot)\n }\n // docs:end:at\n}\n\npub fn derive_storage_slot_in_map<K>(storage_slot: Field, key: K) -> Field where K: ToField {\n pedersen_hash([storage_slot, key.to_field()], 0)\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/map.nr"},"64":{"source":"use dep::protocol_types::traits::{Serialize, Deserialize, FromField, ToField};\n\n// This data structure is used by SharedMutable to represent a value that changes from `pre` to `post` at some block \n// called the `block_of_change`. The value can only be made to change by scheduling a change event at some future block\n// of change after some minimum delay measured in blocks has elapsed. This means that at any given block number we know \n// both the current value and the smallest block number at which the value might change - this is called the \n// 'block horizon'.\nstruct ScheduledValueChange<T> {\n pre: T,\n post: T,\n block_of_change: u32,\n}\n\nimpl<T> ScheduledValueChange<T> {\n pub fn new(pre: T, post: T, block_of_change: u32) -> Self {\n Self { pre, post, block_of_change }\n }\n\n /// Returns the value stored in the data structure at a given block. This function can be called both in public \n /// (where `block_number` is simply the current block number, i.e. the number of the block in which the current \n /// transaction will be included) and in private (where `block_number` is the historical block number that is used \n /// to construct the proof).\n /// Reading in private is only safe if the transaction's `max_block_number` property is set to a value lower or \n /// equal to the block horizon (see `get_block_horizon()`).\n pub fn get_current_at(self, block_number: u32) -> T {\n // The post value becomes the current one at the block of change. This means different things in each realm:\n // - in public, any transaction that is included in the block of change will use the post value\n // - in private, any transaction that includes the block of change as part of the historical state will use the\n // post value (barring any follow-up changes)\n\n if block_number < self.block_of_change {\n self.pre\n } else {\n self.post\n }\n }\n\n /// Returns the scheduled change, i.e. the post-change value and the block at which it will become the current \n /// value. Note that this block may be in the past if the change has already taken place.\n /// Additionally, further changes might be later scheduled, potentially canceling the one returned by this function.\n pub fn get_scheduled(self) -> (T, u32) {\n (self.post, self.block_of_change)\n }\n\n /// Returns the largest block number at which the value returned by `get_current_at` is known to remain the current\n /// value. This value is only meaningful in private when constructing a proof at some `historical_block_number`, \n /// since due to its asynchronous nature private execution cannot know about any later scheduled changes.\n /// The caller of this function must know how quickly the value can change due to a scheduled change in the form of \n /// `minimum_delay`. If the delay itself is immutable, then this is just its duration.\n /// The value returned by `get_current_at` in private when called with a historical block number is only safe to use\n /// if the transaction's `max_block_number` property is set to a value lower or equal to the block horizon computed\n /// using the same historical block number.\n pub fn get_block_horizon(self, historical_block_number: u32, minimum_delay: u32) -> u32 {\n // The block horizon is the very last block in which the current value is known. Any block past the horizon \n // (i.e. with a block number larger than the block horizon) may have a different current value. Reading the\n // current value in private typically requires constraining the maximum valid block number to be equal to the\n // block horizon.\n\n if historical_block_number >= self.block_of_change {\n // Once the block of change has been mined, the current value (post) will not change unless a new value\n // change is scheduled. This did not happen at the historical block number (or else it would not be\n // greater or equal to the block of change), and therefore could only happen after the historical block\n // number. The earliest would be the immediate next block, and so the smallest possible next block of change\n // equals `historical_block_number + 1 + minimum_delay`. Our block horizon is simply the previous block to \n // that one.\n //\n // block of historical \n // change block block horizon\n // =======|=============N===================H===========>\n // ^ ^\n // ---------------------\n // minimum delay\n\n historical_block_number + minimum_delay\n } else {\n // If the block of change has not yet been mined however, then there are two possible scenarios.\n // a) It could be so far into the future that the block horizon is actually determined by the minimum \n // delay, because a new change could be scheduled and take place _before_ the currently scheduled one. \n // This is similar to the scenario where the block of change is in the past: the time horizon is the \n // block prior to the earliest one in which a new block of change might land.\n // \n // historical \n // block block horizon block of change\n // =====N=================================H=================|=========>\n // ^ ^\n // | | \n // -----------------------------------\n // minimum delay\n //\n // b) It could be fewer than `minimum_delay` blocks away from the historical block number, in which case \n // the block of change would become the limiting factor for the time horizon, which would equal the \n // block right before the block of change (since by definition the value changes at the block of \n // change).\n //\n // historical block horizon\n // block block of change if not scheduled\n // =======N=============|===================H=================>\n // ^ ^ ^\n // | actual horizon | \n // -----------------------------------\n // minimum delay\n // \n // Note that the current implementation does not allow the caller to set the block of change to an arbitrary\n // value, and therefore scenario a) is not currently possible. However implementing #5501 would allow for \n // this to happen.\n\n // Because historical_block_number < self.block_of_change, then block_of_change > 0 and we can safely\n // subtract 1.\n min(\n self.block_of_change - 1,\n historical_block_number + minimum_delay\n )\n }\n }\n\n /// Mutates a scheduled value change by scheduling a change at the current block number. This function is only\n /// meaningful when called in public with the current block number.\n pub fn schedule_change(\n &mut self,\n new_value: T,\n current_block_number: u32,\n minimum_delay: u32,\n block_of_change: u32\n ) {\n assert(block_of_change >= current_block_number + minimum_delay);\n\n self.pre = self.get_current_at(current_block_number);\n self.post = new_value;\n self.block_of_change = block_of_change;\n }\n}\n\nimpl<T> Serialize<3> for ScheduledValueChange<T> {\n fn serialize(self) -> [Field; 3] where T: ToField {\n [self.pre.to_field(), self.post.to_field(), self.block_of_change.to_field()]\n }\n}\n\nimpl<T> Deserialize<3> for ScheduledValueChange<T> {\n fn deserialize(input: [Field; 3]) -> Self where T: FromField {\n Self { \n pre: FromField::from_field(input[0]), \n post: FromField::from_field(input[1]), \n block_of_change: FromField::from_field(input[2]),\n }\n }\n}\n\nfn min(lhs: u32, rhs: u32) -> u32 {\n if lhs < rhs { lhs } else { rhs }\n}\n\n#[test]\nfn test_min() {\n assert(min(3, 5) == 3);\n assert(min(5, 3) == 3);\n assert(min(3, 3) == 3);\n}\n\nmod test {\n use crate::state_vars::shared_mutable::scheduled_value_change::ScheduledValueChange;\n\n global TEST_DELAY: u32 = 200;\n\n #[test]\n fn test_get_current_at() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let value: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n assert_eq(value.get_current_at(0), pre);\n assert_eq(value.get_current_at(block_of_change - 1), pre);\n assert_eq(value.get_current_at(block_of_change), post);\n assert_eq(value.get_current_at(block_of_change + 1), post);\n }\n\n #[test]\n fn test_get_scheduled() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let value: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n assert_eq(value.get_scheduled(), (post, block_of_change));\n }\n\n fn assert_block_horizon_invariants(\n value: &mut ScheduledValueChange<Field>,\n historical_block_number: u32,\n block_horizon: u32\n ) {\n // The current value should not change at the block horizon (but it might later).\n let current_at_historical = value.get_current_at(historical_block_number);\n assert_eq(current_at_historical, value.get_current_at(block_horizon));\n\n // The earliest a new change could be scheduled in would be the immediate next block to the historical one. This\n // should result in the new block of change landing *after* the block horizon, and the current value still not\n // changing at the previously determined block_horizon.\n\n let new = value.pre + value.post; // Make sure it's different to both pre and post\n value.schedule_change(\n new,\n historical_block_number + 1,\n TEST_DELAY,\n historical_block_number + 1 + TEST_DELAY\n );\n\n assert(value.block_of_change > block_horizon);\n assert_eq(current_at_historical, value.get_current_at(block_horizon));\n }\n\n #[test]\n fn test_get_block_horizon_change_in_past() {\n let historical_block_number = 100;\n let block_of_change = 50;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_immediate_past() {\n let historical_block_number = 100;\n let block_of_change = 100;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_near_future() {\n let historical_block_number = 100;\n let block_of_change = 120;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n // Note that this is the only scenario in which the block of change informs the block horizon.\n // This may result in privacy leaks when interacting with applications that have a scheduled change\n // in the near future.\n let block_horizon = value.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, block_of_change - 1);\n\n assert_block_horizon_invariants(&mut value, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_far_future() {\n let historical_block_number = 100;\n let block_of_change = 500;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_schedule_change_before_prior_change() {\n let pre = 1;\n let post = 2;\n let block_of_change = 500;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n let new = 42;\n let current_block_number = block_of_change - 50;\n value.schedule_change(\n new,\n current_block_number,\n TEST_DELAY,\n current_block_number + TEST_DELAY\n );\n\n // Because we re-schedule before the last scheduled change takes effect, the old `post` value is lost.\n assert_eq(value.pre, pre);\n assert_eq(value.post, new);\n assert_eq(value.block_of_change, current_block_number + TEST_DELAY);\n }\n\n #[test]\n fn test_schedule_change_after_prior_change() {\n let pre = 1;\n let post = 2;\n let block_of_change = 500;\n\n let mut value: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n let new = 42;\n let current_block_number = block_of_change + 50;\n value.schedule_change(\n new,\n current_block_number,\n TEST_DELAY,\n current_block_number + TEST_DELAY\n );\n\n assert_eq(value.pre, post);\n assert_eq(value.post, new);\n assert_eq(value.block_of_change, current_block_number + TEST_DELAY);\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_mutable/scheduled_value_change.nr"},"65":{"source":"use dep::protocol_types::{hash::pedersen_hash, traits::FromField};\n\nuse crate::context::{PrivateContext, PublicContext, Context};\nuse crate::history::public_storage::public_storage_historical_read;\nuse crate::public_storage;\nuse crate::state_vars::{storage::Storage, shared_mutable::scheduled_value_change::ScheduledValueChange};\n\nstruct SharedMutable<T, DELAY> {\n context: Context,\n storage_slot: Field,\n // The _dummy variable forces DELAY to be interpreted as a numberic value. This is a workaround to\n // https://github.com/noir-lang/noir/issues/4633. Remove once resolved.\n _dummy: [Field; DELAY],\n}\n\nimpl<T, DELAY> Storage<T> for SharedMutable<T, DELAY> {}\n\n// SharedMutable<T> stores a value of type T that is:\n// - publicly known (i.e. unencrypted)\n// - mutable in public\n// - readable in private with no contention (i.e. multiple parties can all read the same value without blocking one\n// another nor needing to coordinate)\n// This is famously a hard problem to solve. SharedMutable makes it work by introducing a delay to public mutation:\n// the value is not changed immediately but rather a value change is scheduled to happen in the future after some delay\n// measured in blocks. Reads in private are only valid as long as they are included in a block not too far into the \n// future, so that they can guarantee the value will not have possibly changed by then (because of the delay).\nimpl<T, DELAY> SharedMutable<T, DELAY> {\n pub fn new(context: Context, storage_slot: Field) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n Self { context, storage_slot, _dummy: [0; DELAY] }\n }\n\n pub fn schedule_value_change(self, new_value: T) {\n let context = self.context.public.unwrap();\n let mut scheduled_value_change: ScheduledValueChange<T> = public_storage::read(self.get_derived_storage_slot());\n\n let block_number = context.block_number() as u32;\n // TODO: make this configurable\n // https://github.com/AztecProtocol/aztec-packages/issues/5501\n let block_of_change = block_number + DELAY;\n\n scheduled_value_change.schedule_change(new_value, block_number, DELAY, block_of_change);\n\n public_storage::write(self.get_derived_storage_slot(), scheduled_value_change);\n }\n\n pub fn get_current_value_in_public(self) -> T {\n let scheduled_value_change: ScheduledValueChange<T> = public_storage::read(self.get_derived_storage_slot());\n\n let block_number = self.context.public.unwrap().block_number() as u32;\n scheduled_value_change.get_current_at(block_number)\n }\n\n pub fn get_scheduled_value_in_public(self) -> (T, u32) {\n let scheduled_value_change: ScheduledValueChange<T> = public_storage::read(self.get_derived_storage_slot());\n scheduled_value_change.get_scheduled()\n }\n\n pub fn get_current_value_in_private(self) -> T where T: FromField {\n let mut context = self.context.private.unwrap();\n\n let (scheduled_value_change, historical_block_number) = self.historical_read_from_public_storage(*context);\n let block_horizon = scheduled_value_change.get_block_horizon(historical_block_number, DELAY);\n\n // We prevent this transaction from being included in any block after the block horizon, ensuring that the \n // historical public value matches the current one, since it can only change after the horizon.\n context.set_tx_max_block_number(block_horizon);\n scheduled_value_change.get_current_at(historical_block_number)\n }\n\n fn historical_read_from_public_storage(\n self,\n context: PrivateContext\n ) -> (ScheduledValueChange<T>, u32) where T: FromField {\n let derived_slot = self.get_derived_storage_slot();\n\n // Ideally the following would be simply public_storage::read_historical, but we can't implement that yet.\n let mut raw_fields = [0; 3];\n for i in 0..3 {\n raw_fields[i] = public_storage_historical_read(\n context,\n derived_slot + i as Field,\n context.this_address()\n );\n }\n\n let scheduled_value: ScheduledValueChange<T> = ScheduledValueChange::deserialize(raw_fields);\n let historical_block_number = context.historical_header.global_variables.block_number as u32;\n\n (scheduled_value, historical_block_number)\n }\n\n fn get_derived_storage_slot(self) -> Field {\n // Since we're actually storing three values (a ScheduledValueChange struct), we hash the storage slot to get a\n // unique location in which we can safely store as much data as we need. This could be removed if we informed\n // the slot allocator of how much space we need so that proper padding could be added.\n // See https://github.com/AztecProtocol/aztec-packages/issues/5492\n pedersen_hash([self.storage_slot, 0], 0)\n }\n}\n\nmod test {\n use dep::std::{merkle::compute_merkle_root, test::OracleMock};\n\n use crate::{\n context::{PublicContext, PrivateContext, Context},\n state_vars::shared_mutable::shared_mutable::SharedMutable,\n oracle::get_public_data_witness::PublicDataWitness\n };\n\n use dep::protocol_types::{\n constants::{GENERATOR_INDEX__PUBLIC_LEAF_INDEX, PUBLIC_DATA_TREE_HEIGHT}, hash::pedersen_hash,\n address::AztecAddress, public_data_tree_leaf_preimage::PublicDataTreeLeafPreimage\n };\n\n fn setup(private: bool) -> (SharedMutable<Field, TEST_DELAY>, Field) {\n let block_number = 40;\n let context = create_context(block_number, private);\n\n let storage_slot = 57;\n let state_var: SharedMutable<Field, TEST_DELAY> = SharedMutable::new(context, storage_slot);\n\n (state_var, block_number)\n }\n\n fn create_context(block_number: Field, private: bool) -> Context {\n if private {\n let mut private_context = PrivateContext::empty();\n private_context.historical_header.global_variables.block_number = block_number;\n Context::private(&mut private_context)\n } else {\n let mut public_context = PublicContext::empty();\n public_context.inputs.public_global_variables.block_number = block_number;\n Context::public(&mut public_context)\n }\n }\n\n global TEST_DELAY = 20;\n\n global pre = 13;\n global post = 42;\n\n #[test]\n fn test_get_current_value_in_public_before_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the future, current value is pre\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number + 1]);\n assert_eq(state_var.get_current_value_in_public(), pre);\n }\n\n #[test]\n fn test_get_current_value_in_public_at_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the current block, current value is post\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number]);\n assert_eq(state_var.get_current_value_in_public(), post);\n }\n\n #[test]\n fn test_get_current_value_in_public_after_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the past, current value is post\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number - 1]);\n assert_eq(state_var.get_current_value_in_public(), post);\n }\n\n #[test]\n fn test_get_scheduled_value_in_public_before_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the future, scheduled is post (always is)\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number + 1]);\n assert_eq(state_var.get_scheduled_value_in_public(), (post, (block_number + 1) as u32));\n }\n\n #[test]\n fn test_get_scheduled_value_in_public_at_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the current block, scheduled is post (always is)\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number]);\n assert_eq(state_var.get_scheduled_value_in_public(), (post, block_number as u32));\n }\n\n #[test]\n fn test_get_scheduled_value_in_public_after_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the past, scheduled is post (always is)\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number - 1]);\n assert_eq(state_var.get_scheduled_value_in_public(), (post, (block_number - 1) as u32));\n }\n\n #[test]\n fn test_schedule_value_change_before_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the future\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number + 1]);\n\n let write_mock = OracleMock::mock(\"storageWrite\").returns([0; 3]); // The oracle return value is actually unused\n\n let new_value = 42;\n state_var.schedule_value_change(new_value);\n\n // The new scheduled change replaces the old one\n assert_eq(write_mock.get_last_params(), (slot, [pre, new_value, block_number + TEST_DELAY]));\n }\n\n #[test]\n fn test_schedule_value_change_at_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the current block\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number]);\n\n let write_mock = OracleMock::mock(\"storageWrite\").returns([0; 3]); // The oracle return value is actually unused\n\n let new_value = 42;\n state_var.schedule_value_change(new_value);\n\n // The previous 'post' value is the current one and becomes the 'pre' value\n assert_eq(write_mock.get_last_params(), (slot, [post, new_value, block_number + TEST_DELAY]));\n }\n\n #[test]\n fn test_schedule_value_change_after_change() {\n let (state_var, block_number) = setup(false);\n\n let slot = state_var.get_derived_storage_slot();\n\n // Change in the past\n OracleMock::mock(\"storageRead\").with_params((slot, 3)).returns([pre, post, block_number - 1]);\n\n let write_mock = OracleMock::mock(\"storageWrite\").returns([0; 3]); // The oracle return value is actually unused\n\n let new_value = 42;\n state_var.schedule_value_change(new_value);\n\n // The previous 'post' value is the current one and becomes the 'pre' value\n assert_eq(write_mock.get_last_params(), (slot, [post, new_value, block_number + TEST_DELAY]));\n }\n\n #[test]\n fn test_get_current_value_in_private_before_change() {\n // Here we'd want to test that the private getter returns the correct value and sets max_block_number in the\n // context to the expected block horizon, in all the possible scenarios (long before change, before near change,\n // after change).\n // However, this requires mocking the getPublicDataTreeWitness oracle so that we can convince the circuit that\n // it got a valid historical proof. Because we can set the tree root to whatever we want in the context, this is\n // trivial for a single historical value (we add a leaf and compute the root with any random path), but is quite\n // hard if we're reading more than one value for the same root (as SharedMutable does): we essentially need to\n // create an actual indexed tree and compute the correct path for each of the inserted values.\n // TODO: implement an actual tree and use it here https://github.com/AztecProtocol/aztec-packages/issues/5494\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_mutable/shared_mutable.nr"},"69":{"source":"use dep::protocol_types::traits::{Deserialize, Serialize};\nuse crate::oracle::storage::{storage_read, storage_write};\n\npub fn read<T, N>(storage_slot: Field) -> T where T: Deserialize<N> {\n T::deserialize(storage_read(storage_slot))\n}\n\npub fn write<T, N>(storage_slot: Field, value: T) where T: Serialize<N> {\n storage_write(storage_slot, value.serialize());\n}\n\n// Ideally we'd do the following, but we cannot because of https://github.com/noir-lang/noir/issues/4633\n// pub fn read_historical<T, N>(\n// storage_slot: Field,\n// context: PrivateContext\n// ) -> T where T: Deserialize<N> {\n// let mut fields = [0; N];\n// for i in 0..N {\n// fields[i] = public_storage_historical_read(\n// context,\n// storage_slot + i as Field,\n// context.this_address()\n// );\n// }\n// T::deserialize(fields)\n// }\n\nmod tests {\n use dep::std::test::OracleMock;\n use dep::protocol_types::traits::{Deserialize, Serialize};\n use crate::public_storage;\n\n struct TestStruct {\n a: Field,\n b: Field,\n }\n\n impl Deserialize<2> for TestStruct {\n fn deserialize(fields: [Field; 2]) -> TestStruct {\n TestStruct { a: fields[0], b: fields[1] }\n }\n }\n\n impl Serialize<2> for TestStruct {\n fn serialize(self) -> [Field; 2] {\n [self.a, self.b]\n }\n }\n\n #[test]\n fn test_read() {\n let slot = 7;\n let written = TestStruct { a: 13, b: 42 };\n\n OracleMock::mock(\"storageRead\").with_params((slot, 2)).returns(written.serialize());\n\n let read: TestStruct = public_storage::read(slot);\n assert_eq(read.a, 13);\n assert_eq(read.b, 42);\n }\n\n #[test]\n fn test_write() {\n let slot = 7;\n let to_write = TestStruct { a: 13, b: 42 };\n\n let mock = OracleMock::mock(\"storageWrite\").returns([0; 2]); // The return value is unused\n\n public_storage::write(slot, to_write);\n assert_eq(mock.get_last_params(), (slot, to_write.serialize()));\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/public_storage.nr"},"77":{"source":"use crate::{\n context::{\n inputs::PublicContextInputs, interface::ContextInterface, interface::PublicContextInterface,\n gas::GasOpts\n},\n messaging::process_l1_to_l2_message,\n oracle::{arguments, public_call::call_public_function_internal, returns},\n hash::{hash_args, ArgsHasher}\n};\nuse dep::protocol_types::{\n abis::{\n global_variables::GlobalVariables, function_selector::FunctionSelector,\n private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_stack_item::PublicCallStackItem,\n public_circuit_public_inputs::PublicCircuitPublicInputs, read_request::ReadRequest,\n note_hash::NoteHash, nullifier::Nullifier, side_effect::SideEffect\n},\n hash::silo_nullifier, address::{AztecAddress, EthAddress},\n constants::{\n MAX_NEW_NOTE_HASHES_PER_CALL, MAX_NEW_L2_TO_L1_MSGS_PER_CALL, MAX_NEW_NULLIFIERS_PER_CALL,\n MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_DATA_READS_PER_CALL,\n MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,\n MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL,\n MAX_UNENCRYPTED_LOGS_PER_CALL\n},\n contrakt::{storage_read::StorageRead, storage_update_request::StorageUpdateRequest}, header::Header,\n messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::{Deserialize, Empty}\n};\n\nstruct PublicContext {\n inputs: PublicContextInputs,\n side_effect_counter: u32,\n\n args_hash : Field,\n return_hash : Field,\n\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n nullifier_non_existent_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL>,\n contract_storage_update_requests: BoundedVec<StorageUpdateRequest, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL>,\n contract_storage_reads: BoundedVec<StorageRead, MAX_PUBLIC_DATA_READS_PER_CALL>,\n public_call_stack_hashes: BoundedVec<Field, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n\n new_note_hashes: BoundedVec<NoteHash, MAX_NEW_NOTE_HASHES_PER_CALL>,\n new_nullifiers: BoundedVec<Nullifier, MAX_NEW_NULLIFIERS_PER_CALL>,\n\n new_l2_to_l1_msgs: BoundedVec<L2ToL1Message, MAX_NEW_L2_TO_L1_MSGS_PER_CALL>,\n\n unencrypted_logs_hashes: BoundedVec<SideEffect, MAX_UNENCRYPTED_LOGS_PER_CALL>,\n unencrypted_logs_preimages_length: Field,\n\n // Header of a block whose state is used during public execution. Set by sequencer to be a header of a block\n // previous to the one in which the tx is included.\n historical_header: Header,\n prover_address: AztecAddress,\n}\n\nimpl PublicContext {\n pub fn new(inputs: PublicContextInputs, args_hash: Field) -> PublicContext {\n PublicContext {\n inputs,\n side_effect_counter: inputs.start_side_effect_counter,\n args_hash,\n return_hash: 0,\n nullifier_read_requests: BoundedVec::new(),\n nullifier_non_existent_read_requests: BoundedVec::new(),\n contract_storage_update_requests: BoundedVec::new(),\n contract_storage_reads: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_preimages_length: 0,\n historical_header: inputs.historical_header,\n prover_address: AztecAddress::zero() // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // encrypted_logs_preimages: Vec::new(),\n // unencrypted_logs_preimages: Vec::new(),\n }\n }\n\n pub fn call_public_function_no_args<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &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 ) -> FunctionReturns<RETURNS_COUNT> {\n let side_effect_counter = self.side_effect_counter;\n // TODO get next value from output of `call_public_function_internal`\n self.side_effect_counter += 1;\n\n let raw_returns = call_public_function_internal(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n FunctionReturns::new(raw_returns)\n }\n\n pub fn set_return_hash(&mut self, returns_hasher: ArgsHasher) {\n returns::pack_returns(returns_hasher.fields);\n self.return_hash = returns_hasher.hash();\n }\n\n // Keep private or ask the AVM team if you want to change it.\n fn push_nullifier_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.side_effect_counter };\n self.nullifier_read_requests.push(request);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n // Keep private or ask the AVM team if you want to change it.\n fn push_nullifier_non_existent_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.side_effect_counter };\n self.nullifier_non_existent_read_requests.push(request);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n pub fn finish(self) -> PublicCircuitPublicInputs {\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n let unencrypted_log_preimages_length = 0;\n\n // Compute the public call stack hashes\n let pub_circuit_pub_inputs = PublicCircuitPublicInputs {\n call_context: self.inputs.call_context, // Done\n args_hash: self.args_hash, // Done\n nullifier_read_requests: self.nullifier_read_requests.storage,\n nullifier_non_existent_read_requests: self.nullifier_non_existent_read_requests.storage,\n contract_storage_update_requests: self.contract_storage_update_requests.storage,\n contract_storage_reads: self.contract_storage_reads.storage,\n returns_hash: self.return_hash,\n new_note_hashes: self.new_note_hashes.storage,\n new_nullifiers: self.new_nullifiers.storage,\n public_call_stack_hashes: self.public_call_stack_hashes.storage,\n new_l2_to_l1_msgs: self.new_l2_to_l1_msgs.storage,\n start_side_effect_counter: self.inputs.start_side_effect_counter,\n end_side_effect_counter: self.side_effect_counter,\n unencrypted_logs_hashes: self.unencrypted_logs_hashes.storage,\n unencrypted_log_preimages_length,\n historical_header: self.inputs.historical_header,\n global_variables: self.inputs.public_global_variables,\n prover_address: self.prover_address,\n revert_code: 0,\n start_gas_left: self.inputs.gas_left,\n end_gas_left: self.inputs.gas_left, // AVM should decrease this value\n transaction_fee: self.inputs.transaction_fee\n };\n pub_circuit_pub_inputs\n }\n}\n\nimpl ContextInterface for PublicContext {\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.public_global_variables.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.public_global_variables.version\n }\n\n fn selector(self) -> FunctionSelector {\n self.inputs.call_context.function_selector\n }\n\n fn get_args_hash(self) -> Field {\n self.args_hash\n }\n\n fn push_new_note_hash(&mut self, note_hash: Field) {\n self.new_note_hashes.push(NoteHash { value: note_hash, counter: self.side_effect_counter });\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n fn push_new_nullifier(&mut self, nullifier: Field, _nullified_note_hash: Field) {\n self.new_nullifiers.push(Nullifier {\n value: nullifier,\n note_hash: 0, // cannot nullify pending notes in public context\n counter: self.side_effect_counter\n });\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n}\n\nimpl PublicContextInterface for PublicContext {\n fn block_number(self) -> Field {\n self.inputs.public_global_variables.block_number\n }\n\n fn timestamp(self) -> u64 {\n self.inputs.public_global_variables.timestamp\n }\n\n fn coinbase(self) -> EthAddress {\n self.inputs.public_global_variables.coinbase\n }\n\n fn fee_recipient(self) -> AztecAddress {\n self.inputs.public_global_variables.fee_recipient\n }\n\n fn fee_per_da_gas(self) -> Field {\n self.inputs.public_global_variables.gas_fees.fee_per_da_gas\n }\n\n fn fee_per_l2_gas(self) -> Field {\n self.inputs.public_global_variables.gas_fees.fee_per_l2_gas\n }\n\n fn nullifier_exists(self, unsiloed_nullifier: Field, address: AztecAddress) -> bool {\n // Current public can only check for settled nullifiers, so we always silo.\n let siloed_nullifier = silo_nullifier(address, unsiloed_nullifier);\n nullifier_exists_oracle(siloed_nullifier) == 1\n }\n\n fn message_portal(&mut self, recipient: EthAddress, content: Field) {\n let message = L2ToL1Message { recipient, content };\n self.new_l2_to_l1_msgs.push(message);\n }\n\n // We can consume message with a secret in public context because the message cannot be modified and therefore\n // there is no front-running risk (e.g. somebody could front run you to claim your tokens to your address).\n // Leaf index is not used in public context, but it is used in the AVMContext which will replace it.\n fn consume_l1_to_l2_message(&mut self, content: Field, secret: Field, sender: EthAddress, _leaf_index: Field) {\n let this = (*self).this_address();\n let nullifier = process_l1_to_l2_message(\n self.historical_header.state.l1_to_l2_message_tree.root,\n this,\n sender,\n self.chain_id(),\n self.version(),\n content,\n secret\n );\n\n // Push nullifier (and the \"commitment\" corresponding to this can be \"empty\")\n self.push_new_nullifier(nullifier, 0)\n }\n\n fn emit_unencrypted_log<T>(&mut self, log: T) {\n let event_selector = 5;\n let log_hash = emit_unencrypted_log_oracle(self.this_address(), event_selector, log);\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // Once we hash inside circuits, this replaces push_unencrypted_log\n // For now we need an oracle to get the hash\n let side_effect = SideEffect { value: log_hash, counter: self.side_effect_counter };\n self.unencrypted_logs_hashes.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n }\n\n fn call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field],\n _gas: GasOpts\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n fn static_call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field],\n _gas: GasOpts\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n fn delegate_call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field]\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n}\n\nimpl Empty for PublicContext {\n fn empty() -> Self {\n PublicContext {\n inputs: PublicContextInputs::empty(),\n side_effect_counter: 0 as u32,\n args_hash : 0,\n return_hash : 0,\n nullifier_read_requests: BoundedVec::new(),\n nullifier_non_existent_read_requests: BoundedVec::new(),\n contract_storage_update_requests: BoundedVec::new(),\n contract_storage_reads: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n unencrypted_logs_preimages_length: 0,\n historical_header: Header::empty(),\n prover_address: AztecAddress::zero(),\n }\n }\n}\n\n#[oracle(checkNullifierExists)]\nfn nullifier_exists_oracle(nullifier: Field) -> Field {}\n\n#[oracle(emitUnencryptedLog)]\nfn emit_unencrypted_log_oracle<T>(\n _contract_address: AztecAddress,\n _event_selector: Field,\n _message: T\n) -> Field {}\n\nstruct FunctionReturns<N> {\n values: [Field; N]\n}\n\nimpl<N> FunctionReturns<N> {\n pub fn new(values: [Field; N]) -> FunctionReturns<N> {\n FunctionReturns { values }\n }\n\n pub fn assert_empty(returns: FunctionReturns<0>) {\n assert(returns.values.len() == 0);\n }\n\n pub fn raw(self) -> [Field; N] {\n self.values\n }\n\n pub fn deserialize_into<T>(self) -> T where T: Deserialize<N> {\n Deserialize::deserialize(self.raw())\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/public_context.nr"},"96":{"source":"#[oracle(packArgumentsArray)]\nfn pack_arguments_array_oracle<N>(_args: [Field; N]) -> Field {}\n\n#[oracle(packArguments)]\nfn pack_arguments_oracle(_args: [Field]) -> Field {}\n\n/// - Pack arguments (array version) will notify the simulator that these arguments will be used later at\n/// some point in the call. \n/// - When the external call is made later, the simulator will know what the values unpack to.\n/// - This oracle will not be required in public vm functions, as the vm will keep track of arguments \n/// itself.\nunconstrained pub fn pack_arguments_array<N>(args: [Field; N]) -> Field {\n pack_arguments_array_oracle(args)\n}\n\n/// - Pack arguments (slice version) will notify the simulator that these arguments will be used later at\n/// some point in the call. \n/// - When the external call is made later, the simulator will know what the values unpack to.\n/// - This oracle will not be required in public vm functions, as the vm will keep track of arguments \n/// itself.\nunconstrained pub fn pack_arguments(args: [Field]) -> Field {\n pack_arguments_oracle(args)\n}\n\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/arguments.nr"},"108":{"source":"use dep::protocol_types::{abis::function_selector::FunctionSelector, address::AztecAddress};\n\n#[oracle(callPublicFunction)]\nfn call_public_function_oracle<RETURNS_COUNT>(\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; RETURNS_COUNT] {}\n\nunconstrained pub fn call_public_function_internal<RETURNS_COUNT>(\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; RETURNS_COUNT] {\n call_public_function_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","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/public_call.nr"},"110":{"source":"use dep::protocol_types::traits::{Deserialize, Serialize};\n\n#[oracle(storageRead)]\nfn storage_read_oracle<N>(_storage_slot: Field, _number_of_elements: Field) -> [Field; N] {}\n\nunconstrained fn storage_read_oracle_wrapper<N>(_storage_slot: Field) -> [Field; N] {\n storage_read_oracle(_storage_slot, N)\n}\n\npub fn storage_read<N>(storage_slot: Field) -> [Field; N] {\n storage_read_oracle_wrapper(storage_slot)\n}\n\n#[oracle(storageWrite)]\nfn storage_write_oracle<N>(_storage_slot: Field, _values: [Field; N]) -> [Field; N] {}\n\nunconstrained pub fn storage_write<N>(storage_slot: Field, fields: [Field; N]) {\n let _hash = storage_write_oracle(storage_slot, fields);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/storage.nr"},"114":{"source":"mod globals;\nmod inputs;\n\nmod private_context;\nmod public_context;\nmod avm_context;\nmod interface;\nmod gas;\n\nuse interface::{\n ContextInterface, PrivateCallInterface, PublicCallInterface, PrivateVoidCallInterface,\n PublicVoidCallInterface, AvmCallInterface, AvmVoidCallInterface\n};\nuse private_context::PrivateContext;\nuse private_context::PackedReturns;\nuse public_context::PublicContext;\nuse public_context::FunctionReturns;\nuse avm_context::AvmContext;\n\nstruct Context {\n private: Option<&mut PrivateContext>,\n public: Option<&mut PublicContext>,\n avm: Option<&mut AvmContext>,\n}\n\nimpl Context {\n pub fn private(context: &mut PrivateContext) -> Context {\n Context { private: Option::some(context), public: Option::none(), avm: Option::none() }\n }\n\n pub fn public(context: &mut PublicContext) -> Context {\n Context { public: Option::some(context), private: Option::none(), avm: Option::none() }\n }\n\n pub fn avm(context: &mut AvmContext) -> Context {\n Context { avm: Option::some(context), public: Option::none(), private: Option::none() }\n }\n\n pub fn none() -> Context {\n Context { public: Option::none(), private: Option::none(), avm: Option::none() }\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/context.nr"},"115":{"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\n},\n traits::Hash, hash::{pedersen_hash, poseidon2_hash, silo_nullifier, sha256_to_field}\n};\n\npub fn compute_secret_hash(secret: Field) -> Field {\n pedersen_hash([secret], GENERATOR_INDEX__SECRET_HASH)\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\npub fn compute_siloed_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n silo_nullifier(address, nullifier)\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<N>(&mut self, fields: [Field; N]) {\n for i in 0..N {\n self.fields = self.fields.push_back(fields[i]);\n }\n }\n}\n\npub fn hash_args_array<N>(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() < ARGS_HASH_CHUNK_COUNT * ARGS_HASH_CHUNK_LENGTH);\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..800 {\n input.add(i as Field);\n }\n let hash = input.hash();\n assert(hash == 0x05a1023fef839ac88731f49ae983e172c1b600a3c8f3393ad0ac25d819ac0f0f);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/hash.nr"},"133":{"source":"pub fn field_from_bytes<N>(bytes: [u8; N], big_endian: bool) -> Field {\n assert(bytes.len() < 32, \"field_from_bytes: N must be less than 32\");\n let mut as_field = 0;\n let mut offset = 1;\n for i in 0..N {\n let mut index = i;\n if big_endian {\n index = N - i - 1;\n }\n as_field += (bytes[index] as Field) * offset;\n offset *= 256;\n }\n\n as_field\n}\n\n// Convert a 32 byte array to a field element by truncating the final byte\npub fn field_from_bytes_32_trunc(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..15 {\n // covers bytes 16..30 (31 is truncated and ignored)\n low = low + (bytes32[15 + 15 - i] as Field) * v;\n v = v * 256;\n // covers bytes 0..14\n high = high + (bytes32[14 - i] as Field) * v;\n }\n // covers byte 15\n low = low + (bytes32[15] as Field) * v;\n\n low + high * v\n}\n\n// TODO to radix returns u8, so we cannot use bigger radixes. It'd be ideal to use a radix of the maximum range-constrained integer noir supports\npub fn full_field_less_than(lhs: Field, rhs: Field) -> bool {\n lhs.lt(rhs)\n}\n\npub fn full_field_greater_than(lhs: Field, rhs: Field) -> bool {\n rhs.lt(lhs)\n}\n\n#[test]\nunconstrained fn bytes_field_test() {\n // Tests correctness of field_from_bytes_32_trunc against existing methods\n // Bytes representing 0x543e0a6642ffeb8039296861765a53407bba62bd1c97ca43374de950bbe0a7\n let inputs = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28, 151, 202, 67, 55, 77, 233, 80, 187, 224, 167\n ];\n let field = field_from_bytes(inputs, true);\n let return_bytes = field.to_be_bytes(31);\n for i in 0..31 {\n assert_eq(inputs[i], return_bytes[i]);\n }\n // 32 bytes - we remove the final byte, and check it matches the field\n let inputs2 = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28, 151, 202, 67, 55, 77, 233, 80, 187, 224, 167, 158\n ];\n let field2 = field_from_bytes_32_trunc(inputs2);\n let return_bytes2 = field.to_be_bytes(31);\n\n for i in 0..31 {\n assert_eq(return_bytes2[i], return_bytes[i]);\n }\n assert_eq(field2, field);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/field.nr"},"149":{"source":"use crate::{\n address::{\n eth_address::EthAddress, salted_initialization_hash::SaltedInitializationHash,\n aztec_address::AztecAddress\n},\n constants::GENERATOR_INDEX__PARTIAL_ADDRESS, contract_class_id::ContractClassId,\n hash::pedersen_hash, traits::{ToField, FromField, Serialize, Deserialize}\n};\n\nglobal PARTIAL_ADDRESS_LENGTH = 1;\n\n// Partial address\nstruct PartialAddress {\n inner : Field\n}\n\nimpl ToField for PartialAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<PARTIAL_ADDRESS_LENGTH> for PartialAddress {\n fn serialize(self: Self) -> [Field; PARTIAL_ADDRESS_LENGTH] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<PARTIAL_ADDRESS_LENGTH> for PartialAddress {\n fn deserialize(fields: [Field; PARTIAL_ADDRESS_LENGTH]) -> Self {\n PartialAddress { inner: fields[0] }\n }\n}\n\nimpl PartialAddress {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute(\n contract_class_id: ContractClassId,\n salt: Field,\n initialization_hash: Field,\n deployer: AztecAddress\n ) -> Self {\n PartialAddress::compute_from_salted_initialization_hash(\n contract_class_id,\n SaltedInitializationHash::compute(salt, initialization_hash, deployer)\n )\n }\n\n pub fn compute_from_salted_initialization_hash(\n contract_class_id: ContractClassId,\n salted_initialization_hash: SaltedInitializationHash\n ) -> Self {\n PartialAddress::from_field(\n pedersen_hash(\n [\n contract_class_id.to_field(),\n salted_initialization_hash.to_field()\n ],\n GENERATOR_INDEX__PARTIAL_ADDRESS\n )\n )\n }\n\n pub fn to_field(self) -> Field {\n self.inner\n }\n\n pub fn is_zero(self) -> bool {\n self.to_field() == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/partial_address.nr"},"150":{"source":"use crate::{\n constants::{GENERATOR_INDEX__PARTIAL_ADDRESS, GENERATOR_INDEX__PUBLIC_KEYS_HASH}, hash::pedersen_hash, grumpkin_point::GrumpkinPoint,\n traits::{ToField, Serialize, Deserialize},\n hash::poseidon2_hash,\n};\n\n// Public keys hash. Used in the computation of an address.\nstruct PublicKeysHash {\n inner: Field\n}\n\nimpl ToField for PublicKeysHash {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<1> for PublicKeysHash {\n fn serialize(self: Self) -> [Field; 1] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<1> for PublicKeysHash {\n fn deserialize(fields: [Field; 1]) -> Self {\n PublicKeysHash::from_field(fields[0])\n }\n}\n\nimpl Eq for PublicKeysHash {\n fn eq(self, other: Self) -> bool {\n self.inner == other.inner\n }\n}\n\nimpl PublicKeysHash {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n // TODO(#5830): When we do this refactor, rename compute_new -> compute\n pub fn compute(public_key: GrumpkinPoint) -> Self {\n PublicKeysHash::from_field(\n pedersen_hash(\n [\n public_key.x,\n public_key.y\n ],\n GENERATOR_INDEX__PARTIAL_ADDRESS\n )\n )\n }\n\n // TODO(#5830): When we do this refactor, rename compute_new -> compute\n pub fn compute_new(\n nullifier_public_key: GrumpkinPoint,\n incoming_public_key: GrumpkinPoint,\n outgoing_public_key: GrumpkinPoint,\n tagging_public_key: GrumpkinPoint\n ) -> Self {\n PublicKeysHash::from_field(\n poseidon2_hash([\n nullifier_public_key.x,\n nullifier_public_key.y,\n incoming_public_key.x,\n incoming_public_key.y,\n outgoing_public_key.x,\n outgoing_public_key.y,\n tagging_public_key.x,\n tagging_public_key.y,\n GENERATOR_INDEX__PUBLIC_KEYS_HASH,\n ])\n )\n }\n\n pub fn to_field(self) -> Field {\n self.inner\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n\n// TODO(#5830): re-enable this test once the compute function is updated\n// #[test]\n// fn compute_public_keys_hash() {\n// let point = GrumpkinPoint { x: 1, y: 2 };\n// let actual = PublicKeysHash::compute(point);\n// let expected_public_keys_hash = 0x22d83a089d7650514c2de24cd30185a414d943eaa19817c67bffe2c3183006a3;\n// assert(actual.to_field() == expected_public_keys_hash);\n// }\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/public_keys_hash.nr"},"151":{"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, grumpkin_point::GrumpkinPoint,\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(\n [pub_keys_hash.to_field(), partial_address.to_field(), GENERATOR_INDEX__CONTRACT_ADDRESS_V1]\n )\n )\n }\n\n pub fn compute_from_public_keys_and_partial_address(\n nullifier_public_key: GrumpkinPoint,\n incoming_public_key: GrumpkinPoint,\n outgoing_public_key: GrumpkinPoint,\n tagging_public_key: GrumpkinPoint,\n partial_address: PartialAddress,\n ) -> AztecAddress {\n let public_keys_hash = PublicKeysHash::compute_new(\n nullifier_public_key,\n incoming_public_key,\n outgoing_public_key,\n tagging_public_key,\n );\n\n let computed_address = AztecAddress::compute(public_keys_hash, partial_address);\n\n computed_address\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_pubkey() {\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","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr"},"156":{"source":"use dep::std::cmp::Eq;\nuse 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, N>(array: [T; N]) -> bool where T: Empty + Eq {\n array.all(|elem| is_empty(elem))\n}\n\ntrait Hash {\n fn hash(self) -> Field;\n}\n\ntrait ToField {\n fn to_field(self) -> Field;\n}\n\nimpl ToField for Field {\n fn to_field(self) -> Field {\n self\n }\n}\n\nimpl ToField for bool { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u1 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u8 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u32 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u64 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for U128 {\n fn to_field(self) -> Field {\n self.to_integer()\n }\n}\nimpl<N> 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<N> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\nimpl<N> 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<N> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr"},"185":{"source":"use crate::utils::field::field_from_bytes;\nuse dep::std::cmp::Eq;\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<N>(signature: str<N>) -> Self {\n let bytes = signature.as_bytes();\n let hash = dep::std::hash::keccak256(bytes, bytes.len() as u32);\n\n let mut selector_be_bytes = [0; SELECTOR_SIZE];\n for i in 0..SELECTOR_SIZE {\n selector_be_bytes[i] = hash[i];\n }\n\n FunctionSelector::from_field(field_from_bytes(selector_be_bytes, true))\n }\n\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/function_selector.nr"},"205":{"source":"use crate::traits::{Serialize, Deserialize};\n\nglobal BOOL_SERIALIZED_LEN: Field = 1;\nglobal U8_SERIALIZED_LEN: Field = 1;\nglobal U32_SERIALIZED_LEN: Field = 1;\nglobal U64_SERIALIZED_LEN: Field = 1;\nglobal U128_SERIALIZED_LEN: Field = 1;\nglobal FIELD_SERIALIZED_LEN: Field = 1;\n\nimpl Serialize<BOOL_SERIALIZED_LEN> for bool {\n fn serialize(self) -> [Field; BOOL_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<BOOL_SERIALIZED_LEN> for bool {\n fn deserialize(fields: [Field; BOOL_SERIALIZED_LEN]) -> bool {\n fields[0] as bool\n }\n}\n\nimpl Serialize<U8_SERIALIZED_LEN> for u8 {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U8_SERIALIZED_LEN> for u8 {\n fn deserialize(fields: [Field; U8_SERIALIZED_LEN]) -> Self {\n fields[0] as u8\n }\n}\n\nimpl Serialize<U32_SERIALIZED_LEN> for u32 {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U32_SERIALIZED_LEN> for u32 {\n fn deserialize(fields: [Field; U32_SERIALIZED_LEN]) -> Self {\n fields[0] as u32\n }\n}\n\nimpl Serialize<U64_SERIALIZED_LEN> for u64 {\n fn serialize(self) -> [Field; U64_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U64_SERIALIZED_LEN> for u64 {\n fn deserialize(fields: [Field; U64_SERIALIZED_LEN]) -> Self {\n fields[0] as u64\n }\n}\n\nimpl Serialize<U128_SERIALIZED_LEN> for U128 {\n fn serialize(self) -> [Field; 1] {\n [self.to_integer()]\n }\n\n}\n\nimpl Deserialize<U128_SERIALIZED_LEN> for U128 {\n fn deserialize(fields: [Field; U128_SERIALIZED_LEN]) -> Self {\n U128::from_integer(fields[0])\n }\n}\n\nimpl Serialize<FIELD_SERIALIZED_LEN> for Field {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self]\n }\n}\n\nimpl Deserialize<FIELD_SERIALIZED_LEN> for Field {\n fn deserialize(fields: [Field; FIELD_SERIALIZED_LEN]) -> Self {\n fields[0]\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/type_serialization.nr"},"207":{"source":"use crate::address::{AztecAddress, EthAddress};\nuse crate::mocked::VerificationKey;\nuse crate::abis::function_selector::FunctionSelector;\nuse crate::abis::contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage;\nuse crate::contract_class_id::ContractClassId;\nuse crate::abis::side_effect::SideEffect;\nuse crate::traits::is_empty;\nuse crate::utils::{uint256::U256, field::field_from_bytes_32_trunc};\nuse crate::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};\nuse crate::traits::Hash;\nuse crate::messaging::l2_to_l1_message::L2ToL1Message;\nuse crate::merkle_tree::root::root_from_sibling_path;\nuse dep::std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<N>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256(bytes_to_hash);\n let hash_in_a_field = field_from_bytes_32_trunc(sha256_hashed);\n\n hash_in_a_field\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT]\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(function_leaf, function_leaf_index, function_leaf_sibling_path)\n}\n\npub fn silo_note_hash(address: AztecAddress, inner_commitment: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n inner_commitment\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n pedersen_hash([left, right], 0)\n}\n\npub fn stdlib_recursion_verification_key_compress_native_vk(_vk: VerificationKey) -> Field {\n // Original cpp code\n // stdlib::recursion::verification_key<CT::bn254>::compress_native(private_call.vk, GeneratorIndex::VK);\n // The above cpp method is only ever called on verification key, so it has been special cased here\n let _hash_index = GENERATOR_INDEX__VK;\n 0\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n rollup_version_id: Field,\n chain_id: Field,\n message: L2ToL1Message\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [\n contract_address.to_field(), rollup_version_id, message.recipient.to_field(), chain_id, message.content\n ];\n for i in 0..inputs.len() {\n // TODO are bytes be in fr.to_buffer() ?\n let item_bytes = inputs[i].to_be_bytes(32);\n for j in 0..32 {\n bytes.push(item_bytes[j]);\n }\n }\n\n sha256_to_field(bytes.storage)\n}\n\n// Computes sha256 hash of 2 input hashes.\n//\n// NB: This method now takes in two 31 byte fields - it assumes that any input\n// is the result of a sha_to_field hash and => is truncated\n//\n// TODO(Jan and David): This is used for the encrypted_log hashes.\n// Can we check to see if we can just use hash_to_field or pedersen_compress here?\n//\npub fn accumulate_sha256(input: [Field; 2]) -> Field {\n // This is a note about the cpp code, since it takes an array of Fields\n // instead of a U128.\n // 4 Field elements when converted to bytes will usually \n // occupy 4 * 32 = 128 bytes.\n // However, this function is making the assumption that each Field \n // only occupies 128 bits.\n //\n // TODO(David): This does not seem to be getting guaranteed anywhere in the code?\n\n // Concatentate two fields into 32x2 = 64 bytes\n // accumulate_sha256 assumes that the inputs are pre-truncated 31 byte numbers\n let mut hash_input_flattened = [0; 64];\n for offset in 0..input.len() {\n let input_as_bytes = input[offset].to_be_bytes(32);\n for byte_index in 0..32 {\n hash_input_flattened[offset * 32 + byte_index] = input_as_bytes[byte_index];\n }\n }\n\n sha256_to_field(hash_input_flattened)\n}\n\npub fn compute_tx_logs_hash<MAX_ENCRYPTED_LOGS_PER_TX>(logs: [SideEffect; MAX_ENCRYPTED_LOGS_PER_TX]) -> Field {\n // TODO(Miranda): Below is flat hashing which would reduce constraints (we now only hash once in tail) - convert to this?\n\n // // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n // // Ideally we would define a new global here but for now we assert in case MAX_LOGS changes\n // assert(MAX_ENCRYPTED_LOGS_PER_TX * 32 == 256);\n // let mut hash_input_flattened = [0; 256];\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 // // This differs from accumulate_sha256 as we could increase MAX_LOGS and\n // // ideally we would push to a slice then hash, but in practice compilation was very slow\n // // Hardcode to 256 bytes for now\n // sha256_to_field(hash_input_flattened)\n\n // Assuming logs are pre-sorted\n let mut accumulated_logs_hash = 0;\n for i in 0..MAX_ENCRYPTED_LOGS_PER_TX {\n if !is_empty(logs[i]) {\n accumulated_logs_hash = accumulate_sha256([accumulated_logs_hash, logs[i].value]);\n }\n }\n\n accumulated_logs_hash\n}\n\npub fn compute_note_hash_nonce(first_nullifier: Field, commitment_index: u64) -> Field {\n pedersen_hash(\n [\n first_nullifier,\n commitment_index as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_siloed_note_hash(nonce: Field, siloed_note_hash: Field) -> Field {\n pedersen_hash(\n [\n nonce,\n siloed_note_hash\n ],\n GENERATOR_INDEX__UNIQUE_NOTE_HASH\n )\n}\n\npub fn pedersen_hash<N>(inputs: [Field; N], hash_index: u32) -> Field {\n dep::std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<N>(inputs: [Field; N]) -> Field {\n dep::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), 0, 0, L2ToL1Message::empty());\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let message = L2ToL1Message { recipient: EthAddress::from_field(3), content: 5 };\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), 2, 4, message);\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr"},"216":{"source":"use crate::traits::{Serialize, Deserialize};\nuse dep::std::cmp::Eq;\n\nglobal GRUMPKIN_POINT_SERIALIZED_LEN: Field = 2;\n\n// TODO(https://github.com/noir-lang/noir/issues/4931)\nstruct GrumpkinPoint {\n x: Field,\n y: Field,\n}\n\nimpl Serialize<GRUMPKIN_POINT_SERIALIZED_LEN> for GrumpkinPoint {\n fn serialize(self) -> [Field; GRUMPKIN_POINT_SERIALIZED_LEN] {\n [self.x, self.y]\n }\n}\n\nimpl Deserialize<GRUMPKIN_POINT_SERIALIZED_LEN> for GrumpkinPoint {\n fn deserialize(serialized: [Field; GRUMPKIN_POINT_SERIALIZED_LEN]) -> Self {\n Self {\n x: serialized[0],\n y: serialized[1],\n }\n }\n}\n\nimpl Eq for GrumpkinPoint {\n fn eq(self, point: GrumpkinPoint) -> bool {\n (point.x == self.x) & (point.y == self.y)\n }\n}\n\nimpl GrumpkinPoint {\n pub fn new(x: Field, y: Field) -> Self {\n Self { x, y }\n }\n\n pub fn zero() -> Self {\n Self { x: 0, y: 0 }\n }\n\n pub fn is_zero(self) -> bool {\n (self.x == 0) & (self.y == 0)\n }\n\n // TODO(David): Would be quite careful here as (0,0) is not a point\n // on the curve. A boolean flag may be the better approach here,\n // would also cost less constraints. It seems like we don't need to \n // group arithmetic either. \n fn assert_is_zero(self) {\n assert(self.x == 0);\n assert(self.y == 0);\n }\n\n pub fn to_be_bytes(self: Self) -> [u8; 64] {\n let mut result = [0 as u8; 64];\n let x_bytes = self.x.to_be_bytes(32);\n let y_bytes = self.y.to_be_bytes(32);\n for i in 0..32 {\n result[i] = x_bytes[i];\n result[i + 32] = y_bytes[i];\n }\n result\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/grumpkin_point.nr"},"296":{"source":"contract KeyRegistry {\n use dep::authwit::auth::assert_current_call_valid_authwit_public;\n\n use dep::aztec::{\n state_vars::{\n SharedMutable,\n Map\n }, \n protocol_types::{\n grumpkin_point::GrumpkinPoint,\n address::{\n AztecAddress,\n PublicKeysHash,\n PartialAddress,\n },\n constants::{\n GENERATOR_INDEX__CONTRACT_ADDRESS_V1,\n GENERATOR_INDEX__PUBLIC_KEYS_HASH\n },\n hash::poseidon2_hash,\n },\n };\n\n global KEY_ROTATION_DELAY = 5;\n\n #[aztec(storage)]\n struct Storage {\n //! This should stay at storage slot 1. If you change this, make sure you change the hardcoded value in keys/assert_public_key_freshness.\n //! We use this hardcoded storage slot with derive_storage_slot_in_map and the SharedMutablePrivateGetter to directly read the value at an address in this contract.\n nullifier_public_key_hash_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n\n // We are not supporting rotating / changing keys other than the nullifier public in the registry at the moment, but will in the future.\n // Uncomment lines below to enable that functionality\n // incoming_public_key_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n // outgoing_public_key_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n // tagging_public_key_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n }\n\n #[aztec(public)]\n fn rotate_nullifier_public_key(\n address: AztecAddress,\n new_nullifier_public_key: GrumpkinPoint,\n nonce: Field,\n ) {\n assert(\n !new_nullifier_public_key.is_zero(),\n \"New nullifier public key must be non-zero\"\n );\n\n // TODO: (#6137)\n if (!address.eq(context.msg_sender())) {\n assert_current_call_valid_authwit_public(&mut context, address);\n } else {\n assert(nonce == 0, \"invalid nonce\");\n }\n\n let nullifier_key_registry = storage.nullifier_public_key_hash_registry.at(address);\n\n nullifier_key_registry.schedule_value_change(poseidon2_hash(new_nullifier_public_key.serialize()));\n }\n\n #[aztec(public)]\n fn register(\n address: AztecAddress,\n partial_address: PartialAddress,\n nullifier_public_key: GrumpkinPoint,\n incoming_public_key: GrumpkinPoint,\n outgoing_public_key: GrumpkinPoint,\n tagging_public_key: GrumpkinPoint,\n ) {\n assert(\n !partial_address.is_zero() &\n !nullifier_public_key.is_zero() &\n !incoming_public_key.is_zero() &\n !outgoing_public_key.is_zero() &\n !tagging_public_key.is_zero(),\n \"All public keys must be non-zero\"\n );\n\n // We could also pass in original_public_keys_hash instead of computing it here, if all we need the original one is for being able to prove ownership of address\n let computed_address = AztecAddress::compute_from_public_keys_and_partial_address(\n nullifier_public_key,\n incoming_public_key,\n outgoing_public_key,\n tagging_public_key,\n partial_address,\n );\n\n assert(computed_address.eq(address), \"Computed address does not match supplied address\");\n\n let nullifier_key_hash_registry = storage.nullifier_public_key_hash_registry.at(address);\n // We are not supporting rotating / changing keys other than the nullifier public in the registry at the moment, but will in the future.\n // Uncomment lines below to enable that functionality\n // let incoming_key_registry = storage.incoming_public_key_registry.at(address);\n // let outgoing_key_registry = storage.outgoing_public_key_registry.at(address);\n // let tagging_key_registry = storage.taggin_public_key_registry.at(address);\n\n nullifier_key_hash_registry.schedule_value_change(poseidon2_hash(nullifier_public_key.serialize()));\n // We are not supporting rotating / changing keys other than the nullifier public in the registry at the moment, but will in the future.\n // Uncomment lines below to enable that functionality // incoming_key_registry.schedule_value_change(new_incoming_public_key);\n // outgoing_key_registry.schedule_value_change(new_outgoing_public_key);\n // tagging_key_registry.schedule_value_change(new_tagging_public_key);\n }\n}\n","path":"/usr/src/noir-projects/noir-contracts/contracts/key_registry_contract/src/main.nr"}}}
1
+ {"transpiled":true,"noir_version":"0.29.0+5b9b1fab51e35c2112c0136785b5b69cd8529a92","name":"KeyRegistry","functions":[{"name":"rotate_npk_m","is_unconstrained":true,"custom_attributes":["aztec(public)"],"abi":{"error_types":{},"param_witnesses":{"address":[{"end":41,"start":40}],"inputs":[{"end":40,"start":0}],"new_npk_m":[{"end":43,"start":41}],"nonce":[{"end":44,"start":43}]},"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"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"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":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"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"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"public_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":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"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":"transaction_fee","type":{"kind":"field"}}],"kind":"struct","path":"aztec::context::inputs::public_context_inputs::PublicContextInputs"},"visibility":"private"},{"name":"address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"},"visibility":"private"},{"name":"new_npk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"},"visibility":"private"},{"name":"nonce","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"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"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_non_existent_read_requests","type":{"kind":"array","length":2,"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":"contract_storage_update_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_update_request::StorageUpdateRequest"}}},{"name":"contract_storage_reads","type":{"kind":"array","length":16,"type":{"fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"current_value","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_read::StorageRead"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_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":"new_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":"new_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":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::side_effect::SideEffect"}}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"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":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"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"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"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":"prover_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"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"}},{"name":"transaction_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_circuit_public_inputs::PublicCircuitPublicInputs"},"visibility":"public"},"return_witnesses":[44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273]},"bytecode":"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","debug_symbols":"7P3driTbspyJvcu5JoQc7j5+vF9FEISWulsg0CAFkboi+O6KItbMWhusfXJ67jl9moXpipsHmRnuFRHmY1m5ffXf/u1/+9//H//f/9f//T/+p//jP/+Xf/tf/q//7d/+z//8//xf/+t//M//6fr//bd/e/xfzNf/+D//l//3//qffv1f/st//V//P//13/6Xx3/4t//9P/1v1//73//Dv/0f//H//N//7X/xx/jv/7f/8D++scvfOOVvZPUb8Sh/Y5S/YeVvePkb8flv/If/6XPjMdZfHx0PH89PX3+gH78/v/n31zf//v7m3z/f/Pv5vb8/H9/8++Obf9+++ff9m3//m9/f+c3v7/zm93d+8/u7/qXn388+f330+p/5/HSuj58f3/vz/9LT4/l4/nzG4w8/P7/359f3/vz+3p8/3/vz+a0/vx/f+/Pje3/evvfn/Xt//nvf2v2vvbV7jY+f3+cPmrPX9/78/t6fP9/78/mtP38e3/vz43t/3r735/17fz6+9+e/9609+a0HkfzeY1R+ryDn9wpyfu8xKr/3GJXfe4zK7z1G5bceo/zx+N6fH9/78/a9P+/f+/P/0ltrT8mxvylOfPz2/MbfXt/42996evLH+d6f/9bTk4/H9/78+N6ft+/9ef/en4/v/fn5vT+/vvfnv/etHd/71o7vfWvte99a+9631r73rbXvfWvte99a+9631r73rbXvfWvte99a+9631r/3rfXvfWv9e99a/9631r/3rfXvfWv9e99a/9631r/3rfXvfWvje9/a+N63Nr73rY3vfWv/tU0On2d+/Px67L///P/84RiPj9+NMeYfaplAtZzGWubHXxeH/bGWxKnlX9vc+OJaBlAtBlSLA9XSqC82x7OWaX+oZQLVsoBq2UC1HKBaEqeW9QCqZQDVYkC1OFAtQLq7gHR3AenuAtLdBaS7C0h3N5DubiDd3UC6u4F0dwPp7gbS3Q2kuxtIdzeQ7m4g3T1AunuAdPcA6e4B0t0DpLsHSHcPkO4eIN09QLp7gHQ3gXQ3gXQ3gXQ3gXQ3gXQ3gXQ3gXQ3gXQ3gXQ3cXQ3Hji6Gw8c3Y0Hju7GA0d344Gju/HA0d144OhuPHB0Nx44uhsPIN0dQLo7gHR3AOnuANLdAaS7A0h3B5DuDiDdHUC6O4B014B014B014B014B014B014B014B014B0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Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etb/9q/93Fy//XJHOP52THyD5+1/fFZf/ztd+ezkglTyYKpZMNUcmAqSZBK9r/2r3t8aSUDphKDqcRhKkHR2P1A0dj9QNHY/UDR2P1A0dj9gNHYAaOxA0ZjB4zGDhiNHTAaO2A0dsBo7IDR2AGjsQNGYw1GYw1GYw1GYw1GYw1GYw1GYw1GYw1GYw1GYw1GYx1GYx1GYx1GYx1GYx1GYx1GYx1GYx1GYx1GYx1GYwNGYwNGYwNGYwNGYwNGYwNGYwNGYwNGYwNGYwNGYyeMxk4YjZ0wGjthNHbCaOyE0dgJ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da/P6l6f1b0+q3t9Vvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pm3eubda9v1r2+Wff6Zt3rm3Wvb9a9vln3+mbd65t1r2/Wvb5Z9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6Vt3rW3Wvb9W9vlX3+lbd61t1r2/Vvb5V9/pW3etbda9v1b2+Vff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+nbd69t1r2/Xvb5d9/p23evbda9v172+Xff6dt3r23Wvb9e9vl33+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/pO3es7da/v1L2+U/f6Tt3rO3Wv79S9vlP3+k7d6zt1r+/Uvb5T9/qy7vVl3evLuteXda8v615f1r2+rHt9Wff6su71Zd3ry7rXl3WvL+teX9a9vqx7fVn3+rLu9WXd68u615d1ry/rXl/Wvb6se31Z9/qy7vVl3evLuteXda8v615f1r2+rHt9Wff6su71Zd3ry7rXl3WvL+teX9a9vqx7fVn3+rLu9WXd68u615d1ry/rXl/Wvb6se31Z9/qy7vVl3evLuteXda8v615f1r2+rHt9Wff6su71Zd3ry7rXl3WvL+teX9a9vqx7fVn3+rLu9WXd68u615d1ry/rXl/Wvb6se31Z9/qy7vVl3evLuteXda8v615f1r2+rHt9Wff6su71Zd3ry7rXl3WvL+teX9a9vqx7fVn3+rLu9WXd68u615d1ry/rXl/Wvb6se31Z9/qy7vVl3evLuteXZa/PH2Wv7/rKqH/F6l/x+lei/pVZ/8qqf2XXv3LqX6nf/VG/+6N+90f97o/63R/1uz/qd3/U7/6o3/1Rv/ujfvetfvetfvetfvetfvetfvetfvetfvetfvetfvetfve9fve9fve9fve9fve9fve9fve9fve9fve9fve9fvejfvejfvejfvejfvejfvejfvejfvejfvejfvejfvdn/e7P+t2f9bs/63d/1u/+rN/9Wb/7s373Z/3uz/rdX/W7v+p3f9Xv/qrf/VW/+6t+91f97q/63V/1u7/qd3/X7/6u3/1dv/u7fvd3/e7v+t3f9bu/63d/1+/+rt/9U7/7p373T/3un/rdP/W7f+p3/9Tv/qnf/VO/+6d+97N+97N+97N+97N+97N+97N+97N+97N+97N+9+te36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXt+oe32j7vWNutc36l7fqHt9o+71jbrXN+pe36h7faPu9Y261zfqXp/VvT6re31W9/qs7vVZ3euzutdnda/P6l6f1b0+q3t9Vvf6rO71Wd3rs7rXZ3Wvz+pen9W9Pqt7fVb3+qzu9Vnd67O612d1r8/qXp/VvT6re31W9/qs7vVZ3euzutdnda/P6l6f1b0+q3t9Vvf6rO71Wd3rs7rXZ3Wvz+pen9W9Pqt7fVb3+qzu9Vnd67O612d1r8/qXp/VvT6re31W9/qs7vVZ3euzutdnda/P6l6f1b0+q3t9Vvf6rO71Wd3rs7rXZ3Wvz+pen9W9Pqt7fVb3+qzu9Vnd67O612d1r8/qXp/VvT6re31W9/qs7vVZ3euzutdnda/P6l6f1b0+q3t9Vvf6rO71Wd3rs7rXZ3Wvz+pen9W9Pqt7fVb3+qzu9Vnd67O612d1r8/qXp/VvT6re31W9/qs7vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P616f170+r3t9Xvf6vO71ed3r87rX53Wvz+ten9e9Pq97fV73+rzu9Xnd6/O61+d1r8/rXp/XvT6ve31e9/q87vV53evzutfnda/P615f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71Rd3ri7rXF3WvL+peX9S9vqh7fVH3+qLu9UXd64u61xd1ry/qXl/Uvb6oe31R9/qi7vVF3euLutcXda8v6l5f1L2+qHt9Uff6ou71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9c261zfrXt+se32z7vXNutc3617frHt9s+71zbrXN+te36x7fbPu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vWtute36l7fqnt9q+71rbrXt+pe36p7favu9a2617fqXt+qe32r7vXtute3617frnt9u+717brXt+te3657fbvu9e2617frXt+ue3277vXtute3617frnt9u+717brXt+te3657fbvu9e2617frXt+ue3277vXtute3617frnt9u+717brXt+te3657fbvu9e2617frXt+ue3277vXtute3617frnt9u+717brXt+te3657fbvu9e2617frXt+ue3277vXtute3617frnt9u+717brXt+te3657fbvu9e2617frXt+ue3277vXtute3617frnt9u+717T97fSPO+utbY47zD1/8D//Tp+dj//XhGfb8rHk+LzKrF/n44nr3i3+8q+P6G6qPL15/XfGnL/7ZyfvMF8e7X7R3v+jvfjHe/eJ894vr3S/ud7943v3iu0/OeffJOe8+OefdJ+e8++Scd5+c8+6Tc959cs67T85598k57z45+e6Tk+8+Ofnuk5PvPjn57pOT7z45+e6Tk+8+Ofnuk5NvPjnn8Xj3i+PdL9q7X/R3vxjvfnG++8X17hf3u188737x3SdnvPvkjHefnPHukzPefXLGu0/OePfJGe8+OePdJ2e8++SMd58ce/fJsXefHHv3ybF3nxx798mxd58ce/fJsXefHHv3ybF3nxx/98nxd58cf/fJ8XefHH/3yfF3nxx/98nxd58cf/fJ8XefnHj3yYl3n5x498mJd5+cePfJiXefnHj3yYl3n5x498mJd5+c+e6TM999cua7T85898mZ7z45890nZ7775Mx3n5z57pMz331y1rtPznr3yVnvPjn/xMSdHk+bNPd/f2Hi5sy/Pr0e5s9P28Ofl5k9l1k9l9k9lzk9l8mWy/wTe/zLLzN6LmM9l/Gey/SowO5Rgd2jArtHBXaPCuweFTg9KnB6VOD0qMDpUYHTowKnRwVOjwqcHhU4PSpwelQge1Qge1Qge1Qge1Qge1Qge1Qge1Qge1Qge1QgW1QgH4+ey4yey1jPZbznMtFzmdlzmdVzmd1zmdNzmR4VGD0qMHpUYPSowOhRgdGjAqNHBUaPCoweFRg9KjB6VMB6VMB6VMB6VMB6VMB6VMB6VMB6VMB6VMB6VMB6VMB7VMB7VMB7VMB7VMB7VMB7VMB7VMB7VMB7VMB7VCB6VCB6VCB6VCB6VCB6VCB6VCB6VCB6VCB6VCB6VGD2qMDsUYHZowKzRwVmjwrMHhWYPSowe1Rg9qjA7FGB1aMCq0cFVo8KrB4V6NkdzJ7dwezZHcye3cHs2R3Mnt3B7NkdzJ7dwezZHcye3cHs2R3Mnt3B7NkdzJ7dwezZHcye3cHs2R3Mnt3B7NkdzJ7dwezZHcye3cHs2R3Mnt3B7NkdzJ7dwezZHcye3cHs2R3Mnt3B7NkdzJ7dwezZHcye3cHs2R3Mlt3BeLTsDl6XGT2XsZ7LeM9loucys+cyq+cyu+cyp+cyPSowelRg9KjA6FGB0aMCo0cFRo8KjB4VGD0qMHpUYPSogPWogPWogPWogPWogPWogPWogPWogPWogPWogPWogPeogPeogPeogPeogPeogPeogPeogPeogPeogPeoQPSoQPSoQPSoQPSoQPSoQPSoQPSoQPSoQPSoQPSowOxRgdmjArNHBWaPCsweFZg9KjB7VGD2qMDsUYHZowKrRwVWjwqsHhVYPSqwelRg9ajA6lGB1aMCq0cFVo8K7B4V2D0qsHtUYPeowO5Rgd2jArtHBXaPCuweFdg9KnB6VOD0qMDpUYHTowKnRwVOjwqcHhU4PSpwelTg9KhA9qhA9qhA9qhA9qhA9qhA9qhA9qhA9qhA9qhAz+7g6NkdHD27g6Nnd3D07A6OR/RcZvZcZvVcZvdc5vRcpkcFenYHR8/u4OjZHRw9u4OjZ3dw9OwOjp7dwdGzOzh6dgdHz+7g6NkdHD27g6Nnd3D07A6Ont3B0bM7OHp2B0fP7uDo2R0cPbuDo2d3cPTsDo6e3cHRszs4enYHR8/u4OjZHRw9u4OjZ3dw9OwOjp7dwdGzOzh6dgdHz+7g6NkdHD27g6Nnd3D07A6Ont3B0bM7OHp2B0fP7uDo2R0cPbuDo2d3cPTsDo6e3cHRszs4enYHR8/u4OjZHRw9u4OjZ3dw9OwOjp7dwdGzOzh6dgdHz+7g6NkdHD27g6Nnd3D07A6Ont3B0bM7OHp2B0fP7uDo2R0cPbuDo2d3cPTsDo6e3cHRszs4enYHR8/u4OjZHRw9u4OjZ3dw9OwOjp7dwdGzOzh6dgdHz+7g6NkdHD27g6Nnd3D07A6Ont3B0bM7OHp2B0fP7qD17A5az+6g9ewOWs/uoD2i5zKz5zKr5zK75zKn5zI9KtCzO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g9azO2g9u4PWsztoPbuD1rM7aD27g96zO+g9u4PeszvoPbuD/oiey8yey6yey+yey5yey/SoQM/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wOes/uoPfsDnrP7qD37A56z+6g9+wORs/uYPTsDkbP7mD07A7GI3ouM3sus3ous3suc3ou06MCPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9GzOxg9u4PRszsYPbuD0bM7GD27g9Gz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ztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcnO2JrsjK3Jztia7Iytyc7YmuyMrcXO2FrsjK3Fztha7Iyt9SCfxIudsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdgZW4udsbXYGVuLnbG12Blbi52xtdkZW5udsbXZGVubnbG1H+STeLMztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2NrszO2Njtja7MztjY7Y2uzM7Y2O2Nr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k0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTKZ5MpkkiuTSa5MJrkymeTKZJIrk0muTCa5MpnkymSSK5NJrkwmuTGZ5MZkkhuTSW5MJrkdzhSWaAdlTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTGZJIbk0luTCa5MZnkxmSSG5NJbkwmuTGZ5MZkkhuTSW5MJrkxmeTOZJI7k0nuTCa5M5nkfjhTWKIdlDOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nk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WysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB6E4MbWysAehODG1srAHoTgxtbKwB4Ewu6sSXoxpagG1uCbmzJAd7Egm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWoBtbgm5sCbqxJejGlqAbW4JubAm6sSXoxpagG1uCbmwJurEl6MaWohtbim5sKbqxpejGlh7gTazoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwpurGl6MaWohtbim5sKbqxpejGlqIbW4pubCm6saXoxpaiG1uKbmwp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"},{"name":"register","is_unconstrained":true,"custom_attributes":["aztec(public)"],"abi":{"error_types":{},"param_witnesses":{"address":[{"end":41,"start":40}],"inputs":[{"end":40,"start":0}],"keys":[{"end":50,"start":42}],"partial_address":[{"end":42,"start":41}]},"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"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"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":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"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"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"name":"public_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":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"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":"transaction_fee","type":{"kind":"field"}}],"kind":"struct","path":"aztec::context::inputs::public_context_inputs::PublicContextInputs"},"visibility":"private"},{"name":"address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"},"visibility":"private"},{"name":"partial_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::partial_address::PartialAddress"},"visibility":"private"},{"name":"keys","type":{"fields":[{"name":"npk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"ivpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"ovpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"tpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}}],"kind":"struct","path":"aztec::keys::public_keys::PublicKeys"},"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"}},{"name":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::call_context::CallContext"}},{"name":"args_hash","type":{"kind":"field"}},{"name":"returns_hash","type":{"kind":"field"}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"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_non_existent_read_requests","type":{"kind":"array","length":2,"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":"contract_storage_update_requests","type":{"kind":"array","length":16,"type":{"fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_update_request::StorageUpdateRequest"}}},{"name":"contract_storage_reads","type":{"kind":"array","length":16,"type":{"fields":[{"name":"storage_slot","type":{"kind":"field"}},{"name":"current_value","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::contrakt::storage_read::StorageRead"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_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":"new_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":"new_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":"unencrypted_logs_hashes","type":{"kind":"array","length":4,"type":{"fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::side_effect::SideEffect"}}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"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":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}],"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"}}],"kind":"struct","path":"authwit::aztec::protocol_types::header::Header"}},{"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":"prover_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"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"}},{"name":"transaction_fee","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::abis::public_circuit_public_inputs::PublicCircuitPublicInputs"},"visibility":"public"},"return_witnesses":[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279]},"bytecode":"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","debug_symbols":"7P3fjmvLsh52vsu5PmiMjD+ZEXqVRqOhbsuGAEMyLPlKOO/uMe1JzrV9WJuMsVij4uM3rrR1UCxmJsmI4Ldm/up//Mv/9J/+f//H//L//c//5X/+r//tX/7D//t//Mv/+l/////xv//n//pf9v/f//iX7f8lJv/X//m//W//8b/8+r/8t//+H//3//4v/2H713/5T//lf9r/33/713/5n//z//qf/uU/6Db+7f/zr//XI7T8CCs/wsuPmOVHrPIjovyIrD7Ct9cf8a//7ufGNubvHx2bjvtPi+bt949v/v3yzb9fv/n32zf/fv/m3z+/+fevb/798c2/P7/3989v/vzOb/78zm/+/M5v/vzOv/X+11jx+0f3/5n3n855+/XrW3/9+lvvHs3t/uvTtge/fnzvr5fv/fX6vb/evvfX+/f++vm9v35976+P7/31+a2/Pr73UxvfXPLjm0t+fHPJj28e2eKbR7b45pEtvnlki28e2eKbR7b85pEtv/nzm/6tM0l+70SV31qbddu+99eP7/318r2/Xr/319v3/nr/3l8/v/fXr+/99fG9v/57P7Xjb31q5V5y5C8Vx26/e3zj75Zv/N36jb/bvvF3+zf+7vmNv3t94++Ob/zd+X2/W77xcyn2nXOGin/vr//eeivfW2/1e6ck/d4pSb93StLvnZL0e6ck/d4pSb93StLvnZL0ez+1+r2fWvveT61976fWvvdTa9/7qbXv/dTa935q7Xs/tfa9n9ryf4dX+3sfRA+/LWhu668L+vc/bGO7/V4bw//96v/ef+F/81r0xLX4LccyebgWa7QWb7SW2Wgtq9FaotFaTqwv4uO+Fpd/v5a5NVrLaLQWabQWbbQWa7QWb7SW2Wgtq9FaotFaGtXd1ajurkZ1dzWqu6tR3V2N6u5qVHdXo7q7GtXd1ajurkZ1NxrV3WhUd6NR3Y1GdTca1d1oVHejUd2NRnU3GtXdaFR3s1HdzUZ1NxvV3WxUd7NR3c1GdTcb1d1sVHezUd3NPnXXtj5117Y+dde2PnXXtj5117Y+dde2PnXXtj5117Y+dde2PnXXtkZ1dzSqu6NR3R2N6u5oVHdHo7o7GtXd0ajujkZ1dzSqu6NR3ZVGdVca1V1pVHelUd2VRnVXGtVdaVR3pVHdlUZ1VxrVXW1Ud7VR3dVGdVcb1V1tVHe1Ud3VRnVXG9VdbVR3tVHdtUZ11xrVXWtUd61R3bVGddca1V1rVHetUd21RnXXGtVdb1R3vVHd9UZ11xvVXW9Ud71R3fVGddcb1V1vVHcb3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VezRvfVrNF9NWt0X80a3VfzRvfVvNF9NW90X80b3VfzrU/d9Ub31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF/NG91X80b31bzRfTVvdF9tNrqvNhvdV5uN7qvNRvfV5tan7s5G99Vmo/tqs9F9tdnovtpsdF9tNrqvNhvdV5uN7qvNRvfVZqP7arPRfbXZ6L7abHRfbTa6rzYb3Vebje6rzUb31Waj+2qz0X212ei+2mx0X202uq82G91Xm43uq80z76vpiNtadOS/X8uZ99WermU0Wos0Wos2Wos1Wos3WststJbVaC3RaC2N6q41qrvWqO5ao7prjequNaq71qjuWqO6a43qrjWqu9ao7nqjuuuN6q43qrveqO56o7rrjequN6q73qjueqO6643q7mxUd2ejujsb1d3ZqO7ORnV3Nqq7s1HdnY3q7mxUd2ejursa1d3VqO6uRnV3Naq7q1HdXY3q7mpUd1ejursa1d3VqO5Go7objepuNKq70aju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/qi/+qP+6o/6qz/qr/6ov/qj/uqP+qs/6q/+qL/6o/7qS/3Vl/qrL/VXX+qvvtRffam/+lJ/9aX+6kv91Zf6q6/1V1/rr77WX32tv/paf/W1/upr/dXX+quv9Vdf66++1V99q7/6Vn/1rf7qW/3Vt/qrb/VX3+qvvtVffau/+l5/9b3+6nv91ff6q+/1V9/rr77XX32vv/pef/W9/urP+qs/66/+rL/6s/7qz/qrP+uvfj3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nf/Ht/7yNy/f7JHOP+s2Pkg5+VdftZ3f7ye/33Stbf+2Mfb13JaLMSabMSbbMSa7MSb7OS2WYlq81Kos1K2tTY0abGjjY1drSpsaNNjR1tauxoU2NHmxo72tTY0abGjjY1VtrUWGlTY6VNjZU2NVba1FhpU2OlTY2VNjVW2tRYaVNjtU2N1TY1VtvUWG1TY7VNjdU2NVbb1FhtU2O1TY3VNjXW2tRYa1NjrU2NtTY11trUWGtTY61NjbU2Ndba1FhrU2O9TY31NjXW29RYb1NjvU2N9TY11tvUWG9TY71NjfU2NXa2qbGzTY2dbWrsbFNjZ5saO9vU2Nmmxs42NXa2qbGzTY1dbWrsalNjV5sau9rU2NWmxq42NXa1qbGrTY1dbWrsalNjo02NjTY1NtrU2GhTY6NNjY02NTba1NhoU2OjTY2NNjU229TYbFNjs02NzTY1NtvU2GxTY7NNjc02NTbb1Ng297yizT2vaHPPK9rc84o297xi61Jjo809r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3POKNve8os09r2hzzyva3PPKNve8ss09r2xzzyvb3PPKrUuNzTb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa9sc88r29zzyjb3vLLNPa/scs9Lti73vPaVNKmx+0qa1Nh9JU1q7L6SJjV2X0mTGruvpEmN3VfSpMbuK2lSY/eVtKmxXe557StpU2O73PPaV9Kmxna557WvpE2N7XLPa19Jmxrb5Z7XvpI2NbbLPa99JW1qbJd7XvtK2tTYLve89pW0qbFd7nntK2lTY7vc89pX0qbGdrnnta+kTY3tcs9rX0mbGtvlnte+kjY1tss9r30lbWpsl3te+0ra1Ngu97z2lbSpsV3uee0raVNju9zz2lfSpsZ2uee1r6RNje1yz2tfSZsa2+We176SNjW2yz2vfSVtamyXe177StrU2C73vPaVtKmxXe557StpU2O73PPaV9Kmxna557WvpE2N7XLPa19Jmxrb5Z7XvpI2NbbLPa99JW1qbJd7XvtK/laNzRG3laj83ZVIm5Vom5VYm5V4m5XMNitZbVYSbVZSqLG/H1K5kHV7yKg/ROoP0fpDrP4Qrz9k1h+y6g+J+kPqr37WX/2sv/pZf/Wz/upn/dXP+quf9Vc/669+1l/9LL/6Y9vqDxn1h0j9IVp/iNUf4vWHzPpDVv0hUX9I/dUf9Vd/1F/9UX/1R/3VH/VXf9Rf/VF/9Uf91R/1V3/UX32pv/pSf/Wl/upL/dWX+qsv9Vdf6q++1F99qb/6Un/1tf7qa/3V1/qrr/VXX+uvvtZffa2/+lp/9bX+6mv91bf6q2/1V9/qr77VX32rv/pWf/Wt/upb/dW3+qtv9Vff66++1199r7/6Xn/1vf7qe/3V9/qr7/VX3+uvvtdf/Vl/9Wf91Z/1V3/WX/1Zf/Vn/dWf9Vd/1l/9WX/1Z/3VX/VXf9Vf/VV/9Vf91V/1V3/VX/1Vf/VX/dVf9Ve/nvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvVFPeuLetYX9awv6llf1LO+qGd9Uc/6op71RT3ri3rWF/WsL+pZX9SzvqhnfVHP+qKe9UU964t61hf1rC/qWV/Us76oZ31Rz/qinvVFPeuLetYX9awv6llf1LO+qGd9Uc/6op71RT3ri3rWF/WsL+pZX9SzvqhnfVHP+qKe9UU964t61hf1rC/qWV/Us76oZ31Rz/qinvVFPeuLetYX9awv6llf1LO+qGd9Uc/6op71RT3ri3rWF/WsL+pZX9SzvqhnfVHP+qKe9UU964t61hf1rC/qWV/Us76oZ31Rz/qinvVFPeuLetYX9awv6llf1LO+qGd9Uc/6op71RT3ri3rWF/WsL+pZX9SzvqhnfVHP+qKe9UU964t61hf1rC/qWV/Us76oZ31Rz/qinvVFPeuLetYX9awv6llf1rO+rGd9Wc/6sp71ZT3ry3rWl/WsL+tZX9azvqxnfVnP+rKe9WU968t61pf1rC/rWV/Ws76sZ31Zz/qynvVlPevLetaX9awv61lf1rO+rGd9Wc/6sp71ZT3ry3rWl/WsL+tZX9azvqxnfVnP+rKe9WU968t61pf1rC/rWV/Ws76sZ31Zz/qynvVlPevLetaX9awv61lf1rO+rGd9Wc/6sp71ZT3ry3rWl/WsL+tZX9azvqxnfVnP+rKe9WU968t61pf1rC/rWV/Ws76sZ31Zz/qynvVlPevLetaX9awv61lf1rO+rGd9Wc/6sp71ZT3ry3rWl/WsL+tZX9azvqxnfVnP+rKe9WU968t61pf1rC/rWV/Ws76sZ31Zz/qynvVlPevLetaX9awv61lf1rO+rGd9Wc/6spz16VbO+vaHjPpDpP4QrT/E6g/x+kNm/SGr/pCoP6T+6o/6qz/qr/6ov/qj/uqP+qs/6q/+qL/6o/7qj/qrP+qvvtRffam/+lJ/9aX+6kv91Zf6qy/1V1/qr77UX32pv/paf/W1/upr/dXX+quv9Vdf66++1l99rb/6Wn/1tf7qW/3Vt/qrb/VX3+qvvtVffau/+lZ/9a3+6lv91bf6q+/1V9/rr77XX32vv/pef/W9/up7/dX3+qvv9Vff66/+rL/6s/7qz/qrP+uv/qy/+rP+6s/6qz/rr/6sv/qz/uqv+qu/6q/+qr/6q/7qr/qrv+qv/qq/+qv+6q/6q7/qr37UX/2ov/pRf/Wj/upH/dWP+qsf9Vc/6q9+1F/9qL/6WX/1s/7qZ/3Vz/qrn/VXP+uvftZf/ay/+ll/9etZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWd+oZ32jnvWNetY36lnfqGd9o571jXrWN+pZ36hnfaOe9Y161jfqWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVJPeuTetYn9axP6lmf1LM+qWd9Us/6pJ71ST3rk3rWJ/WsT+pZn9SzPqlnfVLP+qSe9Uk965N61if1rE/qWZ/Usz6pZ31Sz/qknvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1rM+rWd9Ws/6tJ71aT3r03rWp/WsT+tZn9azPq1nfVrP+rSe9Wk969N61qf1rE/rWZ/Wsz6tZ31az/q0nvVpPevTetan9axP61mf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71WT3rs3rWZ/Wsz+pZn9WzPqtnfVbP+qye9Vk967N61mf1rM/qWZ/Vsz6rZ31Wz/qsnvVZPeuzetZn9azP6lmf1bM+q2d9Vs/6rJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZn9ezPq9nfV7P+rye9Xk96/N61uf1rM/rWZ/Xsz6vZ31ez/q8nvV5Pevzetbn9azP61mf17M+r2d9Xs/6vJ71eT3r83rW5/Wsz+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+sZ32znvXNetY361nfrGd9s571zXrWN+tZ36xnfbOe9c161jfrWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfaue9a161rfqWd+qZ32rnvWteta36lnfqmd9q571rXrWt+pZ36pnfetx1idjW78fJWPEPzzwX//dT6eO3z88xOb9h+f24GfnFrffvP/H9T9Lkk0f/LTa7Yc1/qxC4tGP7pn97Wf3oPCf//Dc9LaIzf76o79P5XGcSX8q4zqVB6ci16k8OBW9TuXBqdh1Kg9Oxa9TeXAq8zqVB6eyrlN5cCpxncqDU7lm2wenEtds++hUOGdbvS/C/dGpcM62z06Fc7Z9dip2ncqDU+GcbZ+dCuds++xUOGfbZ6fCOds+OxXO2fbJqSTnbPvsVK7Z9tGpXLPto1O5ZttHp2LXqTw4lWu2fXQq12z76FSu2fbRqVyz7aNTuWbbf38qsV2z7aNTuWbbR6dyzbaPTuWabR+dil2n8uBUrtn20alcs+2jU7lm20encs22j07lmm0fnMq4ZttHp3LNto9O5ZptH53KNds+OhW7TuXBqVyz7aNTuWbbR6dyzbaPTuWabR+dyjXbPjgVuWbbR6dyzbaPTuWabR+dyjXbPjoVu07lwalcs+2jU7lm20encs22j07lmm0fnco1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OiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTdjGdbstp0jNvy2nSBW/LadLXbstp0qluy2nSe27LadJNbstp0h9+L6eLMXRbTpMafltOr6rcRfa5LadXVe6i79yW06sqdxFybsvpVZW7KDa/l9PFpbktp1dV7mLH3JbTqyp38V1uy+lVlbsYLLfl9KrKXZyU23J6VeUulsltOb2qchdv5LacXlW5iwlyW06vqtzF7bgtp1dV7mJr3JbTqSrP7bv9i9vTjHOeRs55Gj3naeycp/Fznmae8zTrnKeJc54mT3macU4VGOdUgXFOFRjnVIFxThUY51SBcU4VGOdUgXFOFRjnVAE5pwrIOVVAzqkCck4VkHOqgJxTBeScKiDnVAE5pwrIOVVAz6kCek4V0HOqgJ5TBfScKqDnVAE9pwroOVWgfnfs9sA8+MD6nanbA8fRB8rRB+rRB9rRB/rRB86jD1xHH3j0nWNH3zl+9J3jR985fvSd40ffOX70neNH3zl+9J3jR985fvSd40ffOfPoO2cefefMo++cefSdM4++c+bRd848+s6ZR9858+g7Zx5956yj75x19J2zjr5z1tF3zjr6zllH3zlf/Dsp2+4PNPMnw82at39fvdZfftbvz7FOeI444Tny+5/ji3979N7nGCc8h5zwHHrCc9gJz+EnPMcJn/M44XMeJ3zO44TPeZ7wOc8TPud5wuc8T/ic5wmf8zzhc54nfM7zhM95nvA5z+//nI9tO+E5xgnPISc8h57wHHbCc/gJzzFPeI51wnPECc9xwud8nPA5Hyd8zscJn/Nxwud8vOFznkN//3BO/be/RvYPAn6R24KGrO3JT/+6qP77p3/9F+D7T8um9w04+gYm+gYW+gYCfQMJvgHZ0Dcw0Dcg6BtQ9A2gd2JB78SC3okFvRMLeicW9E6sb+jE77s2M3T0Wo70Wo72Wo71Wo73Ws7stZzVaznRaznZajnWqypbr6psvaqy9arK1qsqW6+qbL2qsvWqytarKluvquy9qrL3qsreqyp7r6rsvaqy96rK3qsqe6+q7L2qsveqyrNXVZ69qvLsVZVnr6o8e1Xl2asqz15VefaqyrNJVa4uu0n1Li57Nany1WU36QbVZTfpGtVlN+ku1WU36ULVZTfpVtVlN+lq1WU36X7VZWN2yYXZJQOzSwZmlwzMLhmYXfIdNw5/YtmYXTIwu2RgdsnA7JKB2SUTs0smZpdMzC6ZmF3yHfd1f2LZmF0yMbtkYnbJxOySCdklZYPskrJBdknZILukbJBdUjbILikbZJeUrW2XfPonkPfFt+2Vryy+bcd8ZfFt++YLix9tu+cri2/bQ19ZfNtO+sri2/bTVxbftqu+svi2vfWVxSN32IHcYQdyhx3IHVaQO6wgd1hB7rCC3GHfYUb83OKRO6wgd1hB7rCC3GEFucN2sSGOLR65w3ZxJ44tHrnDdjEtji0eucN28TKOLR65w3axOI4tHrnDdnE+ji0eucN2MUSOLR65w3bxSY4tHrnDdrFPji0eucN2cVWOLR65w3YxW44tHrnDdvFgji0eucN2sWaOLR65w3ZxbI4tHrnDdjFyji0eucN28XeOLR65w3axfY4tHrnDdnGDji0eucN2MYmOLR65w/b1jl5ZPHKH7WsfvbJ45A7b10F6ZfHIHbavifTK4pE7bF8f6ZXFI3fYvlbSK4tH7rB93aRXFo/cYfsaSq8sHrnD9vWUXlk8coftayu9snjkDtvXWXpl8cgdtq+59MrikTtsX3/plcUjd9i+FtMri0fusH1dplcWj9xh+xpNryweuMNqX6/plcUDd1jtaze9snjgDqsbcIfVvprTK4sH7rCKbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKbTopsOimy6aTIppMim06KbDopsumkyKaTIptOimw6KbLppMimkyKb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dApk0ymQTadANp0C2XQKZNMpkE2nQDadAtl0CmTTKZBNp0A2nQLZdApk0ymQTadANp0C2XQKZNMpkE2nQDadAtl0CmTTKZBNp0A2nRLZdEpk0ymRTadENp1yA+6wiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUyKZTIptOiWw6JbLplMimUyKbTolsOiWy6ZTIplMim06JbDolsumUwKbT2oBNp33xuB12Xzxuh90Xj9th98Xjdth98bgddl88bofdF4/bYffF43bYffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHRbYdNoXj9xhgU2nffHIHbaL6XRbTpOeeVtOky54W06TvnZbTpNOdVtOk95zW06TbnJbTpP+cFtOk4p/W06TGv57OV0coNtyelXlLlbPbTm9qnIXT+e2nF5VuYt5c1tOr6rcxaW5LadXVe5ix9yW06sqd/FdbsvpVZW7GCy35fSqyl2clNtyelXlLpbJbTmtqvLo4o3cltOqKo8uJshtOa2q8thaVeXRReK4LadVVR5dtIzbcr65Kt+eJk95mu82JW5PM855GjnnafScp7FznsbPeZp5ztOsc57mnCowzqkCck4VkHOqgJxTBeScKiDnVAE5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SeSFTyIvfG5GtFeeuWkSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EnkhU8iL3wSeeGTyAufRF74JPLCJ5EXPom88EXkhS8iL3wReeGLyAtfmxHtlWduWkRe+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi98EXnhi8gLX0Re+CLywheRF76IvPBF5IUvIi88iLzwIPLCg8gLDyIvPDYj2ivP3BREXngQeeFB5IUHkRceRF54EHnhQeSFB5EXHkReeBB54UHkhQeRFx5EXngQeeFB5IUHkRceRF54EHnhQeSFB5EXHkReeBB54UHkhQeRFx5EXngQeeFB5IUHkRceRF54EHnhQeSFB5EXHkReeBB54UHkhQeRFx5EXngQeeFB5IUHkRceRF54EHnhQeSFB5EXHkReeBB54UHkhQeRFx5EXngQeeFB5IUHkRceRF54EHnhQeSFB5EXHkReeBB54UHkhQeRFx5EXngQeeFB5IUHkRceRF54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cd9t88npvbvtboa/ebfNp6c377b5/PTm3TafoN68W6PabfMpqrTb9Ntu16YPd9t8jnrzbptPUm/e7SfNUs93+0mz1NPddnfE37zbT5qlnu/2g2ap5Xrf7RwPd/tBs9QLuzWq3X7QLPXCbj9olnphtx80S72w2w+apV7Y7QfNUkvHn93KP+z2waJt3n5abP2lO6ffzqa7RP6jZ/NBc9rbz6bVVHdbVKvh67Yo67ioVqPMbVGtJo7boloNBrdFterft0W1arP/96JWLzH6tqhWjeW2qIYVffXCkm+LaljRVy9++LaohhV99QJ9b4tqWNFXLyL396J6Wba3RXWs6L102NuiOlb0Xt7qbVEdK3ovwfS2qI4VvZcJeltUx4reS9m8LapjRe/lVt4W1bGi95Igb4vqWNF72Yq3RXWs6L20wtuiOlb07/b/bk8zznkaOedp9JynsXOexs95mnnO06xznibOeZo85WnsnCpg51SBtxhOtt3/k53JelJoRWXdF/XX/7QteV+UdlyUdVyUd1zU7Lio1XFR0XFR2XBRb7Fw3r6o0XFRHSu6d6zo3rGie8eK7h0runes6N6xonvHij47VvTZsaLPjhV9dqzos2NFnx0r+uxY0WfHij47VvTZsaKvjhV9dazoq2NFXx0r+upY0VfHir46VvTVsaKvjhV9dazocXpF31P8W2S9Z9Pz6U/P/PPT//i7b1sY+FsQ/C0o/hYMfwuOv4WJv4WFv4XA30LCbyHxu3Pid+fE786J353fch/1h7eA350TvzsnfndO/O6c8N05NvjuHBt8d44NvjvHBt+dY4PvzrHBd+fY4LtzbPDdOTb47hwbfnce+N154Hfngd+dB353fss98R/eAn53HvjdeeB359G8O4fMO46vWzz5aU+/rXtu8oe8k03vG27ey9++YWne+d+/4eZzwvs33HyqeP+Gm88g79+wsW24+Xzz/g03n4bev+Hms9P7N8w2aQnbpKVsk5ayTVrKNmkp26T1FlcFasPAk9ZtC8Cz020LwNPQbQvA881tC8ATy+8tGPAMctsC8FRx2wLwnHDbAnDnv20BuJfftoDfnQ2/Oxt+dzb87mz43dnxu7Pjd2fH786O353P16jevwX87uz43dnxu7Pjd2fH784TvztP/O488bvzxO/O58ti798Cfnee+N154nfnid+dJ353XvjdeeF3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2Ap0YyvQja1AN7YC3dgKdGMr0I2tQDe2At3YCnRjK9CNrUA3tgLd2Ap0YyvQja1AN7YC3dgKdGMr0I2tQDe2At3YCnRjK9CNrUA3tgLd2Ap0YyvQja1AN7YC3dgKdGMr0I2tQDe2At3YCnRjK9CNrUA3tgLd2Ap0YyvQja1AN7YC3dgKdGMr0I2tRDe2Et3YSnRjK9GNrdzAO3GiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW6sZXoxlaiG1uJbmwlurGV6MZWohtbiW5sJbqxlejGVqIbW4lubCW4sTU2cGNr3wB2J943gN2J9w1gd+J9A9ideN8AdifeN4DdifcNYHfifQPYnXjfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY2vfAHonBje29g2gd2JwY+vXnwZF3wB6JwY3tn75/egbQO/E4MbWL2QLewMD3dga6MbWQDe2BrqxNTbwTjzQja2BbmwNdGNroBtbA93YGujG1kA3tga6sTXQja2BbmwN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ja2JbmxNdGNrohtbE93YmujG1kQ3tia6sTXRja2JbmxNdGNrohtbE93YmujG1kQ3tia6sTXRja2JbmxNdGNrohtbE93YmujG1kQ3tia6sTXRja2JbmxNdGNrohtbE93YmujG1kQ3tia6sTXRja2JbmxNdGNrohtbE93YmujG1kI3tha6sbXQja2FbmytDbwTL3Rja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2thW5sLXRja6EbWwvd2FroxtZCN7YWurG10I2tQDe2At3YCnRjK9CNrdjAO3GgG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sRXoxlagG1uBbmwFurEV6MZWoBtbgW5sBbqxFejGVqAbW4FubAW6sZXoxlaiG1uJbmwlurGVG3gnTnRjK9GNrUQ3thLd2Ep0YyvRja1EN7YS3dhKdGMr0Y2tRDe2Et3YSnRjK9GNrUQ3thLd2Ep0YyvRja1EN7YS3dhKdGMr0Y2tRDe2Et3YSnRjK9GNrUQ3thLd2Ep0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Sa5MJrkxmeTGZJIbk0luTCa5bca0WaIJyphMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJjckkNyaT3JhMcmMyyY3JJDcmk9yYTHJjMsmNySQ3JpPcmExyYzLJnckkdyaT3JlMcmcyyX0zps0STVDOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTSe5MJrkzmeTOZJI7k0nuTCa5M5nkzmSSO5NJ7kwmuTOZ5M5kkjuTST6ZTPLJZJJPJpN8MpnkczOmzRJNUJPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlkMsknk0k+mUzyyWSSTyaTfDKZ5JPJJJ9MJvlk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JZnklWSSV5JJXkkmeSWZ5JVkkleSSV5JJnklmeSVZJJXkkleSSZ5JZnklWSSV5JJXkkmeSWZ5JVkkleSSV5JJnklmeSVZJJXkkleSSZ5JZnklWSSV5JJXkkmeSWZ5JVkkleSSV5JJnklmeSVZJJXkkleSSZ5JZnklWSSV5JJXkkmeSWZ5JVkkleSSV5JJnklmeSVZJJXkkleSSZ5JZnklWSSV5JJXkkmeSWZ5JVkkleSSV5JJnklmeSVZJJXkkleSSZ5JZnkjWSSN5JJ3kgmeSOZ5O0w0rCgBtVIJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5I1kkjeSSd5IJnkjmeSNZJI3kkneSCZ5I5nkjWSSN5JJ3kgmeSOZ5J1kkneSSd5JJnknmeT9MNKwoAbVSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnknmeSdZJJ3kkneSSZ5J5nknWSSd5JJ3kkmeSeZ5J1kkneSSd5JJnkHmeTtAJnk57CcBnUOy2lQ57CcBnUOa6RhOQ3qHJbToM5hOQ3qHJbToM5hSQ0KZJKfw5IaFMgk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MskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kQyyRPJJE8kkzyRTPJEMskTySRPJJM8kUzyRDLJE8kkTySTPJFM8kwyyTPJJM8kkzyTTPJ8GGlYUIPKJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJMMskzySTPJJM8k0zyTDLJM8kkzySTPJNM8kwyyTPJJM8kkzyTTPJCMskLySQvJJO8kEzychhpWFCDKiSTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kEzyQjLJC8kkLySTvJBM8kIyyQvJJC8kk7yQTPJCMskLySQvJJO8kExyI5nkRjLJjWSSG8kkt8NIw4IalJFMciOZ5EYyyY1kkhvJJDeSSW4kk9xIJrmRTHIjmeRGMsmNZJIbySQ3kkluJJPcSCa5kUxyI5nkRjLJjWSSG8kkN5JJbiST3EgmuZFMciOZ5EYyyY1kkhvJJDeSSW4kk9xIJrmRTHIjmeRGMsmNZJIbySQ3kkluJJPcSCa5kUxyI5nkRjLJjWSSG8kkN5JJbiST3EgmuZFMciOZ5EYyyY1kkhvJJDeSSW4kk9xIJrmRTHIjmeRGMsmNZJIbySQ3kkluJJPcSCa5kUxyI5nkRjLJjWSSG8kkN5JJbiST3EgmuZFMciOZ5EYyyY1kkhvJJDeSSW4kk9xIJrmRTHIjmeRGMsmNZJIbySQ3kkluJJPcSCa5kUxyI5nkRjLJjWSSG8kkN5JJ7iST3EkmuZNMcieZ5H4YaVhQg3KSSe4kk9xJJrmTTHInmeROMsmdZJI7ySR3kknuJJPcSSa5k0xyJ5nkTjLJnWSSO8kkd5JJ7iST3EkmuZNMcieZ5E4yyZ1kkjvJJHeSSe4kk9xJJrmTTHInmeROMsmdZJI7ySR3kknuJJPcSSa5k0xyJ5nkTjLJnWSSO8kkd5JJ7iST3EkmuZNMcieZ5E4yyZ1kkjvJJHeSSe4kk9xJJrmTTHInmeROMsmdZJI7ySR3kknuJJPcSSa5k0xyJ5nkTjLJnWSSO8kkd5JJ7iST3EkmuZNMcieZ5E4yyZ1kkjvJJHeSSe4kk9xJJrmTTHInmeROMsmdZJI7ySR3kknuJJPcSSa5k0xyJ5nkTjLJnWSSO8kkd5JJ7iST3EkmuZNMcieZ5E4yyYNkkgfJJA+SSR4kkzwOIw0LalBBMsmDZJIHySQPkkkeJJM8SCZ5kEzyIJnkQTLJg2SSB8kkD5JJHiSTPEgmeZBM8iCZ5EEyyYNkkgfJJA+SSR4kkzxIJnmQTPIgmeRBMsmDZJIHySQPkkkeJJM8SCZ5kEzyIJnkQTLJg2SSB8kkD5JJHiSTPEgmeZBM8iCZ5EEyyYNkkgfJJA+SSR4kkzxIJnmQTPIgmeRBMsmDZJIHySQPkkkeJJM8SCZ5kEzyIJnkQTLJg2SSB8kkD5JJHiSTPEgmeZBM8iCZ5EEyyYNkkgfJJA+SSR4kkzxIJnmQTPIgmeRBMsmDZJIHySQPkkkeJJM8SCZ5kEzyIJnkQTLJg2SSB8kkD5JJHiSTPEgmeZBM8iCZ5EEyyYNkkgfJJA+SSR4kkzxIJnklmeSVZJJXkkleZzfJU7++dfH/e9iey8fX9myfD51y/xzXWONO3qJGjzt5jxo97uRNavS4k3ep0eNO3qYGjzu7UP6fxk32OW7+n3Ff7OiS0seIpXw+hpVXz+wfu7/2z92f82eMkzc1lRgn74AqMa7ULn8xRtsxjohxpTb832L0uGIM+zPGK5uVqvPobFbq2aOzWamU/7dsru98/s/+MpuVGvx/zObj507FjvYqm9k5/V/NZqEOX+rHUu7lj638581vdn9/9LgLdeJ3xrWVxv146G5HfT3uQh3znXEXqo2lxjVuitfjLtQE3xl3oXL3zrgL9TWz6yeuVsvLcWf3+EePu1CrMsvXuO31z9NnN/n/y7ierv933W7+312oVXm6/t9199fjGmvchVqVXz/S7B6vO/PsNv9/Gve67vbI+fW4C7Wqd8ZdqFV5v/4wRzlej7tQq4q4ftITN/fd2Y3+0eMu1KoirppRj9d/d+eStK6nmmo9Xk811Ra7nmqqZXM91VQ74XqqqY7uj6eay0+6nmqqg/B6qqlugddTTXVZu55qyrN9Lozneqopz/a5eJvrqaY82+cCYz6eai7Z5XqqKc/2uayU66mmPNvn0keup5rybJ/L87ieasqzfS4h43qqKc/2ucyJ66mmPNvnUhyup5rybJ/LRbieasqzfS5p4HqqKc/2ud67fz3VjGd7m+vd8NdTzXi2t7neX3491YxneztmPNvbXG+rvp5qxrO9zfUm5eupZjzb21xv+f14qrnemXs91ZRn+1zvG72easqzfa53NV5PNeXZPtfb866nmvJsn+staddTTXm2z/U2rOuppjzb53qf0vVUU57tc73r53qqKc/2ud5Dcz3VlGf7XO9IuZ5qyrN9rvd3XE815dk+17slrqea8myf670H11NNebbP9Zv811NNebbP9Xvx11NNebbP9Vvm11NNebbblGe7TXm225Rnu015ttuUZ7tNebbblGe7TXm2+5Rnu095tvuUZ7tPebb7lGe7T3m2+5Rnu095tvuUZ7tPebbHlGd7THm2x5Rne0x5tk/5vtQ25ftS25TvS21Tvi+1Tfm+1Dbl+1LblO9LbVO+L7VN+b7UNuX7UtuU70ttU74vtU35vtQ25ftS25TvS21Tvi+1Tfm+1Dbl+1LblO9LbVO+L7VN+b7UNuX7UtuU70ttU74vtU35vtQ25ftS25TvS21Tvi+1Tfm+1Dbl+1LblO9LbVO+L7VN+b7U9tPvS71eZ8hp7fV6nRavX6c/8jp9zLtB33idEWekpw8YPLvbF39qcj6urz4f4POrP43APuT3xKNfH/Jb8+vph/zm9zuvYw+9jj/0OiPOmvP4+HidltMXf2pa8g8mtaWe//jqV9879fTxJKn7/371xwxDfjN02AzXU9mUT+VTPtWIP4Wt5Oupon91dv0fX309VZ3yqdqUT9VnfKohvxk6/qnSlE+Vp3yqMuVT2ZRP5VM+1ZRnu015ttuUZ7tNebb7lGe7T3m2+5Rnu095tvuUZ7tPebb7lGe7T3m2+5Rnu095tseUZ3tMebbHlGd7THm2x5Rne0x5tseUZ3tMebbHlGd7THm21ynP9jrl2V6nPNvrlGd7ffxsr14+/n2lerUvv/r6t7Xq7WYGX2CGWGCGusAMbYEZuv4M7VhghrTADHmBGcoCMyywp9sCe7otsKfbAnu6LbCn2wJ7ui+wp/sCe7ovsKf7Ant6yG9s//YMC+zpvsCe7gvs6b7Anu7ye9qPQ35PnzPI7+lzBvk9fc4gv6fPGeT39DmD/J4+Z5Df0+cM8nv6nEF+T58zLLCn0wJ7Oi2wp9Pke7ol//jqlnr74qu9+8c7VePI5frqfJTPiSff6j8w8eQd4Acmnrwx/MDEk/eLH5h48jbyAxNP3l1+YOLJm874ifPkvegHJp68Rf3AxLjOlXGda4gEoTUxrnNlXOfKuM6VcZ0rC3eujxmKcIu6ZhDuRdcMwk3nmkG4u1wz2AIzCPeLawbhxnDNINwBrhmEt/o1wwJ72hbY07bAnrYF9rQtsKefl6N+YIYF9rQtsKdtgT1tC+xpW2BP+wJ72hfY077AnvYF9vTzCtgPzLDAnvYF9rQvsKd9gT3tC+zpWGBPxwJ7OhbY07HAnn5edPuBGRbY07HAno5f2NP3v7/9/351Mf94kMjX18arx2hm14cuWM1/fONXX53i80M2ohyfX939M5w2eTjXCCXKn+FcA3TxAeqhPkBSHyCrD1DUBzD1AVx9gFAfYPYt/+UA6pu4qm/ipr6Jm/ombuqbuKlv4t9g/MYOoL6Jm/ombuqbuKlv4qa+ibv6Ju7qm7irb+Kuvol/A+obO4D6Ju7qm7irb+Kuvom7+CZOh/gmTof4Jk6H+CZOh/gmTof4Jk6H+CZOh/gmTof4Jk6H+CZOh/omTuqbOKlv4qS+iZP6Jv4NEG/sAOqbOKlv4qS+iZP6Jk7qmzirb+Ksvomz+ibO6pv4N5i0sQOob+Ksvomz+ibO6ps4q2/ior6Ji/omLuqbuKhv4t8gwsYOoL6Ji/omLuqbuKhv4qK+iU19E5v6Jjb1TWzqm/g3ELCxA6hvYlPfxKa+iU19E5v6Jnb1Tezqm9jVN7Grb+LfYL7GDqC+iV19E7v6Jnb1TezqmzjUN3Gob+JQ38Shvol/A/IaO4D6Jg71TTy93/XlAOqbWN3YSurGVlI3tpK6sZXUja2kbmwldWMrqRtbSd3YSurGVlI3tpK6sZXUja2kbmwldWMrqRtbSd3YSurGVlI3tpK6sZXUja2kbmwldWMrqRtbSd3YSurGVlI3tpK6sZXUja2kbmwldWMrqxtbWd3YyurGVlY3tvIhvomzurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZWN7ayurGV1Y2trG5sZXVjK6sbW1nd2MrqxlZRN7aKurFV1I2tom5slUN8Exd1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNraJubBV1Y6uoG1tF3dgq6sZWUTe2irqxVdSNLVM3tkzd2DJ1Y8vUjS07xDexqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurFl6saWqRtbpm5smbqxZerGlqkbW6ZubJm6sWXqxpapG1umbmyZurHl6saWqxtbrm5subqx5Yf4JnZ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tlzd2HJ1Y8vVjS1XN7Zc3dhydWPL1Y0tVze2XN3YcnVjy9WNLVc3tkLd2Ap1YyvUja1QN7biEN/EoW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWqBtboW5shbqxFerGVqgbW6FubIW6sRXqxlaoG1uhbmyFurEV6sZWVTe2qrqxVdWNrapubNVDfBNXdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2qbmxVdWOrqhtbVd3YqurGVlU3tqq6sVXVja2mbmw1dWOrqRtbTd3Yaof4Jm7qxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW03d2GrqxlZTN7aaurHV1I2tpm5sNXVjq6kbW13d2OrqxlZXN7a6urHVD/FN3NWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWVze2urqx1dWNra5ubHV1Y6urG1td3djq6sZWFze24hA3ts4BtDfxOYD2Jj4H0N7E5wDam/gcQHsTnwNob+JzAO1NfA6gvYnPAdQ3sbixdQ6gvonFja1zAPVNLG5snQOob2JxY+scQH0Tixtb5wDqm1jc2DoHUN/E4sbWOYD6JhY3ts4B1DexuLF1DqC+icWNrXMA9U0sbmydA6hvYnFj6xxAfROLG1vnAOqbWNzYOgdQ38TixtY5gPomFje2zgHUN7G4sXUOoL6JxY2tcwD1TSxubJ0DqG9icWPrHEB9E4sbW+cA6ptY3Ng6B1DfxOLG1jmA+iYWN7bOAdQ3sbixdQ6gvonFja1zAPVNLG5snQOob2JxY+scQH0Tixtb5wDqm1jc2DoHUN/E4sbWOYD6JhY3ts4B1DexuLF1DqC+icWNrXMA9U0sbmydA6hvYnFj6xxAfROLG1vnAOqbWNzYOgdQ38TixtY5gPomFje2zgHUN7G4sXUOoL6JxY2tcwD1TSxubJ0DqG9icWPrHEB9E4sbW+cA4ps4qRtbSd3YSurGVlI3ttIhvomTurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZSN7aSurGV1I2tpG5sJXVjK6kbW0nd2ErqxlZWN7ayurGV1Y2trG5s5UN8E2d1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraxubGV1YyurG1tZ3djK6sZWVje2srqxldWNraJubBV1Y6uoG1tF3dgqh/gmLurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVlE3toq6sVXUja2ibmwVdWOrqBtbRd3YKurGVpnL2Lqeaqr1ej3VVDvzeqqpFuH1VFNtt+upplpZH081lzB1PdVUy+V6qqk2xvVUU62B66mmPNvnopiup5rybJ8LTbqeasqzfS7e6OOp5jKLrqea8myfSxe6nmrKs30uB+h6qinP9rnEnuuppjzb57J1rqea8myfS8G5nmrKs30ur+Z6qinP9rlkmeuppjzb5zJgrqea8myfS2u5nmrKs30uV+V6qinP9p8WUK7XKQ+9jj30Ov7Q68RDr1Mfep32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"},{"name":"compute_note_hash_and_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"error_types":{},"param_witnesses":{"contract_address":[{"end":1,"start":0}],"nonce":[{"end":2,"start":1}],"note_type_id":[{"end":4,"start":3}],"serialized_note":[],"storage_slot":[{"end":3,"start":2}]},"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":"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"},"return_witnesses":[4,5,6,7]},"bytecode":"H4sIAAAAAAAA/+2byW7bMBCGJa9yVC+SZXlf4uTSm+w6tnPzy7Rv3XuBvkPRjMKpx8QkoNARIQImYGhMUfy/+blECRjfey/tt4+v4qZ2pQXbXNQ1+7+yE+wrK5PTd4Sz5ghnXZDTZzjh2lAxXGEut7zbef6vXAQnCRWlUDAwdVL3EdzNQ1BaKgg04IsE9CE7twgNhYYSKnB6MySJ+KQOn62ROtxB6o1rDi35HA4BMU+s37cBDb2r7y3iCcZ4D7RnpK5RUo5N+RzL8i5flehPU/XbJt/Rq46KBXfYHdX21adDND01RhhPSVtsh37UyBhD6XrX8e988lxDe65H2rSY/C+ebP5tjaetMTcVE5QIeLU9oKSxyaDfB/l+b8a8oY3JA8mpK+73/gx7QujdFv2nzIXEXcLzRZwn25WT5/vY9Qi7TL8vB/Cqr3kVal71SBvK0C/BP5/oYt/4vc9oy3lxPIP2wMCLAcMzsOzFgNEW9OIVtCMDLyKGJ7LsRcRoy3lx+gbasYEXMcMTW/YiZrTlvNjn7xZDAy+GDM/QshdDRltwjeTzIjHwImF4EsteJIy2oBc/QHtk4MWI4RlZ9mLEaAt68R20UwMvUoYntexFymgL7p35+8XYwIsxwzO27MWY0Rb0Yg/aEwMvJgzPxLIXE0ZbcI3k2lMDL6YMz9SyF/R31CLMQweZUweZ4wowB1oso33M98+ZgRczhmdm2QvUK8qcVIA50GIZ7eMLaM8NvJgzPHPLXqBeUebIQebYQeaRg8yJg8ypg8xVmM+BFston/I9dGHgxYLhWVj2AvWKMkcOMs8cZI4rwBxosYz2Kf/b3NLAiyXDs7TsBeoVZR47yDyoAHOgxTLapyNorwy8WDE8K8teoF5R5omDzKmDzDMHmWMHmUcOMicOMt/XoB3mqALM9EzT71J59q+hxoOeeRqjpzGGJKbnYNbijFlGx2dNtDbyWjtuvuD3Tana+zP0u5XPKX+Xf1J94Rm+LZPTs4qlz3M9kX59ooP1DRL/Im2xHfqB6xbZYd49qvj5k+dW2nM90uaRyf/iyea/1Xi2GjOMyU/CsRHn2J9N5vXAu67lr4SnhH3wQM/kYjHZd0raY3Yl5ZnRM3x/PNk1vdG8CjSveqQN3aM3JfhnMr/uzHfmj5jp+0RA6vD+mtTVtFzo/zJgezgz/BdsuDj5FjUAAA==","debug_symbols":"ndpBattQGIXRvWgciu8v6ekpWymlOIlTDMYOsVMoJnuv3dIF9Mz0JN3ZNzq86/Cye/r48X1/fD2dh8ev1+Fwet5e9qfj7XQdNl+q/Xl7ftse7y/Ol+37ZXgcKw/D7vhyf2qfD8Pr/rC7PW/y+e3hPlpk1GW0wmjcyCgyKhmNMppkNMtIihiliFGKGKWISYqYpIhJipikiEmKmKSISYqYpIhJipikiFmKmKWIWYqYpYhZipiliFmKmKWIWYqYpYgmRTQpokkRTYpoUkSTIpoU0aSIJkU0KWKRIhYpYpEiFilikSIWKWKRIhYpYpEiFimiSxFdiuhSRJciuhTRpYguRXQpoksRXYpYpYhVililiFWKWKWIVYpYpYhVililiFWKyGZDq9CqaDXSaqLVTKtGq4VWnVbURqiNUBuhNkJthNoItRFqI9RGqI1QG0VtFLVR1EZRG0VtFLVBnBnyzBBohkQzRJoh0wyhZkg1Q6wZcs0QbIZkM0SbIdsM4WZIN0O8GfLNEHCGhDNEnCHjDCFnSDlDzBlyzhB0hqQzRJ0h6wxhZ0g7Q9wZ8s4QeIbEM0SeIfMMoWdIPUPsGXLPEHyG5DNEnyH7DOFnSD9D/BnyzxCAhgQ0RKAhAw0haEhBQwwactAQhIYkNEShIQsNYWhIQ0McGvLQEIiGRDREoiETDaFoSEVDLBpy0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRsmueds/TLnqSixa5aJGLFrlokYvWf7vo7fRz+77fPh1295u9948fx+d/F31vx8uvt79fbv/+Bg=="}],"outputs":{"globals":{"storage":[{"fields":[{"name":"npk_m_x_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"1"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"npk_m_y_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"2"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"ivpk_m_x_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"3"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"ivpk_m_y_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"4"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"ovpk_m_x_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"5"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"ovpk_m_y_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"6"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"tpk_m_x_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"7"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}},{"name":"tpk_m_y_registry","value":{"fields":[{"name":"slot","value":{"kind":"integer","sign":false,"value":"8"}},{"name":"typ","value":{"kind":"string","value":"Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>"}}],"kind":"struct"}}],"kind":"struct"}]},"structs":{"functions":[{"fields":[{"name":"parameters","type":{"fields":[{"name":"address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"new_npk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"nonce","type":{"kind":"field"}}],"kind":"struct","path":"KeyRegistry::rotate_npk_m_parameters"}}],"kind":"struct","path":"KeyRegistry::rotate_npk_m_abi"},{"fields":[{"name":"parameters","type":{"fields":[{"name":"address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::aztec_address::AztecAddress"}},{"name":"partial_address","type":{"fields":[{"name":"inner","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::address::partial_address::PartialAddress"}},{"name":"keys","type":{"fields":[{"name":"npk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"ivpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"ovpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}},{"name":"tpk_m","type":{"fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}],"kind":"struct","path":"authwit::aztec::protocol_types::grumpkin_point::GrumpkinPoint"}}],"kind":"struct","path":"aztec::keys::public_keys::PublicKeys"}}],"kind":"struct","path":"KeyRegistry::register_parameters"}}],"kind":"struct","path":"KeyRegistry::register_abi"}]}},"file_map":{"101":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/arguments.nr","source":"#[oracle(packArgumentsArray)]\nfn pack_arguments_array_oracle<N>(_args: [Field; N]) -> Field {}\n\n#[oracle(packArguments)]\nfn pack_arguments_oracle(_args: [Field]) -> Field {}\n\n/// - Pack arguments (array version) will notify the simulator that these arguments will be used later at\n/// some point in the call. \n/// - When the external call is made later, the simulator will know what the values unpack to.\n/// - This oracle will not be required in public vm functions, as the vm will keep track of arguments \n/// itself.\nunconstrained pub fn pack_arguments_array<N>(args: [Field; N]) -> Field {\n pack_arguments_array_oracle(args)\n}\n\n/// - Pack arguments (slice version) will notify the simulator that these arguments will be used later at\n/// some point in the call. \n/// - When the external call is made later, the simulator will know what the values unpack to.\n/// - This oracle will not be required in public vm functions, as the vm will keep track of arguments \n/// itself.\nunconstrained pub fn pack_arguments(args: [Field]) -> Field {\n pack_arguments_oracle(args)\n}\n\n"},"102":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/public_call.nr","source":"use dep::protocol_types::{abis::function_selector::FunctionSelector, address::AztecAddress};\n// TODO(6052): get new side effect counter from this call\n#[oracle(callPublicFunction)]\nfn call_public_function_oracle<RETURNS_COUNT>(\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; RETURNS_COUNT] {}\n\nunconstrained pub fn call_public_function_internal<RETURNS_COUNT>(\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; RETURNS_COUNT] {\n call_public_function_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"},"107":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/storage.nr","source":"use dep::protocol_types::traits::{Deserialize, Serialize};\n\n#[oracle(storageRead)]\nfn storage_read_oracle<N>(_storage_slot: Field, _number_of_elements: Field) -> [Field; N] {}\n\nunconstrained fn storage_read_oracle_wrapper<N>(_storage_slot: Field) -> [Field; N] {\n storage_read_oracle(_storage_slot, N)\n}\n\npub fn storage_read<N>(storage_slot: Field) -> [Field; N] {\n storage_read_oracle_wrapper(storage_slot)\n}\n\n#[oracle(storageWrite)]\nfn storage_write_oracle<N>(_storage_slot: Field, _values: [Field; N]) -> [Field; N] {}\n\nunconstrained pub fn storage_write<N>(storage_slot: Field, fields: [Field; N]) {\n let _hash = storage_write_oracle(storage_slot, fields);\n}\n"},"119":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/context.nr","source":"mod globals;\nmod inputs;\n\nmod private_context;\nmod public_context;\nmod avm_context;\nmod interface;\nmod gas;\n\nuse interface::{\n ContextInterface, PrivateCallInterface, PublicCallInterface, PrivateVoidCallInterface,\n PublicVoidCallInterface, AvmCallInterface, AvmVoidCallInterface\n};\nuse private_context::PrivateContext;\nuse private_context::PackedReturns;\nuse public_context::PublicContext;\nuse public_context::FunctionReturns;\nuse avm_context::AvmContext;\n\nstruct Context {\n private: Option<&mut PrivateContext>,\n public: Option<&mut PublicContext>,\n avm: Option<&mut AvmContext>,\n}\n\nimpl Context {\n pub fn private(context: &mut PrivateContext) -> Context {\n Context { private: Option::some(context), public: Option::none(), avm: Option::none() }\n }\n\n pub fn public(context: &mut PublicContext) -> Context {\n Context { public: Option::some(context), private: Option::none(), avm: Option::none() }\n }\n\n pub fn avm(context: &mut AvmContext) -> Context {\n Context { avm: Option::some(context), public: Option::none(), private: Option::none() }\n }\n\n pub fn none() -> Context {\n Context { public: Option::none(), private: Option::none(), avm: Option::none() }\n }\n}\n"},"121":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/map.nr","source":"use crate::context::{PrivateContext, PublicContext, Context};\nuse dep::protocol_types::{hash::pedersen_hash, traits::ToField};\nuse crate::state_vars::storage::Storage;\n\n// docs:start:map\nstruct Map<K, V> {\n context: Context,\n storage_slot: Field,\n state_var_constructor: fn(Context, Field) -> V,\n}\n// docs:end:map\n\nimpl<K, T> Storage<T> for Map<K, T> {}\n\nimpl<K, V> Map<K, V> {\n // docs:start:new\n pub fn new(\n context: Context,\n storage_slot: Field,\n state_var_constructor: fn(Context, Field) -> V\n ) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n Map { context, storage_slot, state_var_constructor }\n }\n // docs:end:new\n\n // docs:start:at\n pub fn at(self, key: K) -> V where K: ToField {\n // TODO(#1204): use a generator index for the storage slot\n let derived_storage_slot = derive_storage_slot_in_map(self.storage_slot, key);\n\n let state_var_constructor = self.state_var_constructor;\n state_var_constructor(self.context, derived_storage_slot)\n }\n // docs:end:at\n}\n\npub fn derive_storage_slot_in_map<K>(storage_slot: Field, key: K) -> Field where K: ToField {\n pedersen_hash([storage_slot, key.to_field()], 0)\n}\n"},"129":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_mutable/scheduled_delay_change.nr","source":"use dep::protocol_types::traits::{Serialize, Deserialize, FromField, ToField};\nuse dep::std::cmp::min;\n\n// This data structure is used by SharedMutable to store the minimum delay with which a ScheduledValueChange object can\n// schedule a change.\n// This delay is initally equal to INITIAL_DELAY, and can be safely mutated to any other value over time. This mutation \n// is performed via `schedule_change` in order to satisfy ScheduleValueChange constraints: if e.g. we allowed for the \n// delay to be decreased immediately then it'd be possible for the state variable to schedule a value change with a \n// reduced delay, invalidating prior private reads.\nstruct ScheduledDelayChange<INITIAL_DELAY> {\n // Both pre and post are stored in public storage, so by default they are zeroed. By wrapping them in an Option, \n // they default to Option::none(), which we detect and replace with INITIAL_DELAY. The end result is that a\n // ScheduledDelayChange that has not been initialized has a delay equal to INITIAL_DELAY, which is the desired\n // effect. Once initialized, the Option will never be none again.\n pre: Option<u32>,\n post: Option<u32>,\n // Block at which `post` value is used instead of `pre`\n block_of_change: u32,\n // The _dummy variable forces INITIAL_DELAY to be interpreted as a numeric value. This is a workaround to\n // https://github.com/noir-lang/noir/issues/4633. Remove once resolved.\n _dummy: [Field; INITIAL_DELAY],\n}\n\nimpl<INITIAL_DELAY> ScheduledDelayChange<INITIAL_DELAY> {\n pub fn new(pre: Option<u32>, post: Option<u32>, block_of_change: u32) -> Self {\n Self { pre, post, block_of_change, _dummy: [0; INITIAL_DELAY] }\n }\n\n /// Returns the current value of the delay stored in the data structure.\n /// This function only returns a meaningful value when called in public with the current block number - for\n /// historical private reads use `get_effective_minimum_delay_at` instead.\n pub fn get_current(self, current_block_number: u32) -> u32 {\n // The post value becomes the current one at the block of change, so any transaction that is included in the\n // block of change will use the post value.\n\n if current_block_number < self.block_of_change {\n self.pre.unwrap_or(INITIAL_DELAY)\n } else {\n self.post.unwrap_or(INITIAL_DELAY)\n }\n }\n\n /// Returns the scheduled change, i.e. the post-change delay and the block at which it will become the current\n /// delay. Note that this block may be in the past if the change has already taken place.\n /// Additionally, further changes might be later scheduled, potentially canceling the one returned by this function.\n pub fn get_scheduled(self) -> (u32, u32) {\n (self.post.unwrap_or(INITIAL_DELAY), self.block_of_change)\n }\n\n /// Mutates the delay change by scheduling a change at the current block number. This function is only meaningful\n /// when called in public with the current block number.\n /// The block at which the new delay will become effective is determined automatically:\n /// - when increasing the delay, the change is effective immediately\n /// - when reducing the delay, the change will take effect after a delay equal to the difference between old and\n /// new delay. For example, if reducing from 3 days to 1 day, the reduction will be scheduled to happen after 2\n /// days.\n pub fn schedule_change(&mut self, new: u32, current_block_number: u32) {\n let current = self.get_current(current_block_number);\n\n // When changing the delay value we must ensure that it is not possible to produce a value change with a delay\n // shorter than the current one.\n let blocks_until_change = if new > current {\n // Increasing the delay value can therefore be done immediately: this does not invalidate prior contraints\n // about how quickly a value might be changed (indeed it strengthens them).\n 0\n } else {\n // Decreasing the delay requires waiting for the difference between current and new delay in order to ensure\n // that overall the current delay is respected.\n //\n // current delay earliest value block of change\n // block block of change if delay remained unchanged\n // =======N=========================|================================X=================>\n // ^ ^ ^\n // |-------------------------|--------------------------------|\n // | blocks until change new delay |\n // ------------------------------------------------------------\n // current delay\n current - new\n };\n\n self.pre = Option::some(current);\n self.post = Option::some(new);\n self.block_of_change = current_block_number + blocks_until_change;\n }\n\n /// Returns the minimum delay before a value might mutate due to a scheduled change, from the perspective of some\n /// historical block number. It only returns a meaningful value when called in private with historical blocks. This \n /// function can be used alongside `ScheduledValueChange.get_block_horizon` to properly constrain the\n /// `max_block_number` transaction property when reading mutable shared state.\n /// This value typically equals the current delay at the block following the historical one (the earliest one in\n /// which a value change could be scheduled), but it also considers scenarios in which a delay reduction is \n /// scheduled to happen in the near future, resulting in a way to schedule a change with an overall delay lower than\n /// the current one.\n pub fn get_effective_minimum_delay_at(self, historical_block_number: u32) -> u32 {\n if self.block_of_change <= historical_block_number {\n // If no delay changes were scheduled, then the delay value at the historical block (post) is guaranteed to\n // hold due to how further delay changes would be scheduled by `schedule_change`.\n self.post.unwrap_or(INITIAL_DELAY)\n } else {\n // If a change is scheduled, then the effective delay might be lower than the current one (pre). At the\n // block of change the current delay will be the scheduled one, with an overall delay from the historical\n // block number equal to the number of blocks until the change plus the new delay. If this value is lower\n // than the current delay, then that is the effective minimum delay.\n //\n // historical\n // block delay actual earliest value\n // v block of change block of change\n // =========NS=====================|=============================X===========Y=====>\n // ^ ^ ^ ^\n // earliest block in | | |\n // which to schedule change | | |\n // | | | |\n // |----------------------|------------------------------ |\n // | blocks new delay |\n // | until change |\n // | |\n // |----------------------------------------------------------------|\n // current delay at the earliest block in \n // which to scheduled value change\n\n let blocks_until_change = self.block_of_change - (historical_block_number + 1);\n\n min(\n self.pre.unwrap_or(INITIAL_DELAY),\n blocks_until_change + self.post.unwrap_or(INITIAL_DELAY)\n )\n }\n }\n}\n\nimpl<INITIAL_DELAY> Serialize<1> for ScheduledDelayChange<INITIAL_DELAY> {\n fn serialize(self) -> [Field; 1] {\n // We pack all three u32 values into a single U128, which is made up of two u64 limbs.\n // Low limb: [ pre_inner: u32 | post_inner: u32 ]\n // High limb: [ empty | pre_is_some: u8 | post_is_some: u8 | block_of_change: u32 ]\n\n let lo = ((self.pre.unwrap_unchecked() as u64) * (1 << 32))\n + (self.post.unwrap_unchecked() as u64);\n\n let hi = (self.pre.is_some() as u64) * (1 << 33) \n + (self.post.is_some() as u64 * (1 << 32)) \n + self.block_of_change as u64;\n\n let packed = U128::from_u64s_le(lo, hi);\n\n [packed.to_integer()]\n }\n}\n\nimpl<INITIAL_DELAY> Deserialize<1> for ScheduledDelayChange<INITIAL_DELAY> {\n fn deserialize(input: [Field; 1]) -> Self {\n let packed = U128::from_integer(input[0]);\n\n // We use division and modulo to clear the bits that correspond to other values when unpacking.\n\n let pre_is_some = ((packed.hi as u64) / (1 << 33)) as bool;\n let pre_inner = ((packed.lo as u64) / (1 << 32)) as u32;\n\n let post_is_some = (((packed.hi as u64) / (1 << 32)) % (1 << 1)) as bool;\n let post_inner = ((packed.lo as u64) % (1 << 32)) as u32;\n\n let block_of_change = ((packed.hi as u64) % (1 << 32)) as u32;\n\n Self {\n pre: if pre_is_some { Option::some(pre_inner) } else { Option::none() },\n post: if post_is_some { Option::some(post_inner) } else { Option::none() },\n block_of_change,\n _dummy: [0; INITIAL_DELAY],\n }\n }\n}\n\nmod test {\n use crate::state_vars::shared_mutable::scheduled_delay_change::ScheduledDelayChange;\n\n global TEST_INITIAL_DELAY = 13;\n\n fn assert_equal_after_conversion(original: ScheduledDelayChange<TEST_INITIAL_DELAY>) {\n // We have to do explicit type annotations because Noir lacks turbofish support.\n // TODO: improve syntax once https://github.com/noir-lang/noir/issues/4710 is implemented.\n let converted: ScheduledDelayChange<TEST_INITIAL_DELAY> = ScheduledDelayChange::deserialize((original).serialize());\n\n assert_eq(original.pre, converted.pre);\n assert_eq(original.post, converted.post);\n assert_eq(original.block_of_change, converted.block_of_change);\n }\n\n #[test]\n fn test_serde() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::some(pre), Option::some(post), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::some(pre), Option::none(), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::none(), Option::some(post), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::none(), Option::none(), block_of_change));\n }\n\n #[test]\n fn test_serde_large_values() {\n let max_u32 = (1 << 32) - 1;\n\n let pre = max_u32 as u32;\n let post = (max_u32 - 1) as u32;\n let block_of_change = (max_u32 - 2) as u32;\n\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::some(pre), Option::some(post), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::some(pre), Option::none(), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::none(), Option::some(post), block_of_change));\n assert_equal_after_conversion(ScheduledDelayChange::new(Option::none(), Option::none(), block_of_change));\n }\n\n fn get_non_initial_delay_change(\n pre: u32,\n post: u32,\n block_of_change: u32\n ) -> ScheduledDelayChange<TEST_INITIAL_DELAY> {\n ScheduledDelayChange::new(Option::some(pre), Option::some(post), block_of_change)\n }\n\n fn get_initial_delay_change() -> ScheduledDelayChange<TEST_INITIAL_DELAY> {\n ScheduledDelayChange::deserialize([0])\n }\n\n #[test]\n fn test_get_current() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n assert_eq(delay_change.get_current(0), pre);\n assert_eq(delay_change.get_current(block_of_change - 1), pre);\n assert_eq(delay_change.get_current(block_of_change), post);\n assert_eq(delay_change.get_current(block_of_change + 1), post);\n }\n\n #[test]\n fn test_get_current_initial() {\n let delay_change = get_initial_delay_change();\n\n assert_eq(delay_change.get_current(0), TEST_INITIAL_DELAY);\n assert_eq(delay_change.get_current(1), TEST_INITIAL_DELAY);\n }\n\n #[test]\n fn test_get_scheduled() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n assert_eq(delay_change.get_scheduled(), (post, block_of_change));\n }\n\n #[test]\n fn test_get_scheduled_initial() {\n let delay_change = get_initial_delay_change();\n\n assert_eq(delay_change.get_scheduled(), (TEST_INITIAL_DELAY, 0));\n }\n\n #[test]\n fn test_schedule_change_to_shorter_delay_before_change() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let new = 10;\n let current_block_number = block_of_change - 50;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n delay_change.schedule_change(new, current_block_number);\n\n // Because we re-schedule before the last scheduled change takes effect, the old `post` value is lost. The\n // schedule time is determined by the difference between the current value (pre) and new delay.\n assert_eq(delay_change.pre.unwrap(), pre);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number + pre - new);\n }\n\n #[test]\n fn test_schedule_change_to_shorter_delay_after_change() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let new = 10;\n let current_block_number = block_of_change + 50;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n delay_change.schedule_change(new, current_block_number);\n\n // The schedule time is determined by the different between the current value (ex post, now pre) and new delay.\n assert_eq(delay_change.pre.unwrap(), post);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number + post - new);\n }\n\n #[test]\n fn test_schedule_change_to_shorter_delay_from_initial() {\n let new = TEST_INITIAL_DELAY - 1;\n let current_block_number = 50;\n\n let mut delay_change = get_initial_delay_change();\n delay_change.schedule_change(new, current_block_number);\n\n // Like in the after change scenario, the schedule time is determined by the difference between the current value\n // (initial) and new delay.\n assert_eq(delay_change.pre.unwrap(), TEST_INITIAL_DELAY);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number + TEST_INITIAL_DELAY - new);\n }\n\n #[test]\n fn test_schedule_change_to_longer_delay_before_change() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let new = 40;\n let current_block_number = block_of_change - 50;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n delay_change.schedule_change(new, current_block_number);\n\n // Because we re-schedule before the last scheduled change takes effect, the old `post` value is lost. The\n // change is effective immediately because the new delay is longer than the current one.\n assert_eq(delay_change.pre.unwrap(), pre);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number);\n assert_eq(delay_change.get_current(current_block_number), new);\n }\n\n #[test]\n fn test_schedule_change_to_longer_delay_after_change() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let new = 40;\n let current_block_number = block_of_change + 50;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n delay_change.schedule_change(new, current_block_number);\n\n // Change is effective immediately because the new delay is longer than the current one.\n assert_eq(delay_change.pre.unwrap(), post);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number);\n assert_eq(delay_change.get_current(current_block_number), new);\n }\n\n #[test]\n fn test_schedule_change_to_longer_delay_from_initial() {\n let new = TEST_INITIAL_DELAY + 1;\n let current_block_number = 50;\n\n let mut delay_change = get_initial_delay_change();\n delay_change.schedule_change(new, current_block_number);\n\n // Like in the after change scenario, change is effective immediately because the new delay is longer than the \n // current one.\n assert_eq(delay_change.pre.unwrap(), TEST_INITIAL_DELAY);\n assert_eq(delay_change.post.unwrap(), new);\n assert_eq(delay_change.block_of_change, current_block_number);\n assert_eq(delay_change.get_current(current_block_number), new);\n }\n\n fn assert_effective_minimum_delay_invariants<INITIAL_DELAY>(\n delay_change: &mut ScheduledDelayChange<INITIAL_DELAY>,\n historical_block_number: u32,\n effective_minimum_delay: u32\n ) {\n // The effective minimum delays guarantees the earliest block in which a scheduled value change could be made\n // effective. No action, even if executed immediately after the historical block, should result in a scheduled\n // value change having a block of change lower than this.\n let expected_earliest_value_change_block = historical_block_number + 1 + effective_minimum_delay;\n\n if delay_change.block_of_change > historical_block_number {\n // If a delay change is already scheduled to happen in the future, we then must consider the scenario in\n // which a value change is scheduled to occur right as the delay changes and becomes the current one.\n let delay_change_block = delay_change.block_of_change;\n\n let value_change_block = delay_change_block + delay_change.get_current(delay_change_block);\n assert(expected_earliest_value_change_block <= value_change_block);\n }\n\n // Another possibility would be to schedule a value change immediately after the historical block.\n let change_schedule_block = historical_block_number + 1;\n let value_change_block = change_schedule_block + delay_change.get_current(change_schedule_block);\n assert(expected_earliest_value_change_block <= value_change_block);\n\n // Finally, a delay reduction could be scheduled immediately after the historical block. We reduce the delay to \n // zero, which means that at the delay block of change there'll be no delay and a value change could be \n // performed immediately then.\n delay_change.schedule_change(0, historical_block_number + 1);\n assert(expected_earliest_value_change_block <= delay_change.block_of_change);\n }\n\n #[test]\n fn test_get_effective_delay_at_before_change_in_far_future() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let historical_block_number = 200;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n // The scheduled delay change is far into the future (further than the current delay is), so it doesn't affect\n // the effective delay, which is simply the current one (pre).\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n assert_eq(effective_minimum_delay, pre);\n\n assert_effective_minimum_delay_invariants(\n &mut delay_change,\n historical_block_number,\n effective_minimum_delay\n );\n }\n\n #[test]\n fn test_get_effective_delay_at_before_change_to_long_delay() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let historical_block_number = 495;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n // The scheduled delay change will be effective soon (it's fewer blocks away than the current delay), but due to\n // it being larger than the current one it doesn't affect the effective delay, which is simply the current one\n // (pre).\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n assert_eq(effective_minimum_delay, pre);\n\n assert_effective_minimum_delay_invariants(\n &mut delay_change,\n historical_block_number,\n effective_minimum_delay\n );\n }\n\n #[test]\n fn test_get_effective_delay_at_before_near_change_to_short_delay() {\n let pre = 15;\n let post = 3;\n let block_of_change = 500;\n\n let historical_block_number = 495;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n // The scheduled delay change will be effective soon (it's fewer blocks away than the current delay), and it's\n // changing to a value smaller than the current one. This means that at the block of change the delay will be\n // reduced, and a delay change would be scheduled there with an overall delay lower than the current one.\n // The effective delay therefore is the new delay plus the number of blocks that need to elapse until it becomes\n // effective (i.e. until the block of change).\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n assert_eq(effective_minimum_delay, post + block_of_change - (historical_block_number + 1));\n\n assert_effective_minimum_delay_invariants(\n &mut delay_change,\n historical_block_number,\n effective_minimum_delay\n );\n }\n\n #[test]\n fn test_get_effective_delay_at_after_change() {\n let pre = 15;\n let post = 25;\n let block_of_change = 500;\n\n let historical_block_number = block_of_change + 50;\n\n let mut delay_change = get_non_initial_delay_change(pre, post, block_of_change);\n\n // No delay change is scheduled, so the effective delay is simply the current one (post).\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n assert_eq(effective_minimum_delay, post);\n\n assert_effective_minimum_delay_invariants(\n &mut delay_change,\n historical_block_number,\n effective_minimum_delay\n );\n }\n\n #[test]\n fn test_get_effective_delay_at_initial() {\n let mut delay_change = get_initial_delay_change();\n\n let historical_block_number = 200;\n\n // Like in the after change scenario, no delay change is scheduled, so the effective delay is simply the current \n // one (initial).\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n assert_eq(effective_minimum_delay, TEST_INITIAL_DELAY);\n\n assert_effective_minimum_delay_invariants(\n &mut delay_change,\n historical_block_number,\n effective_minimum_delay\n );\n }\n}\n"},"131":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_mutable/scheduled_value_change.nr","source":"use dep::protocol_types::traits::{Serialize, Deserialize, FromField, ToField};\nuse dep::std::cmp::min;\n\n// This data structure is used by SharedMutable to represent a value that changes from `pre` to `post` at some block\n// called the `block_of_change`. The value can only be made to change by scheduling a change event at some future block\n// of change after some minimum delay measured in blocks has elapsed. This means that at any given block number we know\n// both the current value and the smallest block number at which the value might change - this is called the\n// 'block horizon'.\nstruct ScheduledValueChange<T> {\n pre: T,\n post: T,\n // Block at which `post` value is used instead of `pre`\n block_of_change: u32,\n}\n\nimpl<T> ScheduledValueChange<T> {\n pub fn new(pre: T, post: T, block_of_change: u32) -> Self {\n Self { pre, post, block_of_change }\n }\n\n /// Returns the value stored in the data structure at a given block. This function can be called both in public\n /// (where `block_number` is simply the current block number, i.e. the number of the block in which the current\n /// transaction will be included) and in private (where `block_number` is the historical block number that is used\n /// to construct the proof).\n /// Reading in private is only safe if the transaction's `max_block_number` property is set to a value lower or\n /// equal to the block horizon (see `get_block_horizon()`).\n pub fn get_current_at(self, block_number: u32) -> T {\n // The post value becomes the current one at the block of change. This means different things in each realm:\n // - in public, any transaction that is included in the block of change will use the post value\n // - in private, any transaction that includes the block of change as part of the historical state will use the\n // post value (barring any follow-up changes)\n\n if block_number < self.block_of_change {\n self.pre\n } else {\n self.post\n }\n }\n\n /// Returns the scheduled change, i.e. the post-change value and the block at which it will become the current\n /// value. Note that this block may be in the past if the change has already taken place.\n /// Additionally, further changes might be later scheduled, potentially canceling the one returned by this function.\n pub fn get_scheduled(self) -> (T, u32) {\n (self.post, self.block_of_change)\n }\n\n /// Returns the largest block number at which the value returned by `get_current_at` is known to remain the current\n /// value. This value is only meaningful in private when constructing a proof at some `historical_block_number`,\n /// since due to its asynchronous nature private execution cannot know about any later scheduled changes.\n /// The caller of this function must know how quickly the value can change due to a scheduled change in the form of\n /// `minimum_delay`. If the delay itself is immutable, then this is just its duration. If the delay is mutable\n /// however, then this value is the 'effective minimum delay' (obtained by calling\n /// `ScheduledDelayChange.get_effective_minimum_delay_at`), which equals the minimum number of blocks that need to\n /// elapse from the next block until the value changes, regardless of further delay changes.\n /// The value returned by `get_current_at` in private when called with a historical block number is only safe to use\n /// if the transaction's `max_block_number` property is set to a value lower or equal to the block horizon computed\n /// using the same historical block number.\n pub fn get_block_horizon(self, historical_block_number: u32, minimum_delay: u32) -> u32 {\n // The block horizon is the very last block in which the current value is known. Any block past the horizon\n // (i.e. with a block number larger than the block horizon) may have a different current value. Reading the\n // current value in private typically requires constraining the maximum valid block number to be equal to the\n // block horizon.\n\n if historical_block_number >= self.block_of_change {\n // Once the block of change has been mined, the current value (post) will not change unless a new value\n // change is scheduled. This did not happen at the historical block number (or else it would not be\n // greater or equal to the block of change), and therefore could only happen after the historical block\n // number. The earliest would be the immediate next block, and so the smallest possible next block of change\n // equals `historical_block_number + 1 + minimum_delay`. Our block horizon is simply the previous block to\n // that one.\n //\n // block of historical\n // change block block horizon\n // =======|=============N===================H===========>\n // ^ ^\n // ---------------------\n // minimum delay\n\n historical_block_number + minimum_delay\n } else {\n // If the block of change has not yet been mined however, then there are two possible scenarios.\n // a) It could be so far into the future that the block horizon is actually determined by the minimum\n // delay, because a new change could be scheduled and take place _before_ the currently scheduled one.\n // This is similar to the scenario where the block of change is in the past: the time horizon is the\n // block prior to the earliest one in which a new block of change might land.\n //\n // historical\n // block block horizon block of change\n // =====N=================================H=================|=========>\n // ^ ^\n // | |\n // -----------------------------------\n // minimum delay\n //\n // b) It could be fewer than `minimum_delay` blocks away from the historical block number, in which case\n // the block of change would become the limiting factor for the time horizon, which would equal the\n // block right before the block of change (since by definition the value changes at the block of\n // change).\n //\n // historical block horizon\n // block block of change if not scheduled\n // =======N=============|===================H=================>\n // ^ ^ ^\n // | actual horizon |\n // -----------------------------------\n // minimum delay\n //\n // Note that the current implementation does not allow the caller to set the block of change to an arbitrary\n // value, and therefore scenario a) is not currently possible. However implementing #5501 would allow for\n // this to happen.\n\n // Because historical_block_number < self.block_of_change, then block_of_change > 0 and we can safely\n // subtract 1.\n min(\n self.block_of_change - 1,\n historical_block_number + minimum_delay\n )\n }\n }\n\n /// Mutates the value by scheduling a change at the current block number. This function is only meaningful when\n /// called in public with the current block number.\n pub fn schedule_change(\n &mut self,\n new_value: T,\n current_block_number: u32,\n minimum_delay: u32,\n block_of_change: u32\n ) {\n assert(block_of_change >= current_block_number + minimum_delay);\n\n self.pre = self.get_current_at(current_block_number);\n self.post = new_value;\n self.block_of_change = block_of_change;\n }\n}\n\nimpl<T> Serialize<3> for ScheduledValueChange<T> {\n fn serialize(self) -> [Field; 3] where T: ToField {\n [self.pre.to_field(), self.post.to_field(), self.block_of_change.to_field()]\n }\n}\n\nimpl<T> Deserialize<3> for ScheduledValueChange<T> {\n fn deserialize(input: [Field; 3]) -> Self where T: FromField {\n Self {\n pre: FromField::from_field(input[0]),\n post: FromField::from_field(input[1]),\n block_of_change: FromField::from_field(input[2]),\n }\n }\n}\n\nmod test {\n use crate::state_vars::shared_mutable::scheduled_value_change::ScheduledValueChange;\n\n global TEST_DELAY: u32 = 200;\n\n #[test]\n fn test_serde() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let original = ScheduledValueChange::new(pre, post, block_of_change);\n let converted = ScheduledValueChange::deserialize((original).serialize());\n\n assert_eq(original.pre, converted.pre);\n assert_eq(original.post, converted.post);\n assert_eq(original.block_of_change, converted.block_of_change);\n }\n\n #[test]\n fn test_get_current_at() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n assert_eq(value_change.get_current_at(0), pre);\n assert_eq(value_change.get_current_at(block_of_change - 1), pre);\n assert_eq(value_change.get_current_at(block_of_change), post);\n assert_eq(value_change.get_current_at(block_of_change + 1), post);\n }\n\n #[test]\n fn test_get_scheduled() {\n let pre = 1;\n let post = 2;\n let block_of_change = 50;\n\n let value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n assert_eq(value_change.get_scheduled(), (post, block_of_change));\n }\n\n fn assert_block_horizon_invariants(\n value_change: &mut ScheduledValueChange<Field>,\n historical_block_number: u32,\n block_horizon: u32\n ) {\n // The current value should not change at the block horizon (but it might later).\n let current_at_historical = value_change.get_current_at(historical_block_number);\n assert_eq(current_at_historical, value_change.get_current_at(block_horizon));\n\n // The earliest a new change could be scheduled in would be the immediate next block to the historical one. This\n // should result in the new block of change landing *after* the block horizon, and the current value still not\n // changing at the previously determined block_horizon.\n\n let new = value_change.pre + value_change.post; // Make sure it's different to both pre and post\n value_change.schedule_change(\n new,\n historical_block_number + 1,\n TEST_DELAY,\n historical_block_number + 1 + TEST_DELAY\n );\n\n assert(value_change.block_of_change > block_horizon);\n assert_eq(current_at_historical, value_change.get_current_at(block_horizon));\n }\n\n #[test]\n fn test_get_block_horizon_change_in_past() {\n let historical_block_number = 100;\n let block_of_change = 50;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value_change.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value_change, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_immediate_past() {\n let historical_block_number = 100;\n let block_of_change = 100;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value_change.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value_change, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_near_future() {\n let historical_block_number = 100;\n let block_of_change = 120;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n // Note that this is the only scenario in which the block of change informs the block horizon.\n // This may result in privacy leaks when interacting with applications that have a scheduled change\n // in the near future.\n let block_horizon = value_change.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, block_of_change - 1);\n\n assert_block_horizon_invariants(&mut value_change, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_change_in_far_future() {\n let historical_block_number = 100;\n let block_of_change = 500;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value_change.get_block_horizon(historical_block_number, TEST_DELAY);\n assert_eq(block_horizon, historical_block_number + TEST_DELAY);\n\n assert_block_horizon_invariants(&mut value_change, historical_block_number, block_horizon);\n }\n\n #[test]\n fn test_get_block_horizon_n0_delay() {\n let historical_block_number = 100;\n let block_of_change = 50;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(1, 2, block_of_change);\n\n let block_horizon = value_change.get_block_horizon(historical_block_number, 0);\n // Since the block horizon equals the historical block number, it is not possible to read the current value in\n // private since the transaction `max_block_number` property would equal an already mined block.\n assert_eq(block_horizon, historical_block_number);\n }\n\n #[test]\n fn test_schedule_change_before_change() {\n let pre = 1;\n let post = 2;\n let block_of_change = 500;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n let new = 42;\n let current_block_number = block_of_change - 50;\n value_change.schedule_change(\n new,\n current_block_number,\n TEST_DELAY,\n current_block_number + TEST_DELAY\n );\n\n // Because we re-schedule before the last scheduled change takes effect, the old `post` value is lost.\n assert_eq(value_change.pre, pre);\n assert_eq(value_change.post, new);\n assert_eq(value_change.block_of_change, current_block_number + TEST_DELAY);\n }\n\n #[test]\n fn test_schedule_change_after_change() {\n let pre = 1;\n let post = 2;\n let block_of_change = 500;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n let new = 42;\n let current_block_number = block_of_change + 50;\n value_change.schedule_change(\n new,\n current_block_number,\n TEST_DELAY,\n current_block_number + TEST_DELAY\n );\n\n assert_eq(value_change.pre, post);\n assert_eq(value_change.post, new);\n assert_eq(value_change.block_of_change, current_block_number + TEST_DELAY);\n }\n\n #[test]\n fn test_schedule_change_no_delay() {\n let pre = 1;\n let post = 2;\n let block_of_change = 500;\n\n let mut value_change: ScheduledValueChange<Field> = ScheduledValueChange::new(pre, post, block_of_change);\n\n let new = 42;\n let current_block_number = block_of_change + 50;\n value_change.schedule_change(new, current_block_number, 0, current_block_number);\n\n assert_eq(value_change.pre, post);\n assert_eq(value_change.post, new);\n assert_eq(value_change.block_of_change, current_block_number);\n assert_eq(value_change.get_current_at(current_block_number), new);\n }\n}\n"},"132":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_mutable/shared_mutable.nr","source":"use dep::protocol_types::{hash::pedersen_hash, traits::FromField};\n\nuse crate::context::{PrivateContext, PublicContext, Context};\nuse crate::history::public_storage::public_storage_historical_read;\nuse crate::public_storage;\nuse crate::state_vars::{\n storage::Storage,\n shared_mutable::{scheduled_value_change::ScheduledValueChange, scheduled_delay_change::ScheduledDelayChange}\n};\n\nstruct SharedMutable<T, INITIAL_DELAY> {\n context: Context,\n storage_slot: Field,\n}\n\n// This will make the Aztec macros require that T implements the Serialize<N> trait, and allocate N storage slots to\n// this state variable. This is incorrect, since what we actually store is:\n// - a ScheduledValueChange<T>, which requires 1 + 2 * M storage slots, where M is the serialization length of T\n// - a ScheduledDelayChange, which requires another storage slot\n//\n// TODO https://github.com/AztecProtocol/aztec-packages/issues/5736: change the storage allocation scheme so that we \n// can actually use it here\nimpl<T, INITIAL_DELAY> Storage<T> for SharedMutable<T, INITIAL_DELAY> {}\n\n// SharedMutable<T> stores a value of type T that is:\n// - publicly known (i.e. unencrypted)\n// - mutable in public\n// - readable in private with no contention (i.e. multiple parties can all read the same value without blocking one\n// another nor needing to coordinate)\n// This is famously a hard problem to solve. SharedMutable makes it work by introducing a delay to public mutation:\n// the value is not changed immediately but rather a value change is scheduled to happen in the future after some delay\n// measured in blocks. Reads in private are only valid as long as they are included in a block not too far into the \n// future, so that they can guarantee the value will not have possibly changed by then (because of the delay).\n// The delay for changing a value is initially equal to INITIAL_DELAY, but can be changed by calling \n// `schedule_delay_change`.\nimpl<T, INITIAL_DELAY> SharedMutable<T, INITIAL_DELAY> {\n pub fn new(context: Context, storage_slot: Field) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n Self { context, storage_slot }\n }\n\n pub fn schedule_value_change(self, new_value: T) {\n let context = self.context.public.unwrap();\n let mut value_change = self.read_value_change();\n let delay_change = self.read_delay_change();\n\n let block_number = context.block_number() as u32;\n let current_delay = delay_change.get_current(block_number);\n\n // TODO: make this configurable\n // https://github.com/AztecProtocol/aztec-packages/issues/5501\n let block_of_change = block_number + current_delay;\n value_change.schedule_change(new_value, block_number, current_delay, block_of_change);\n\n self.write_value_change(value_change);\n }\n\n pub fn schedule_delay_change(self, new_delay: u32) {\n let context = self.context.public.unwrap();\n let mut delay_change = self.read_delay_change();\n\n let block_number = context.block_number() as u32;\n\n delay_change.schedule_change(new_delay, block_number);\n\n self.write_delay_change(delay_change);\n }\n\n pub fn get_current_value_in_public(self) -> T {\n let block_number = self.context.public.unwrap().block_number() as u32;\n self.read_value_change().get_current_at(block_number)\n }\n\n pub fn get_current_delay_in_public(self) -> u32 {\n let block_number = self.context.public.unwrap().block_number() as u32;\n self.read_delay_change().get_current(block_number)\n }\n\n pub fn get_scheduled_value_in_public(self) -> (T, u32) {\n self.read_value_change().get_scheduled()\n }\n\n pub fn get_scheduled_delay_in_public(self) -> (u32, u32) {\n self.read_delay_change().get_scheduled()\n }\n\n pub fn get_current_value_in_private(self) -> T where T: FromField {\n let mut context = self.context.private.unwrap();\n\n // When reading the current value in private we construct a historical state proof for the public value.\n // However, since this value might change, we must constrain the maximum transaction block number as this proof\n // will only be valid for however many blocks we can ensure the value will not change, which will depend on the\n // current delay and any scheduled delay changes.\n\n let (value_change, delay_change, historical_block_number) = self.historical_read_from_public_storage(*context);\n\n // We use the effective minimum delay as opposed to the current delay at the historical block as this one also\n // takes into consideration any scheduled delay changes. \n // For example, consider a scenario in which at block 200 the current delay was 50. We may naively think that\n // the earliest we could change the value would be at block 251 by scheduling immediately after the historical\n // block, i.e. at block 201. But if there was a delay change scheduled for block 210 to reduce the delay to 20 \n // blocks, then if a value change was scheduled at block 210 it would go into effect at block 230, which is \n // earlier than what we'd expect if we only considered the current delay.\n let effective_minimum_delay = delay_change.get_effective_minimum_delay_at(historical_block_number);\n let block_horizon = value_change.get_block_horizon(historical_block_number, effective_minimum_delay);\n\n // We prevent this transaction from being included in any block after the block horizon, ensuring that the \n // historical public value matches the current one, since it can only change after the horizon.\n context.set_tx_max_block_number(block_horizon);\n value_change.get_current_at(historical_block_number)\n }\n\n fn historical_read_from_public_storage(\n self,\n context: PrivateContext\n ) -> (ScheduledValueChange<T>, ScheduledDelayChange<INITIAL_DELAY>, u32) where T: FromField {\n // Ideally the following would be simply public_storage::read_historical, but we can't implement that yet.\n let value_change_slot = self.get_value_change_storage_slot();\n let mut raw_value_change_fields = [0; 3];\n for i in 0..3 {\n raw_value_change_fields[i] = public_storage_historical_read(\n context,\n value_change_slot + i as Field,\n context.this_address()\n );\n }\n\n // Ideally the following would be simply public_storage::read_historical, but we can't implement that yet.\n let delay_change_slot = self.get_delay_change_storage_slot();\n let raw_delay_change_fields = [public_storage_historical_read(context, delay_change_slot, context.this_address())];\n\n let value_change = ScheduledValueChange::deserialize(raw_value_change_fields);\n let delay_change = ScheduledDelayChange::deserialize(raw_delay_change_fields);\n\n let historical_block_number = context.historical_header.global_variables.block_number as u32;\n\n (value_change, delay_change, historical_block_number)\n }\n\n fn read_value_change(self) -> ScheduledValueChange<T> {\n public_storage::read(self.get_value_change_storage_slot())\n }\n\n fn read_delay_change(self) -> ScheduledDelayChange<INITIAL_DELAY> {\n public_storage::read(self.get_delay_change_storage_slot())\n }\n\n fn write_value_change(self, value_change: ScheduledValueChange<T>) {\n public_storage::write(self.get_value_change_storage_slot(), value_change);\n }\n\n fn write_delay_change(self, delay_change: ScheduledDelayChange<INITIAL_DELAY>) {\n public_storage::write(self.get_delay_change_storage_slot(), delay_change);\n }\n\n // Since we can't rely on the native storage allocation scheme, we hash the storage slot to get a unique location in\n // which we can safely store as much data as we need. \n // See https://github.com/AztecProtocol/aztec-packages/issues/5492 and \n // https://github.com/AztecProtocol/aztec-packages/issues/5736\n fn get_value_change_storage_slot(self) -> Field {\n pedersen_hash([self.storage_slot, 0], 0)\n }\n\n fn get_delay_change_storage_slot(self) -> Field {\n pedersen_hash([self.storage_slot, 1], 0)\n }\n}\n\nmod test {\n use dep::std::{merkle::compute_merkle_root, test::OracleMock};\n\n use crate::{\n context::{PublicContext, PrivateContext, Context},\n state_vars::shared_mutable::{\n shared_mutable::SharedMutable, scheduled_value_change::ScheduledValueChange,\n scheduled_delay_change::ScheduledDelayChange\n },\n oracle::get_public_data_witness::PublicDataWitness\n };\n\n use dep::protocol_types::{\n constants::{GENERATOR_INDEX__PUBLIC_LEAF_INDEX, PUBLIC_DATA_TREE_HEIGHT}, hash::pedersen_hash,\n address::AztecAddress, public_data_tree_leaf_preimage::PublicDataTreeLeafPreimage\n };\n\n global pre_value = 13;\n global post_value = 42;\n\n global new_value = 57;\n\n global pre_delay = 20;\n global post_delay = 15;\n\n global TEST_INITIAL_DELAY = 3;\n\n fn setup(private: bool) -> (SharedMutable<Field, TEST_INITIAL_DELAY>, Field) {\n let block_number = 40;\n let context = create_context(block_number, private);\n\n let storage_slot = 57;\n let state_var: SharedMutable<Field, TEST_INITIAL_DELAY> = SharedMutable::new(context, storage_slot);\n\n (state_var, block_number)\n }\n\n fn create_context(block_number: Field, private: bool) -> Context {\n if private {\n let mut private_context = PrivateContext::empty();\n private_context.historical_header.global_variables.block_number = block_number;\n Context::private(&mut private_context)\n } else {\n let mut public_context = PublicContext::empty();\n public_context.inputs.public_global_variables.block_number = block_number;\n Context::public(&mut public_context)\n }\n }\n\n fn mock_value_change_read(\n state_var: SharedMutable<Field, TEST_INITIAL_DELAY>,\n pre: Field,\n post: Field,\n block_of_change: Field\n ) {\n let value_change_slot = state_var.get_value_change_storage_slot();\n let fields = ScheduledValueChange::new(pre, post, block_of_change as u32).serialize();\n\n let _ = OracleMock::mock(\"storageRead\").with_params((value_change_slot, 3)).returns(fields).times(1);\n }\n\n fn mock_delay_change_read(\n state_var: SharedMutable<Field, TEST_INITIAL_DELAY>,\n pre: Field,\n post: Field,\n block_of_change: Field\n ) {\n let delay_change_slot = state_var.get_delay_change_storage_slot();\n let delay_change: ScheduledDelayChange<TEST_INITIAL_DELAY> = ScheduledDelayChange::new(\n Option::some(pre as u32),\n Option::some(post as u32),\n block_of_change as u32\n );\n let fields = delay_change.serialize();\n\n let _ = OracleMock::mock(\"storageRead\").with_params((delay_change_slot, 1)).returns(fields).times(1);\n }\n\n fn mock_delay_change_read_uninitialized(state_var: SharedMutable<Field, TEST_INITIAL_DELAY>) {\n let delay_change_slot = state_var.get_delay_change_storage_slot();\n let _ = OracleMock::mock(\"storageRead\").with_params((delay_change_slot, 1)).returns([0]).times(1);\n }\n\n // Useful since change and delay values are always the global pre/post ones, so we typically only care about their\n // block of change.\n fn mock_value_and_delay_read(\n state_var: SharedMutable<Field, TEST_INITIAL_DELAY>,\n value_block_of_change: Field,\n delay_block_of_change: Field\n ) {\n mock_value_change_read(state_var, pre_value, post_value, value_block_of_change);\n mock_delay_change_read(state_var, pre_delay, post_delay, delay_block_of_change);\n }\n\n fn mock_value_change_write() -> OracleMock {\n OracleMock::mock(\"storageWrite\").returns([0; 3])\n }\n\n fn mock_delay_change_write() -> OracleMock {\n OracleMock::mock(\"storageWrite\").returns([0; 1])\n }\n\n fn assert_value_change_write(\n state_var: SharedMutable<Field, TEST_INITIAL_DELAY>,\n mock: OracleMock,\n pre: Field,\n post: Field,\n block_of_change: Field\n ) {\n let fields = ScheduledValueChange::new(pre, post, block_of_change as u32).serialize();\n assert_eq(mock.get_last_params(), (state_var.get_value_change_storage_slot(), fields));\n }\n\n fn assert_delay_change_write(\n state_var: SharedMutable<Field, TEST_INITIAL_DELAY>,\n mock: OracleMock,\n pre: Field,\n post: Field,\n block_of_change: Field\n ) {\n let delay_change: ScheduledDelayChange<TEST_INITIAL_DELAY> = ScheduledDelayChange::new(\n Option::some(pre as u32),\n Option::some(post as u32),\n block_of_change as u32\n );\n\n let fields = delay_change.serialize();\n assert_eq(mock.get_last_params(), (state_var.get_delay_change_storage_slot(), fields));\n }\n\n #[test]\n fn test_get_current_value_in_public() {\n let (state_var, block_number) = setup(false);\n\n // Change in the future, current value is pre\n mock_value_change_read(state_var, pre_value, post_value, block_number + 1);\n assert_eq(state_var.get_current_value_in_public(), pre_value);\n\n // Change in the current block, current value is post\n mock_value_change_read(state_var, pre_value, post_value, block_number);\n assert_eq(state_var.get_current_value_in_public(), post_value);\n\n // Change in the past, current value is post\n mock_value_change_read(state_var, pre_value, post_value, block_number - 1);\n assert_eq(state_var.get_current_value_in_public(), post_value);\n }\n\n #[test]\n fn test_get_scheduled_value_in_public() {\n let (state_var, block_number) = setup(false);\n\n // Change in the future, scheduled is post (always is)\n mock_value_change_read(state_var, pre_value, post_value, block_number + 1);\n assert_eq(state_var.get_scheduled_value_in_public(), (post_value, (block_number + 1) as u32));\n\n // Change in the current block, scheduled is post (always is)\n mock_value_change_read(state_var, pre_value, post_value, block_number);\n assert_eq(state_var.get_scheduled_value_in_public(), (post_value, block_number as u32));\n\n // Change in the past, scheduled is post (always is)\n mock_value_change_read(state_var, pre_value, post_value, block_number - 1);\n assert_eq(state_var.get_scheduled_value_in_public(), (post_value, (block_number - 1) as u32));\n }\n\n #[test]\n fn test_get_current_delay_in_public() {\n let (state_var, block_number) = setup(false);\n\n // Uninitialized\n mock_delay_change_read_uninitialized(state_var);\n assert_eq(state_var.get_current_delay_in_public(), TEST_INITIAL_DELAY as u32);\n\n // Change in the future, current value is pre\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number + 1);\n assert_eq(state_var.get_current_delay_in_public(), pre_delay as u32);\n\n // Change in the current block, current value is post\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number);\n assert_eq(state_var.get_current_delay_in_public(), post_delay as u32);\n\n // Change in the past, current value is post\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number - 1);\n assert_eq(state_var.get_current_delay_in_public(), post_delay as u32);\n }\n\n #[test]\n fn test_get_scheduled_delay_in_public_before_change() {\n let (state_var, block_number) = setup(false);\n\n // Uninitialized\n mock_delay_change_read_uninitialized(state_var);\n assert_eq(state_var.get_scheduled_delay_in_public(), (TEST_INITIAL_DELAY as u32, 0));\n\n // Change in the future, scheduled is post (always is)\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number + 1);\n assert_eq(state_var.get_scheduled_delay_in_public(), (post_delay as u32, (block_number + 1) as u32));\n\n // Change in the current block, scheduled is post (always is)\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number);\n assert_eq(state_var.get_scheduled_delay_in_public(), (post_delay as u32, block_number as u32));\n\n // Change in the past, scheduled is post (always is)\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number - 1);\n assert_eq(state_var.get_scheduled_delay_in_public(), (post_delay as u32, (block_number - 1) as u32));\n }\n\n #[test]\n fn test_schedule_value_change_no_delay() {\n let (state_var, block_number) = setup(false);\n\n // Last value change was in the past\n mock_value_change_read(state_var, pre_value, post_value, 0);\n\n // Current delay is 0\n mock_delay_change_read(state_var, 0, 0, block_number);\n\n let write_mock = mock_value_change_write();\n\n state_var.schedule_value_change(new_value);\n\n // The new value has a block of change equal to the current block, i.e. it is the current value\n assert_value_change_write(state_var, write_mock, post_value, new_value, block_number);\n }\n\n #[test]\n fn test_schedule_value_change_before_change_no_scheduled_delay() {\n let (state_var, block_number) = setup(false);\n\n // Value change in the future, delay change in the past\n mock_value_and_delay_read(state_var, block_number + 1, block_number - 1);\n let write_mock = mock_value_change_write();\n\n state_var.schedule_value_change(new_value);\n\n // The new scheduled value change replaces the old one, post delay (current) is used\n assert_value_change_write(\n state_var,\n write_mock,\n pre_value,\n new_value,\n block_number + post_delay\n );\n }\n\n #[test]\n fn test_schedule_value_change_before_change_scheduled_delay() {\n let (state_var, block_number) = setup(false);\n\n // Value change in the future, delay change in the future\n mock_value_and_delay_read(state_var, block_number + 1, block_number + 1);\n\n let write_mock = mock_value_change_write();\n\n state_var.schedule_value_change(new_value);\n\n // The new scheduled value change replaces the old one, pre delay (current, not scheduled) is used\n assert_value_change_write(\n state_var,\n write_mock,\n pre_value,\n new_value,\n block_number + pre_delay\n );\n }\n\n #[test]\n fn test_schedule_value_change_after_change_no_scheduled_delay() {\n let (state_var, block_number) = setup(false);\n\n // Value change in the past, delay change in the past\n mock_value_and_delay_read(state_var, block_number - 1, block_number - 1);\n let write_mock = mock_value_change_write();\n\n state_var.schedule_value_change(new_value);\n\n // The previous post value becomes the pre value, post delay (current) is used\n assert_value_change_write(\n state_var,\n write_mock,\n post_value,\n new_value,\n block_number + post_delay\n );\n }\n\n #[test]\n fn test_schedule_value_change_after_change_scheduled_delay() {\n let (state_var, block_number) = setup(false);\n\n // Value change in the past, delay change in the future\n mock_value_and_delay_read(state_var, block_number - 1, block_number + 1);\n\n let write_mock = mock_value_change_write();\n\n state_var.schedule_value_change(new_value);\n\n // The previous post value becomes the pre value, pre delay (current, not scheduled) is used\n assert_value_change_write(\n state_var,\n write_mock,\n post_value,\n new_value,\n block_number + pre_delay\n );\n }\n\n #[test]\n fn test_schedule_delay_increase_before_change() {\n let (state_var, block_number) = setup(false);\n\n // Delay change in future, current delay is pre\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number + 1);\n let write_mock = mock_delay_change_write();\n\n let new_delay = pre_delay + 1;\n state_var.schedule_delay_change(new_delay as u32);\n\n // The previous scheduled change is lost, change is immediate (due to increase)\n assert_delay_change_write(state_var, write_mock, pre_delay, new_delay, block_number);\n }\n\n #[test]\n fn test_schedule_delay_reduction_before_change() {\n let (state_var, block_number) = setup(false);\n\n // Delay change in future, current delay is pre\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number + 1);\n let write_mock = mock_delay_change_write();\n\n let new_delay = pre_delay - 1;\n state_var.schedule_delay_change(new_delay as u32);\n\n // The previous scheduled change is lost, change delay equals difference (due to reduction)\n assert_delay_change_write(\n state_var,\n write_mock,\n pre_delay,\n new_delay,\n block_number + pre_delay - new_delay\n );\n }\n\n #[test]\n fn test_schedule_delay_increase_after_change() {\n let (state_var, block_number) = setup(false);\n\n // Delay change in the past, current delay is post\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number - 1);\n let write_mock = mock_delay_change_write();\n\n let new_delay = post_delay + 1;\n state_var.schedule_delay_change(new_delay as u32);\n\n // The current value becomes pre, change is immediate (due to increase)\n assert_delay_change_write(state_var, write_mock, post_delay, new_delay, block_number);\n }\n\n #[test]\n fn test_schedule_delay_reduction_after_change() {\n let (state_var, block_number) = setup(false);\n\n // Delay change in the past, current delay is post\n mock_delay_change_read(state_var, pre_delay, post_delay, block_number - 1);\n let write_mock = mock_delay_change_write();\n\n let new_delay = post_delay - 1;\n state_var.schedule_delay_change(new_delay as u32);\n\n // The current value becomes pre, change delay equals difference (due to reduction)\n assert_delay_change_write(\n state_var,\n write_mock,\n post_delay,\n new_delay,\n block_number + post_delay - new_delay\n );\n }\n\n #[test]\n fn test_get_current_value_in_private_before_change() {\n // Here we'd want to test that the private getter returns the correct value and sets max_block_number in the\n // context to the expected block horizon, in all the possible scenarios (long before change, before near change,\n // after change).\n // However, this requires mocking the getPublicDataTreeWitness oracle so that we can convince the circuit that\n // it got a valid historical proof. Because we can set the tree root to whatever we want in the context, this is\n // trivial for a single historical value (we add a leaf and compute the root with any random path), but is quite\n // hard if we're reading more than one value for the same root (as SharedMutable does): we essentially need to\n // create an actual indexed tree and compute the correct path for each of the inserted values.\n // TODO: implement an actual tree and use it here https://github.com/AztecProtocol/aztec-packages/issues/5494\n }\n}\n"},"158":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/function_selector.nr","source":"use crate::utils::field::field_from_bytes;\nuse dep::std::cmp::Eq;\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<N>(signature: str<N>) -> Self {\n let bytes = signature.as_bytes();\n let hash = dep::std::hash::keccak256(bytes, bytes.len() as u32);\n\n let mut selector_be_bytes = [0; SELECTOR_SIZE];\n for i in 0..SELECTOR_SIZE {\n selector_be_bytes[i] = hash[i];\n }\n\n FunctionSelector::from_field(field_from_bytes(selector_be_bytes, true))\n }\n\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n}\n"},"194":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/type_serialization.nr","source":"use crate::traits::{Serialize, Deserialize};\n\nglobal BOOL_SERIALIZED_LEN: Field = 1;\nglobal U8_SERIALIZED_LEN: Field = 1;\nglobal U32_SERIALIZED_LEN: Field = 1;\nglobal U64_SERIALIZED_LEN: Field = 1;\nglobal U128_SERIALIZED_LEN: Field = 1;\nglobal FIELD_SERIALIZED_LEN: Field = 1;\n\nimpl Serialize<BOOL_SERIALIZED_LEN> for bool {\n fn serialize(self) -> [Field; BOOL_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<BOOL_SERIALIZED_LEN> for bool {\n fn deserialize(fields: [Field; BOOL_SERIALIZED_LEN]) -> bool {\n fields[0] as bool\n }\n}\n\nimpl Serialize<U8_SERIALIZED_LEN> for u8 {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U8_SERIALIZED_LEN> for u8 {\n fn deserialize(fields: [Field; U8_SERIALIZED_LEN]) -> Self {\n fields[0] as u8\n }\n}\n\nimpl Serialize<U32_SERIALIZED_LEN> for u32 {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U32_SERIALIZED_LEN> for u32 {\n fn deserialize(fields: [Field; U32_SERIALIZED_LEN]) -> Self {\n fields[0] as u32\n }\n}\n\nimpl Serialize<U64_SERIALIZED_LEN> for u64 {\n fn serialize(self) -> [Field; U64_SERIALIZED_LEN] {\n [self as Field]\n }\n}\n\nimpl Deserialize<U64_SERIALIZED_LEN> for u64 {\n fn deserialize(fields: [Field; U64_SERIALIZED_LEN]) -> Self {\n fields[0] as u64\n }\n}\n\nimpl Serialize<U128_SERIALIZED_LEN> for U128 {\n fn serialize(self) -> [Field; 1] {\n [self.to_integer()]\n }\n\n}\n\nimpl Deserialize<U128_SERIALIZED_LEN> for U128 {\n fn deserialize(fields: [Field; U128_SERIALIZED_LEN]) -> Self {\n U128::from_integer(fields[0])\n }\n}\n\nimpl Serialize<FIELD_SERIALIZED_LEN> for Field {\n fn serialize(self) -> [Field; U32_SERIALIZED_LEN] {\n [self]\n }\n}\n\nimpl Deserialize<FIELD_SERIALIZED_LEN> for Field {\n fn deserialize(fields: [Field; FIELD_SERIALIZED_LEN]) -> Self {\n fields[0]\n }\n}\n"},"195":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr","source":"use dep::std::cmp::Eq;\nuse 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, N>(array: [T; N]) -> bool where T: Empty + Eq {\n array.all(|elem| is_empty(elem))\n}\n\ntrait Hash {\n fn hash(self) -> Field;\n}\n\ntrait ToField {\n fn to_field(self) -> Field;\n}\n\nimpl ToField for Field {\n fn to_field(self) -> Field {\n self\n }\n}\n\nimpl ToField for bool { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u1 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u8 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u32 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u64 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for U128 {\n fn to_field(self) -> Field {\n self.to_integer()\n }\n}\nimpl<N> 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<N> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\nimpl<N> 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<N> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n"},"203":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr","source":"use crate::address::{AztecAddress, EthAddress};\nuse crate::recursion::verification_key::VerificationKey;\nuse crate::abis::function_selector::FunctionSelector;\nuse crate::abis::contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage;\nuse crate::contract_class_id::ContractClassId;\nuse crate::abis::side_effect::SideEffect;\nuse crate::traits::is_empty;\nuse crate::utils::{uint256::U256, field::field_from_bytes_32_trunc};\nuse crate::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\n};\nuse crate::traits::Hash;\nuse crate::messaging::l2_to_l1_message::L2ToL1Message;\nuse crate::merkle_tree::root::root_from_sibling_path;\nuse dep::std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<N>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256(bytes_to_hash);\n let hash_in_a_field = field_from_bytes_32_trunc(sha256_hashed);\n\n hash_in_a_field\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT]\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(function_leaf, function_leaf_index, function_leaf_sibling_path)\n}\n\npub fn compute_note_hash_nonce(first_nullifier: Field, note_hash_index: u64) -> Field {\n pedersen_hash(\n [\n first_nullifier,\n note_hash_index as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_note_hash(nonce: Field, note_hash: Field) -> Field {\n pedersen_hash(\n [\n nonce,\n note_hash\n ],\n GENERATOR_INDEX__UNIQUE_NOTE_HASH\n )\n}\n\npub fn silo_note_hash(address: AztecAddress, unique_note_hash: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n unique_note_hash\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n pedersen_hash([left, right], 0)\n}\n\npub fn stdlib_recursion_verification_key_compress_native_vk(_vk: VerificationKey) -> Field {\n // Original cpp code\n // stdlib::recursion::verification_key<CT::bn254>::compress_native(private_call.vk, GeneratorIndex::VK);\n // The above cpp method is only ever called on verification key, so it has been special cased here\n let _hash_index = GENERATOR_INDEX__VK;\n 0\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n rollup_version_id: Field,\n chain_id: Field,\n message: L2ToL1Message\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [\n contract_address.to_field(), rollup_version_id, message.recipient.to_field(), chain_id, message.content\n ];\n for i in 0..inputs.len() {\n // TODO are bytes be in fr.to_buffer() ?\n let item_bytes = inputs[i].to_be_bytes(32);\n for j in 0..32 {\n bytes.push(item_bytes[j]);\n }\n }\n\n sha256_to_field(bytes.storage)\n}\n\n// Computes sha256 hash of 2 input hashes.\n//\n// NB: This method now takes in two 31 byte fields - it assumes that any input\n// is the result of a sha_to_field hash and => is truncated\n//\n// TODO(Jan and David): This is used for the encrypted_log hashes.\n// Can we check to see if we can just use hash_to_field or pedersen_compress here?\n//\npub fn accumulate_sha256(input: [Field; 2]) -> Field {\n // This is a note about the cpp code, since it takes an array of Fields\n // instead of a U128.\n // 4 Field elements when converted to bytes will usually \n // occupy 4 * 32 = 128 bytes.\n // However, this function is making the assumption that each Field \n // only occupies 128 bits.\n //\n // TODO(David): This does not seem to be getting guaranteed anywhere in the code?\n\n // Concatentate two fields into 32x2 = 64 bytes\n // accumulate_sha256 assumes that the inputs are pre-truncated 31 byte numbers\n let mut hash_input_flattened = [0; 64];\n for offset in 0..input.len() {\n let input_as_bytes = input[offset].to_be_bytes(32);\n for byte_index in 0..32 {\n hash_input_flattened[offset * 32 + byte_index] = input_as_bytes[byte_index];\n }\n }\n\n sha256_to_field(hash_input_flattened)\n}\n\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: [SideEffect; 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 pedersen_hash<N>(inputs: [Field; N], hash_index: u32) -> Field {\n dep::std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<N>(inputs: [Field; N]) -> Field {\n dep::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), 0, 0, L2ToL1Message::empty());\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let message = L2ToL1Message { recipient: EthAddress::from_field(3), content: 5, counter: 1234 };\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), 2, 4, message);\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n"},"22":{"path":"std/field.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 fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub fn modulus_le_bytes() -> [u8] {}\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"},"224":{"path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils/field.nr","source":"pub fn field_from_bytes<N>(bytes: [u8; N], big_endian: bool) -> Field {\n assert(bytes.len() < 32, \"field_from_bytes: N must be less than 32\");\n let mut as_field = 0;\n let mut offset = 1;\n for i in 0..N {\n let mut index = i;\n if big_endian {\n index = N - i - 1;\n }\n as_field += (bytes[index] as Field) * offset;\n offset *= 256;\n }\n\n as_field\n}\n\n// Convert a 32 byte array to a field element by truncating the final byte\npub fn field_from_bytes_32_trunc(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..15 {\n // covers bytes 16..30 (31 is truncated and ignored)\n low = low + (bytes32[15 + 15 - i] as Field) * v;\n v = v * 256;\n // covers bytes 0..14\n high = high + (bytes32[14 - i] as Field) * v;\n }\n // covers byte 15\n low = low + (bytes32[15] as Field) * v;\n\n low + high * v\n}\n\n// TODO to radix returns u8, so we cannot use bigger radixes. It'd be ideal to use a radix of the maximum range-constrained integer noir supports\npub fn full_field_less_than(lhs: Field, rhs: Field) -> bool {\n lhs.lt(rhs)\n}\n\npub fn full_field_greater_than(lhs: Field, rhs: Field) -> bool {\n rhs.lt(lhs)\n}\n\n#[test]\nunconstrained fn bytes_field_test() {\n // Tests correctness of field_from_bytes_32_trunc against existing methods\n // Bytes representing 0x543e0a6642ffeb8039296861765a53407bba62bd1c97ca43374de950bbe0a7\n let inputs = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28, 151, 202, 67, 55, 77, 233, 80, 187, 224, 167\n ];\n let field = field_from_bytes(inputs, true);\n let return_bytes = field.to_be_bytes(31);\n for i in 0..31 {\n assert_eq(inputs[i], return_bytes[i]);\n }\n // 32 bytes - we remove the final byte, and check it matches the field\n let inputs2 = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28, 151, 202, 67, 55, 77, 233, 80, 187, 224, 167, 158\n ];\n let field2 = field_from_bytes_32_trunc(inputs2);\n let return_bytes2 = field.to_be_bytes(31);\n\n for i in 0..31 {\n assert_eq(return_bytes2[i], return_bytes[i]);\n }\n assert_eq(field2, field);\n}\n"},"239":{"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, grumpkin_point::GrumpkinPoint,\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"},"28":{"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\n pub fn hash<N>(input: [Field; N], message_size: u64) -> 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<N>(input: [Field; N], in_len: u64, 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"},"301":{"path":"/usr/src/noir-projects/noir-contracts/contracts/key_registry_contract/src/main.nr","source":"contract KeyRegistry {\n use dep::authwit::auth::assert_current_call_valid_authwit_public;\n\n use dep::aztec::{\n keys::PublicKeys, state_vars::{SharedMutable, Map},\n protocol_types::{grumpkin_point::GrumpkinPoint, address::{AztecAddress, PartialAddress}}\n };\n\n global KEY_ROTATION_DELAY = 5;\n\n #[aztec(storage)]\n struct Storage {\n // The following stores a hash of individual master public keys\n // If you change slots of vars below, you must update the slots in `SharedMutablePrivateGetter` in aztec-nr/keys.\n // We store x and y coordinates in individual shared mutables as shared mutable currently supports only 1 field\n npk_m_x_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n npk_m_y_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n\n ivpk_m_x_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n ivpk_m_y_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n \n ovpk_m_x_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n ovpk_m_y_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n \n tpk_m_x_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n tpk_m_y_registry: Map<AztecAddress, SharedMutable<Field, KEY_ROTATION_DELAY>>,\n }\n\n #[aztec(public)]\n fn rotate_npk_m(address: AztecAddress, new_npk_m: GrumpkinPoint, nonce: Field) {\n // TODO: (#6137)\n if (!address.eq(context.msg_sender())) {\n assert_current_call_valid_authwit_public(&mut context, address);\n } else {\n assert(nonce == 0, \"invalid nonce\");\n }\n\n let npk_m_x_registry = storage.npk_m_x_registry.at(address);\n let npk_m_y_registry = storage.npk_m_y_registry.at(address);\n npk_m_x_registry.schedule_value_change(new_npk_m.x);\n npk_m_y_registry.schedule_value_change(new_npk_m.y);\n }\n\n #[aztec(public)]\n fn register(address: AztecAddress, partial_address: PartialAddress, keys: PublicKeys) {\n let computed_address = AztecAddress::compute(keys.hash(), partial_address);\n\n assert(computed_address.eq(address), \"Computed address does not match supplied address\");\n\n let npk_m_x_registry = storage.npk_m_x_registry.at(address);\n let npk_m_y_registry = storage.npk_m_y_registry.at(address);\n let ivpk_m_x_registry = storage.ivpk_m_x_registry.at(address);\n let ivpk_m_y_registry = storage.ivpk_m_y_registry.at(address);\n // let ovpk_m_x_registry = storage.ovpk_m_x_registry.at(address);\n // let ovpk_m_y_registry = storage.ovpk_m_y_registry.at(address);\n // let tpk_m_x_registry = storage.tpk_m_x_registry.at(address);\n // let tpk_m_y_registry = storage.tpk_m_y_registry.at(address);\n\n npk_m_x_registry.schedule_value_change(keys.npk_m.x);\n npk_m_y_registry.schedule_value_change(keys.npk_m.y);\n ivpk_m_x_registry.schedule_value_change(keys.ivpk_m.x);\n ivpk_m_y_registry.schedule_value_change(keys.ivpk_m.y);\n // Commented out as we hit the max enqueued public calls limit when not done so\n // ovpk_m_x_registry.schedule_value_change(ovpk_m.x);\n // ovpk_m_y_registry.schedule_value_change(ovpk_m.y);\n // tpk_m_x_registry.schedule_value_change(tpk_m.x);\n // tpk_m_y_registry.schedule_value_change(tpk_m.y);\n }\n}\n"},"35":{"path":"std/option.nr","source":"use crate::hash::{Hash, Hasher};\nuse crate::cmp::{Ordering, Ord, Eq};\nuse crate::default::Default;\n\nstruct Option<T> {\n _is_some: bool,\n _value: T,\n}\n\nimpl<T> Option<T> {\n /// Constructs a None value\n pub fn none() -> Self {\n Self { _is_some: false, _value: crate::unsafe::zeroed() }\n }\n\n /// Constructs a Some wrapper around the given value\n pub fn some(_value: T) -> Self {\n Self { _is_some: true, _value }\n }\n\n /// True if this Option is None\n pub fn is_none(self) -> bool {\n !self._is_some\n }\n\n /// True if this Option is Some\n pub fn is_some(self) -> bool {\n self._is_some\n }\n\n /// Asserts `self.is_some()` and returns the wrapped value.\n pub fn unwrap(self) -> T {\n assert(self._is_some);\n self._value\n }\n\n /// Returns the inner value without asserting `self.is_some()`\n /// Note that if `self` is `None`, there is no guarantee what value will be returned,\n /// only that it will be of type `T`.\n pub fn unwrap_unchecked(self) -> T {\n self._value\n }\n\n /// Returns the wrapped value if `self.is_some()`. Otherwise, returns the given default value.\n pub fn unwrap_or(self, default: T) -> T {\n if self._is_some { self._value } else { default }\n }\n\n /// Returns the wrapped value if `self.is_some()`. Otherwise, calls the given function to return\n /// a default value.\n pub fn unwrap_or_else<Env>(self, default: fn[Env]() -> T) -> T {\n if self._is_some {\n self._value\n } else {\n default()\n }\n }\n\n /// Asserts `self.is_some()` with a provided custom message and returns the contained `Some` value\n fn expect<N, MessageTypes>(self, message: fmtstr<N, MessageTypes>) -> T {\n assert(self.is_some(), message);\n self._value\n }\n\n /// If self is `Some(x)`, this returns `Some(f(x))`. Otherwise, this returns `None`.\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> Option<U> {\n if self._is_some {\n Option::some(f(self._value))\n } else {\n Option::none()\n }\n }\n\n /// If self is `Some(x)`, this returns `f(x)`. Otherwise, this returns the given default value.\n pub fn map_or<U, Env>(self, default: U, f: fn[Env](T) -> U) -> U {\n if self._is_some {\n f(self._value)\n } else {\n default\n }\n }\n\n /// If self is `Some(x)`, this returns `f(x)`. Otherwise, this returns `default()`.\n pub fn map_or_else<U, Env1, Env2>(self, default: fn[Env1]() -> U, f: fn[Env2](T) -> U) -> U {\n if self._is_some {\n f(self._value)\n } else {\n default()\n }\n }\n\n /// Returns None if self is None. Otherwise, this returns `other`.\n pub fn and(self, other: Self) -> Self {\n if self.is_none() {\n Option::none()\n } else {\n other\n }\n }\n\n /// If self is None, this returns None. Otherwise, this calls the given function\n /// with the Some value contained within self, and returns the result of that call.\n ///\n /// In some languages this function is called `flat_map` or `bind`.\n pub fn and_then<U, Env>(self, f: fn[Env](T) -> Option<U>) -> Option<U> {\n if self._is_some {\n f(self._value)\n } else {\n Option::none()\n }\n }\n\n /// If self is Some, return self. Otherwise, return `other`.\n pub fn or(self, other: Self) -> Self {\n if self._is_some { self } else { other }\n }\n\n /// If self is Some, return self. Otherwise, return `default()`.\n pub fn or_else<U, Env>(self, default: fn[Env]() -> Self) -> Self {\n if self._is_some { self } else { default() }\n }\n\n // If only one of the two Options is Some, return that option.\n // Otherwise, if both options are Some or both are None, None is returned.\n pub fn xor(self, other: Self) -> Self {\n if self._is_some {\n if other._is_some { Option::none() } else { self }\n } else if other._is_some {\n other\n } else {\n Option::none()\n }\n }\n\n /// Returns `Some(x)` if self is `Some(x)` and `predicate(x)` is true.\n /// Otherwise, this returns `None`\n pub fn filter<Env>(self, predicate: fn[Env](T) -> bool) -> Self {\n if self._is_some {\n if predicate(self._value) {\n self\n } else {\n Option::none()\n }\n } else {\n Option::none()\n }\n }\n\n /// Flattens an Option<Option<T>> into a Option<T>.\n /// This returns None if the outer Option is None. Otherwise, this returns the inner Option.\n pub fn flatten(option: Option<Option<T>>) -> Option<T> {\n if option._is_some {\n option._value\n } else {\n Option::none()\n }\n }\n}\n\nimpl<T> Default for Option<T> {\n fn default() -> Self {\n Option::none()\n }\n}\n\nimpl<T> Eq for Option<T> where T: Eq {\n fn eq(self, other: Self) -> bool {\n if self._is_some == other._is_some {\n if self._is_some {\n self._value == other._value\n } else {\n true\n }\n } else {\n false\n }\n }\n}\n\nimpl<T> Hash for Option<T> where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher {\n self._is_some.hash(state);\n if self._is_some {\n self._value.hash(state);\n }\n }\n}\n\n// For this impl we're declaring Option::none < Option::some\nimpl<T> Ord for Option<T> where T: Ord {\n fn cmp(self, other: Self) -> Ordering {\n if self._is_some {\n if other._is_some {\n self._value.cmp(other._value)\n } else {\n Ordering::greater()\n }\n } else {\n if other._is_some {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n }\n}\n"},"4":{"path":"std/collections/bounded_vec.nr","source":"use crate::{cmp::Eq, convert::From};\n\nstruct BoundedVec<T, MaxLen> {\n storage: [T; MaxLen],\n len: u64,\n}\n\nimpl<T, MaxLen> BoundedVec<T, MaxLen> {\n pub fn new() -> Self {\n let zeroed = crate::unsafe::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n pub fn get(mut self: Self, index: u64) -> T {\n assert(index < self.len);\n self.storage[index]\n }\n\n pub fn get_unchecked(mut self: Self, index: u64) -> T {\n self.storage[index]\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) -> u64 {\n self.len\n }\n\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u64 {\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<Len>(&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<Len>(&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<Len>(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\nimpl<T, MaxLen> 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, MaxLen, Len> 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 // TODO: Allow imports from \"super\"\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 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"},"43":{"path":"std/uint128.nr","source":"use crate::ops::{Add, Sub, Mul, Div, Rem, Not, BitOr, BitAnd, BitXor, Shl, Shr};\nuse crate::cmp::{Eq, Ord, Ordering};\n\nglobal pow64 : Field = 18446744073709551616; //2^64;\n\nstruct U128 {\n lo: Field,\n hi: Field,\n}\n\nimpl U128 {\n\n pub fn from_u64s_le(lo: u64, hi: u64) -> U128 {\n // in order to handle multiplication, we need to represent the product of two u64 without overflow\n assert(crate::field::modulus_num_bits() as u32 > 128);\n U128 { lo: lo as Field, hi: hi as Field }\n }\n\n pub fn from_u64s_be(hi: u64, lo: u64) -> U128 {\n U128::from_u64s_le(lo, hi)\n }\n\n pub fn from_le_bytes(bytes: [u8; 16]) -> U128 {\n let mut lo = 0;\n let mut base = 1;\n for i in 0..8 {\n lo += (bytes[i] as Field)*base;\n base *= 256;\n }\n let mut hi = 0;\n base = 1;\n for i in 8..16 {\n hi += (bytes[i] as Field)*base;\n base *= 256;\n }\n U128 { lo, hi }\n }\n\n pub fn to_be_bytes(self: Self) -> [u8; 16] {\n let lo = self.lo.to_be_bytes(8);\n let hi = self.hi.to_be_bytes(8);\n let mut bytes = [0; 16];\n for i in 0..8 {\n bytes[i] = hi[i];\n bytes[i+8] = lo[i];\n }\n bytes\n }\n\n pub fn to_le_bytes(self: Self) -> [u8; 16] {\n let lo = self.lo.to_le_bytes(8);\n let hi = self.hi.to_le_bytes(8);\n let mut bytes = [0; 16];\n for i in 0..8 {\n bytes[i] = lo[i];\n bytes[i+8] = hi[i];\n }\n bytes\n }\n\n pub fn from_hex<N>(hex: str<N>) -> U128 {\n let N = N as u32;\n let bytes = hex.as_bytes();\n // string must starts with \"0x\"\n assert((bytes[0] == 48) & (bytes[1] == 120), \"Invalid hexadecimal string\");\n assert(N < 35, \"Input does not fit into a U128\");\n\n let mut lo = 0;\n let mut hi = 0;\n let mut base = 1;\n if N <= 18 {\n for i in 0..N - 2 {\n lo += U128::decode_ascii(bytes[N-i-1])*base;\n base = base*16;\n }\n } else {\n for i in 0..16 {\n lo += U128::decode_ascii(bytes[N-i-1])*base;\n base = base*16;\n }\n base = 1;\n for i in 17..N - 1 {\n hi += U128::decode_ascii(bytes[N-i])*base;\n base = base*16;\n }\n }\n U128 { lo: lo as Field, hi: hi as Field }\n }\n\n fn decode_ascii(ascii: u8) -> Field {\n if ascii < 58 {\n ascii - 48\n } else if ascii < 71 {\n ascii - 55\n } else {\n ascii - 87\n } as Field\n }\n\n unconstrained fn unconstrained_div(self: Self, b: U128) -> (U128, U128) {\n if self < b {\n (U128::from_u64s_le(0, 0), self)\n } else {\n //TODO check if this can overflow?\n let (q,r) = self.unconstrained_div(b * U128::from_u64s_le(2, 0));\n let q_mul_2 = q * U128::from_u64s_le(2, 0);\n if r < b {\n (q_mul_2, r)\n } else {\n (q_mul_2 + U128::from_u64s_le(1, 0), r - b)\n }\n }\n }\n\n pub fn from_integer<T>(i: T) -> U128 {\n let f = crate::as_field(i);\n // Reject values which would overflow a u128\n f.assert_max_bit_size(128);\n let lo = f as u64 as Field;\n let hi = (f - lo) / pow64;\n U128 { lo, hi }\n }\n\n pub fn to_integer<T>(self) -> T {\n crate::from_field(self.lo + self.hi * pow64)\n }\n\n fn wrapping_mul(self: Self, b: U128) -> U128 {\n let low = self.lo * b.lo;\n let lo = low as u64 as Field;\n let carry = (low - lo) / pow64;\n let high = if crate::field::modulus_num_bits() as u32 > 196 {\n (self.lo + self.hi) * (b.lo + b.hi) - low + carry\n } else {\n self.lo * b.hi + self.hi * b.lo + carry\n };\n let hi = high as u64 as Field;\n U128 { lo, hi }\n }\n}\n\nimpl Add for U128 {\n fn add(self: Self, b: U128) -> U128 {\n let low = self.lo + b.lo;\n let lo = low as u64 as Field;\n let carry = (low - lo) / pow64; \n let high = self.hi + b.hi + carry;\n let hi = high as u64 as Field;\n assert(hi == high, \"attempt to add with overflow\");\n U128 {\n lo,\n hi,\n }\n }\n}\n\nimpl Sub for U128 {\n fn sub(self: Self, b: U128) -> U128 {\n let low = pow64 + self.lo - b.lo;\n let lo = low as u64 as Field;\n let borrow = (low == lo) as Field;\n let high = self.hi - b.hi - borrow;\n let hi = high as u64 as Field;\n assert(hi == high, \"attempt to subtract with underflow\");\n U128 {\n lo,\n hi,\n }\n }\n}\n\nimpl Mul for U128 {\n fn mul(self: Self, b: U128) -> U128 {\n assert(self.hi*b.hi == 0, \"attempt to multiply with overflow\");\n let low = self.lo*b.lo;\n let lo = low as u64 as Field;\n let carry = (low - lo) / pow64;\n let high = if crate::field::modulus_num_bits() as u32 > 196 {\n (self.lo+self.hi)*(b.lo+b.hi) - low + carry\n } else {\n self.lo*b.hi + self.hi*b.lo + carry\n };\n let hi = high as u64 as Field;\n assert(hi == high, \"attempt to multiply with overflow\");\n U128 {\n lo,\n hi,\n }\n }\n}\n\nimpl Div for U128 {\n fn div(self: Self, b: U128) -> U128 {\n let (q,r) = self.unconstrained_div(b);\n let a = b * q + r;\n assert_eq(self, a);\n assert(r < b);\n q\n }\n}\n\nimpl Rem for U128 {\n fn rem(self: Self, b: U128) -> U128 {\n let (q,r) = self.unconstrained_div(b);\n let a = b * q + r;\n assert_eq(self, a);\n assert(r < b);\n r\n }\n}\n\nimpl Eq for U128 {\n fn eq(self: Self, b: U128) -> bool {\n (self.lo == b.lo) & (self.hi == b.hi)\n }\n}\n\nimpl Ord for U128 {\n fn cmp(self, other: Self) -> Ordering {\n let hi_ordering = (self.hi as u64).cmp((other.hi as u64));\n let lo_ordering = (self.lo as u64).cmp((other.lo as u64));\n \n if hi_ordering == Ordering::equal() {\n lo_ordering\n } else {\n hi_ordering\n }\n }\n}\n\nimpl Not for U128 { \n fn not(self) -> U128 {\n U128 {\n lo: (!(self.lo as u64)) as Field,\n hi: (!(self.hi as u64)) as Field\n }\n }\n}\n\nimpl BitOr for U128 { \n fn bitor(self, other: U128) -> U128 {\n U128 {\n lo: ((self.lo as u64) | (other.lo as u64)) as Field,\n hi: ((self.hi as u64) | (other.hi as u64)) as Field\n }\n }\n}\n\nimpl BitAnd for U128 {\n fn bitand(self, other: U128) -> U128 { \n U128 {\n lo: ((self.lo as u64) & (other.lo as u64)) as Field,\n hi: ((self.hi as u64) & (other.hi as u64)) as Field\n }\n }\n}\n\nimpl BitXor for U128 {\n fn bitxor(self, other: U128) -> U128 { \n U128 {\n lo: ((self.lo as u64) ^ (other.lo as u64)) as Field,\n hi: ((self.hi as u64) ^ (other.hi as u64)) as Field\n }\n }\n}\n\nimpl Shl for U128 { \n fn shl(self, other: u8) -> U128 { \n assert(other < 128, \"attempt to shift left with overflow\");\n let exp_bits = (other as Field).to_be_bits(7);\n\n let mut r: Field = 2;\n let mut y: Field = 1;\n for i in 1..8 {\n y = (exp_bits[7-i] as Field) * (r * y) + (1 - exp_bits[7-i] as Field) * y;\n r *= r;\n }\n self.wrapping_mul(U128::from_integer(y))\n } \n}\n\nimpl Shr for U128 { \n fn shr(self, other: u8) -> U128 { \n assert(other < 128, \"attempt to shift right with overflow\");\n let exp_bits = (other as Field).to_be_bits(7);\n\n let mut r: Field = 2;\n let mut y: Field = 1;\n for i in 1..8 {\n y = (exp_bits[7-i] as Field) * (r * y) + (1 - exp_bits[7-i] as Field) * y;\n r *= r;\n }\n self / U128::from_integer(y)\n } \n}\n\nmod test {\n use crate::uint128::{U128, pow64};\n\n #[test]\n fn test_not() {\n let num = U128::from_u64s_le(0, 0);\n let not_num = num.not();\n\n let max_u64: Field = pow64 - 1;\n assert_eq(not_num.hi, max_u64);\n assert_eq(not_num.lo, max_u64);\n\n let not_not_num = not_num.not();\n assert_eq(num, not_not_num);\n }\n}\n"},"50":{"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::{GENERATOR_INDEX__AUTHWIT_INNER, GENERATOR_INDEX__AUTHWIT_OUTER}, hash::pedersen_hash\n};\nuse dep::aztec::{\n prelude::Deserialize,\n context::{\n PrivateContext, PublicContext, Context, gas::GasOpts,\n interface::{ContextInterface, PublicContextInterface}\n},\n hash::hash_args_array\n};\n\nglobal IS_VALID_SELECTOR = 0xabf64ad4; // 4 first bytes of keccak256(\"IS_VALID()\")\n\n// docs:start:assert_current_call_valid_authwit\n// Assert that `on_behalf_of` have authorized the current call with a valid authentication witness\npub fn assert_current_call_valid_authwit(context: &mut PrivateContext, on_behalf_of: AztecAddress) {\n let function_selector = FunctionSelector::from_signature(\"spend_private_authwit(Field)\");\n let inner_hash = compute_inner_authwit_hash([context.msg_sender().to_field(), context.selector().to_field(), context.args_hash]);\n let result: Field = context.call_private_function(on_behalf_of, function_selector, [inner_hash]).unpack_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n// docs:end:assert_current_call_valid_authwit\n\n// docs:start:assert_current_call_valid_authwit_public\n// Assert that `on_behalf_of` have authorized the current call in a public context\npub fn assert_current_call_valid_authwit_public<TPublicContext>(\n context: &mut TPublicContext,\n on_behalf_of: AztecAddress\n) where TPublicContext: ContextInterface + PublicContextInterface {\n let function_selector = FunctionSelector::from_signature(\"spend_public_authwit(Field)\");\n let inner_hash = compute_inner_authwit_hash(\n [(*context).msg_sender().to_field(), (*context).selector().to_field(), (*context).get_args_hash()]\n );\n let result: Field = PublicContextInterface::call_public_function(\n context,\n on_behalf_of,\n function_selector,\n [inner_hash].as_slice(),\n GasOpts::default()\n ).deserialize_into();\n assert(result == IS_VALID_SELECTOR, \"Message not authorized by account\");\n}\n// docs:end:assert_current_call_valid_authwit_public\n\n// docs:start:compute_call_authwit_hash\n// Compute the message hash to be used by an authentication witness \npub fn compute_call_authwit_hash<N>(\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_outer_authwit_hash(consumer, chain_id, version, inner_hash)\n}\n// docs:end:compute_call_authwit_hash\n\npub fn compute_inner_authwit_hash<N>(args: [Field; N]) -> Field {\n pedersen_hash(args, GENERATOR_INDEX__AUTHWIT_INNER)\n}\n\npub fn compute_outer_authwit_hash(\n consumer: AztecAddress,\n chain_id: Field,\n version: Field,\n inner_hash: Field\n) -> 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"},"60":{"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 grumpkin_point::GrumpkinPoint, traits::{Deserialize, Serialize}\n};\n\n// Note: In fetch_key_from_registry we expect that the shared mutable slot is index * 2 + 1 for the x coordinate and\n// index * 2 + 2 for the y coordinate. For example, the npk_m x coordinates will be stored in a map at storage slot\n// 0 * 2 + 1 = 1, and the npk_m y coordinates at 2 * 2 + 2 = 6. If this changes the function will need to be\n// refactored.\nglobal NULLIFIER_INDEX = 0;\nglobal INCOMING_INDEX = 1;\nglobal OUTGOING_INDEX = 2;\nglobal TAGGING_INDEX = 3;\n\nglobal PUBLIC_KEYS_LENGTH = 8;\n\nstruct PublicKeys {\n npk_m: GrumpkinPoint,\n ivpk_m: GrumpkinPoint,\n ovpk_m: GrumpkinPoint,\n tpk_m: GrumpkinPoint,\n}\n\nimpl PublicKeys {\n pub fn hash(self) -> PublicKeysHash {\n PublicKeysHash::from_field(\n poseidon2_hash(\n [\n self.npk_m.x,\n self.npk_m.y,\n self.ivpk_m.x,\n self.ivpk_m.y,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.tpk_m.x,\n self.tpk_m.y,\n GENERATOR_INDEX__PUBLIC_KEYS_HASH\n ]\n )\n )\n }\n\n pub fn get_key_by_index(self, index: Field) -> GrumpkinPoint {\n assert(index as u8 < 4, \"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.ivpk_m.x,\n self.ivpk_m.y,\n self.ovpk_m.x,\n self.ovpk_m.y,\n self.tpk_m.x,\n self.tpk_m.y,\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: GrumpkinPoint { x: serialized[0], y: serialized[1] },\n ivpk_m: GrumpkinPoint { x: serialized[2], y: serialized[3] },\n ovpk_m: GrumpkinPoint { x: serialized[4], y: serialized[5] },\n tpk_m: GrumpkinPoint { x: serialized[6], y: serialized[7] },\n }\n }\n}\n\n#[test]\nfn compute_public_keys_hash() {\n let keys = PublicKeys {\n npk_m: GrumpkinPoint { x: 1, y: 2 },\n ivpk_m: GrumpkinPoint { x: 3, y: 4 },\n ovpk_m: GrumpkinPoint { x: 5, y: 6 },\n tpk_m: GrumpkinPoint { x: 7, y: 8 }\n };\n\n let actual = keys.hash();\n let expected_public_keys_hash = 0x1936abe4f6a920d16a9f6917f10a679507687e2cd935dd1f1cdcb1e908c027f3;\n assert(actual.to_field() == expected_public_keys_hash);\n}\n\n#[test]\nfn test_public_keys_serialization() {\n let keys = PublicKeys {\n npk_m: GrumpkinPoint { x: 1, y: 2 },\n ivpk_m: GrumpkinPoint { x: 3, y: 4 },\n ovpk_m: GrumpkinPoint { x: 5, y: 6 },\n tpk_m: GrumpkinPoint { x: 7, y: 8 }\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"},"61":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/public_storage.nr","source":"use dep::protocol_types::traits::{Deserialize, Serialize};\nuse crate::oracle::storage::{storage_read, storage_write};\n\npub fn read<T, N>(storage_slot: Field) -> T where T: Deserialize<N> {\n T::deserialize(storage_read(storage_slot))\n}\n\npub fn write<T, N>(storage_slot: Field, value: T) where T: Serialize<N> {\n storage_write(storage_slot, value.serialize());\n}\n\n// Ideally we'd do the following, but we cannot because of https://github.com/noir-lang/noir/issues/4633\n// pub fn read_historical<T, N>(\n// storage_slot: Field,\n// context: PrivateContext\n// ) -> T where T: Deserialize<N> {\n// let mut fields = [0; N];\n// for i in 0..N {\n// fields[i] = public_storage_historical_read(\n// context,\n// storage_slot + i as Field,\n// context.this_address()\n// );\n// }\n// T::deserialize(fields)\n// }\n\nmod tests {\n use dep::std::test::OracleMock;\n use dep::protocol_types::traits::{Deserialize, Serialize};\n use crate::public_storage;\n\n struct TestStruct {\n a: Field,\n b: Field,\n }\n\n impl Deserialize<2> for TestStruct {\n fn deserialize(fields: [Field; 2]) -> TestStruct {\n TestStruct { a: fields[0], b: fields[1] }\n }\n }\n\n impl Serialize<2> for TestStruct {\n fn serialize(self) -> [Field; 2] {\n [self.a, self.b]\n }\n }\n\n #[test]\n fn test_read() {\n let slot = 7;\n let written = TestStruct { a: 13, b: 42 };\n\n OracleMock::mock(\"storageRead\").with_params((slot, 2)).returns(written.serialize());\n\n let read: TestStruct = public_storage::read(slot);\n assert_eq(read.a, 13);\n assert_eq(read.b, 42);\n }\n\n #[test]\n fn test_write() {\n let slot = 7;\n let to_write = TestStruct { a: 13, b: 42 };\n\n let mock = OracleMock::mock(\"storageWrite\").returns([0; 2]); // The return value is unused\n\n public_storage::write(slot, to_write);\n assert_eq(mock.get_last_params(), (slot, to_write.serialize()));\n }\n}\n"},"78":{"path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/public_context.nr","source":"use crate::{\n context::{\n inputs::PublicContextInputs, interface::ContextInterface, interface::PublicContextInterface,\n gas::GasOpts\n},\n messaging::process_l1_to_l2_message,\n oracle::{arguments, public_call::call_public_function_internal, returns, logs_traits::ToBytesForUnencryptedLog},\n hash::{hash_args, ArgsHasher, compute_unencrypted_log_hash}\n};\nuse dep::protocol_types::{\n abis::{\n global_variables::GlobalVariables, function_selector::FunctionSelector,\n private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_stack_item::PublicCallStackItem,\n public_circuit_public_inputs::PublicCircuitPublicInputs, read_request::ReadRequest,\n note_hash::NoteHash, nullifier::Nullifier, side_effect::SideEffect\n},\n hash::silo_nullifier, address::{AztecAddress, EthAddress},\n constants::{\n MAX_NEW_NOTE_HASHES_PER_CALL, MAX_NEW_L2_TO_L1_MSGS_PER_CALL, MAX_NEW_NULLIFIERS_PER_CALL,\n MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_DATA_READS_PER_CALL,\n MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,\n MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL,\n MAX_UNENCRYPTED_LOGS_PER_CALL\n},\n contrakt::{storage_read::StorageRead, storage_update_request::StorageUpdateRequest}, header::Header,\n messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::{Deserialize, Empty}\n};\n\nstruct PublicContext {\n inputs: PublicContextInputs,\n side_effect_counter: u32,\n\n args_hash : Field,\n return_hash : Field,\n\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n nullifier_non_existent_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL>,\n contract_storage_update_requests: BoundedVec<StorageUpdateRequest, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL>,\n contract_storage_reads: BoundedVec<StorageRead, MAX_PUBLIC_DATA_READS_PER_CALL>,\n public_call_stack_hashes: BoundedVec<Field, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n\n new_note_hashes: BoundedVec<NoteHash, MAX_NEW_NOTE_HASHES_PER_CALL>,\n new_nullifiers: BoundedVec<Nullifier, MAX_NEW_NULLIFIERS_PER_CALL>,\n\n new_l2_to_l1_msgs: BoundedVec<L2ToL1Message, MAX_NEW_L2_TO_L1_MSGS_PER_CALL>,\n\n unencrypted_logs_hashes: BoundedVec<SideEffect, MAX_UNENCRYPTED_LOGS_PER_CALL>,\n unencrypted_log_preimages_length: Field,\n\n // Header of a block whose state is used during public execution. Set by sequencer to be a header of a block\n // previous to the one in which the tx is included.\n historical_header: Header,\n prover_address: AztecAddress,\n}\n\nimpl PublicContext {\n pub fn new(inputs: PublicContextInputs, args_hash: Field) -> PublicContext {\n PublicContext {\n inputs,\n side_effect_counter: inputs.start_side_effect_counter,\n args_hash,\n return_hash: 0,\n nullifier_read_requests: BoundedVec::new(),\n nullifier_non_existent_read_requests: BoundedVec::new(),\n contract_storage_update_requests: BoundedVec::new(),\n contract_storage_reads: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n unencrypted_log_preimages_length: 0,\n historical_header: inputs.historical_header,\n prover_address: AztecAddress::zero()\n }\n }\n\n pub fn call_public_function_no_args<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> FunctionReturns<RETURNS_COUNT> {\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<RETURNS_COUNT>(\n self: &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 ) -> FunctionReturns<RETURNS_COUNT> {\n let side_effect_counter = self.side_effect_counter;\n // TODO(6052): get next value from output of `call_public_function_internal`\n self.side_effect_counter += 1;\n\n let raw_returns = call_public_function_internal(\n contract_address,\n function_selector,\n args_hash,\n side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n FunctionReturns::new(raw_returns)\n }\n\n pub fn set_return_hash(&mut self, returns_hasher: ArgsHasher) {\n returns::pack_returns(returns_hasher.fields);\n self.return_hash = returns_hasher.hash();\n }\n\n // Keep private or ask the AVM team if you want to change it.\n 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 // Keep private or ask the AVM team if you want to change it.\n fn push_nullifier_non_existent_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.next_counter() };\n self.nullifier_non_existent_read_requests.push(request);\n }\n\n pub fn finish(self) -> PublicCircuitPublicInputs {\n // Compute the public call stack hashes\n let pub_circuit_pub_inputs = PublicCircuitPublicInputs {\n call_context: self.inputs.call_context, // Done\n args_hash: self.args_hash, // Done\n nullifier_read_requests: self.nullifier_read_requests.storage,\n nullifier_non_existent_read_requests: self.nullifier_non_existent_read_requests.storage,\n contract_storage_update_requests: self.contract_storage_update_requests.storage,\n contract_storage_reads: self.contract_storage_reads.storage,\n returns_hash: self.return_hash,\n new_note_hashes: self.new_note_hashes.storage,\n new_nullifiers: self.new_nullifiers.storage,\n public_call_stack_hashes: self.public_call_stack_hashes.storage,\n new_l2_to_l1_msgs: self.new_l2_to_l1_msgs.storage,\n start_side_effect_counter: self.inputs.start_side_effect_counter,\n end_side_effect_counter: self.side_effect_counter,\n unencrypted_logs_hashes: self.unencrypted_logs_hashes.storage,\n unencrypted_log_preimages_length: self.unencrypted_log_preimages_length + 4,\n historical_header: self.inputs.historical_header,\n global_variables: self.inputs.public_global_variables,\n prover_address: self.prover_address,\n revert_code: 0,\n start_gas_left: self.inputs.gas_left,\n end_gas_left: self.inputs.gas_left, // AVM should decrease this value\n transaction_fee: self.inputs.transaction_fee\n };\n pub_circuit_pub_inputs\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 ContextInterface for PublicContext {\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.public_global_variables.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.public_global_variables.version\n }\n\n fn selector(self) -> FunctionSelector {\n self.inputs.call_context.function_selector\n }\n\n fn get_args_hash(self) -> Field {\n self.args_hash\n }\n\n fn push_new_note_hash(&mut self, note_hash: Field) {\n self.new_note_hashes.push(NoteHash { value: note_hash, counter: self.next_counter() });\n }\n\n fn push_new_nullifier(&mut self, nullifier: Field, _nullified_note_hash: Field) {\n self.new_nullifiers.push(Nullifier {\n value: nullifier,\n note_hash: 0, // cannot nullify pending notes in public context\n counter: self.next_counter()\n });\n }\n}\n\nimpl PublicContextInterface for PublicContext {\n fn block_number(self) -> Field {\n self.inputs.public_global_variables.block_number\n }\n\n fn timestamp(self) -> u64 {\n self.inputs.public_global_variables.timestamp\n }\n\n fn coinbase(self) -> EthAddress {\n assert(false, \"'coinbase' not implemented!\");\n EthAddress::zero()\n }\n\n fn fee_recipient(self) -> AztecAddress {\n assert(false, \"'fee_recipient' not implemented!\");\n AztecAddress::zero()\n }\n\n fn fee_per_da_gas(self) -> Field {\n self.inputs.public_global_variables.gas_fees.fee_per_da_gas\n }\n\n fn fee_per_l2_gas(self) -> Field {\n self.inputs.public_global_variables.gas_fees.fee_per_l2_gas\n }\n\n fn transaction_fee(self) -> Field {\n self.inputs.transaction_fee\n }\n\n fn nullifier_exists(self, unsiloed_nullifier: Field, address: AztecAddress) -> bool {\n // Current public can only check for settled nullifiers, so we always silo.\n let siloed_nullifier = silo_nullifier(address, unsiloed_nullifier);\n nullifier_exists_oracle(siloed_nullifier) == 1\n }\n\n fn message_portal(&mut self, recipient: EthAddress, content: Field) {\n let message = L2ToL1Message { recipient, content, counter: self.next_counter() };\n self.new_l2_to_l1_msgs.push(message);\n }\n\n // We can consume message with a secret in public context because the message cannot be modified and therefore\n // there is no front-running risk (e.g. somebody could front run you to claim your tokens to your address).\n // Leaf index is not used in public context, but it is used in the AVMContext which will replace it.\n fn consume_l1_to_l2_message(&mut self, content: Field, secret: Field, sender: EthAddress, _leaf_index: Field) {\n let this = (*self).this_address();\n let nullifier = process_l1_to_l2_message(\n self.historical_header.state.l1_to_l2_message_tree.root,\n this,\n sender,\n self.chain_id(),\n self.version(),\n content,\n secret\n );\n\n // Push nullifier (and the \"commitment\" corresponding to this can be \"empty\")\n self.push_new_nullifier(nullifier, 0)\n }\n\n fn emit_unencrypted_log<T, N, M>(&mut self, log: T) where T: ToBytesForUnencryptedLog<N, M> {\n let event_selector = 5; // TODO: compute actual event selector.\n let contract_address = self.this_address();\n let log_slice = log.to_be_bytes_arr();\n let log_hash = compute_unencrypted_log_hash(\n contract_address,\n event_selector,\n log\n );\n let side_effect = SideEffect { value: log_hash, counter: self.next_counter() };\n self.unencrypted_logs_hashes.push(side_effect);\n // 44 = addr (32) + selector (4) + raw log len (4) + processed log len (4)\n self.unencrypted_log_preimages_length = self.unencrypted_log_preimages_length + 44 + log_slice.len().to_field();\n // Call oracle to broadcast log\n let _void = emit_unencrypted_log_oracle(contract_address, event_selector, log, side_effect.counter);\n }\n\n fn call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field],\n _gas: GasOpts\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n fn static_call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field],\n _gas: GasOpts\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n fn delegate_call_public_function<RETURNS_COUNT>(\n self: &mut Self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field]\n ) -> FunctionReturns<RETURNS_COUNT> {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n}\n\nimpl Empty for PublicContext {\n fn empty() -> Self {\n PublicContext {\n inputs: PublicContextInputs::empty(),\n side_effect_counter: 0 as u32,\n args_hash : 0,\n return_hash : 0,\n nullifier_read_requests: BoundedVec::new(),\n nullifier_non_existent_read_requests: BoundedVec::new(),\n contract_storage_update_requests: BoundedVec::new(),\n contract_storage_reads: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n unencrypted_logs_hashes: BoundedVec::new(),\n unencrypted_log_preimages_length: 0,\n historical_header: Header::empty(),\n prover_address: AztecAddress::zero(),\n }\n }\n}\n\n#[oracle(checkNullifierExists)]\nfn nullifier_exists_oracle(nullifier: Field) -> Field {}\n\n#[oracle(emitUnencryptedLog)]\nfn emit_unencrypted_log_oracle<T>(\n _contract_address: AztecAddress,\n _event_selector: Field,\n _message: T,\n _counter: u32\n) -> Field {}\n\nstruct FunctionReturns<N> {\n values: [Field; N]\n}\n\nimpl<N> FunctionReturns<N> {\n pub fn new(values: [Field; N]) -> FunctionReturns<N> {\n FunctionReturns { values }\n }\n\n pub fn assert_empty(returns: FunctionReturns<0>) {\n assert(returns.values.len() == 0);\n }\n\n pub fn raw(self) -> [Field; N] {\n self.values\n }\n\n pub fn deserialize_into<T>(self) -> T where T: Deserialize<N> {\n Deserialize::deserialize(self.raw())\n }\n}\n"},"96":{"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\n},\n traits::Hash, hash::{pedersen_hash, poseidon2_hash, silo_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_encrypted_log_hash<N, M, L>(encrypted_log: [Field; M]) -> Field where [Field; N]: LensForEncryptedLog<N, M, L> {\n let mut bytes = [0; L];\n // Note that bytes.append(encrypted_log[i].to_be_bytes(31)) results in bound error\n for i in 0..M - 1 {\n let to_add = encrypted_log[i].to_be_bytes(31);\n for j in 0..31 {\n bytes[i*31 + j] = to_add[j];\n }\n }\n // can't assign as L - not in scope error for: L-31*(M-1)\n let num_bytes = bytes.len() as u32 - 31 * (M - 1);\n let to_add_final = encrypted_log[M - 1].to_be_bytes(num_bytes);\n for j in 0..num_bytes {\n bytes[(M-1)*31 + j] = to_add_final[j];\n }\n sha256_to_field(bytes)\n}\n\npub fn compute_unencrypted_log_hash<T, N, M>(\n contract_address: AztecAddress,\n event_selector: Field,\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 event_bytes = event_selector.to_be_bytes(4);\n for i in 0..4 {\n hash_bytes[32 + i] = event_bytes[i];\n }\n let len_bytes = (n as Field).to_be_bytes(4);\n for i in 0..4 {\n hash_bytes[36 + i] = len_bytes[i];\n }\n for i in 0..n {\n hash_bytes[40 + 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\npub fn compute_siloed_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n silo_nullifier(address, nullifier)\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<N>(&mut self, fields: [Field; N]) {\n for i in 0..N {\n self.fields = self.fields.push_back(fields[i]);\n }\n }\n}\n\npub fn hash_args_array<N>(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() < ARGS_HASH_CHUNK_COUNT * ARGS_HASH_CHUNK_LENGTH);\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..800 {\n input.add(i as Field);\n }\n let hash = input.hash();\n assert(hash == 0x05a1023fef839ac88731f49ae983e172c1b600a3c8f3393ad0ac25d819ac0f0f);\n}\n\n#[test]\nfn compute_enc_log_hash_304() {\n let input = [\n 0x0000000000000000000000000000000000000000000000000000000000000000,\n 0x0021a0d4aa9989656b592187cf6da1965df53ab2ff2277421e663465cf20d3e9,\n 0x00c3969cc350f3474f8187a33ac1317181961f5f94043b07ce888d85a5d20cb5,\n 0x0058198041ed1547b056955b5141a5a8a1551b0c8d094255ec9daaf3604d9348,\n 0x00247ad96df2e4d984cf795ed7316234743a681f824a45c46253de8bfde48850,\n 0x007fc251f4ce44f4e9aba3dbf6567228be28fac85660156f2825ddb0b0577457,\n 0x009315851323c6bc2aaa42e23fe5f3be97208f2d8167eafdfc5742d94f2f4dd4,\n 0x00b938289e563b0fe01982cd9b8d9e33e3069046768ad01c0fb05e429e7b7909,\n 0x00fbcc257a3211f705b471eee763b0f43876a2b2178fab6d2b09bd2b7e086584,\n 0x000000000000008c3289b5793b7448f4d45ecde039d004b6f037cad10b5c2336\n ];\n let hash = compute_encrypted_log_hash(input);\n assert(hash == 0x001e3c013994947fe28957a876bf1b2c3a69ac69cc92909efd4f2ae9b972f893);\n}\n\n#[test]\nfn compute_enc_log_hash_368() {\n let input = [\n 0x0000000000000000000000000000000000000000000000000000000000000000,\n 0x002190697d2a50e229a7a077e0951073f7d51e46679f10466153c308b63b1ea9,\n 0x00543e346facc6799b94514c9d461bcc836c04b083b13c2e4544a39130473c1e,\n 0x000df76d59526f8f953bcc7d9f77cdaefd36435931f0d7348f794bc275b42ded,\n 0x00a6d390ee1723af7f7ac1ae4fc81a266b2370fe07040a36d06dbe242e02413e,\n 0x00acbce15b6af1fbe94bd0f7b70f11768265dff77bfe63398f2a053efdfdf26d,\n 0x00b8b131b9f42c689beb095ba4f4a836d4d15c9068d0422e9add6ca82b786329,\n 0x00661a6a654b38f0f97d404ef5553e0efea9ed670561ae86685b31bbb2824fac,\n 0x00113a6b58edfaec0065b365f66ba8d8aa68254b8690035e8d671a17a843f0a1,\n 0x0023f2d2eae8c4449bac8f268a3e62a3faace1fe1401f0efdc8b0ccfbc8fb271,\n 0x00cf6603f8c61993dd2f662c719671c61727a2f4e925fb988b23d31feccd77d9,\n 0x0000000000a402a84b7294671799c38dd805f6a827a3a12633fdf91a57debe1f\n ];\n let hash = compute_encrypted_log_hash(input);\n assert(hash == 0x00a0d651ac0cbc01b72430fa6a05d91738595af6e0229347b4c9968223387aeb);\n}\n\n#[test]\nfn compute_unenc_log_hash_array() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let event_selector = 5;\n let log = [\n 0x20660de09f35f876e3e69d227b2a35166ad05f09d82d06366ec9b6f65a51fec2,\n 0x1b52bfe3b8689761916f76dc3d38aa8810860db325cd39ca611eed980091f01c,\n 0x2e559c4045c378a56ad13b9edb1e8de4e7ad3b3aa35cc7ba9ec77f7a68fa43a4,\n 0x25d0f689c4a4178a29d59306f2675824d19be6d25e44fa03b03f49c263053dd2,\n 0x2d513a722d6f352dc0961f156afdc5e31495b9f0e35cb069261a8e55e2df67fd\n ];\n let hash = compute_unencrypted_log_hash(contract_address, event_selector, log);\n assert(hash == 0x00846d6969c8c2f61d39cd2762efcb0abb14f88d59c2675910251ef2bcffe9a7);\n}\n\n#[test]\nfn compute_unenc_log_hash_addr() {\n let contract_address = AztecAddress::from_field(0x233a3e0df23b2b15b324194cb4a151f26c0b7333250781d34cc269d85dc334c6);\n let event_selector = 5;\n let log = AztecAddress::from_field(0x26aa302d4715fd8a687453cb26d616b0768027bd54bcae56b09d908ecd9f8303);\n let hash = compute_unencrypted_log_hash(contract_address, event_selector, log);\n assert(hash == 0x00880a801230ea08c98a802a11b4786cba474513875f0fc69a615e81c5f9f21c);\n}\n\n#[test]\nfn compute_unenc_log_hash_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let event_selector = 5;\n let log = \"dummy\";\n let hash = compute_unencrypted_log_hash(contract_address, event_selector, log);\n assert(hash == 0x00a78b5347813624ecfd26e5b8bc6146f418b0cfcc8296b5112d09b8ebba9496);\n}\n\n#[test]\nfn compute_unenc_log_hash_longer_str() {\n let contract_address = AztecAddress::from_field(0x1b401e1146c5c507962287065c81f0ef7590adae3802c533d7549d6bf0a41bd8);\n let event_selector = 5;\n let log = \"Hello this is a string\";\n let hash = compute_unencrypted_log_hash(contract_address, event_selector, log);\n assert(hash == 0x001f3390ea242afee7ce46dafdbdc4bd4f1cf20cd63850d12d60ff9956712c4f);\n}\n"}}}