@aztec/protocol-contracts 0.36.0 → 0.38.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.
- package/dest/artifacts/ContractClassRegisterer.json +1 -1
- package/dest/artifacts/ContractInstanceDeployer.json +1 -1
- package/dest/artifacts/GasToken.json +1 -1
- package/dest/artifacts/KeyRegistry.json +1 -1
- package/dest/artifacts/MultiCallEntrypoint.json +1 -1
- package/package.json +4 -4
- package/src/artifacts/ContractClassRegisterer.json +1 -1
- package/src/artifacts/ContractInstanceDeployer.json +1 -1
- package/src/artifacts/GasToken.json +1 -1
- package/src/artifacts/KeyRegistry.json +1 -1
- package/src/artifacts/MultiCallEntrypoint.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{ "noir_version": "0.28.0+587973ff94368b5ae6247f04c26fd0ef6a933b51", "name": "GasToken", "functions": [{ "name": "claim_public", "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": "to", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] }, "visibility": "private" }, { "name": "amount", "type": { "kind": "field" }, "visibility": "private" }, { "name": "secret", "type": { "kind": "field" }, "visibility": "private" }, { "name": "leaf_index", "type": { "kind": "field" }, "visibility": "private" }], "param_witnesses": { "amount": [{ "start": 41, "end": 42 }], "inputs": [{ "start": 0, "end": 40 }], "leaf_index": [{ "start": 43, "end": 44 }], "secret": [{ "start": 42, "end": 43 }], "to": [{ "start": 40, "end": 41 }] }, "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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+Y/E+Y+cP/1x/vTH+dMf509/nD/9cf70x/nTH+dPf5w//XH+9Mf505fzpy/nT1/On76cP305f/py/vTl/OnL+dOX86cv509/nj/9ef705/nTn+dPf54//Xn+9Of505/nT3+eP/15/vTX+dNf509/nT/9df701/nTX+dPf50//XX+9Nf501/nT1/Pn76eP309f/p6/vT1/Onr+dPX86ev509fz5++nj99O3/6dv707fzp2/nTt/Onb+dP386fvp0/fTt/+nb+9P386fv50/fzp+/nT9/Pn76fP30/f/p+/vT9/On7+dOP86cf508/zp9+nD/9OH/6cf704/zpn8/6xvmsb5zP+sb5rG+cz/rG+axvnM/6xvmsb5zP+sb5rG+cz/rG+axvnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rE/OZ31yPuuT81mfnM/65HzWJ+ezPjmf9cn5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb57P+ub5rG+ez/rm+axvns/65vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axvnc/61vmsb53P+tb5rG+dz/rW+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPzmd9dj7rs/NZn53P+ux81mfnsz47n/XZ+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+vx81ufnsz4/n/X5+azPz2d9fj7r8/NZn5/P+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+awvzmd9cT7ri/NZX5zP+uJ81hfns744n/XF+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vb5rG+fz/r2+axvn8/69vmsb5/P+vbJrO+f/+pzQy7/+dEhPj4+PcbDT18j4v7xS+avz7s/+rjbx6dv/6HxS8r16JfbEP35abt9/C8+ff+u8o2+6/xG33V9o++q3+i72jf6rv6Nvmt8o++6v893PfnDpvbf9Ru9N9k3em+yb/TedPIHqu2/6zd6b7Jv9N5kpe9Nssav7xry+3e960l7t7kfsJMP8Cv7gJF9gGQfMLMPWNkHaPYBln2AZx+QXcmeXcmRXcmRXcmRXcmRXcmRXcmRXcmRXcmRXcmRXcmRXck7u5J3diXv7Ere2ZW8syt5Z1fyzq7knV3JO7uSd24lz+u6sg8Y2QdI9gEz+4CVfYBmH2DZB3j2AZF9QHYlj+xKHtmVPLIreWRX8siu5JFdySO7kkd2JY/sSh7ZlSzZlSzZlSzZlSzZlSzZlSzZlSzZlSzZlSzZlSzZlTyzK3lmV/LMruSZXckzu5JndiXP7Eqe2ZU8syt5Zlfyyq7klV3JK7uSV3Ylr+xKXtmVvLIreWVX8squ5JVdyZpdyZpdyZpdyZpdyZpdyZpdyZpdyZpdyZpdyZpdyZZdyZZdyZZdyZZdyZZdyZZdyZZdyZZdyZZdyZZdyZ5dyZ5dyZ5dyZ5dyZ5dyZ5dyZ5dyZ5dyZ5dyZ5dyZFdyZFdyZFdyZFdyZFdyZFdyZFdyZFdyZFdyZFdyTu7knd2Je/sSt7ZlbyzK3lnV/LOruSdXck7u5KzM14jO+M1sjNeIzvjNbIzXuNa2Qdo9gGWfYBnHxDZB2RXcnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8RnbGa2RnvEZ2xmtkZ7xGdsZrZGe8JDvjJdkZL8nOeEl2xkuulX2AZh9g2Qd49gGRfUB2JWdnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74yXZGS/JznhJdsZLsjNekp3xkuyMl2RnvCQ74zWzM14zO+M1szNeMzvjNa+VfYBmH2DZB3j2AZF9QHYlZ2e8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZme8ZnbGa2ZnvGZ2xmtmZ7xmdsZrZWe8VnbGa2VnvFZ2xmtdK/sAzT7Asg/w7AMi+4DsSs7OeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyM18rOeK3sjNfKznit7IzXys54reyMl2ZnvDQ746XZGS/NznjptbIP0OwDLPsAzz4gsg/IruTsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7w0O+Ol2Rkvzc54aXbGS7MzXpqd8dLsjJdmZ7wsO+Nl2Rkvy854WXbGy66VfYBmH2DZB3j2AZF9QHYlZ2e8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvjZdkZL8vOeFl2xsuyM16WnfGy7IyXZWe8LDvj5dkZL8/OeHl2xsuzM15+rewDNPsAyz7Asw+I7AOyKzk74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGS/Pznh5dsbLszNenp3x8uyMl2dnvDw74+XZGa/IznhFdsYrsjNekZ3ximtlH6DZB1j2AZ59QGQfkF3J2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7wiO+MV2RmvyM54RXbGK7IzXpGd8YrsjFdkZ7ziccbL1/z5c+7x5JAldzlLxm+ftY8jJP+ImX/Eyj9C84+w/CM8/4jIP2KnH/E49fW5R+RX986v7p1f3Tu/und+de/86t751b3zq3unV/e+rvwjRv4Rkn/EzD9i5R+h+UdY/hGef0TkH5Ff3SO/ukd+dY/86h751T3yq3vkV/fIr+6RX90jv7pHfnVLfnVLfnVLfnVLfnVLfnVLfnVLfnVLfnVLfnVLfnXP/Oqe+dU986t75lf3zK/umV/dM7+6Z351z/zqnvnVvfKre+VX98qv7pVf3Su/uld+da/86l751b3yq3vlV7fmV7fmV7fmV7fmV7fmV7fmV7fmV7fmV7fmV7fmV7flV7flV7flV7flV7flV7flV7flV7flV7flV7flV7fnV7fnV7fnV7fnV7fnV7fnV7fnV7fnV7fnV7fnV3fkV3d+Vm3nZ9V2flZt52fVdn5Wbedn1XZ+Vm3nZ9V2flZt52fVdn5Wbedn1XZ+Vm3nZ9V2flZt52fVdn5Wbedn1XZ6Vm1d6Vm12xEj/wjJP2LmH7Hyj9D8Iyz/CM8/IvKPyK/ukV/dI7+6R351j/zqHvnVPfKre+RX98iv7pFf3SO/uiW/uiW/uiW/uiW/uiW/uiW/uiW/uiW/uiW/uiW/umd+dc/86p751T3zq3vmV/fMr+6ZX90zv7pnfnXP/Ope+dW98qt75Vf3yq/ulV/dK7+6V351r/zqXvnVvfKrW/OrW/OrW/OrW/OrW/OrW/OrW/OrW/OrW/OrW/Or2/Kr2/Kr2/Kr2/Kr2/Kr2/Kr2/Kr2/Kr2/Kr2/Kr2/Or2/Or2/Or2/Or2/Or2/Or2/Or2/Or2/Or2/OrO/KrO/KrO/KrO/KrO/KrO/KrO/KrO/KrO/KrO/Kre+dX986v7p1f3Tu/und+de/86t751b3zq3vnV3d+Vm3kZ9VGflZt5GfVRn5WbVwr/wjNP8Lyj/D8IyL/iPzqzs+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo38rNrIz6qN/KzayM+qjfys2sjPqo1PyKrpuh8R9hdH/PVnd4yfn7398c/89eHrwWdvr9t2//Caf/Hhu/ZorH331f4Jsb2v0z4aa5fG2mdj7auxdm2s3Rprb9xXvXFf9cZ9NRr31WjcV6NxX43GffUTQslfp71xX43GfTUa99Vo3FejcV/djfvqbtxXd+O+uhv31U/AAb5Oe+O+uhv31d24r+7GfXX37aty9e2rcvXtq3L17aty9e2rcvXtq3L17aty9e2rcvXtq3L17atyNe6ro3FfHY376mjcV0diX70fsfKP+OMupeN+q/r7PVU8AWus3Rtrj8bad1/tf44ZfqH20Vi7NNY+G2tfjbU37qvSuK9K474qjfuqNO6rs3FfnY376mzcV2fjvvrnEPUXam/cV2fjvjob99XZuK/Oxn11Ne6rq3FfXY376mrcV/98fcEXam/cV1fjvroa99XVuK+uxn1VG/dVbdxXtXFf1cZ99c8Xh3yh9sZ9VRv3VW3cV7VxX9XEvvrzCLvyj/hzt1S5H6Hr4REr/4g/rgEb98/aHA+PiPwjdvoRf75e4/kRI/+IP3498XWvC3/8b9Sf75R4fsTKP0Lzj7D8Izz/iMg/Yqcf8eeQ//MjRv4R+dUd+dUd+dUd+dUd+dUd+dUd+dUd+dW986t751f3zq/unV/dO7+6d3517/zq3vnVvfOre6dX97yu/CNG/hGSf8SfV7f5/bNxPTxi5R+h+UdY/hGef0TkH7HTj/hz7Or5ESP/CMk/Ir+6R351j/zqHvnVPfKre+RX98ivbsmvbsmvbsmvbsmvbsmvbsmvbsmvbsmvbsmvbsmv7plf3TO/umd+dc/86v7zQLfv+2fjsodHaP4Rln+E5x8R+Ufs9CP+PLr7/IiRf4TkHzHzj8iv7pVf3Su/uld+da/86l751a351a351a351a351a351a351a351a351a351a351W351W351W351W351W351f3nfytWjH0/YsrDIyz/CM8/IvKP2OlH/HlW7fkRI/8IyT9i5h+x8o/Ir27Pr27Pr27Pr27Pr+7Ir+7Ir+7Ir+7Ir+7Ir+7Ir+7Ir+7Ir+7Ir+7Ir+6dX907v7p3fnXv/Ore+dW986t751f3zq/unV/dO72613XlH/Hn1W16P2L/5RF//dn9gUnt3+Vc+iFHWHImS85iyVGWHGPJcZacYMnZpXLs/leoj+u6/kLPX39Y990z7bfPjjnu2v88ZPiF2kdj7dJY+2ysfWG1m9x95neE9Xft2li7NdbujbVHY+3cvmr6od0eahduX32undtXn2vn9tXn2sH+HvcPW8hD7WB/f6qd6zNh9/eZ/dufb/+mfXJ9ZutdxLb1UDvXZ55r5/rMc+3c9/fn2ldj7Vx/f66d6+/PtXPf33/T7vOhdu77+3Pt3L66P7aD7d9E/KZ9gfvqsifawX31qXZwX32qHdxXn2oH99X9MX/f+6F2cF8NfaL9YV/d4h8tbT7R/mMD7M8P/9ib+PHpJR9neMEZUXDGzj/jMfzxyWeMgjOk4IxZcMYqOEMLziiocy2ocy2ocy2ocyuocyuocyuocyuocyuocyuocyuocyuocyuocyuocy+ocy+ocy+ocy+ocy+ocy+ocy+ocy+ocy+ocy+o8yio8yio8yio8yio8yio8yio8yio8yio8yio8yio811Q57ugzndBne+COt8Fdb4L6nwX1PkuqPNdUOc7v871ugrOGAVnSMEZs+CMVXCGFpxhBWd4wRlRcEZBnY+COh8FdT4K6nwU1PkoqPNRUOejoM5HQZ2PgjofBXUuBXUuBXUuBXUuBXUuBXUuBXUuBXUuBXUuBXUuBXU+C+p8FtT5LKjzWVDns6DOZ0Gdz4I6nwV1PgvqfBbU+Sqo81VQ56ugzldBna+COl8FdV6Qh9OCPJwW5OG0IA+nBXk4LcjDaUEeTgvycFqQh9OCPJwW5OG0IA+nBXk4LcjDaUEeTgvycFqQh9OCPJwW5OG0IA+nBXk4LcjDaUEeTgvycFqQh9OCPJwW5OG0IA+nBXk4LcjDaUEeTgvycFqQh9M/z8PJ5XcIScZvEJLJgw/PFXfYcd7mpQ8E/Xl47rMFDZogoQmaNEGLJkhpgowmyGmCgiaI5tSb5tSb5tSb5tSb5tSb5tSb5tSb5tSb5tSb5tQb5tR2wZzaLphT2wVzartgTm0XzKntgjm1XTCntgvm1HbBnNoumlMPmlMPmlMPmlMPmlMPmlMPmlMPmlMPmlMPmlP/eS5cht9n4fI/FmT9XUF+17PGr188rrjr+fMM+SfrGTA9AtMzYXoWTI/C9BhMj8P0BEwPzJ8nzJ8nzJ8nzJ8nzJ8nzJ8nzJ8nzJ8nzJ8nzJ8nzJ8XzJ8XzJ8XzJ8XzJ8XzJ8XzJ8XzJ8XzJ8XzJ8XzJ8V5s8K82eF+bPC/Flh/qwwf1aYPyvMnxXmzwrzZ4P5s8H82WD+bDB/Npg/G8yfDebPBvNng/mzwfzZYf7sMH92mD87zJ8d5s8O82eH+bPD/Nlh/uwwfw6YPwfMnwPmzwHz54D5c8D8OWD+HDB/Dpg/B8yfN8yfN8yfN8yfN8yfN8yfN8yfN8yfN8yfN8yfN8uf/WL5s18sf/aL5c9+sfzZL5Y/+8XyZ79Y/uwXy5/9YvmzXzB/HjB/HjB/HjB/HjB/HjB/HjB/HjB/HjB/HjB/hvGDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgw7jBx3GDzqMH3QYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgw7jBx3GDzqMH3QYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgw7jBx3GDzqMH3QYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgwHjBwPGDwaMHwwYPxgXy58Dxg8GjB8MGD8YMH4wYPxgwPjBgPGDAeMHA8YPBowfDBg/GDB+MGD8YMD4wYDxgwHjBwPGDwaMHwwYPxgwfjBg/GDA+MGA8YMB4wcDxg8GjB8MGD8YMH4wYPxgwPjBgPGDAeMHA8YPBowfDBg/GDB+MGD8YMD4wYDxgwHjBwPGDwaMHwwYPxgwfjBg/GDA+MGA8YMB4wcDxg8GjB8MGD8YMH4wYPxgwPjBgPGDAeMHA8YPBowfDBg/GDB+MGD8YMD4wYDxgwHjBwPGDwaMHwwYPxgwfjBg/GDA+MGA8YMB4wcDxg8GjB8MGD8YMH4wYPxgwPjBgPGDAeMHA8YPBowfDBg/GDB+MGD8YMD4wYDxgwHjBwPGDwaMHwwYPxgwfjBg/GDA+MGA8YMbxg9uGD+4YfzghvGD+2L584bxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhg/uGH84IbxgxvGD24YP7hh/OCG8YMbxg9uGD+4YfzghvGDG8YPbhY/qBeLH7zpQfnzTQ/Kn296UP5804Py55selD/f9KD8+aYH5c83PSh/vumB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOmB+TOLH7zpgfkzix+86YH5M4sfvOlh+fOA8YMDxg8OGD84YPzguFj+PGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPDhg/OGD84IDxgwPGDw4YPzhg/OCA8YMDxg8OGD84YPzggPGDA8YPCowfFBg/KDB+UGD8oFwsfxYYPygwflBg/KDA+EGB8YMC4wcFxg8KjB8UGD8oMH5QYPygwPhBgfGDAuMHBcYPCowfFBg/KDB+UGD8oMD4QYHxgwLjBwXGDwqMHxQYPygwflBg/KDA+EGB8YMC4wcFxg8KjB8UGD8oMH5QYPygwPhBgfGDAuMHBcYPCowfFBg/KDB+UGD8oMD4QYHxgwLjBwXGDwqMHxQYPygwflBg/KDA+EGB8YMC4wcFxg8KjB8UGD8oMH5QYPygwPhBgfGDAuMHBcYPCowfFBg/KDB+UGD8oMD4QYHxgwLjBwXGDwqMHxQYPygwflBg/KDA+EGB8YMC4wcFxg8KjB8UGD8oMH5QYPygwPhBgfGDAuMHBcYPCowfFBg/KDB+UGD8oMD4QYHxgwLjBwXGD04YPzhh/OCE8YMTxg/Oi+XPE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzghPGDE8YPThg/OGH84ITxgxPGD04YPzhh/OCE8YMTxg9OGD84YfzggvGDC8YPLhg/uGD84LpY/rxg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDy4YP7hg/OCC8YMLxg8uGD+4YPzggvGDC8YPLhg/uGD84ILxgwvGDyqMH1QYP6gwflBh/KBeLH9WGD+oMH5QYfygwvhBhfGDCuMHFcYPKowfVBg/qDB+UGH8oML4QYXxgwrjBxXGDyqMH1QYP6gwflBh/KDC+EGF8YMK4wcVxg8qjB9UGD+oMH5QYfygwvhBhfGDCuMHFcYPKowfVBg/qDB+UGH8oML4QYXxgwrjBxXGDyqMH1QYP6gwflBh/KDC+EGF8YMK4wcVxg8qjB9UGD+oMH5QYfygwvhBhfGDCuMHFcYPKowfVBg/qDB+UGH8oML4QYXxgwrjBxXGDyqMH1QYP6gwflBh/KDC+EGF8YMK4wcVxg8qjB9UGD+oMH5QYfygwvhBhfGDCuMHFcYPKowfVBg/qDB+UGH8oML4QYXxgwrjBxXGDyqMH1QYP6gwflBh/KDC+EGF8YMK4wcVxg8ajB80GD9oMH7QYPygXSx/Nhg/aDB+0GD8oMH4QYPxgwbjBw3GDxqMHzQYP2gwftBg/KDB+EGD8YMG4wcNxg8ajB80GD9oMH7QYPygwfhBg/GDBuMHDcYPGowfNBg/aDB+0GD8oMH4QYPxgwbjBw3GDxqMHzQYP2gwftBg/KDB+EGD8YMG4wcNxg8ajB80GD9oMH7QYPygwfhBg/GDBuMHDcYPGowfNBg/aDB+0GD8oMH4QYPxgwbjBw3GDxqMHzQYP2gwftBg/KDB+EGD8YMG4wcNxg8ajB80GD9oMH7QYPygwfhBg/GDBuMHDcYPGowfNBg/aDB+0GD8oMH4QYPxgwbjBw3GDxqMHzQYP2gwftBg/KDB+EGD8YMG4wcNxg8ajB80GD9oMH7QYPygwfhBg/GDBuMHDcYPOowfdBg/6DB+0GH8oF8sf3YYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgw7jBx3GDzqMH3QYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowfdBg/6DB+0GH8oMP4QYfxgw7jBx3GDzqMH3QYP+gwftBh/KDD+EGH8YMO4wcdxg86jB90GD/oMH7QYfygw/hBh/GDDuMHHcYPOowf9FR+8OcZqUzg/Yw/91EZ+nHG9L9/rx7287O+f8kZSz/0CEzPhOlZMD0K02MwPQ7TE7V6bH7osb/Q89ef3XN/iNhPPnt7X//4veuX4Ovja+5v8TU/gUps8TXH9/ia8j2+5vweX3N9j6+p3+Nr2vf4mv49vub3eAuKzLegn2fsq+CMUXCGFJwxC85YBWdowRlWcIYXnBEFZ+TXeVxXwRmj4AwpOGMWnLEKztCCM6zgDC84IwrOKKjzUVDno6DOR0Gdj4I6HwV1PgrqfBTU+Sio81FQ56OgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzmdBnc+COp8FdT4L6nwW1PksqPNZUOezoM5nQZ3PgjpfBXW+Cup8FdT5KqjzVVDnq6DOV0Gdr4I6XwV1vgrqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvq3Arq3Arq3Arq3Arq3Arq3Arq3Arq3Arq3Arq3Arq3Avq3Avq3Avq3Avq3Avq3Avq3Avq/HG4+TZ+uJ+x/ckZfzvtcj8i8o/Y6Uc8zul+7hEj/wjJP2LmH7Hyj9D8Iyz/iPzqjvzqjvzq3vnVvfOre+dX986v7p1f3Tu/und+de/86t751b3Tq3tfV/4RI/8IyT9i5h+x8o/Q/CMs/wjPPyLyj8iv7pFf3SO/ukd+dY/86h751T3yq3vkV/fIr+6RX90jv7olv7olv7olv7olv7olv7olv7olv7olv7olv7olv7pnfnXP/Oqe+dU986t75lf3zK/umV/dM7+6Z351z/zqXvnVvf64use11/2Q2z/7+Pi8+8cpUnLKH9f4GGPdt17d/ln90SnrE77L9o9TZNrvp/z1x+26SzL59QxjP/jo3NfPj671286uH/u7/vrXDrlLthG/fvGPJVn3r6rf56va9/mq/n2+anyfr7q/zVfV6/t81fF9vqp8n686v89XXd/nq36ftyUtf1vS+xLXkOvvf1XTj1vR/Rdf9S7eO4uPzuJ3Y/F2dRY/OouXzuJnZ/Grs3jtLL5zh7XOHdY6d1jr3GG9c4f1zh3WO3dY79xhvXOH9c4d1jt3WO/cYb1zh/XOHTY6d9jo3GGjc4eNzh32z2G3rxTfucNG5w4bnTtsdO6w0bnD7s4ddnfusLtzh92dO+yfA6dfKb5zh92dO+zu3GF35w67+3ZYu66+HfYmvm+HvYnv22Fv4vt22Jv4vh32Jr5vh72J79thb+L7dtib+L4d9ia+c4cdnTvs6NxhR+cOOzp32D9fvPCV4jt32NG5w47OHXZ07rCjc4eVzh1WOndY6dxhpXOH/fPlJ18pvnOHlc4dVjp3WOncYaVzh52dO+zs3GFn5w47O3fYP19A9JXiO3fY2bnDzs4ddnbusLNzh12dO+zq3GFX5w67OnfY+t1fnym+c4ddnTvs6txhV+cOuzp3WO3cYbVzh9XOHVY7d9j6fVGfKb5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnOHbbzT6Sa+c4dtvNPpJr5zh2280+kmvnGHHZ13Oo3OO51G551Oo/NOp3E17rCj806n0Xmn0+i802l03uk0Ou90Gp13Oo3OO51G551Oo/NOp9F5p9PovNNpdN7pNDrvdBqddzqNzjudRuedTqPzTqfReafT6LzTaXTe6TQ673QanXc6jc47nUbnnU6j806n0Xmn0+i802l03uk0Ou90Gp13Oo3OO51G551Oo/NOp9F5p9PovNNpdN7pNDrvdBqddzqNzjudRuedTqPzTqfReafT6LzTaXTe6TQ673QanXc6jc47nUbnnU6j806n0Xmn0+i802l03uk0Ou90Gp13Oo3OO51G551Oo/NOp9F5p9PovNNpdN7pNDrvdBqddzqNzjudRuedTqPzTqfReafT6LzTaXTe6TQ673QanXc6jc47nUbnnU6j806n0Xmn0+i802l03uk0Ou90Gp13Oo3OO51G551Oo/NOp9F5p9PovNNpdN7pNDrvdBqddzqNzjudRuedTqPzTqfReafT6LzTaXTe6TQ673QanXc6jc47naTzTifpvNNJOu90ks47neRq3GGl804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJLOO52k804n6bzTSTrvdJqddzrNzjudZuedTrPzTqd5Ne6ws/NOp9l5p9PsvNNpdt7pNDvvdJqddzrNzjudZuedTrPzTqfZeafT7LzTaXbe6TQ773SanXc6zc47nWbnnU6z806n2Xmn0+y802l23uk0O+90mp13Os3OO51m551Os/NOp9l5p9PsvNNpdt7pNDvvdJqddzrNzjudZuedTrPzTqfZeafT7LzTaXbe6TQ773SanXc6zc47nWbnnU6z806n2Xmn0+y802l23uk0O+90mp13Os3OO51m551Os/NOp9l5p9PsvNNpdt7pNDvvdJqddzrNzjudZuedTrPzTqfZeafT7LzTaXbe6TQ773SanXc6zc47nWbnnU6z806n2Xmn0+y802l23uk0O+90mp13Os3OO51m551Os/NOp9l5p9PsvNNpdt7pNDvvdJqddzrNzjudZuedTrPzTqfZeafT7LzTaXbe6TQ773SanXc6zc47nWbnnU6z806n2Xmn0+y802l23uk0O+90mp13Os3OO51W551Oq/NOp9V5p9PqvNNpXY077Oq802l13um0Ou90Wp13Oq3OO51W551Oq/NOp9V5p9PqvNNpdd7ptDrvdFqddzqtzjudVuedTqvzTqfVeafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r806n1Xmn0+q802l13um0Ou90Wp13Oq3OO51W551Oq/NOp9V5p9PqvNNpdd7ptDrvdFqddzqtzjudVuedTqvzTqfVeafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r806n1Xmn0+q802l13um0Ou90Wp13Oq3OO51W551Oq/NOp9V5p9PqvNNpdd7ptDrvdFqddzqtzjudVuedTqvzTqfVeafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r806n1Xmn0+q802l13um0Ou90Wp13Oq3OO51W551Oq/NOp9V5p9PqvNNpdd7ptDrvdFqddzqtzjudVuedTqvzTqfVeafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r804n7bzTSTvvdNLOO520804nvRp3WO2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudtPNOJ+2800k773TSzjudrPNOJ+u808k673Syzjud7GrcYa3zTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu90ss47nazzTifrvNPJOu908s47nbzzTifvvNPJO+908qtxh/XOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO528804n77zTyTvvdPLOO50cvdNpXz8/entz/wvxf/3ZHeOu4Rq/PvzjiL9WPLfdP7zmX3z4fivk1v1lt4LeQvV1t0J+2fi6WyG/xXzdrZBfj77uVtb7Vh7cCvmF7utuhfym+HW3Qn4F/bpbeb/bPrqV97vtg1tB73/7ult5v9s+upX3u+2jW3m/2z66lfW+lQe38n63fXQr73fbR7fyfrd9dCvvd9tHt/J+t31wK+jNi193K+9320e38n63fXQr73fbR7ey3rfy4Fbe77aPbuX9bvvoVt7vto9u5f1u++hW3u+2D24FvfP0627l/W776Fbe77aPbuX9bvvoVtb7Vh7cyvvd9tGtvN9tH93K+9320a28320f3cr73fbBraC3DX/drbzfbR/dyvvd9tGtvN9tH93K6ngrd/EtX0Hv4sFviq4f4n3V/vsIflP8wlsBvyl+4a2A3xS/7lbIW7O/8FbAb4pfeCvgN8UvvBXwm+IX3sp638qDWwG/gn7hrbzfbR/dyvvd9tGtvN9tH93K+932r28lyPvqv/BW3u+2j27l/W776Fbe77aPbmW9b+XBrbzfbR/dyvvd9tGtvN9tH93K+9320a28320f3Ar5b4r4wlt5v9s+upX3u+2jW3m/2z66lfW+lQe38n63fXQr73fbR7fyfrd9dCvvd9tHt/J+t31wK+S/o+ULb+X9bvvoVt7vto9u5f1u++hW1vtWHtzK+9320a28320f3cr73fbRrbzfbR/dyvvd9sGtkP92pL99K3fxLV9B7+LBb4px3f+ylZhR++8j+E3xC29lvW/lwa2A3xS/8FbAb4pfeCvgN8UvvBXwm+IX3gr4TfHrboX8d2Z94a2AX0G/8Fbe77aPbuX9bvvoVtb7Vh7cyvvd9tGtvN9tH93K+9320a28320f3cr73fbBrZD/zqwvvJX3u+2jW3m/2z66lfe77aNbWe9beXAr73fbR7fyfrd9dCvvd9tHt/J+t310K+932we3Qv47s77wVt7vto9u5f1u++hW3u+2j25lvW/lwa28320f3cr73fbRrbzfbR/dyvvd9tGtvN9tH9wK+e/M+sJbeb/bPrqV97vto1t5v9s+upX1vpUHt/J+t310Ky3fbe/iW76C3sWT3xTt46Phtf8+kt8Uv+xWyH8D1RfeCvlN8etuhfym+HW3Qn5T/LpbWe9beXAr5DfFr7sV8pvi190K+RX0627l/W776Fbe77YPboX8d2Z94a28320f3cr73fbRrbzfbR/dynrfyoNbeb/bPrqV97vto1t5v9s+upX3u+2jW3m/2/71rWzy35n1hbfyfrd9dCvvd9tHt/J+t310K+t9Kw9u5f1u++hW3u+2j27l/W776Fbe77aPbuX9bvvgVsh/Z9YX3sr73fbRrbzfbR/dyvvd9tGtrPetPLiV97vto1t5v9s+upX3u+2jW3m/2z66lfe77YNbIf+dWV94K+9320e30vLd9i6+5SvoXfziir+93N9V/PZbS/59BL8pfuGtgN8Uv/BWwG+KX3gr4DfFL7wV8Jvi190K+W+g+sJbAb8pfuGtgN8Uv/BWwK+gX3gr630rD27l/W776Fbe77aPbuX9bvvoVt7vto9u5f1u++BWyH9n1hfeyvvd9tGtvN9tH93K+9320a2s9608uJX3u+2jW3m/2z66lfe77aNbeb/bPrqV97vtg1sh/51ZX3gr73fbR7fyfrd9dCvvd9tHt7Let/LgVt7vto9u5f1u++hW3u+2j27l/W776Fbe77YPboX8d2Z94a28320f3cr73fbRrbzfbR/dynrfyoNbeb/bPrqV97vto1t5v9s+upWW77Z38S1fQX+KJ/8NVDcL+VAxS/99JP8NVF94K+Q3xa+7FfKb4tfdynrfyoNbIb8pft2tkN8Uv+5WyG+KX3cr5DfFr7sV8ivol90K+e/M+sJbeb/bPrqV97vto1t5v9s+upX1vpUHt/J+t310K+9320e38n63fXQr73fbR7fyfrd9cCvkvzPrC2/l/W776Fbe77aPbuX9bvvoVtb7Vh7cyvvd9tGtvN9tH93K+9320a28320f3cr73favbsUv8t+Z9YW38n63fXQr73fbR7fyfrd9dCvrfSsPbuX9bvvoVt7vto9u5f1u++hW3u+2j27l/W774FbIf2fWF97K+9320a28320f3cr73fbRrayOt3IX3/IV9C4e3P1v/2bJr3/J1kP54Db9gnzy370yROP+i8X9oXywmb0iH+w6r8gH+84r8sH/jfqKfPB/TI75Ac6Nua5nrXzcW/me8ltz1o+vSu4Rn/xVyf3kc78q+W/++OyvCv4PtM/+quQ3ik/+quS3j0/+quv7fFXyW83ZV7Xr4/X/uv7iu/71h3Xvnx+23z57O/DjXsivS195L/9x3sM+917+47y0fe69/Md5w/vUeyH/ZRmJ92Jy70d2u4tH9/If593xc+/lP86L5ufey3+ct9LPvZf1vpeH9/I933dNP+7FHt/L93zffX4v3/N99/m9fM/33af3Ql7+n3kvcf+whTy8l2/ap5/ey/f03bD7fx/tyx7ey/f03a0fKxhtPbyX7+m7z+/le84Znt4L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K8RP9QttrnbdHdMueaQe7ZhP1aOrNuSuPvyh+vqqdf1Qv+139XdJGydJL56kwZMkPEmTJ2nxJClPkvEkOU8Sz72V597Gc2/jubfx3Nt47m089zaeexvPvY3n3sZzb+O5t/Pc23nu7Tz3dp57O8+9nefeznNv57m389zbee4dPPcOnnsHz72D597Bc+/guXfw3Dt47h089w6ee2+ee2+ee2+ee2+ee2+ee2+ee2+ee2+ee2+ee2+ce8uFc2+5cO4tF8695cK5t1w495YL595y4dxbLpx7y4Vzb7l47j147j147j147j147j147j147j147j147j147j147i089xaeewvPvYXn3sJzb+G5t/DcW3juLTz3Fp57T557T557T557T557T557T557T557T557T557T557L557L557L557L557L557L557L557L55781hL4bGWwmMthcdaCo+1FB5rKTzWUnispfBYS+GxlsJjLYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7WUetZyStw/PcN/l/Tgw7o/PuzXr6VDY8wHn7Yhd9k2fvy+u+7bT/78uvUc59d+3fG9vq58r687v9fXXd/r6+r3+rr2vb6uf6+vG9/r636vt6r4Xm9V8b3equJ7vVXF93qrqufZv/brfq+3qvheb1Xxvd6q4nu9VX3CboIx58fa4jH9evJ1/97Hf4r6hO0ECaIGUZQQRU2iqEUUpURRRhTlRFFBFAV09HkBHX1eQEefF9DR5wV09HkBHX1eQEefF9DR5wV09HkBHX1eREcfREcfREcfREcfREcfREcfREcfREcfREcfREcfREcXoqML0dGF6OhCdHQhOroQHV2Iji5ERxeiowvR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0ZXo6Ep0dK129D3kuv/uIeORpGo/39f8kCSyn3xYzD4+vNcj/au5fm2u38j6de6fn1X9FWKcH+K9s/joLH43Fm9XZ/Gjs3jpLB7dap+JR/fZZ+LRTfaZ+M4d1jp3WOvcYa1zh/XOHdY7d1jv3GG9c4f9hEUWXyi+c4f1zh3WO3dY79xhvXOHjc4dNjp32OjcYaNzh/2EpQZfKL5zh43OHTY6d9jo3GGjc4fdnTvs7txhd+cOuzt32PIVBZ8qvnOH3Z077O7cYXfnDrsbd9h1Ne6w62rcYdfVuMOuq3GHXVfjDruuxh12XY077Load9h1Ne6w6+rcYUfnDjs6d9jRucOOzh22fIXHp4rv3GFH5w47OnfY0bnDjs4dVjp3WOncYaVzh5XOHbZ8pcqniu/cYaVzh5XOHVY6d1jp3GFn5w47O3fY2bnDzs4dtnzFzaeK79xhZ+cOOzt32Nm5w87OHXZ17rCrc4ddnTvs6txhy1cOfar4zh12de6wq3OHXZ077OrcYbVzh9XOHVY7d1j2cqdn4jt3WPZap2fiO3fYzjudVuedTqvzTqfVeafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r806n1Xmn0+q802nBdzrt+2dtyAPx7A77RDy7wz4Rz+6wT8SzO+wT8ewO+0Q8u8M+Ec/usE/EszvsE/HsDvv3xcN3Oj0R37nDwnc6PRHfucPCdzo9Ed+5w8J3Oj0R37nDwnc6PRHfucPCdzo9Ed+5w8J3Oj0R37nDwnc6PRHfucPCdzo9Ed+5w8J3Oj0R37jDKnyn0xPxjTuswnc6PRHfuMPq1bjDKnyn0xPxjTuswnc6PRHfuMMqfKfT3xcP3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w4L3+n0RHznDgvf6fREfOcOC9/p9ER85w7beaeTdt7ppJ13OmnnnU7aeaeTdt7ppOydTib39Xe2HolHd9hn4tEd9pl4dId9Ip690+mZeHSHfSYe1GHvkkB98y4J1A3vkkA97i4J1LnukkD96C4J1GXukkC946ck0g6iuySQz98l8dybtAXoLonn3qSNPXdJPPcmbde5S+K5N2kTzv8jyUj7be6ScO5tpF00d0k497YL595G2gZzl4RzbyNtbrlLwrm3kbas/JRE2p1yl8Rzb9Kek7sknnuTdpLcJfHcm7Q/5C6J596kXR93STz3Ju3luEviuTdph8ZdEs+9Sfsu7pJ47k3aTXGXxHNv0h6JuySee5N2Ptwl8dybtJ/hLonn3qRdCndJPPcm7T24S+K5N2lHwV0Sz71J+wTuknjuTWL/75J47k3i9O+SeO5NYurvknjuTeLf75J47k1i1e+SeO5N4srvknjuTWLA75J47k3ite+Syt1bzD4k7fVIUvAkbZykeg76uaTBkyQ8SZMnafEkKU+S8STx3Nt47m0893aeezvPvZ3n3s5zb+e5t/Pc23nu7Tz3dp57O8+9g+fewXPv4Ll38Nw7eO4dPPcOnnsHz72D597Bc+/Nc+/Nc+/Nc+/Nc+/Nc+/Nc+/Nc+/Nc+/Nc++Nc2+/cO7tF869/cK5t1849/YL595+4dzbL5x7+4Vzb79w7u0Xz70Hz70Hz70Hz70Hz70Hz70Hz70Hz70Hz70Hz70Hz72F597Cc2/hubfw3Ft47i089xaeewvPvYXn3sJz78lz78lz78lz78lz78lz78lz78lz78lz78lz78lz78Vz78Vz78Vz78Vz78Vz78Vz78Vz78Vz78Vz78Vzb+W5t/LcW3nurTz3Vp57K8+9k1nL+yleckqUnLIrTknmFu+njJJTpOSUWXLKKjlFS04pqX0rqX0rqX0rqX0vqX0vqX0vqX0vqf3HBNm45N5jx7X2k3NuTernh/23fizXxxlacIYVnOEFZ0TBGTv/jMec1CefMQrOkIIzZsEZBXUeBXUeBXUeBXUeBXUeBXW+C+p8F9T5LqjzXVDnu6DOd0Gd74I63wV1vgvqfOfXeVxXwRmj4AwpOGMWnLEKztCCM6zgDC84IwrOKKjzUVDno6DOR0Gdj4I6HwV1PgrqfBTU+Sio81FQ56OgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzqWgzmdBnc+COp8FdT4L6nwW1PksqPNZUOezoM5nQZ3PgjpfBXW+Cup8FdT5KqjzVVDnq6DOV0Gdr4I6XwV1vgrqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvqXAvq3Arq3Arq3D6hzve4p1i22cdnNR581Ibc8zE24rdffOmHoolTtHCKFKfIcIocpyhwijZNkV84RQOnCOfZjvNsx3m24zzbcZ7tOM92nGd/Rjr09pHx8ekdf1+Tj/tv9jk/PmpyF/QZUdLPFTRogoQmaNIELZogpQkymiCnCQqaIJpTb5pTb5pTb5pTb5pTb5pTb5pTb5pTb5pTb5pTb5hT7wvm1PuCOfW+YE69L5hT7wvm1PuCOfW+YE69L5hT7wvm1PuiOfWgOfWgOfWgOfWgOfWgOfWgOfWgOfWodurr5yevJ7/08efuqqOl6t1RtVwtVY+WqqWl6tlS9WqpWluqtpaqW/ZGadkbpWVvnC1742zZG2fL3jhb9sbPoMe+QHXL3jhb9sbZsjfOlr1xtuyNq2VvXC1742rZG1fL3vgZxOUXqG7ZG1fL3rha9sbVsjeulr1RW/ZGbdkbtWVv1Ja98TMo5S9QTe2N5ncFtn/7w7vxIZzaHp8Kp3bIp8KpTfKpcGqffCbcqK3yqXBqt3wqnNownwqn9synwqlt86nwrp3TunZO69o5rWvntK6d07t2Tu/aOb1r5/SunfMz1iN8jfCundO7dk7v2jm9a+f0rp0zunbO6No5o2vnjK6ds3xTxacJ79o5o2vnjK6dM7p2zujaOXfXzrm7ds7dtXPurp2zfHPIpwnv2jl31865u3bO3bVz7p6dc19Xz855E96zc96E9+ycN+E9O+dNeM/OeRPes3PehPfsnDfhPTvnTXjPznkT3rVzjq6dc3TtnKNr5xxdO2f5Zp1PE961c46unRO70eep8K6dE7vX55lw7Gqfp8K7dk7sgp+nwrt2Tuyan6fCu3ZO7LKfp8K7dk7syp+nwrt2Tuzin6fCu3ZO7Pqfp8K7dk7sEqCnwrt2TuwqoKfCu3ZO7EKgp8K7dk7sWqCnwrt2TuxyoKfCu3ZO7Iqgp8K7dk7soqCnwrt2Tuy6oKfCu3ZO7NKgp8K7dk7s6qCnwrt2TuwCoafCu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsK7ds6mO4Ruwrt2zqY7hG7Cu3bOpjuEbsKbds7RdYfQ6LpDaHTdITS67hC6ndlVeNPOObruEBpddwiNrjuERtcdQqPrDqHRdYfQ6LpDaHTdITS67hAaXXcIja47hEbXHUKj6w6h0XWH0Oi6Q2h03SE0uu4QGl13CI2uO4RG1x1Co+sOodF1h9DoukNodN0hNLruEBpddwiNrjuERtcdQqPrDqHRdYfQ6LpDaHTdITS67hAaXXcIja47hEbXHUKj6w6h0XWH0Oi6Q2h03SE0uu4QGl13CI2uO4RG1x1Co+sOodF1h9DoukNodN0hNLruEBpddwiNrjuERtcdQqPrDqHRdYfQ6LpDaHTdITS67hAaXXcIja47hEbXHUKj6w6h0XWH0Oi6Q2h03SE0uu4QGl13CI2uO4RG1x1Co+sOodF1h9DoukNodN0hNLruEBpddwiNrjuERtcdQqPrDqHRdYfQ6LpDaHTdITS67hAaXXcIja47hEbXHUKj6w6h0XWH0Oi6Q2h03SE0uu4QGl13CI2uO4RG1x1Co+sOodF1h5B03SEkXXcISdcdQtJ1h5BcTTundN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJF13CEnXHULSdYeQdN0hJJAdQnc1jHZ4V8PocXc1jMZ1V8PoRnc1jBbzUw1kg85dDaMZ3NUwHP6uhmHbdzUoL4asmrmrQXkxZCnMXQ3KiyHrW36qgexkuatBeTFke8pdDcqLIXtO7mpQXgzZSHJXg/JiyO6QuxqSF0/Ilo+7GpIXT8g+jrsakhfPi+TFE7IO466G5MUTsrjirobkxROyYuKnGsjeiLsalBcnb3i4nzJLTlklp2jJKVZyipecEiWn7IpTkkn6+ymj5JSS2peS2peS2peS2peS2peS2peS2peS2p8ltT9Lan+W1P4sqf1ZUvuzpPZnSe3PktqfJbU/S2p/ldT+Kqn9VVL7q6T2V0ntr5LaXyW1v0pqf5XU/iqp/Rd4LLUnp9gQ/flpG/GbpuvjP8VfoKc+5RipOWbWHLNqjtGaY6zmGK85JmqO2SXHWI0LWI0LWI0LWI0LWI0LWI0LWI0LWI0LWI0LWI0LeI0LeI0LeI0LeI0LeI0LeI0LeI0LeI0LeI0LeI0LRI0LRI0LRI0LRI0LRI0LRI0LRI0LRI0LxCe4wLiu+fHp+Recz19/+DaHkJ8fvv2H769fveRD0sZJ2hdP0uBJEp6kyZO0eJKUJ8l4kpwniefeG+fe68K597pw7r0unHuvC+fe68K597pw7r0unHuvC+fe68K597p47j147j147j147j147j147j147j147j147j147j147i089xaeewvPvYXn3sJzb+G5t/DcW3juLZ/h3mPcx+tjLHsiye+Kbi9GHx8dV3wo2jRF88IpGjhFglM0cYoWTpHiFBlOkeMU4Tx74jx74Tx74Tx74Tx74Tx74Tx74Tx74Tx74Tx74Tx74TxbcZ6tOM9WnGcrzrMV59mK82zFebbiPFtxnq04zzacZxvOsw3n2YbzbMN5tuE823CebTjPNpxnG86zHefZjvNsx3m24zzbcZ7tOM92nGc7zrMd59mO8+zAeXbgPDtwnh04zw6cZwfOswPn2YHz7MB5duA8e+M8e+M8e+M8e+M8e+M8e+M8e+M8e+M8e+M8e9M8Wy+aZ+tF82y9aJ6tF82z9aJ5tl40z9aL5tl60TxbL5pn64Xz7IHz7IHz7IHz7IHz7IHz7IHz7IHz7IHz7IHz7IHzbMF5tuA8W3CeLTjPFpxnC86zBefZgvNsHAepOA5ScRyk4jhIxXGQiuMgFcdBKo6DVBwHqTgOUnEcpOI4SMVxkIrjIBXHQSqOg1QcB6k4DlJxHKTiOEjFcZCK4yAVx0EqjoNUHAepOA5ScRyk4jhIxXGQiuMgFcdBKo6DVBwHqTgOUnEcpOI4SMVxkIrjIBXHQSqOg1QcB6k4DlJxHKTiOEjFcZCK4yAVx0EqjoNUHAepOA5ScRyk4jhIxXGQiuMgFcdBKo6DVBwHqTgOUnEcpOI4SMVxkIrjIBXHQSqOg1QcB6k4DlJxHKTiOEjFcZCK4yAVx0EqjoM0HAdpOA7ScByk4ThIu2iebTgO0nAcpOE4SMNxkIbjIA3HQRqOgzQcB2k4DtJwHKThOEjDcZCG4yANx0EajoM0HAdpOA7ScByk4ThIw3GQhuMgDcdBGo6DNBwHaTgO0nAcpOE4SMNxkIbjIA3HQRqOgzQcB2k4DtJwHKThOEjDcZCG4yANx0EajoM0HAdpOA7ScByk4ThIw3GQhuMgDcdBGo6DNBwHaTgO0nAcpOE4SMNxkIbjIA3HQRqOgzQcB2k4DtJwHKThOEjDcZCG4yANx0EajoM0HAdpOA7ScByk4ThIw3GQhuMgDcdBGo6DNBwHaTgO0nAcpOE4SMNxkIbjIA3HQRqOgzQcB2k4DtJwHKThOEjDcZCG4yANx0EajoM0HAdpOA7ScByk4ThIw3GQhuMgDcdBGo6DdBwH6TgO0nEcpOM4SL9onu04DtJxHKTjOEjHcZCO4yAdx0E6joN0HAfpOA7ScRyk4zhIx3GQjuMgHcdBOo6DdBwH6TgO0nEcpOM4SMdxkI7jIB3HQTqOg3QcB+k4DtJxHKTjOEjHcZCO4yAdx0E6joN0HAfpOA7ScRyk4zhIx3GQjuMgHcdBOo6DdBwH6TgO0nEcpOM4SMdxkI7jIB3HQTqOg3QcB+k4DtJxHKTjOEjHcZCO4yAdx0E6joN0HAfpOA7ScRyk4zhIx3GQjuMgHcdBOo6DdBwH6TgO0nEcpOM4SMdxkI7jIB3HQTqOg3QcB+k4DtJxHKTjOEjHcZCO4yAdx0E6joN0HAfpOA7ScRyk4zhIx3GQjuMgHcdBOo6DdBwH6TgO0nEcpOM4SMdxkI7jIB3HQTqOgwwcBxk4DjJwHGTgOMi4aJ4dOA4ycBxk4DjIwHGQgeMgA8dBBo6DDBwHGTgOMnAcZOA4yMBxkIHjIAPHQQaOgwwcBxk4DjJwHGTgOMjAcZCB4yADx0EGjoMMHAcZOA4ycBxk4DjIwHGQgeMgA8dBBo6DDBwHGTgOMnAcZOA4yMBxkIHjIAPHQQaOgwwcBxk4DjJwHGTgOMjAcZCB4yADx0EGjoMMHAcZOA4ycBxk4DjIwHGQgeMgA8dBBo6DDBwHGTgOMnAcZOA4yMBxkIHjIAPHQQaOgwwcBxk4DjJwHGTgOMjAcZCB4yADx0EGjoMMHAcZOA4ycBxk4DjIwHGQgeMgA8dBBo6DDBwHGTgOMnAcZOA4yMBxkIHjIAPHQQaOgwwcBxk4DjJwHGTgOMjAcZCB4yADx0EGjoPcOA5y4zjIjeMgN46D3BfNszeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOcuM4yI3jIDeOg9w4DnLjOMiN4yA3joPcOA5y4zjIjeMgN46D3DgOctM4yHFdNBDyhySYa/+QBLPtH5Jgvv1DEsy4f0iCOfcPSTDr/iEJ5t0/JMHM+4cknnvTkMgfknjuTYMif0jiuTcNi/whiefeNDDyhySee9PQyB+SeO5NgyN/SOK5Nw2P/CGJ5940QPKHJJ570xDJH5J47k2DJH9I4rk3DZP8IYnn3jRQ8ocknnvTUMkfknjuTYMlf0jiuTcNl/whiefeNGDyhySee9OQyR+SeO5NgyZ/SOK5Nw2b/CGJ5940cPKHJJ5709DJH5J47k2DJ39I4rk3DZ/8IYnn3jSA8ocknnvTEMofknjuTYMof0jiuTcNo/whiefeNJDyhySee9NQyh+SeO5Ngyl/SOK5Nw2n/CGJ5940oPKHJJ5705DKH5J47k2DKn9I4rk3Dav8IYnn3jSw8ocknnvT0MofknjuTYMrf0jiuTcNr/whiefeNMDyhySee9MQyx+SeO5Ngyx/SOK5Nw2z/CGJ59400PKHJJ5701DLH5Jw7j14rOXgsZaDx1oOHms5Lpx7Dx5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWg8daDh5rOXis5eCxloPHWg4eazl4rOXgsZaDx1oOHms5eKzl4LGWwmMthcdaCo+1FB5rKRfOvYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7UUHmspPNZSeKyl8FhL4bGWwmMthcdaCo+1FB5rKTzWUnispfBYS+GxlsJjLYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7UUHmspPNZSeKyl8FhL4bGWwmMthcdaCo+1FB5rKTzWUnispfBYS+GxlsJjLYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7UUHmspPNZSeKyl8FhL4bGWwmMthcdaCo+1FB5rKTzWUnispfBYS+GxlsJjLYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7UUHmspPNZSeKyl8FhL4bGWwmMthcdaCo+1FB5rKTzWUnispfBYS+GxlpPHWk4eazl5rOXksZbzwrn35LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8daTh5rOXms5eSxlpPHWk4eazl5rOXksZaTx1pOHms5eazl5LGWk8dazmTW8n5MMj/5ccynuKx+fHp4/P0LHubX/cPm+9evvuYvUUIUNYmiFlGUEkUZUZQTRUW5KB0fouL6C1EPHHpe9199+1N/+fj0kgcfdo2fn/W9fvvFv77s/kZf9nOozi5fdnynLyvf6ctO+Jf9+PTtH/fvX/bjG6z230Dh3yDi4xv89m/R79/A6N/A799gXfPhN/D23yD3VePjmF1xzLqummNGzTFSc8ysOWbVHKM1x1jNMV5zTNQcU+MCo8YFRo0LjBoXGDUuMGpcYNS4wKhxgVHjAqPGBUaNC0iNC0iNC0iNC0iNC0iNC0iNC0iNC0iNC0iNC0iNC8waF5g1LjBrXGDWuMCscYFZ4wJ/C6PS/XFM6JNjPnVKt/4WRfWFigKnaNMU/S2E6gsVjc9Q9Gyguf4WFfXZx8zPOObZcHP9LXrp8Jgn87v1ApH09JjbMON+abeBgz48xj7jmL3ux9x+5cNjvOaY+IRjxrSPY9bjY/anHKMfx+jDfwVeoHZeOMZ/fZt9PTxmfPYx8fAY+YRjZNzr5vYfTo+PmTXHrM84Rj/+hRZ7+G+aas0xVnOM1xwTNcfskmPsqjlm1BwjNcfMmmNqXMBqXMBqXMBqXMBqXMBqXMBrXMBrXMBrXMBrXMBrXMBrXMBrXMBrXMBrXMBrXCBqXCBqXCBqXCBqXCBqXCBqXCBqXCBqXCBqXCBqXGDXuMCucYFd4wK7xgV2jQvsGhfYNS6wa1xg17jALnEBva6aY0bNMVJzzKw5ZtUcozXHWM0xXnNM1BxT4wKjxgVGjQuMGhcYNS4walxg1LjAqHGBUeMCo8YFRo0LSI0LSI0LSI0LSI0LSI0LSI0LSI0LSI0LSI0LSI0LzBoXmDUuMGtcYNa4wKxxgVnjArPGBWaNC8waF5g1LrBqXGDVuMCqcYFV4wKrxgVWjQusGhdYNS6walxg1biA1riA1riA1riA1rhATXZQa7KDWpMd1JrsoNZkB7UmO6g12UGtyQ5qTXZQa7KDWpMd1JrsoNZkB7UmO6g12UGtyQ5qTXZQa7KDWpMd1JrsoNZkB7UmO6g12UGtyQ5qTXZQa7KDWpMd1JrsoNZkB7UmO6g12UGtyQ5qTXZQa7KDWpMd1JrsoNZkB7UmO6g12UGtyQ5qTXZQa7KDWpMd1JrsoNZkB7UmO2g12UGryQ5aTXbQarKDdq2aY7TmGKs5xmuOiZpjalygJjtoNdlB+1vZwf3r7+kY8eSYZxtT7G8lBz/3kFVxiFYcYhWHeMUhUXHILjjkb2UFP/eQUXFIRcVLRcVLRcVLRcVLRcVLRcVLRcVLRcXPioqfFRU/Kyp+VlT8rKj4WVHxs6LiZ0XFz4qKnxUVvyoqflVU/Kqo+FVR8aui4ldFxa+Kil8VFb8qKn5VVLx+QsXvMX9+eNuvvbkaDz56+6/t+y++/afR73/Znf6SNHiShCdp8iQtniTlSTKeJOdJCp6kjZNkPPc2nnsbz72N597Gc2/jubfx3Ns+wb1//C08909fv+1hfijKx/1PYHz+WkBtv/5IxQKnaNMU+YVTNHCKBKdo4hQtnCLFKTKcIpxnO86zHefZgfPswHl24Dw7cJ4dOM8OnGcHzrMD59mB8+zAefbGefbGefbGefbGefbGefbGefbGefbGefbGefamebZfNM/2i+bZftE82y+aZ/tF82y/qj37+vnJ68kvffy5D9nWU7b3lB09Ze+WssfVU/boKVt6yp49Za+esnt2ydGzS46eXXL07JKjZ5eUnl1SenZJ6dklpWeX/AyK7itk9+yS0rNLSs8uKT27pPTskrNnl5w9u+Ts2SVnzy75GeTpV8ju2SVnzy45e3bJ2bNLzp5dcvXskqtnl1w9u+Sidknz+5/x2f7tz/jGL+XURvlcObVXPldObZfPlVM75nPl1Kb5XDm1bz5VrtTW+Vw5tXs+V05toM+Vt+2hn7FK4IuUt+2h2raHatseqm17qLbtoda2h1rbHmpte6i17aGfsdDhi5S37aHWtoda2x5qbXuote2h3raHetse6m17qLftoeXbNT5Pedse6m17qLftod62h3rbHhpte2i07aHRtodG2x5avu3k85S37aHRtodG2x4abXtotO2hu20P3W176G7bQ3fbHlq+febzlLftobttD91te+hu20N31x4aV9ceGlfXHhpX1x4aV9ceGlfXHhrYrUHPlXftoYHdHfRcedceGtgNQk+VY5cIPVfetodiVwk9V962h2IXCj1X3raHYtcKPVfetodilws9V962h2JXDD1X3raHYhcNPVfetodi1w09V962h2KXDj1X3raHYlcPPVfetodiFxA9V962h2LXED1X3raHYpcRPVfetodiVxI9V962h2IXEz1X3raHYtcTPVfetodilxQ9V962h7bdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZPUbTdUxRt9xRF2z1F0XZP0W67p2i33VO02+4p2m33FO2raw/dbfcU7bZ7inbbPUW77Z6i3XZP0W67p2i33VO02+4p2m33FO22e4p22z1Fu+2e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" }, { "name": "balance_of_public", "is_unconstrained": true, "custom_attributes": [], "abi": { "parameters": [{ "name": "owner", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] }, "visibility": "private" }], "param_witnesses": { "owner": [{ "start": 0, "end": 1 }] }, "return_type": { "abi_type": { "kind": "field" }, "visibility": "public" }, "return_witnesses": [1], "error_types": {} }, "bytecode": "H4sIAAAAAAAA/+2cXW/bNhSGJX/Ectwk9bedD0eJ06a7GRS7dTBgA7y/sJvtaoEbO0OArgZiF+j244OVis7ymjvIqPaIEIEQCETR1HkfvqKO7NiU7z0UP/lTpQxteqG2abKNvq1cCMaKfI3zP/xS0CpwSTOEM0ltC0y/X2Gnn2x/vrub/RXefpwvPofLT+tweRO+X376OF/hgb/DzkGyvZ59+BCul+FstVrcra/+nH2+en+7vlrd/r34V3SdVAJv04yphCFvo9GW9+iIbkgNTKA+lS9/W/C6n7RTvzq0UTzFXpZmj6KR0i9qzPoYplAvA09Jnucio3FGAXh+78leDBXNq6Lm1S702QL/Khn454MuxaZ90kvLXMgBM86L0JOdF4H8mEZ7X2JUwddA8xfHtZ3UBedl5CX6pEl626D7Iqn7nuxdqJbEKiWxieMFaO+Jez6+Vro73mZ5KpftAc+uOM9DLpMf58OcfQnsMnHfjZVXdc2rHc2rXeiDDPUM/PNBl2LTfp3RlvPi8q3Sbhh40WB4Gpa9aDDacl5MbpR208CLJsPTtOxFk9EWnBcjpd0y8KLF8LQse9FitAXnRazdNvCizfC0LXvRZrQFvbhU2h0DLzoMT8eyFx1GW9CLd0q7a+BFl+HpWvaiy2jLeTGK3w/1DLzoMTw9y170GG3B3Bm/v+gbeNFnePqWvegz2oLXyLXS3jfwYp/h2bfsBemlZW44yFx3kLmbA+ZAq8toj+P8eWDgxQHDc2DZC9JLy9zNAXOg1WW0JwulfWjgxSHDc2jZC9JLy9xwkLnuIHPXQeaWg8z9Z2YrzHnIG4FWl9G+jD8PHxl4ccTwHFn2gvTSMndywBxodRntSfz/z4GBFwOGZ2DZiwGjLfgZPn4Pc2zgxTHDc2zZC9JLy9x1kPmlg8x1B5kbDjI3HWRuOcjcdpC54yCzi/m55yBz30FmF/Ozi/dBF+dzHvJGoNVltCdzpR0aeBEyPKFlL0JGW/Dzdvyd64mBFycMz4llL0gvLXPPQea6g8xdB5mf54Yd5paDzE0HmZ/zxtcxB1pdRnsyUdqnBl6cMjynlr0gvbTMTQeZGw4yHzvI3M0Bc6DVZbTHsfbQwIshwzO07AXppWUe5IBZrQehtSE/+lnyjOc1jYc88zRGT2OsQX0PPDsTZ4wiPD9noPVKXoud47T/KlPt8bWKey4/pvi3YW+SWOUk7jkzpu+Sui/s5xuI64MOtZeg/oP/2Jf6kR903RK72n+d1JFdP26oHbcLfV4z4596suM/13jONWZ1Tr6H6zyLuWUyr9X3hHQt/wReUcG1eFVxxgevPI2RSpXh8XPAU/P4tcxVzTNc34yv3fqPr1NuK8AxdI6KTOwzaKP7BZef0acM8vNGzqTcoefrHeAY5oSnwvBktW6Xzg/Fpv1Ktl5EGa2tjMdEeYPuKcRPeiXo81ty8um3CFgwFnHqcxzPF/UtMD7ee5v5IM1a4Zv/KahdAe0qM96rJ8bLcU+TdswrxI/7PhxDffGe8Q1roy/0BuQrAgOeqxqMqcK8juvn9bHVGB8wT6K/gfeYAyWfS6Di0rMGpoJxFXvJ2yxP3U/weQcZPNfhYhv8XK2Xd7M/Fr8sZnMf0PRnleAW0e9hvwDtWC8ybfewrcGQSVe10TQoQ1tBswgfxYGXwj+VXWJQpUYAAA==", "debug_symbols": "5dztapRXGIXhc5nfoey19renUkqJGksgTMTEQgk5975p3/kojg4Nafrc5F9G98ysEd23UbgeNh+v3n/97dfr7afbu827nx82N7cfLu+vb7fLo4dN+qn99YN3ny+3T4/v7i+/3G/euXZfbK62H5++nOPxYvPp+uZqeZDr48U3p6fyeni2tj9bx4mjTa7r2aYxDy+c6uMvF8ucHmvOiDVnxpqjFGyPgu1xsD052J4SbE8NtifY5axgt7OCXc8Kdj872P3sYPezg93PfoH7WaloPa10dPrkorSeTGdetPW2Gz7z/mzTOrswZ1fm7Mac3ZmzB3P2RM7OiTlbzNlmzmZWMjMrmZmVzMxKZmYlM7OSmVnJwqxkYVayMCtZmJUszEoWZiULs5KFWcnCrGRhVrIyK1mZlazMSlZmJSuzkpVZycqsZGVWsjIrWZmVbMxKNmYlG7OSjVnJxqxkY1ayMSvZmJVszEo2ZiU7s5KdWcnOrGRnVrIzK9mZlezMSnZmJTuzkp1ZycGs5GBWcjArOZiVHMxKDmYlB7OSg1nJwazkYFZyMis5mZWczEpOZiUns5KTWcnJrORkVnIyKzmZlVRiZlKJ2UklZiiVmKVc3hK6m9lKJWYslZi1VGLmcnkf5m5BeyloLwXtpaC9fAkr5n/ZDe2loL0UtJeC9lLQXhraS0N7aWgvoSaPoCiPoCqPoCyPoC6PoDCPoDKPoDSPoDaPoDiPoDqPoDyPoD6PoECPoEKPoESPoEaPoEiPoEqPoEyPoE6PoFCPoFKPoFSPoFaPoFiPoFqPoFyPoF6PoGCPoGKPoGSPoGaPoGiPoGqPoGyPoG6PoHCPoHKPoHSPoHaPoHiPoHqPoHyPoH6PoICPoIKPoISPoIaPoIiPoIqPoIyPoI6PoJCPoJKPoJSPoJaPoJiPoJqPoJyPoJ6PoKCPoKKPoKSPoKaPoKiPoKqPoKyPoK6PoLCPoLKPoLSPoLaPoLiPoLqPoLyPoL6Pob6Pob6Pob6Pob6PE7OXhvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+hvo+Ger7ZKjvk6G+T4b6Pjkxe5mhvk+G+j4Z6vtkqO+Tob5Phvo+Ger7ZKjvk6G+T4b6Phnq++Tzvk9L9dxuqe52q7TjN/n2cN6/ctFhj9LYDerRBo1og2awQecNndcepGiDHG1QjjaoRBtUow2KdlM72k3taDe1o93UOdpNnaPd1DnaTZ2j3dQ52k2do93UOdpNnf/bm3p9k/Eab/IiN2pt+zfp48e/tGp9953W8uU8vHTK66SS4k1SvEmONynHm1TiTarxJrVXn1T3/zDTRvrHpBO38fKfEOvppd7eny4+cbjXsZ7tsxy98O6j9rfzUcfb+ajzzXzUmt7OR1Xwj7o/vXw5jz/qut/w/Tn4/jH2+49+/xz2l+j7+25/SfnE/grff/6vFWrn9vfDX1766IfvxWo5Nalqd3r501dPTOqvPyn9eNJ34Ia2/7VN5cR3oN9hE849Kz/rWeVZz6rPelb7l89aHv1++eX68v3N1d3yjKef/Lr9cH99u10f3v/x+e+fWc7+CQ==" }, { "name": "check_balance", "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": "fee_limit", "type": { "kind": "field" }, "visibility": "private" }], "param_witnesses": { "fee_limit": [{ "start": 40, "end": 41 }], "inputs": [{ "start": 0, "end": 40 }] }, "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268], "error_types": {} }, "bytecode": "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", "debug_symbols": "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" }, { "name": "pay_fee", "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": "fee_limit", "type": { "kind": "field" }, "visibility": "private" }], "param_witnesses": { "fee_limit": [{ "start": 40, "end": 41 }], "inputs": [{ "start": 0, "end": 40 }] }, "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268], "error_types": {} }, "bytecode": "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", "debug_symbols": "5f3tjvXZctwH3gs/E4N/rnxbS7cyMAa0LQ8ICJRh0QMMBN2797G76mmCdfjsVf1EdCT6k46kvSuzuCoyu/P8Ivjf/+F//c//8//5//3//PO//G//9b/9w3/6f//3f/gv//V/+ad//ef/+i+v/9t//4fn/7Xc/+//5//2v//Tv/zt/+W//es//R//+g//6fnHf/jP//K/vv7P//GP//C//fN/+c//8J+W5//4n/7x//5GXH8jr79R19/o62/s62+c97/xj//uc8vs/PbRZdGfnzbz335+POCfb+Cfv8A/38E/P8A/P8E/v8A/v8E/f4N/Pli/CdZvgvWbYP0mWL8J1m+C9Ztg/SZYvwnWb/4h/doJ/+2jdir/zc//opt6Prspe77oph6pbkyqmyXVjUt1E1LdpFQ3JdVNS3WzpbqRmsUtNYtbaha31CxuqVncUrO4pWZxS83ilprFLTWLW2oWb6lZvKVm8ZaaxVtqFm+pWbylZvGWmsVbahZvqVm8pWbxkZrFR2oWH6lZfKRm8ZGaxUdqFh+pWXykZvGRmsVHaRb7ozSL/VGaxf4ozWJ/lGaxP0qz2B+lWeyP0iz2R2kW+6M0i/2RmsUmNYtNahab1Cw2qVlsUrPYpGaxSc1ik5rFJjWLTWoWL6lZvKRm8ZKaxUtqFi+pWbykZvGSmsVLahYvqVm8pGaxS81il5rFLjWLXWoWu9QsdqlZ7FKz2KVmsUvNYpeaxSE1i0NqFofULA6pWRxSszikZnFIzeKQmsUhNYtDahan1CxOqVmcUrM4pWZxSs3ilJrFKTWLU2oWp9QslvLduZTvzqV8dy7lu3Mp351L+e5cynfnUr47l/LduZTvzqV8dy7lu3Mp351L+e5cynfnUr47l/LduZTvzqV8dy7lu3Mp351L+e5cynfnUr47l/LduZTvzqV8dy7lu3Mp351L+e5cynfnUr47l/LduZTvzqV8dy7lu3Mp351L+e5cynfnUr47l/LdhZTvLqR8dyHluwsp3108SrM4pHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2FlO8upHx3IeW7CynfXUj57kLKdxdSvruQ8t2llO8upXx3KeW7SynfXT5KszilfHcp5btLKd9dSvnuUsp3l1K+u5Ty3aWU7y6lfHcp5btLKd9dSvnuUsp3l1K+u5Ty3aWU7y6lfHcp5btLKd9dSvnuUsp3l1K+u5Ty3aWU7y65vruuz266v+iG67v7aTcm1c2S6salugmpblKqm5LqpqW62VLdSM3ikJrFITWLQ2oWh9QsDqlZHFKzOKRmcUjN4pCaxSE1i1NqFqfULE6pWZxSszilZnFKzeKUmsUpNYtTahan1CwuqVlcUrO4pGZxSc3ikprFJTWLS2oWl9QsLqlZXFKzuKVmcUvN4paaxS01i1tqFrfULG6pWdxSs7ilZnFLzeItNYu31CzeUrN4S83iLTWLt9Qs3lKzeEvN4i01i7fULD5Ss/hIzeIjNYuP1Cw+UrP4SM3iIzWLj9QsPlKz+CjN4nqUZnE9SrO4HqVZXI/SLK5HaRbXozSL61GaxfUozeJ6lGZxPVKz2KRmsUnNYpOaxSY1i01qFpvULDapWWxSs9ikZrFJzeIlNYuX1CxeUrN4Sc3iJTWLl9QsXlKzeEnN4iU1i6V8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdlZTvrqR8dyXluysp311J+e5KyndXUr67kvLdtZTvrqV8dy3lu2sp310/SrO4pXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dSvruW8t21lO+upXx3LeW7aynfXUv57lrKd9dU311/fvr1H+Orbo5QN5vqu/t5NybVDXMWv/bQZzdnfdWNS3UTUt2kVDcl1Q1z3myLj272+kpTVG/Zz7shasrX7t8+/fqP+6tuiJpyX/nRjWd+1U1KdbOlujlK3TA9Qm90Y1LdLKluXKobqXmzpOYN0yP0Rjct1Y3ULGZ6hDyezx0eHT/5dNln72X7/Ojkyd96ZzqKfnnvNrj3pdH7b91Qt0I/n908X3YTUt2kVDcl1U1LdbOlujlK3cQj1Y1JdbOkupGaxSE1i0NqFofULA6pWRxSszikZnFKzeKUmsUpNYtTahan1CxOqVmcUrM4pWZxSs3ilJrFJTWLS2oWl9QsLqlZXFKzuKRmcUnN4pKafiU1/Vpq+rXU9Gup6cf0B3mcD2rh9V94/PFbN9NN9Mt7z8G9X0y+375xbr9x42r57Rt2/Y11/Q2//kZcfyOvv1HX3+jrb1y/+b5+83P95uf6zc/1m5/rNz/Xb36u3/xcv/m5fvNz/ebn9s3P81x/w66/sa6/4dffiOtv5PU36vobff2Nff2N6ze36ze36ze36ze36ze36ze36ze36ze36ze36ze36zdf12++rt98Xb/5un7zdf3m6/rN1/Wbr+s3X9dvvq7f3K/f3K/f3K/f3K/f3K/f3K/f3K/f3K/f3K/f3K/fPK7fPK7fPK7fPK7fPK7fPK7fPK7fPK7fPK7fPK7fPK/fPK/fPK/fPK/fPK/fPK/fPK/fPK/fPK/fPK/fvK7fvK7fvK7fvK7fvK7fvK7fvK7fvK7fvK7fvK7fvK/fvK/fvK/fvK/fvK/fvK/fvK/fvK/f/PoOd67vcOf6Dneu73Dn+g53ru9w5/oOd67vcOf6Dneu73Dn+g53ru9w5/oOd67vcOf6Dneu73Dn+g53ru9w5/oOd67vcOf6Dneu73D2XB/iXl+x+6+s+6/4/Vfi/it5/5W6/0rff2Xff+X+9e3+9e3+9e3+9e3+9e3+9e3+9e3+9e3+9e3+9e3+9df966/711/3r7/uX3/dv/66f/11//rr/vXX/euv+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9fv+9fv+9fv+9fv+9fv+9fv+9fv+9fv+9fv+9fv+9ff96+/719/37/+vn/9ff/6+/719/3r7/vX3/evv+9f/9y//rl//XP/+uf+9c/965/71z/3r3/uX//cv/79rc/ub312f+uz+1uf3d/6Xv/Ue/+VvP9K3X+l77+y779y//r3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6ufX9+/SIfT4ioY/Z52dft4ovPrv6Mz76+fFz3T87WTKduEwnIdNJynRSMp20TCdbppOj0skf+98m80s7kZmxS2bGLpkZu2Rm7JKZsUtmxi6ZGbtkZuySmbEuM2NdZsa6zIx1mRnrMjPWZWasy8xYl5mxLjNjXWbGhsyMDZkZGzIzNmRmbMjM2JCZsSEzY0NmxobMjA2ZGZsyMzZlZmzKzNiUmbEpM2NTZsamzIxNmRmbMjM2ZWZsyczYkpmxJTNjS2bGlsyMLZkZWzIztmRmbMnM2JKZsS0zY1tmxrbMjG2ZGdsyM7ZlZmzLzNiWmbEtM2NbZsZumRm7ZWbslpmxW2bGbpkZu2Vm7JaZsVtmxm6ZGbtlZuyRmbFHZsYemRl7ZGbskZmxR2bGHpkZe2Rm7JGZsUdlxvqjMmP9UZmx/qjMWH9UZqw/KjPWH5UZ64/KjPVHZcb6ozJj/ZGZsSYzY2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8Xi7j83IZn5fL+LxcxuflMj4vl/F5uYzPy2V8XiHj8woZn1fI+LxCxucVj8qMDRmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeIePzChmfV8j4vELG5xUyPq+Q8XmFjM8rZHxeKePzShmfV8r4vFLG55WPyoxNGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzytlfF4p4/NKGZ9Xyvi8UsbnlTI+r5TxeaWMzyv/mM/r2P7oxNcf7WTLdHJUOvljPq9f2onJdLJkOnGZTkKmk4sZ+/GVuv9K339l33/lXH/lxjT08RW7/8q6/4rffyXuv3L/+vv+9ff96+/719/3r3/uX//cv/65f/1z//rn/vXP/euf+9c/969/7l//XL9+Pc/9V+z+K+v+K37/lbj/St5/pe6/0vdf2fdfuX99u399u399u399u399u399u399u399u399u399u3/9df/66/711/3rr/vXX/evv+5ff92//rp//XX/+uv+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9f3+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9eP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9fP+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9ev+9fv+9fv+9fv+9fv+9fv+9e9vfXV/66v7W1/d3/rq/tZX97e+ur/11f2tr+5vfXV/66v7W1/d3/rq/tZX97e+ur/11f2tr+5vfXV/66v7W1/d3/rq/tZX97e+ur/11f2tr+5vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/tbX97e+vr/19f2tr+9vfX1/6+v7W1/f3/r6/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1rfvb337/ta37299+/7Wt+9vffv+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/7Wd+5vfef+1nfub33n/tZ37m995/rWt57rW9/rK3b/lXX/Fb//Stx/Je+/Uvdf6fuv7Puv3L++3b++3b++3b++3b++3b++3b++3b++3b++3b++3b/+un/9df/66/711/3rr/vXX/evv+5ff92//rp//XX/+n7/+n7/+n7/+n7/+n7/+n7/+n7/+n7/+n7/+n7/+nH/+nH/+nH/+nH/+nH/+nH/+nH/+nH/+nH/+nH/+nn/+nn/+nn/+nn/+nn/+nn/+nn/+nn/+nn/+nn/+nX/+nX/+nX/+nX/+nX/+nX/+nX/+nX/+nX/+nX/+n3/+n3/+n3/+n3/+n3/+n3/+n3/+n3/+n3/+n3/+vv+9ff96+/719/3r7/vX3/fv/6+f/19//r7/vX3/euf+9c/969/7l//3L/+uX/9c//65/71z/3rn/vXv7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W5/d3/rs/tZn97c+u7/12f2tz+5vfXZ/67P7W9+6v/Wt+1vfur/1rftb3+u/4b7/St5/pe6/0vdf2fdfuX/9+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/X5/a3P7299fn/r8/tbn9/f+vz+1uf3tz6/v/X5/a3P7299fn/r8/tbn9/f+vz+1uf3tz6/v/X5/a3P7299fn/r8/tbn9/f+vz+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GS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8FprxWmjGa6EZr4VmvNYT6AKJLlDoAo0usNEF0EpGM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814OZrxcjTj5WjGy9GMlz+BLpDoAoUu0OgCG10ArWQ04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXf8142XnWxxeP20/K/O2/JPjt03/7t8rPT8f64sOd+7fP9okfP/j5aOhrJuzPbMjUGlpqDblaQ/ErGkr7bCjP7xv6qJKUKvUrquz9WeV3/xP7XZX+JVU+ps3r36n9qyqbUuXvjLTzMTbXYz+rUs/6+HQ9f/vEv6uyH0oVo1RZf7xKnrN/VOn/WMB/C2r9eETrH2r/7Oj8kt/78y+l7Flf/N5n/YoqlT+qxB/9vV2uo2J3tNbHOPibi/eLjlqso7Bf8ddqqz47yv0fd7RefXz86NfV44uOllxH11P5ty+u57tftO9+cX33i/7dL8Z3v5jf/WJ994v93S/u737xu385/t2/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PshXR3IzW80H+epIbmar+SBfHcnNbDUf5KsjuZmt5oN8dSQ3s9V8kK+O5Ga2mg/y1ZHczFbzQb46kpvZaj7IV0dyM1vNB/nqSG5mq/kgXx3JzWw1H+SrI7mZreaDfHUkN7PVfJCvjuRmtpoP8tWR3MxW80G+OpKb2Wo+yFdHcjNbzQf56khuZqv5IF8dyc1sNR/kqyO5ma3mg3x1JDez1XyQr47kZraaD/LVkdzMVvNBvjqSm9lqPshXR3IzW80H+epIbmar+SBfHcnNbDUf5KsjtZltcj5Ik/NBmpwP0uR8kPaozWyT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB7nkfJBLzge55HyQS84HuR61mb3kfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8kEvOB7nkfJBLzge55HyQS84HueR8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HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM1wEzXvaAGa9XAUMXWOgCji4Q6AKJLlDoAo0usNEF0Eo2tJINrWRDK9nQSja0kg2tZEMr2dBKNrSSDa3khVbyQit5oZW80EpeaCUvtJIXWskLreSFVvJCK9nRSna0kh2tZEcr2dFKdrSSHa1kRyvZ0Up2tJIDreRAKznQSg60kgOt5EArOdBKDrSSA63kQCs50UpOtJITreREKznRSk60khOt5EQrOdFKTrSSC63kQiu50EoutJILreRCK7nQSi60kgut5EIrudFKbrSSG63kRiu50UputJIbreRGK7nRSm60kjdayRut5I1W8kYrGcx4/S2iFV0AreSNVvJGK3mjlXzQSj5oJR+0kg9ayQet5INW8kEr+aCVfNBKRjNehma8DM14GZrxMjTj9bprogskukChCzS6wEYXQCsZzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8VpoxmuhGa+FZrwWmvFaT6ALJLpAoQs0usBGF0ArGc14LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC004+VoxsvRjJejGS9HM17+BLpAogsUukCjC2x0AbSS0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGa9AM16BZrwCzXgFmvGKJ9AFEl2g0AUaXWCjC6CVjGa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xVoxivQjFegGa9AM16BZrwCzXgFmvEKNOMVaMYr0IxXoBmvQDNegWa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xV/kPGqJz8K1Po3Bf79h+2E//ZhO5WfH34dlb749Krn/PbpVfb8m09/Nt+Tm9+Tmz+Dm/+DTN2f3LxNbn5Nbt4nNx+Tm8/JzU/esDl5w+bkDZuTN2xN3rA1ecPW5A1bkzfsH2SL/+TmJ2/Ymrxha/KGrckbtiZv2J68YXvyhu3JG7Ynb9g/yPz/yc1P3rA9ecP25A3bkzdsT96we/KG3ZM37J68YffkDfsHvTh/cvOTN+yevGH35A27J2/YPXnDnskb9kzesGfyhj2TN+wf9Mj9yc1P3rBn8oY9kzfsmbxhz+ANm8/gDZvP4A2bz+ANm8/gDZvP4A2bz+ANm8/gDZvP4A2bz+ANm8/kDWuTN6xN3rA2ecPa5A37Bz3lf3LzkzesTd6wNnnD2uQNa5M37Jq8YdfkDbsmb9g1ecP+wayHP7n5yRt2Td6wa/KGXZM37Jq8YX3yhvXJG9Ynb1ifvGH/YAbLn9z85A3rkzesT96wPnnD+uQNG5M3bEzesDF5w8bkDfsHs5H+5OYnb9jJmU45OdMpJ2c65eRMp5yc6ZSTM51ycqZTTs50ysmZTjk50yknZzrl5EynnJzplJMznXJyplNOznTKyZlOOTnTKSdnOuXkTKecnOmUkzOdcnKmU07OdMrJmU45OdMpJ2c65eRMp5yc6ZSTM51ycqZTTs50ysmZTjk50yknZzrl5EynnJzplJMznXJyplNOznTKyZlOOTnTKSdnOuXkTKecnOmUkzOdcnKmU07OdMrJmU45OdMpJ2c65eRMp5yc6ZSTM51qcqZTTc50qsmZTjU506mewRu2Jmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5EynmpzpVJMznWpyplNNznSqyZlONTnTqSZnOtXkTKeanOlUkzOdanKmU03OdKrJmU41OdOpJmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5EynmpzpVJMznWpyplNNznSqyZlONTnTqSZnOtXkTKeanOlUkzOdanKmU03OdKrJmU41OdOpJmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5EynmpzpVJMznWpyplNNznSqyZlONTnTqSZnOtXkTKeanOlUkzOdanKmU03OdKrJmU41OdOpJmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5EynmpzpVJMznWpyplNNznSqyZlONTnTqSZnOtXkTKeanOlUkzOdanKmU03OdKrJmU49OdOpJ2c69eRMp56c6dTP4A3bkzOdenKmU0/OdOrJmU49OdOpJ2c69eRMp56c6dSTM516cqZTT850auFMp67P5v/2875qXnfDvtG87oZ9o3ndDfvz5oUznd5oXnfDvtG87oZ9o3ndDftG87ob9o3mdTfsG81P3rDCmU5vND95wwpnOv28eeFMpzean7xhhTOd3mh+8oYVznR6o/nJG1Y40+mN5idvWOFMpzean7xhhTOd3mh+8oYVznR6o/nJG1Y40+mN5idvWOFMpzean7xhhTOd3mh+8oYV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" }, { "name": "constructor", "is_unconstrained": true, "custom_attributes": ["aztec(public)", "aztec(initializer)"], "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": "portal_address", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::eth_address::EthAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] }, "visibility": "private" }], "param_witnesses": { "inputs": [{ "start": 0, "end": 40 }], "portal_address": [{ "start": 40, "end": 41 }] }, "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268], "error_types": {} }, "bytecode": "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", "debug_symbols": "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QybnNWRyXkMm5zVkcl5DJuc1ZHJeQybnNWRyXkMm5zVkcl5DJuc1ZHJeQybnNWRyXlMm5zVlcl5TJuc1ZXJe86EyY6dMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8rkvKZMzmvK5LymTM5ryuS8pkzOa8nkvJZMzmvJ5LyWTM5rPVRm7JLJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5LZmc15LJeS2ZnNeSyXktmZzXksl5rb+W81o2X5U0/6uVLJVK/lrO65dWYjKVuEwlTaaSkKkkZSoBZuzrIwP/yMQ/ssCP+APJIr0+YvhHHP9Iwz8S+EcS/0jHPzLwj0z8I7j6hqtvuPqGq2+4+oarb7j6hqtvuPqGq2+4+o6r77j6jqvvuPqOq++4+o6r77j6jqvvuPoNV7/h6jdc/Yar33D1G65+w9VvuPoNV7/h6geufuDqB65+4OoHrn7g6geufuDqB65+4Oonrn7i6ieufuLqJ65+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1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1tdx1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdw1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1jdx1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw1rdw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mhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW5ob71uaG+9bmhvvW1ob71taG+9bWhvvW1ob71taj33P1bXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW18b6ltfG+pbXxvqW1776leOy7b+lZ+7bn6rP2bc/VZ+3bnqvP2rc9V5+1b3uuPmvf9lx91r7tufqsfdtz9Vn7xufqvvuWnrVvfK7uu2/pWfvG5+q++5aetW98ru67b+lZ+8bn6r77lp61b3yu7rtv6Vn7xufqvvuWnrVvfK7uu2/pWfvG5+q++5aetW98ru67b+lZ+8bn6r77lp61b3yu7rtv6Vn7xufqvvuWnrVvfK7uu2/pWfvG5+q++5aetW98ru67b+lZ+8bn6r77lp61b3yu7rtv6Vn7xufqvvuWnrVvfK7uu2/pWfvG5+q++5aetW98ru67b+lZ+8bn6r77lp61b3yu7rtv6Vn7xufqvvuWnrVvfK7uu2/pWfvG5+q++5aetW98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Zfue5WhNZals37Mcraksle17lqM1laWyfc9ytKayVLbvWY7WVJbK9j3L0ZrKUtm+ZzlaU1kq2/csR2sqS2X7nuVoTWWpbN+zHK2pLJXte5ajNZWlsn3PcrSmMjXb137+bcStzceHn7Yer3/NjPX+h5+O9VM8c4a3+fMvrw3vH346H6+vzvC3pQf19+6/lz7e/s8gtcrpWuUMrXKmVjlLqhxqavBPlGNa5bhWOU2rHK2p3LWmcteayl1rKnetqdy1pvLQmspDayoPrak8tKby0JrKQ2sqD62pPLSm8tCaykNrKk+tqTy1pvLUmspTaypPrak8taby1JrKU2sqT62pPLWm8tKayktrKi+tqby0pvLSmspLayovram8tKby0prKS2oq20NqKttDairbQ2oq20NqKttDairbQ2oq20NqKttDairbQ2oq20NrKpvWVDatqWxaU9m0prJpTWXTmsqmNZVNayqb1lQ2ransWlPZtaaya01l15rKrjWVXWsqu9ZUdq2p7FpT2bWmctOayk1rKjetqdy0pnLTmspNayo3ranctKZy05rKTWsqh9ZUDq2pHFpTObSmcmhN5dCayqE1lUNrKofWVA6tqZxaUzm1pnJqTeXUmspa2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2tl+1wr2+da2T7Xyvb5Q2oqu1a2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9r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ufBdT07VHUKfC9/15FTdIfS58F1PTtUdQp8L3/XkVN0h9LnwXU9O1R1Cnwvf9eRU3SH0ufBdT07VHUKfC9/15FTdIfS58F1PTtUdQp8L3/XkVN0h9LnwXU9O1R1Cnwvf9ORM1R1Cnwvf9ORM1R1Cnwvf9OTMx6YnZ6ruEPpc+KYnZ6ruEPpc+KYnZ6ruEPpYuOoOoc+F73pyqu4Q+lz4rien6g6hz4XvenKq7hD6XPiuJ6fqDqHPhe96cqruEPpc+K4np+oOoc+F73pyqu4Q+lz4rien6g6hz4XvenKq7hD6XPiuJ6fqDqHPhe96cqruEPpc+K4np+oOoc+F73pyqu4Q+lz4rien6g6hz4XvenKq7hD6XPiuJ6fqDqHPhe96cqruEPpc+K4np+oOoc+F73pySuwQetWicBj+VovEpp9XLQpH1qsWhVPoVYvCwfKqReGseNWiMP5ftShM9FctCkP6VYvQ3JVYKvNbLRJ7Yl61CM1diW0ur1qE5q7EzpVXLUJz91ubUV5fP7779fO7X7+++vXf2tjx+nr77tf7d7++fffr47tfn9/9+u927fhu147vdu34btfO73bt/G7Xzu927fxu187vdu38btfO73bt/G7Xzu927fxu167vdu36bteu73bt+m7Xru927fpu167vdu36bteu73bt+mrX9sfju19v3/16/+7Xt+9+fXz36/O7X9+/+/Xju18/v/v13+1a+27X2ne71r7btfbdrrXvdq19t2vtu11r3+1a+27X2ne71r/btf7drvXvdq1/t2v9u13r3+1a/27X+ne71r/btX/N8/7+53776r/mSv+3v9q+99X+va9u3/vq+N5X5/e+un/vq8f3vnp+76u/143xvW6M73VjfK8b43vdGN/rxvheN8b3uvGv+Qp7tvjtR5//mD8//WP/63/N/vcnvn999/v/mk3vT3y/ffn7/cvf3778/fHl788vf3//8vd/uX/zy/2bX+7f/uX+7V/u3/7l/u1f7t/+5f79a5aoMXv+9qPPf+zvvr9/+fvHl79/fvn713e//69Znf7E99uXv9+//P3ty98fX/7+L/fv+HL/ji/37/hy/44v9+/8cv/OL/fv/G7/zr/2lwW3MX77Uffm//2PGPF//Olmj1c1zf5wmr7/aXvEqwx7dPv9px/x7qentVclj/HHuu3dT0e86Kfl/AP+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" }, { "name": "mint_public", "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": "to", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] }, "visibility": "private" }, { "name": "amount", "type": { "kind": "field" }, "visibility": "private" }], "param_witnesses": { "amount": [{ "start": 41, "end": 42 }], "inputs": [{ "start": 0, "end": 40 }], "to": [{ "start": 40, "end": 41 }] }, "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": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269], "error_types": {} }, "bytecode": "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", "debug_symbols": "5b3drmXJeV35LrwWGiu+/9CrNBoN2ZYbAgTKsOgGGoLfvY/sypMl6FBVwco1OAN1paK494rYXDVnJKPG+Pgvf/gvf/+f/sf/83//wx//6z/98x/+9v/8lz/84z/957/70z/80x8//tW//OH5P8zjf/2///m//d0f//X/889/+rv//qc//O3zN3/4+z/+l4//+z//5g//9R/+8e//8Lfm+T//r7/5X9/I42/U8Tf6+Btz/I19+o14jr+xjr9hv/4bf/PvPreeVT99dD2+Pj+9Yn97vr/8/Hj5+fny8+vl5/fLz5+Xn7/ffX4+Lz9/vfz8l/ObL+c3X85vvpzf/E1//9vHWfXTRz/+sr8/f/m35+93n1/2255f35+/56vn+8vPj5efny8/v15+fr/8/Hn5+fvd5/fz8vPXy89/Ob/92/Jb69vjyz4/+/nsePHZ+eKzf1tm19rfHr7iq07ufvn58/Lz97vPn+fl56+Xn28vP99ffn68/Px8+fkv53dezu+8nN95Ob/75fzul/O7X87vfjm/++X87pfzu1/O7345v/vl/O538+vP8/Lz18vPt5ef7y8/P15+fr78/Hr5+f3y8+fl57+c3/VyftfL+V0v53f9tjvPHf7tznBX/pvnf7GbyPm2m2j/ajchtZsGd5Mrvu0mv97NSO1mK+3GHqndLKndmNRuyL6p57P9aj1f7SakdpNSuymp3bTUbkZqN1tpN/5I7WZJ7cakdiPVxS7VxS7VxS7VxS7VxS7VxS7VxSHVxSHVxSHVxSHVxSHVxSHVxSHVxSHVxSHVxSHVxSnVxSnVxSnVxSnVxSnVxSnVxSnVxSnVxSnVxSnVxSXVxSXVxSXVxSXVxSXVxSXVxSXVxSXVxSXVxSXVxS3VxS3VxS3VxS3VxS3VxS3VxS3VxS3VxS3VxS3VxSPVxSPVxSPVxSPVxSPVxSPVxSPVxSPVxSPVxSPVxVuqi7dUF2+pLt5SXbylunhLdfGW6uIt1cVbqou3UhfHo9TF8Sh1cTxKXRyPUhfHo9TF8Sh1cTxKXRyPUhfHo9TF8Uh18ZLq4iXVxUuqi5dUFy+pLl5SXbykunhJdfGS6uIl1cUm1cUm1cUm1cVS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSHl3IeXdhZR3F1LeXUh5dyHl3YWUdxdS3l1IeXch5d2FlHcXUt5dSnl3KeXdpZR3l1LeXT5KXZxS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXUt5dSnl3KeXdpZR3l1LeXUp5dynl3aWUd5dS3l1KeXcp5d2llHeXrHfX9bmb7q92E1K7SandlNRuWmo3I7WbLbSbYr27X9zNktqNSe1GqYvrUeriepS6uB6lLq5HqYvrUerieqS6eEl18ZLq4iXVxUuqi5dUFy+pLl5SXbykunhJdfGS6mKT6mKT6mKT6mKT6mKT6mKT6mKT6mKT6mKT6mKT6mKX6mKX6mKX6mKX6mKX6mKX6mKX6mKX6mKX6mKX6uKQ6uKQ6uKQ6uKQ6uKQ6uKQ6uKQ6uKQ6uKQ6uKQ6uKU6uKU6uKU6uKU6uKU6uKU6uKU6uKU6uKU6uKU6uKS6uKS6uKS6uKS6uKS6uKS6uKS6uKS6uKS6uKS6uKW6uKW6uKW6uKW6uKW6uKW6uKW6uKW6uKW6uKW6uKR6uKR6uKR6uKR6uKR6uKR6uKR6uKR6uKR6uKR6uIt1cVbqou3VBdLeXcl5d2VlHdXUt5dSXl3JeXdlZR311LeXUt5dy3l3bWUd9ePUhe3lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXct5d21lHfXUt5dS3l3LeXdtZR311LeXUt5dy3l3bWUd9dS3l1LeXcj5d2NlHc3Ut7dSHl38yh18Uh5dyPl3Y2UdzdS3t1IeXcj5d2NlHc3Ut7dSHl3I+XdjZR3N1Le3Uh5dyPl3Y2UdzdS3t1IeXcj5d2NlHc3Ut7dSHl3I+XdjZR3N1Le3Uh5dyPl3Y2UdzdS3t1IeXcj5d2NlHc3Ut7dSHl3I+XdjZR3N1Le3Uh5dyPl3Y2UdzdS3t1IeXcj5d2NlHc3Ut7dSHl3I+XdjZR3N1Le3Uh5dyPl3Y2UdzdS3t1IeXcj5d2NlHc3Ut7dSHl3g3p3/fnpj7+Mr3bjUrsJqd2k1G7ILu69Pnez7avdtNRuRmo3W2k3qHf3y7sh+2ZWfNvNxz+K+mo3YKbcpn/69Mdfzle7ATPlbvltN5751W5GaTekI/QrdmNSu3Gp3YTUblJqNyW1G6m+Ga2+2Uq7IR2hX7EbqS4mHSGP5/MMj45f+HStz73Xmv19J09+27tfvPe4eO+psfefdoOeCv187ub5cjcttZuR2s0W2s1+HqndLKndmNRuXGo3IbWblNqNUhfvR6mL96PUxfuR6uIl1cVLqouXVBcvqS5eUl28pLp4SXXxkuriJdXFS6qLTaqLTaqLTaqLTaqLTaqLTaqLTaqLTaqLTaqLTaqLXar9XKr9XKr9XKr9XKr9SD/IY3+jFj7+gcdvvuvepE30w/c+9+4dtXF+iXTZqI3zy7tRooA2auP88m5SajcltRuSOvz4p+6fu9n91W5GajdbaTeojfPLu1lSuzGp3bjUbkJqNym1m5LaDdrFvj93M1/uZqR2s5V2g9o4v7ybJbUbk9qNS+0mpHaTUrspqd1IdXFJdXFJdXFLdXFLdXFLdXFLdXFLdXFLdXFLdXFLdXFLdXFLdfFIdfFIdfFIdfFIdfFIdfFIdfFIdfFIdfFIdfFIdfGW6uIt1cXo/wrWXp8G/47nq9241G5CajcptZuS2k1L7Ybs4o+78p8+7c+zv9rNFtrNetD/qadfsR3X2k5obSe1tlNa22mt7ZBA01Of6vxy+4VP/yLQ9LH5ffHmUUHrh29+aWz+23ZIjPax+QxVfb0d19pOaG0ntbZTWttpre2M1na21HZQsetXbGdpbUerlU2rlU2rlU2rlU2rlU2rlU2rlU2rlV2rlV2rlV2rlV2rlV2rlV2rlV2rlV2rlV2rlV2rlUOrlUOrlUOrlUOrlUOrlUOrlUklzld/Sqmr88vttNZ2Rms7W2o7pBb3a7aztLZjWttxre2E1nZSaztarZxarZxarZxarVxarVxarVxarVxarVxarVxarVxarVxarVxarVxardxardxardxardxardxardxardxardxardxardxarTxarTxarTxarTxarTxarTxarTxarTxarTxarTxarby1WnlrtfLWauWt1cpbq5W3VitvrVbeWq28tVp5S7XyeqRaeT1SrbweqVZej1Qrf/yTa63tSLXyeqRaeT1SrbweqVZej1YrL61WXlqtvLRaeWm18tJq5aXVykurlZdWKy+tVl5arWxarWxarWxarWxarWxarWxarWxarWxarWxarWxarexarexarexarexarexarexarexarexarexarexarRxarRxarRxarRxarRxarRxarazl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7lpbbt7TcvqXl9i0tt29puX1Ly+1bWm7f0nL7TMvtMy23z7TcPtNy++yRamXTcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+03D7TcvtMy+0zLbfPtNw+03L7TMvtMy23z7TcPtNy+0zL7TMtt8+13D7Xcvtcy+1zLbfPH6lWdi23z7XcPtdy+1zL7XMtt8+13D7Xcvtcy+1zLbfPUbfP1nzbjsXz5XZSazultR2ylT/uSz63M/PldkZqO6hM9yu2s7S2Y1rbca3thNR2Tgykb19Z51+x86/4+Vfi/Ct5/pU6/0qff2XOv7KPvxLnbz/O336cv/04f/tx/vbj/O3H+duP87cf528/zt9+nr/9PH/7ef728/zt5/nbz/O3n+dvP8/ffp6//Tx/+3X+9uv87df526/zt1/nb7/O336dv/06f/t1/vbr/O33+dvv87ff52+/z99+n7/9Pn/7ff72+/zt9/nb7/O3P+dvf87f/py//Tl/+3P+9uf87c/525/ztz/nb3/O3/4+f/v7/O3v87e/z9/+Pn/7+/zt7/O3v8/f/j5/+/v47cfznH9lnX/Fzr/i51+J86/k+Vfq/Ct9/pU5/8r521/nb3+dv/11/vbX+dtf529/nb/9df721/nbX+dvf52/fTt/+3b+9u387dv527fzt2/nb9/O376dv307f/t2/vbP7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL87v+uL8ri/O7/ri/K4vzu/64vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K4vz+/68vyuL8/v+vL8ri/P7/ry/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+ur8rq/O7/rq/K6vzu/66vyur87v+uq3/S+NzP42tmKv9fnZteyLz1p/jrh4vj/X/XMnIbOTlNlJyeykZXYyMjvZKjv5bf8zIj90J0tmJyazE5mObZmObZmObZmObZmObZmObZmOHZmOHZmOHZmOHZmOHZmOHZmOHZmOHZmOHZmOHZmO3TIdu2U6dst07Jbp2C3TsVumY7dMx26Zjt0yHbtVOrYflY7tR6Vj+1Hp2H5UOrYflY7tR6Vj+1Hp2H5UOrYflY7tR6Zjl0zHLpmOXTIdu2Q6dsl07JLp2CXTsUumY5dMxy6ZjjWZjjWZjjWZjjWZjjWZjjWZjjWZjjWZjjWZjjWZjnWZjnWZjnWZjnWZjnWZjnWZjnWZjnWZjnWZjnWZjg2Zjg2Zjg2Zjg2Zjg2Zjg2Zjg2Zjg2Zjg2Zjg2Zjk2Zjk2Zjk2Zjk2Zjk2Zjk2Zjk2Zjk2Zjk2Zjk2Zji2Zji2Zji2ZjpXxvFrG82oZz6tlPK+W8bxaxvNqGc+rZTyvlvG8WsbzahnPq2U8r5bxvFrG82oZz6tlPK+W8bxaxvNqGc+rZTyvlvG8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4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foc4foC4foC4foC4foC4friCWSVRFYpZJVGVhlkFST7CNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXCNcXBNdXf4YefH760vMLzzfz+umjH3/5fTdr+ecC/fYC8/YC++UFviYFf+QC6+0F7O0F/O0F4u0F8u0FfmOSZz4X2F8v0G8vMG8vsF9eIJ+3F1hvL2BvL+BvLxBvL5BvL/B2kvPtJOfbSc63k1xvJ7l+Y5Lr+3mw58sF7O0F/O0F4u0F8u0F6u0F+u0F5u0F9ssL9PP2Am8nud9Ocr+d5H47yf12kvvtJPfbSe63k9xvJ3neTvK8neR5O8nzdpLn7STP20met5M8byd53k7yvJ3k/XaS99tJ3m8neb+d5P12kvfbSd5vJ3m/neT9dpL3y0n+M/Tbj1zgyxxY9U/f8ye+f+2Zz6/FX/a1/Mu+Vn/Z1/ov+9r8RV/7Goop+/YGqubLr+Vf9rX6y77Wf9nX5vBrH//q//27//4Pf/ef/vHv//njG//6b/6PP/7nP/3DP/3xp3/5p//vv/3vf+fjs/8/" }, { "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": "ndpBattQGIXRvWgciu8vvScpWymlOIlTDMYOsVMoJnuv3dIF9Mz0JN3ZNzq86/Cye/r48X1/fD2dh8ev1+Fwet5e9qfj7XQdNl+q/3l7ftse7y/Ol+37ZXgcKw/D7vhyf+qfD8Pr/rAbHmtsn98e7qNZRouMVhiNGxlFRiWjUUaTjJqMpIhRihiliFGKmKSISYqYpIhJipikiEmKmKSISYqYpIhJimhSRJMimhTRpIgmRTQpokkRTYpoUkSTIroU0aWILkV0KaJLEV2K6FJElyK6FNGliFmKmKWIWYqYpYhZipiliFmKmKWIWYqYpYhFilikiEWKWKSIRYpYpIhFilikiEWKWKSIVYpYpYhVililiFWKWKWIVYpYpYhVililiGw2tAqtilYjrSZaNVp1Ws20WmhFbYTaCLURaiPURqiNUBuhNkJthNoItVHURlEbRW0UtVHURlEbxJkhzwyBZkg0Q6QZMs0QaoZUM8SaIdcMwWZINkO0GbLNEG6GdDPEmyHfDAFnSDhDxBkyzhByhpQzxJwh5wxBZ0g6Q9QZss4Qdoa0M8SdIe8MgWdIPEPkGTLPEHqG1DPEniH3DMFnSD5D9BmyzxB+hvQzxJ8h/wwBaEhAQwQaMtAQgoYUNMSgIQcNQWhIQkMUGrLQEIaGNDTEoSEPDYFoSERDJBoy0RCKhlQ0xKIhFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLbvmafc87aInuWiRixa5aJGLFrlo/beL3k4/t+/77dNhd7/Ze//4cXz+d9H3drz8evv75fbvbw==" }], "outputs": { "structs": { "functions": [{ "kind": "struct", "path": "GasToken::constructor_abi", "fields": [{ "name": "parameters", "type": { "kind": "struct", "path": "GasToken::constructor_parameters", "fields": [{ "name": "portal_address", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::eth_address::EthAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] } }] } }] }, { "kind": "struct", "path": "GasToken::pay_fee_abi", "fields": [{ "name": "parameters", "type": { "kind": "struct", "path": "GasToken::pay_fee_parameters", "fields": [{ "name": "fee_limit", "type": { "kind": "field" } }] } }, { "name": "return_type", "type": { "kind": "field" } }] }, { "kind": "struct", "path": "GasToken::claim_public_abi", "fields": [{ "name": "parameters", "type": { "kind": "struct", "path": "GasToken::claim_public_parameters", "fields": [{ "name": "to", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] } }, { "name": "amount", "type": { "kind": "field" } }, { "name": "secret", "type": { "kind": "field" } }, { "name": "leaf_index", "type": { "kind": "field" } }] } }] }, { "kind": "struct", "path": "GasToken::mint_public_abi", "fields": [{ "name": "parameters", "type": { "kind": "struct", "path": "GasToken::mint_public_parameters", "fields": [{ "name": "to", "type": { "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress", "fields": [{ "name": "inner", "type": { "kind": "field" } }] } }, { "name": "amount", "type": { "kind": "field" } }] } }] }, { "kind": "struct", "path": "GasToken::check_balance_abi", "fields": [{ "name": "parameters", "type": { "kind": "struct", "path": "GasToken::check_balance_parameters", "fields": [{ "name": "fee_limit", "type": { "kind": "field" } }] } }] }] }, "globals": { "storage": [{ "kind": "struct", "fields": [{ "name": "balances", "value": { "kind": "struct", "fields": [{ "name": "slot", "value": { "kind": "integer", "sign": false, "value": "1" } }, { "name": "typ", "value": { "kind": "string", "value": "Map<AztecAddress, PublicMutable<U128>>" } }] } }, { "name": "portal_address", "value": { "kind": "struct", "fields": [{ "name": "slot", "value": { "kind": "integer", "sign": false, "value": "2" } }, { "name": "typ", "value": { "kind": "string", "value": "SharedImmutable<EthAddress>" } }] } }] }] } }, "file_map": { "2": { "source": "// docs:start:eq-trait\ntrait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\nimpl Eq for Field { fn eq(self, other: Field) -> bool { self == other } }\n\nimpl Eq for u64 { fn eq(self, other: u64) -> bool { self == other } }\nimpl Eq for u32 { fn eq(self, other: u32) -> bool { self == other } }\nimpl Eq for u8 { fn eq(self, other: u8) -> bool { self == other } }\nimpl Eq for u1 { fn eq(self, other: u1) -> bool { self == other } }\n\nimpl Eq for i8 { fn eq(self, other: i8) -> bool { self == other } }\nimpl Eq for i32 { fn eq(self, other: i32) -> bool { self == other } }\nimpl Eq for i64 { fn eq(self, other: i64) -> bool { self == other } }\n\nimpl Eq for () { fn eq(_self: Self, _other: ()) -> bool { true } }\nimpl Eq for bool { fn eq(self, other: bool) -> bool { self == other } }\n\nimpl<T, N> Eq for [T; N] where T: Eq {\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0 .. self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<T> Eq for [T] where T: Eq {\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0 .. self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<N> Eq for str<N> {\n fn eq(self, other: str<N>) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl<A, B> Eq for (A, B) where A: Eq, B: Eq {\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl<A, B, C> Eq for (A, B, C) where A: Eq, B: Eq, C: Eq {\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl<A, B, C, D> Eq for (A, B, C, D) where A: Eq, B: Eq, C: Eq, D: Eq {\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl<A, B, C, D, E> Eq for (A, B, C, D, E) where A: Eq, B: Eq, C: Eq, D: Eq, E: Eq {\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3) & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\nstruct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n// docs:start:ord-trait\ntrait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else {\n if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n }\n}\n\nimpl<T, N> Ord for [T; N] where T: Ord {\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0 .. self.len() {\n if result == Ordering::equal() {\n let result_i = self[i].cmp(other[i]);\n\n if result_i == Ordering::less() {\n result = result_i;\n } else if result_i == Ordering::greater() {\n result = result_i;\n }\n }\n }\n result\n }\n}\n\nimpl<T> Ord for [T] where T: Ord {\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0 .. self.len() {\n if result == Ordering::equal() {\n let result_i = self[i].cmp(other[i]);\n\n if result_i == Ordering::less() {\n result = result_i;\n } else if result_i == Ordering::greater() {\n result = result_i;\n }\n }\n }\n result\n }\n}\n\nimpl<A, B> Ord for (A, B) where A: Ord, B: Ord {\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl<A, B, C> Ord for (A, B, C) where A: Ord, B: Ord, C: Ord {\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D> Ord for (A, B, C, D) where A: Ord, B: Ord, C: Ord, D: Ord {\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D, E> Ord for (A, B, C, D, E) where A: Ord, B: Ord, C: Ord, D: Ord, E: Ord {\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max<T>(v1: T, v2: T) -> T where T: Ord {\n if v1 > v2 { v1 } else { v2 }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min<T>(v1: T, v2: T) -> T where T: Ord {\n if v1 > v2 { v2 } else { v1 }\n}\n\nmod cmp_tests {\n use crate::cmp::{min, max};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0 as u64, 1 as u64), 0);\n assert_eq(min(0 as u64, 0 as u64), 0);\n assert_eq(min(1 as u64, 1 as u64), 1);\n assert_eq(min(255 as u8, 0 as u8), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0 as u64, 1 as u64), 1);\n assert_eq(max(0 as u64, 0 as u64), 0);\n assert_eq(max(1 as u64, 1 as u64), 1);\n assert_eq(max(255 as u8, 0 as u8), 255);\n }\n}\n", "path": "std/cmp.nr" }, "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" }, "20": { "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", "path": "std/field.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" }, "29": { "source": "mod poseidon;\nmod mimc;\nmod poseidon2;\n\nuse crate::default::Default;\nuse crate::uint128::U128;\nuse crate::sha256::{digest, sha256_var};\n\n#[foreign(sha256)]\n// docs:start:sha256\npub fn sha256<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:sha256\n{}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n#[foreign(blake3)]\n// docs:start:blake3\npub fn blake3<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{}\n\n// docs:start:pedersen_commitment\nstruct PedersenPoint {\n x : Field,\n y : Field,\n}\n\npub fn pedersen_commitment<N>(input: [Field; N]) -> PedersenPoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[foreign(pedersen_commitment)]\npub fn __pedersen_commitment_with_separator<N>(input: [Field; N], separator: u32) -> [Field; 2] {}\n\npub fn pedersen_commitment_with_separator<N>(input: [Field; N], separator: u32) -> PedersenPoint {\n let values = __pedersen_commitment_with_separator(input, separator);\n PedersenPoint { x: values[0], y: values[1] }\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash<N>(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[foreign(pedersen_hash)]\npub fn pedersen_hash_with_separator<N>(input: [Field; N], separator: u32) -> Field {}\n\npub fn hash_to_field(inputs: [Field]) -> Field {\n let mut sum = 0;\n\n for input in inputs {\n let input_bytes: [u8; 32] = input.to_le_bytes(32).as_array();\n sum += crate::field::bytes32_to_field(blake2s(input_bytes));\n }\n\n sum\n}\n\n#[foreign(keccak256)]\n// docs:start:keccak256\npub fn keccak256<N>(input: [u8; N], message_size: u32) -> [u8; 32]\n// docs:end:keccak256\n{}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation<N>(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n#[foreign(sha256_compression)]\npub fn sha256_compression(_input: [u32; 16], _state: [u32; 8]) -> [u32; 8] {}\n\n// Generic hashing support. \n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\ntrait Hash{\n fn hash<H>(self, state: &mut H) where H: Hasher;\n}\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\ntrait Hasher{\n fn finish(self) -> Field;\n \n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\ntrait BuildHasher<H> where H: Hasher{\n fn build_hasher(self) -> H;\n}\n\nstruct BuildHasherDefault<H>;\n\nimpl<H> BuildHasher<H> for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn build_hasher(_self: Self) -> H{\n H::default()\n }\n}\n\nimpl<H> Default for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn default() -> Self{\n BuildHasherDefault{}\n } \n}\n\nimpl Hash for Field {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self);\n }\n}\n\nimpl Hash for u8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash<H>(_self: Self, _state: &mut H) where H: Hasher {}\n}\n\nimpl Hash for U128 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self.lo as Field);\n H::write(state, self.hi as Field);\n }\n}\n\nimpl<T, N> Hash for [T; N] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<T> Hash for [T] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<A, B> Hash for (A, B) where A: Hash, B: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl<A, B, C> Hash for (A, B, C) where A: Hash, B: Hash, C: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl<A, B, C, D> Hash for (A, B, C, D) where A: Hash, B: Hash, C: Hash, D: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl<A, B, C, D, E> Hash for (A, B, C, D, E) where A: Hash, B: Hash, C: Hash, D: Hash, E: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n", "path": "std/hash.nr" }, "31": { "source": "// Regular merkle tree means a append-only merkle tree (Explain why this is the only way to have privacy and alternatives if you don't want it)\n// Currently we assume that it is a binary tree, so depth k implies a width of 2^k\n// XXX: In the future we can add an arity parameter\n// Returns the merkle root of the tree from the provided leaf, its hashpath, using a pedersen hash function.\npub fn compute_merkle_root<N>(leaf: Field, index: Field, hash_path: [Field; N]) -> Field {\n let n = hash_path.len();\n let index_bits = index.to_le_bits(n as u32);\n let mut current = leaf;\n for i in 0..n {\n let path_bit = index_bits[i] as bool;\n let (hash_left, hash_right) = if path_bit {\n (hash_path[i], current)\n } else {\n (current, hash_path[i])\n };\n current = crate::hash::pedersen_hash([hash_left, hash_right]);\n }\n current\n}\n", "path": "std/merkle.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" }, "42": { "source": "use crate::ops::{Add, Sub, Mul, Div, Rem, 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 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: U128) -> U128 { \n assert(other < U128::from_u64s_le(128,0), \"attempt to shift left with overflow\");\n let exp_bits = other.lo.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: U128) -> U128 { \n assert(other < U128::from_u64s_le(128,0), \"attempt to shift right with overflow\");\n let exp_bits = other.lo.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", "path": "std/uint128.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 = pedersen_hash([self.storage_slot, key.to_field()], 0);\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", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/map.nr" }, "61": { "source": "use crate::context::Context;\nuse crate::oracle::storage::storage_read;\nuse crate::oracle::storage::storage_write;\nuse dep::protocol_types::traits::{Deserialize, Serialize};\nuse crate::state_vars::storage::Storage;\n\n// docs:start:public_mutable_struct\nstruct PublicMutable<T> {\n context: Context,\n storage_slot: Field,\n}\n// docs:end:public_mutable_struct\n\nimpl<T> Storage<T> for PublicMutable<T> {}\n\nimpl<T> PublicMutable<T> {\n // docs:start:public_mutable_struct_new\n pub fn new(\n // Note: Passing the contexts to new(...) just to have an interface compatible with a Map.\n context: Context,\n storage_slot: Field\n ) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n PublicMutable { context, storage_slot }\n }\n // docs:end:public_mutable_struct_new\n\n // docs:start:public_mutable_struct_read\n pub fn read<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"PublicMutable reads only supported in public functions\");\n let fields = storage_read(self.storage_slot);\n T::deserialize(fields)\n }\n // docs:end:public_mutable_struct_read\n\n // docs:start:public_mutable_struct_write\n pub fn write<T_SERIALIZED_LEN>(self, value: T) where T: Serialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"PublicMutable writes only supported in public functions\");\n let fields = T::serialize(value);\n storage_write(self.storage_slot, fields);\n }\n // docs:end:public_mutable_struct_write\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/public_mutable.nr" }, "62": { "source": "use crate::{\n context::Context, history::public_storage::public_storage_historical_read,\n oracle::{storage::{storage_read, storage_write}}, state_vars::storage::Storage\n};\nuse dep::protocol_types::{constants::INITIALIZATION_SLOT_SEPARATOR, traits::{Deserialize, Serialize}};\n\n// Just like PublicImmutable but with the ability to read from private functions.\nstruct SharedImmutable<T>{\n context: Context,\n storage_slot: Field,\n}\n\nimpl<T> Storage<T> for SharedImmutable<T> {}\n\nimpl<T> SharedImmutable<T> {\n pub fn new(\n // Note: Passing the contexts to new(...) just to have an interface compatible with a Map.\n context: Context,\n storage_slot: Field\n ) -> 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 // Intended to be only called once. \n pub fn initialize<T_SERIALIZED_LEN>(self, value: T) where T: Serialize<T_SERIALIZED_LEN> {\n assert(\n self.context.private.is_none(), \"SharedImmutable can only be initialized from public functions\"\n );\n // TODO(#4738): Uncomment the following assert\n // assert(\n // self.context.public.unwrap_unchecked().is_deployment(), \"SharedImmutable can only be initialized during contract deployment\"\n // );\n\n // We check that the struct is not yet initialized by checking if the initialization slot is 0\n let initialization_slot = INITIALIZATION_SLOT_SEPARATOR + self.storage_slot;\n let fields_read: [Field; 1] = storage_read(initialization_slot);\n assert(fields_read[0] == 0, \"SharedImmutable already initialized\");\n\n // We populate the initialization slot with a non-zero value to indicate that the struct is initialized\n storage_write(initialization_slot, [0xdead]);\n\n let fields_write = T::serialize(value);\n storage_write(self.storage_slot, fields_write);\n }\n\n pub fn read_public<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"Public read only supported in public functions\");\n let fields = storage_read(self.storage_slot);\n T::deserialize(fields)\n }\n\n pub fn read_private<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.public.is_none(), \"Private read only supported in private functions\");\n let private_context = self.context.private.unwrap();\n\n let mut fields = [0; T_SERIALIZED_LEN];\n\n for i in 0..fields.len() {\n fields[i] =\n public_storage_historical_read(\n (*private_context),\n self.storage_slot + i as Field,\n (*private_context).this_address()\n );\n }\n T::deserialize(fields)\n }\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_immutable.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" }, "89": { "source": "use crate::{\n hash::{compute_secret_hash, compute_message_hash, compute_message_nullifier},\n oracle::get_l1_to_l2_membership_witness::get_l1_to_l2_membership_witness\n};\n\nuse dep::std::merkle::compute_merkle_root;\nuse dep::protocol_types::{constants::L1_TO_L2_MSG_TREE_HEIGHT, address::{AztecAddress, EthAddress}, utils::arr_copy_slice};\n\npub fn process_l1_to_l2_message(\n l1_to_l2_root: Field,\n storage_contract_address: AztecAddress,\n portal_contract_address: EthAddress,\n chain_id: Field,\n version: Field,\n content: Field,\n secret: Field\n) -> Field {\n let secret_hash = compute_secret_hash(secret);\n let message_hash = compute_message_hash(\n portal_contract_address,\n chain_id,\n storage_contract_address,\n version,\n content,\n secret_hash\n );\n\n let returned_message = get_l1_to_l2_membership_witness(storage_contract_address, message_hash, secret);\n let leaf_index = returned_message[0];\n let sibling_path = arr_copy_slice(returned_message, [0; L1_TO_L2_MSG_TREE_HEIGHT], 1);\n\n // Check that the message is in the tree\n // This is implicitly checking that the values of the message are correct\n let root = compute_merkle_root(message_hash, leaf_index, sibling_path);\n assert(root == l1_to_l2_root, \"Message not in state\");\n\n compute_message_nullifier(message_hash, secret, leaf_index)\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/messaging.nr" }, "97": { "source": "#[oracle(packReturns)]\nfn pack_returns_oracle<N>(_returns: [Field]) -> Field {}\n\nunconstrained pub fn pack_returns(returns: [Field]) {\n let _unused = pack_returns_oracle(returns);\n}\n\n#[oracle(unpackReturns)]\nfn unpack_returns_oracle<N>(_return_hash: Field) -> [Field; N] {}\n\nunconstrained pub fn unpack_returns<N>(return_hash: Field) -> [Field; N] {\n unpack_returns_oracle(return_hash)\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/returns.nr" }, "102": { "source": "use dep::protocol_types::{address::AztecAddress};\n\nglobal L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH: u64 = 17;\n\n// Obtains membership witness (index and sibling path) for a message in the L1 to L2 message tree.\n#[oracle(getL1ToL2MembershipWitness)]\nfn get_l1_to_l2_membership_witness_oracle(\n _contract_address: AztecAddress,\n _message_hash: Field,\n _secret: Field\n) -> [Field; L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH] {}\n\nunconstrained pub fn get_l1_to_l2_membership_witness(\n contract_address: AztecAddress,\n message_hash: Field,\n secret: Field\n) -> [Field; L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH] {\n get_l1_to_l2_membership_witness_oracle(contract_address, message_hash, secret)\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/get_l1_to_l2_membership_witness.nr" }, "104": { "source": "use dep::protocol_types::{\n address::AztecAddress, contract_instance::ContractInstance, utils::arr_copy_slice,\n constants::CONTRACT_INSTANCE_LENGTH, utils::reader::Reader\n};\n\n#[oracle(getContractInstance)]\nfn get_contract_instance_oracle(_address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH] {}\n\n// Returns a ContractInstance plus a boolean indicating whether the instance was found.\n#[oracle(avmOpcodeGetContractInstance)]\nfn get_contract_instance_oracle_avm(_address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH + 1] {}\n\nunconstrained fn get_contract_instance_internal(address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n get_contract_instance_oracle(address)\n}\n\nunconstrained fn get_contract_instance_internal_avm(address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH + 1] {\n get_contract_instance_oracle_avm(address)\n}\n\npub fn get_contract_instance(address: AztecAddress) -> ContractInstance {\n let instance = ContractInstance::deserialize(get_contract_instance_internal(address));\n assert(instance.to_address().eq(address));\n instance\n}\n\npub fn get_contract_instance_avm(address: AztecAddress) -> Option<ContractInstance> {\n let mut reader = Reader::new(get_contract_instance_internal_avm(address));\n let found = reader.read();\n if found == 0 {\n Option::none()\n } else {\n Option::some(reader.read_struct(ContractInstance::deserialize))\n }\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/get_contract_instance.nr" }, "108": { "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" }, "112": { "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" }, "113": { "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" }, "115": { "source": "use dep::protocol_types::{\n address::AztecAddress, hash::{silo_nullifier, pedersen_hash},\n constants::GENERATOR_INDEX__CONSTRUCTOR, abis::function_selector::FunctionSelector\n};\n\nuse crate::{\n context::{PrivateContext, PublicContext, AvmContext, ContextInterface},\n oracle::get_contract_instance::get_contract_instance,\n oracle::get_contract_instance::get_contract_instance_avm,\n history::nullifier_inclusion::prove_nullifier_inclusion\n};\n\npub fn mark_as_initialized_public(context: &mut PublicContext) {\n mark_as_initialized(context);\n}\n\npub fn mark_as_initialized_avm(context: &mut AvmContext) {\n mark_as_initialized(context);\n}\n\npub fn mark_as_initialized_private(context: &mut PrivateContext) {\n mark_as_initialized(context);\n}\n\nfn mark_as_initialized<TContext>(context: &mut TContext) where TContext: ContextInterface {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier((*context).this_address());\n ContextInterface::push_new_nullifier(context, init_nullifier, 0);\n}\n\npub fn assert_is_initialized_public(context: &mut PublicContext) {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier(context.this_address());\n assert(context.nullifier_exists(init_nullifier, context.this_address()), \"Not initialized\");\n}\n\npub fn assert_is_initialized_avm(context: &mut AvmContext) {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier(context.this_address());\n assert(context.nullifier_exists(init_nullifier, context.this_address()), \"Not initialized\");\n}\n\npub fn assert_is_initialized_private(context: &mut PrivateContext) {\n let init_nullifier = compute_contract_initialization_nullifier(context.this_address());\n prove_nullifier_inclusion(init_nullifier, *context);\n}\n\nfn compute_contract_initialization_nullifier(address: AztecAddress) -> Field {\n silo_nullifier(\n address,\n compute_unsiloed_contract_initialization_nullifier(address)\n )\n}\n\nfn compute_unsiloed_contract_initialization_nullifier(address: AztecAddress) -> Field {\n address.to_field()\n}\n\npub fn assert_initialization_matches_address_preimage_public(context: PublicContext) {\n assert_initialization_matches_address_preimage(context);\n}\n\npub fn assert_initialization_matches_address_preimage_avm(context: AvmContext) {\n let address = context.this_address();\n let instance = get_contract_instance_avm(address).unwrap();\n let expected_init = compute_initialization_hash(context.selector(), context.get_args_hash());\n assert(instance.initialization_hash == expected_init, \"Initialization hash does not match\");\n assert(\n (instance.deployer.is_zero()) | (instance.deployer == context.msg_sender()), \"Initializer address is not the contract deployer\"\n );\n}\n\npub fn assert_initialization_matches_address_preimage_private(context: PrivateContext) {\n assert_initialization_matches_address_preimage(context);\n}\n\nfn assert_initialization_matches_address_preimage<TContext>(context: TContext) where TContext: ContextInterface {\n let address = context.this_address();\n let instance = get_contract_instance(address);\n let expected_init = compute_initialization_hash(context.selector(), context.get_args_hash());\n assert(instance.initialization_hash == expected_init, \"Initialization hash does not match\");\n assert(\n (instance.deployer.is_zero()) | (instance.deployer == context.msg_sender()), \"Initializer address is not the contract deployer\"\n );\n}\n\npub fn compute_initialization_hash(init_selector: FunctionSelector, init_args_hash: Field) -> Field {\n pedersen_hash(\n [init_selector.to_field(), init_args_hash],\n GENERATOR_INDEX__CONSTRUCTOR\n )\n}\n", "path": "/usr/src/noir-projects/aztec-nr/aztec/src/initializer.nr" }, "131": { "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" }, "145": { "source": "use crate::{\n constants::ETH_ADDRESS_LENGTH, hash::pedersen_hash,\n traits::{Empty, ToField, Serialize, Deserialize}, utils\n};\n\nstruct EthAddress{\n inner : Field\n}\n\nimpl Eq for EthAddress {\n fn eq(self, other : Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for EthAddress {\n fn empty() -> Self {\n Self {\n inner : 0\n }\n }\n}\n\nimpl ToField for EthAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn serialize(self: Self) -> [Field; ETH_ADDRESS_LENGTH] {\n [self.inner]\n }\n}\n\nimpl Deserialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn deserialize(fields: [Field; ETH_ADDRESS_LENGTH]) -> Self {\n EthAddress::from_field(fields[0])\n }\n}\n\nimpl EthAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn from_field(field: Field) -> Self {\n field.assert_max_bit_size(160);\n Self { inner: field }\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n\n pub fn conditional_assign(predicate: bool, lhs: Self, rhs: Self) -> Self {\n let result = utils::conditional_assign(predicate, rhs.to_field(), lhs.to_field());\n Self { inner: result }\n }\n}\n", "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/eth_address.nr" }, "146": { "source": "use crate::{\n address::{eth_address::EthAddress, aztec_address::AztecAddress},\n constants::GENERATOR_INDEX__PARTIAL_ADDRESS, hash::pedersen_hash, traits::ToField\n};\n\n// Salted initialization hash. Used in the computation of a partial address.\nstruct SaltedInitializationHash {\n inner: Field\n}\n\nimpl ToField for SaltedInitializationHash {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl SaltedInitializationHash {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute(salt: Field, initialization_hash: Field, deployer: AztecAddress) -> Self {\n SaltedInitializationHash::from_field(\n pedersen_hash(\n [\n salt,\n initialization_hash,\n deployer.to_field()\n ],\n GENERATOR_INDEX__PARTIAL_ADDRESS\n )\n )\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/salted_initialization_hash.nr" }, "147": { "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 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" }, "149": { "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 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" }, "154": { "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" }, "183": { "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" }, "203": { "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" }, "205": { "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": "// general util packages/modules are usually bad practice\n// because there is no criteria for what we should not put in here.\n// Reducing the size of this package would be welcome.\n\nmod arrays;\nmod field;\nmod reader;\nmod uint256;\n\n// if predicate == true then return lhs, else return rhs\npub fn conditional_assign(predicate: bool, lhs: Field, rhs: Field) -> Field {\n if predicate { lhs } else { rhs }\n}\n\npub fn arr_copy_slice<T, N, M>(src: [T; N], mut dst: [T; M], offset: u64) -> [T; M] {\n for i in 0..dst.len() {\n dst[i] = src[i + offset];\n }\n dst\n}\n", "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils.nr" }, "231": { "source": "use crate::{\n address::{\n aztec_address::AztecAddress, eth_address::EthAddress, partial_address::PartialAddress,\n public_keys_hash::PublicKeysHash\n},\n contract_class_id::ContractClassId,\n constants::{GENERATOR_INDEX__CONTRACT_DEPLOYMENT_DATA, CONTRACT_INSTANCE_LENGTH},\n traits::{Deserialize, Hash, Serialize}\n};\n\nstruct ContractInstance {\n salt : Field,\n deployer: AztecAddress,\n contract_class_id : ContractClassId,\n initialization_hash : Field,\n public_keys_hash : PublicKeysHash,\n}\n\nimpl Eq for ContractInstance {\n fn eq(self, other: Self) -> bool {\n self.public_keys_hash.eq(other.public_keys_hash) &\n self.initialization_hash.eq(other.initialization_hash) &\n self.contract_class_id.eq(other.contract_class_id) &\n self.salt.eq(other.salt)\n }\n}\n\nimpl Serialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn serialize(self) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n [\n self.salt,\n self.deployer.to_field(),\n self.contract_class_id.to_field(),\n self.initialization_hash,\n self.public_keys_hash.to_field()\n ]\n }\n}\n\nimpl Deserialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn deserialize(serialized: [Field; CONTRACT_INSTANCE_LENGTH]) -> Self {\n Self {\n salt: serialized[0],\n deployer: AztecAddress::from_field(serialized[1]),\n contract_class_id: ContractClassId::from_field(serialized[2]),\n initialization_hash: serialized[3],\n public_keys_hash: PublicKeysHash::from_field(serialized[4]),\n }\n }\n}\n\nimpl Hash for ContractInstance {\n fn hash(self) -> Field {\n self.to_address().to_field()\n }\n}\n\nimpl ContractInstance {\n fn to_address(self) -> AztecAddress {\n AztecAddress::compute(\n self.public_keys_hash,\n PartialAddress::compute(\n self.contract_class_id,\n self.salt,\n self.initialization_hash,\n self.deployer\n )\n )\n }\n}\n", "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/contract_instance.nr" }, "235": { "source": "mod lib;\n\ncontract GasToken {\n use dep::aztec::protocol_types::{abis::function_selector::FunctionSelector, address::{AztecAddress, EthAddress}};\n use dep::aztec::state_vars::{SharedImmutable, PublicMutable, Map};\n\n use crate::lib::{calculate_fee, get_bridge_gas_msg_hash};\n\n #[aztec(storage)]\n struct Storage {\n balances: Map<AztecAddress, PublicMutable<U128>>,\n portal_address: SharedImmutable<EthAddress>,\n }\n\n #[aztec(public)]\n #[aztec(initializer)]\n fn constructor(portal_address: EthAddress) {\n storage.portal_address.initialize(portal_address);\n }\n\n #[aztec(public)]\n fn claim_public(to: AztecAddress, amount: Field, secret: Field, leaf_index: Field) {\n let content_hash = get_bridge_gas_msg_hash(to, amount);\n\n // Consume message and emit nullifier\n context.consume_l1_to_l2_message(\n content_hash,\n secret,\n storage.portal_address.read_public(),\n leaf_index\n );\n\n let new_balance = storage.balances.at(to).read() + U128::from_integer(amount);\n storage.balances.at(to).write(new_balance);\n }\n\n // TODO(@just-mitch): remove this function before mainnet deployment\n // convenience function for testing\n // the true canonical gas token contract will not have this function\n #[aztec(public)]\n fn mint_public(to: AztecAddress, amount: Field) {\n let amount = U128::from_integer(amount);\n let new_balance = storage.balances.at(to).read().add(amount);\n\n storage.balances.at(to).write(new_balance);\n }\n\n #[aztec(public)]\n fn check_balance(fee_limit: Field) {\n let fee_limit = U128::from_integer(fee_limit);\n assert(storage.balances.at(context.msg_sender()).read() >= fee_limit, \"Balance too low\");\n }\n\n #[aztec(public)]\n fn pay_fee(fee_limit: Field) -> Field {\n let fee_limit_u128 = U128::from_integer(fee_limit);\n let fee = calculate_fee(context);\n assert(fee <= fee_limit_u128, \"Fee too high\");\n\n let sender_new_balance = storage.balances.at(context.msg_sender()).read() - fee;\n storage.balances.at(context.msg_sender()).write(sender_new_balance);\n\n let recipient_new_balance = storage.balances.at(context.fee_recipient()).read() + fee;\n storage.balances.at(context.fee_recipient()).write(recipient_new_balance);\n\n let rebate = fee_limit_u128 - fee;\n rebate.to_field()\n }\n\n // utility function for testing\n unconstrained fn balance_of_public(owner: AztecAddress) -> pub Field {\n storage.balances.at(owner).read().to_field()\n }\n}\n", "path": "/usr/src/noir-projects/noir-contracts/contracts/gas_token_contract/src/main.nr" }, "236": { "source": "use dep::aztec::prelude::{AztecAddress, EthAddress};\nuse dep::aztec::context::interface::PublicContextInterface;\nuse dep::aztec::protocol_types::hash::sha256_to_field;\n\npub fn calculate_fee<TPublicContext>(_context: TPublicContext) -> U128 where TPublicContext: PublicContextInterface {\n U128::from_integer(1)\n}\n\npub fn get_bridge_gas_msg_hash(owner: AztecAddress, amount: Field) -> Field {\n let mut hash_bytes = [0; 68];\n let recipient_bytes = owner.to_field().to_be_bytes(32);\n let amount_bytes = amount.to_be_bytes(32);\n\n for i in 0..32 {\n hash_bytes[i + 4] = recipient_bytes[i];\n hash_bytes[i + 36] = amount_bytes[i];\n }\n\n // Function selector: 0x3e87b9be keccak256('mint_public(bytes32,uint256)')\n hash_bytes[0] = 0x3e;\n hash_bytes[1] = 0x87;\n hash_bytes[2] = 0xb9;\n hash_bytes[3] = 0xbe;\n\n let content_hash = sha256_to_field(hash_bytes);\n content_hash\n}\n", "path": "/usr/src/noir-projects/noir-contracts/contracts/gas_token_contract/src/lib.nr" } } }
|
|
1
|
+
{ "transpiled": true, "noir_version": "0.29.0+9edb7f5a94a9b0e3a0a108728fe04cd51e5d0db2", "name": "GasToken", "functions": [{ "name": "constructor", "is_unconstrained": true, "custom_attributes": ["aztec(public)", "aztec(initializer)"], "abi": { "error_types": {}, "param_witnesses": { "inputs": [{ "end": 40, "start": 0 }], "portal_address": [{ "end": 41, "start": 40 }] }, "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": "portal_address", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::eth_address::EthAddress" }, "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" } }], "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268] }, "bytecode": "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", "debug_symbols": "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i1NqFqfULE6pWZxSszilZnFKzeKUmsUpNYtTahan1CzuUrOY+q9gZX4l+HPmu2pcqpomVU1IVZNS1XSpapizuD++Nj/0jHfVTKVqqP/S0/fVuFQ1TaqakKomparpUtUw582w1xfHGOObn/7eyUT9d6F+de1r39qp/+bUv1L7b9VQT4XRvqp5vK3GpappUtWEVDUpVU2XqmZIVTOlqllK1VD/zanvq5GaxUtqFi+pWbykZvGSmsVLahYvqVm8pGbxUprF9ngoDeNnOUrT+FmO0jh+lqM0j5/lKA3kZzlKE/lZjtJIfpajNJOf5SgN5Wc5WlPZtKayaU1l05rKpjWVTWsqU1Nv075Sb9Mfb8vpWuUMrXKmVjlLqhxq9O0H5ZhWOa5VTtMqJ7TK0ZrKrjWVXWsqu9ZUdq2p3LSmctOayk1rKjetqdy0pnLTmspNayo3ranctKZy05rKoTWVQ2sqh9ZUDq2pHFpTObSmcmhN5dCayqE1lUNrKqfWVE6tqZxaUzm1pnJqTeXUmsqpNZVTayqn1lROranctaZy15rKXWsqd62p3LWmcteayl1rKnetqdy1pnLXmspDayoPrak8tKby0JrKQ2sqD62pPLSm8tCaykNrKg+tqTy1pvLUmspTaypPrak8taby1JrKU2sqT62pPLWm8tSayktrKi+tqby0pvLSmspLayovram8tKby0prKS2sqL6mpbA+pqWwPqalsD6mpbA+pqfz8y7VWOVJT2R5SU9keUlPZHlJT2R5aU9m0prJpTWXTmsqmNZVNayprZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7SyfaaV7TOtbJ9pZftMK9tnWtk+08r2mVa2z7Wyfa6V7XOtbJ9rZfv8ITWVXSvb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r+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osr+Osb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Csb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Ksb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gsb+Gs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C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2nuuwtp7rsLae67C2ntuwtp7bsLae27C2ntuwtpPbY9Tde+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWvruQ1r67kNa+u5DWtruQ4rHtLqRn6bueps/Sdz1Nn6Xvepo+S9/1NH2Wvutp+ix919P0Wfqup+mz9F1P02fp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7vabrtLqRn6fueptvuQnqWvu9puu0upGfp+56m2+5Cepa+72m67S6kZ+n7nqbb7kJ6lr7taWr77kKyfXch2b67kGzfXUj22PY0tX13Idm+u5Bs311Itu8uJNt3F5LtuwvJ9t2FZPvuQrJ9dyHZvruQbN9dSLbvLiTbdxeS7bsLyfbdhWT77kKyfXch2b67kGzfXUi27y4k23cXku27C8n23YVk++5Csn13Idm+u5Bs311Itu8uJNt3F5LtuwvJ9t2FZPvuQrJ9dyHZvruQbN9dSLbvLiTbdxeS7bsLyfbdhWT77kKyfXch2b67kGzfXUi27y4k23cXku27C8n23YVk++5Csn13Idm+u5Bs311Itu8uJNt3F5LtuwvJ9t2FZPvuQrJ9dyHZvruQbN9dSLbvLiTbdxeS7bsLyfbdhWT77kKyfXch2b67kGzfXUi27y4k23cXku27C8n23YVk++5Csn13Idm+u5Bs311Itu8uJNt3F5LtuwvJ9t2FZPvuQrJ9dyHZvruQbN9dSLbvLiTbdxeS7bsLyfbdhWT77kKyfXch2b67kGzfXUi27y4k23cXku27C8n23YXk++5C8n13Ifm+u5B8311I/tj2NPV9dyH5vruQfN9dSL7vLiTfdxeS77sLyffdheT77kLyfXch+b67kHzfXUi+7y4k33cXku+7C8n33YXk++5C8n13Ifm+u5B8311Ivu8uJN93F5LvuwvJ992F5PvuQvJ9dyH5vruQfN9dSL7vLiTfdxeS77sLyffdheT77kLyfXch+b67kHzfXUi+7y4k33cXku+7C8n33YXk++5C8n13Ifm+u5B8311Ivu8uJN93F5LvuwvJ992F5PvuQvJ9dyH5vruQfN9dSL7vLiTfdxeS77sLyffdheT77kLyfXch+b67kHzfXUi+7y4k33cXku+7C8n33YXk++5C8n13Ifm+u5B8311Ivu8uJN93F5LvuwvJ992F5PvuQvJ9dyH5vruQfN9dSL7vLiTfdxeS77sLyffdheT77kLyfXch+b67kHzfXUi+7y4k33cXku+7C8n33YXk++5C8n13Ifm+u5B8311Ivu8uJN93F5LvuwvJ992F1PbdhdT23YXU9t2F1PbdhdQe256mbd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSG3fXUht311Ibd9dSE14F1L+ofTxx9L/+5+1Jwp7/fDzsez3b+6/36ju2fuLb1T3pP7FN6p7rv/iG9V9CvjFN6r7zPCLb1T3CePX3qjwNinkRuPxKtnC2tsb1X16+cU3qvus84tv9Iwnox/caNxyo2c8Gf3gRs94MvrBjZ7xZBQjv250zrc3esaT0Q9u9Iwno+9vVHgz2C++0UOejL6/0UOejL6/0UOejL6/0TjiRtPj9cPZxtsbPePJ6Ac3esaT0Q9u9Iwnox/c6BlPRj+40TOejL6/UeEtb7/4Rs94MsrVXz/cH+vtjZ7xZPSDGz3jyegHNxq33OghT0bf3+ghT0bf3+ghT0bf36jsk5E94ovsPbp9c6dztlchj/74F3f65qe9fR277RG//3TGm5/uX6+As//xZ98V/fyF228/3B+ef/j1xddvXPYR7dDfeOjuMDz2Ny770Hrsb1z26fnY37jsY/yxv/Go3zj5Ny77YnPsb1z2DevY37jsq96xv/F652T/xuudk/wb1930e+xvvN452b/xeudk/8brnZP9G4/6jZN/4/XOyf6N1zsn+zde75zs3/iV75z2h9+4ffcbf/5vX99tI+ybn/7J7/zKt86/7e9cdyf+wb/zK988/8a/8yvfPf/Gv/Mr3z7/xr/zqN85/Xd+5Rvo3/h3fuU76N/4d37lW+jf+Hde76H833m9h9J/57r/mszBv/N6D+X/zus9lP87P+U91H7/nY9vf+cRX1menH/8nfs7ev6Y6/VbtPB/8Vt8c5Px+o20P+w48PnuR3u+pG99+L/+w/3RvqSMP/7oS8goIc8Q8pQ35uuFPOU1/HohT3m3v17IU4DB9UKeQiFuF1L3n/YrITEhT+El1wt5CoS5XsgiO4cIGSXkGUIW2dlEyPb63p75TsgiO4cIWWTnECGL7BwiZJGdM4TU/WemS0hMyCI7hwhZZOcQIYvsHCJklJBnCFlk5xAhi+wcImSRnUOELLJziJBFds4QshfZOUTIIjuHCFlk5xAhi+wcImSUkGcIWWTnECGL7BwiZJGdQ4QssnOIkEV2zhByFNk5RMgiO4cIWWTnECGL7BwiZJSQZwhZZOcQIYvsHCJkkZ1DhCyyc4iQRXbOEHIW2TlEyCI7hwhZZOcQIYvsHCJklJBnCFlk5xAhi+wcImSRnUOELLJziJBFds4QchXZOUTIIjuHCFlk5xAhi+wcImSUkGcIWWTnECGL7BwiZJGdQ4QssnOIkEV2FIX8r+rko3CNsjrFYJTVKbCirE7REmV1otQRVqe4hrI6BSuU1SkCoaxOYQVldYoVCKtjxQqU1SlWoKxOsQJldYoVKKsTpY6wOsUKlNUpVqCsTrECZXWKFSirU6xAWB0vVqCsTrECZXWKFSirU6xAWZ0odYTVKVagrE6xAmV1ihUoq1OsQFmdYgXC6rRiBcrqFCtQVqdYgbI6xQqU1YlSR1idYgXK6hQrUFanWIGyOsUKlNUpViCsThQrUFanWIGyOsUKlNUpVqCsTpQ6wuoUK1BWp1iBsjrFCpTVKVagrE6xAmF1sliBsjrFCpTVKVagrE6xAmV1otQRVqdYgbI6xQqU1SlWoKxOsQJldYoVCKvTixUoq1PvO39DddaXOuOR79SJUkdYnXpm+5upEzZeXxy28q/+4ZeU9YB3jJT1NHiKlKMeHY+Rsv4mdYyU9QesY6Sst79jpIyS8hQp6+9ox0hZf3Q7RsqiPcdIWbTnGCmL9pwi5Szac4yURXuOkbJozzFSFu05RsooKU+RsmjPMVIW7TlGyqI9x0hZtOcYKYv2nCLlKtpzjJRFe46RsmjPMVIW7dlDSvf8ukMf7Z2UUVKeImXRnl2kbP67lPFOynqv3ETKWK8f9nw83klZ75WHSNkf9V55jJT1XnmMlPVeeYyU9V55jJRRUp4iZb1XHiNluQiOkbJcBMdIWbTnGCmL9pwipRXtOUbKoj3HSFmI4Bgpo6Q8RcpCBMdIWS8jm0g54+sOZ49//Ydb+9KlxSPe6V5vLlfq7vWac6fu9U50p+715/I7da8X5zt1j9L9St3rlfxO3etP/HfqXn6AO3UvXnen7sXrrtS9Fa+7U/fidXfqXu9xB+o+5uv+xnr3V9hWb3EXqh7F5g9UfX0tblg53qleZP5G1WvCn6j6eG32WDPfqV6U7kbVi9HdqHoRugtVz+JzN6pedO5G1et9/UbV6339RtWjVL9Q9frry42qF5u7UfViczeqXmzuQNXt0fLrdzff+Sqy6NyVuvfic3fqXoTuTt2L0d2pe1G6O3WP0v1K3YvU3al7sbo7dS9ad6fuxevu1L143ZW6j+J1d+pevO5O3YvX3al78bo7dY/S/Urdi9fdqXvxujt1L153p+7F6+7UvXjdibrb/NLdZn+j+yxed6fuxevu1L143Z26F6+7U/co3a/UvXjdnboXr7tT9+J1d+pevO5O3YvXXan7Kl53p+7F6+7UvXjdnboXr7tT9yjdr9S9eN2duhevu1P34nV36l687k7di9fdqPt4FK+7U/fidXfqXrzuTt2L192pe5TuV+pe73En6u72pbvbeqd7vcddqbvVc92Rurf40j3aO93rue5O3aN0v1L3+jvsnbrX32Hv1L3+Dnun7vX+fqfu9f5+pe5ef4e9U/f6O+yduhevu1P34nV36h6l+5W6F6+7U/fidXfqXrzuTt2L192pe/G6K3Vvxevu1L143fa6v6QsBHeMlEXVjpEySspTpCz2dYyUhbOOkbII1TFSFnQ6RsriSKdIGYWGjpGyaM8xUhbtOUbKoj3HSBkl5SlSFu05RsqiPadImfUysomUy+frDtcfftV/kLJeRo6RMkrKTaRM+5Ly/YCtx55jpKzHnmOkrD9yHSNl/ZHrGCnrj1ynSNnrvfIYKeu98hgp649cx0hZf+Q6RsooKU+RsmjPHlK2R/v65T3au43ZvWjPMVIW7TlGyqI9x0hZtOcUKUfRnmOkLNpzjJRFe46RsmjPMVJGSXmKlEV7jpGyaM8xUhbtOUbKQgSnSDkLERwjZSGCY6QsRHCMlIUIjpEySso9pLT5+y9vzXdSFiI4RspCBMdIWYjgGCnLEHKMlEV7TpFyFe05RsooKfeQ0v3163j+5zt3+qqXkWOkrMeeXaScv0u5xjsp67HnECnnox57jpGy/sh1jJT1R65jpKw/ch0jZZSUp0hZ75XHSFl/5DpGyvoj1zFSFu05RsqiPadIaUV7NpHyD1/c+lspi/YcI2XRnmOkLNpzjJRRUp4iZdGeTaSMx9cXx2O+k7Jozy5dOf4gZbyTsmjPMVIW7TlGyqI9p0jpRXuOkbJozzFSFu05RsqiPcdIGSXlKVIW7TlGyqI9x0hZtOcYKYv2HCNl0Z5TpGxFe46RsmjPMVIW7TlGyqI9x0gZJeUpUhbtOUbKoj3HSFm05xgpi/YcI2XRnlOkjKI9x0hZtOcYKYv2HCNl0Z5jpIyS8hQpi/YcI2XRnmOkLNpzjJRFe46RsmjPKVJm0Z5jpCzac4yURXuOkbJozzFSRkl5ipRFe46RsmjPMVIW7TlGyqI9x0hZtOcUKXvRnmOkLNpzjJR70J7R/ijlq/Y98Mb72mPj2qkvsN1etXtr3/10//3fa+0R3/z0XPO3H172+4Jdm783R5e90VyvYdTG4ztJnz/8+u7+8PwXw+h1q+OeW5333Oq65lbH455btXtu1e+51XbPrcY9t6r7rPTLb/Wep6Vxz9PSuOdpadzztDTveVqa9zwtTebTkn/hsObL/sVPv8ppWuWEVjmpVU7XKmdolTO1yllS5ayHVjmmVY7WVF5aU3lpTeWlNZWX1lReWlN5aU3lJTWV10NqKq+H1FReD6mpvB5SU3k9pKbyekhN5fWQmsrrITWV10NqKq+H1lQ2ralsWlPZtKayaU1l05rKpjWVTWsqm9ZUNq2pbFpT2bWmsmtNZdeayq41lV1rKrvWVHatqexaU9m1prJrTeWmNZWb1lRuWlO5aU3lpjWVm9ZUblpTuWlN5aY1lZvWVA6tqRxaUzm0pnJoTeXQmsqhNZVDayqH1lQOrakcWlM5taZyak3l1JrKqTWVU2sqp9ZUTq2pnFpTObWmcmpN5a41lbvWVO5aU7lrTeWuNZW71lTuWlO5a03lrjWVu9ZUHlpTeWhN5aE1lYfWVB5aU3loTeWhNZWH1lQeWlN5aE3lqTWVp9ZU1sr2La1s39LK9i2tbN/SyvYtrWzf0sr2La1s39LK9i2tbN/SyvYtrWzf0sr2La1s39LK9i2tbN/SyvYtqWxfPqSyfc9ylKbysxylqfwsR2kqP8tRmsrPcpSm8rMcpan8LEdpKj/LUZrKz3K0prJUtu9ZjtZUlsr2PcvRmspS2b5nOVpTWSrb9yxHaypLZfue5WhNZals37Mcraksle17lqM1laWyfc9ytKayVLbvWY7WVJbK9j3L0ZrKUtm+ZzlaU1kq2/csR2sqS2X7nuVoTWWpbN+zHK2pLJXte5ajNZWlsn3PcrSmslS271mO1lSWyvY9y9GaylLZvmc5WlNZKtv3LEdrKktl+57laE1lqWzfsxytqSyV7XuWozWVpbJ9z3K0prJUtu9ZjtZUlsr2PcvRmspS2b5nOVpTmZrta/n6Z45bm49vftq9r6/v/m/+meNX8cwZ3ubXv10b3r/56Xy8vjr/8G8u/7H0Tv29+++lj7f/ZzC0ypla5SypcqipwR+UY1rluFY5Tauc0ContcrRmspDayoPrak8tKby1JrKU2sqT62pPLWm8tSaylNrKk+tqTy1pvLUmspTayovram8tKby0prKS2sqL62pvLSm8tKayktrKi+tqbykprI9pKayPaSmsj2kprI9pKayPaSmsj2kprI9pKayPaSmsj2kprI9tKayaU1l05rKpjWVTWsqm9ZUNq2pbFpT2bSmsmlNZdOayq41lV1rKrvWVHatqexaU9m1prJrTWXXmsquNZVdayo3ranctKZy05rKTWsqN62p3LSmctOayk1rKjetqdy0pnJoTeXQmsqhNZVDayqH1lQOrakcWlM5tKZyaE3l0JrKqTWVU2sqp9ZUTq2pnFpTObWmcmpN5dSayqk1lVNrKnetqdy1pnLXmspdayp3ranctaayVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9ppXtM61sn2ll+0wr22da2T7TyvaZVrbPtLJ9rpXtc61sn2tl+1wr2+cPqansWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V7XOtbJ9rZftcK9vnWtk+18r2uVa2z7Wyfa6V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S4bnLhmeu2R47pLhuUuG5y4ZnrtkeO6S4blLhucuGZ67ZHjukuG5S4bnLhmeu2R47pLhuUuG5y4ZnrtkeO6S4blLhucuGZ67ZHjukuG5S4bnLhmeu2R47pLhuUuG5y4ZnrtkeO6S4blLhucuGZ67ZHjukuG5S4bnLhmeu2R47pLhuUuG5y4ZnrtkeO6S4blLhucuGZ67ZHjukuG5S4bnLhmeu2R47pLhuUuG5y4ZnrtkeO6S4blLhucuGZ67ZHjukuG5S4bnLhmeu87w3HWG564zPHed4bnrj2BcJBkX6YyLDMZFJuMijI5neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3PXGZ67zvDcdYbnrjM8d53huesMz11neO46w3M3GJ67wfDcDYbnbjA8d+MRjIsk4yKdcZHBuMhkXITR8QzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47gbDczcYnrvB8NwNhuduMDx3g+G5GwzP3WB47ibDczcZnrvJ8NxNhuduPoJxkWRcpDMuMhgXmYyL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" }, { "name": "check_balance", "is_unconstrained": true, "custom_attributes": ["aztec(public)"], "abi": { "error_types": {}, "param_witnesses": { "fee_limit": [{ "end": 41, "start": 40 }], "inputs": [{ "end": 40, "start": 0 }] }, "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": "fee_limit", "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" } }], "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268] }, "bytecode": "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", "debug_symbols": "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56vv56vv56vv56vv56vv56vv56vv56vv56vv56sf56sf56sf56sf56sf56sf56sf56sf56sf56sf56uf56uf56uf56uf56uf56uf56uf56uf56uf56uf56tf56tf56tf56tf56tf56tf56tf56tf56tf56tf56vf56vf56vf56vf56vf56vf56vf56vf56vf56vf56u/z1d/n6/+Pl/9fb76+3z19/nq7/PV3+erv89Xf5+v/pyv/pyv/pyv/pyv/pyv/pyv/pyv/pyv/pyv/vlen53v9dn5Xp+d7/XZ+V7ft996zy/J80vq/JI+v2SfX3K++ud7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7XZ+d7fXa+12fne312vtdn53t9dr7Xt873+tb5Xt863+tb53t963yvb53v9a3zvb51vte3zvf61vle3zrf61sne31/eXrEnv7pk2P2+dnsLz66+uOj/ovjz90/J7IoE3HKRIIykaRMpCgTacpENmUiA5nIb/s/kfmeE6GQdVHIuihkXRSyLgpZF4Wsi0LWRSHropDVKWR1ClmdQlankNUpZHUKWZ1CVqeQ1SlkdQpZg0LWoJA1KGQNClmDQtagkDUoZA0KWYNC1qCQNSlkTQpZk0LWpJA1KWRNClmTQtakkDUpZE0KWYtC1qKQtShkLQpZi0LWopC1KGQtClmLQtaikLUpZG0KWZtC1qaQtSlkbQpZm0LWppC1KWRtClk3haybQtZNIeumkHVTyLopZN0Usm4KWTeFrJtC1qGQdShkHQpZh0LWoZB1KGQdClmHQtahkHUgZPUHQlZ/IGT1B0JWfyBk9QdCVn8gZPUH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bbrvfZvue9+m+9636dz7Np1736Zz79t07n2bzr1v07n3bTr3vk3n3rfp3Ps2nWvfpvu59m26n2vfpvu59m26n2vfpvu59m26n2vfpvu59m26n2vfpvu59m26n3vfpnbv29TufZvavW9Tu/dtave+Te3et6nd+za1e9+mdu/b1O59m65736br3rfpuvdtuu59m36Ps5P+raZ+79t03fs2Xfe+Tde9b9N179vU732b+r1v03vPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtK+9yykfe9ZSPves5D2vWch7XvPQtr3noW07z0Lad97FtLcexbS3HsW0tx7FtLcexbSPNe+Tefes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm3rOQ5t6zkObes5Dm2rOQ1nPtWUjfpn7r2/Tb1G99m36b+q1v029Tv/Vt+m3qt75Nv0391rfpt6nf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" }, { "name": "balance_of_public", "is_unconstrained": true, "custom_attributes": [], "abi": { "error_types": {}, "param_witnesses": { "owner": [{ "end": 1, "start": 0 }] }, "parameters": [{ "name": "owner", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress" }, "visibility": "private" }], "return_type": { "abi_type": { "kind": "field" }, "visibility": "public" }, "return_witnesses": [1] }, "bytecode": "H4sIAAAAAAAA/+2cXW/bNhSGJX/Ectwk9bedD0eJ06a7GRS7dTBgA7y/sJvtaoEbO0OArgZiF+j244OVis7ymjvIqPaIEIEQCETR1HkfvqKO7NiU7z0UP/lTpQxteqG2abKNvq1cCMaKfI3zP/xS0CpwSTOEM0ltC0y/X2Gnn2x/vrub/RXefpwvPofLT+tweRO+X376OF/hgb/DzkGyvZ59+BCul+FstVrcra/+nH2+en+7vlrd/r34V3SdVAJv04yphCFvo9GW9+iIbkgNTKA+lS9/W/C6n7RTvzq0UTzFXpZmj6KR0i9qzPoYplAvA09Jnucio3FGAXh+78leDBXNq6Lm1S702QL/Khn454MuxaZ90kvLXMgBM86L0JOdF4H8mEZ7X2Jsg6+B5i+OazupC87LSMWogibpbYPui6Tue7J3oVoSq5TEJo4XoL0n7vn4WunueJvlqVy2Bzy74jwPuUx+nA9z9iWwy8R9N1Ze1TWvdjSvdqEPMtQz8M8HXYpN+3VGW86Ly7dKu2HgRYPhaVj2osFoy3kxuVHaTQMvmgxP07IXTUZbcF6MlHbLwIsWw9Oy7EWL0RacF7F228CLNsPTtuxFm9EW9OJSaXcMvOgwPB3LXnQYbUEv3introEXXYana9mLLqMt58Uofj/UM/Cix/D0LHvRY7QFc2f8/qJv4EWf4elb9qLPaAteI9dKe9/Ai32GZ9+yF6SXlrnhIHPdQeZuDpgDrS6jPY7z54GBFwcMz4FlL0gvLXM3B8yBVpfRniyU9qGBF4cMz6FlL0gvLXPDQea6g8xdB5lbDjL3n5mtMOchbwRaXUb7Mv48fGTgxRHDc2TZC9JLy9zJAXOg1WW0J/H/PwcGXgwYnoFlLwaMtuBn+Pg9zLGBF8cMz7FlL0gvLXPXQeaXDjLXHWRuOMjcdJC55SBz20HmjoPMLubnnoPMfQeZXczPLt4HXZzPecgbgVaX0Z7MlXZo4EXI8ISWvQgZbcHP2/F3ricGXpwwPCeWvSC9tMw9B5nrDjJ3HWR+nht2mFsOMjcdZH7OG1/HHGh1Ge3JRGmfGnhxyvCcWvaC9NIyNx1kbjjIfOwgczcHzIFWl9Eex9pDAy+GDM/Qshekl5Z5kANmtR6E1ob86GfJM57XNB7yzNMYPY2xBvU98OxMnDGK8PycgdYreS12jtP+q0y1x9cq7rn8mOLfhr1JYpWTuOfMmL5L6r6wn28grg861F6C+g/+Y1/qR37QdUvsav91Ukd2/bihdtwu9HnNjH/qyY7/XOM515jVOfkervMs5pbJvFbfE9K1/BN4RQXX4lXFGR+88jRGKlWGx88BT83j1zJXNc9wfTO+dus/vk65rQDH0DkqMrHPoI3uF1x+Rp8yyM8bOZNyh56vd4BjmBOeCsOT1bpdOj8Um/Yr2XoRZbS2Mh4T5Q26pxA/6ZWgz2/JyaffImDBWMSpz3E8X9S3wPh4723mgzRrhW/+p6B2BbSrzHivnhgvxz1N2jGvED/u+3AM9cV7xjesjb7QG5CvCAx4rmowpgrzOq6f18dWY3zAPIn+Bt5jDpR8LoGKS88amArGVewlb7M8dT/B5x1k8FyHi23wc7Ve3s3+WPyymM19QNOfVYJbRL+H/QK0Y73ItN3DtgZDJl3VRtOgDG0FzSJ8FAdeCv8AMDZ9CKVGAAA=", "debug_symbols": "5dzrSpxXHIXxe5nPUvZa/33MrZRSTGKKIGOIplDEe+9rM6fg2EnFmv3gN6fZ01lbkvfJAX53q48X77/+8fvl+tP1zerdr3erq+sP57eX1+vl1d0q/VL/+Y83n8/XD69vbs+/3K7euaucrS7WHx++zLo/W326vLpYXkS9P3t0eig2h0eN3VlJR87K9uaw3NKJ02VUbU7X5HKwI9//drasb+j1Hb1+oNcrseeLPd/s+cGen9nzC3s+O7liN1fs6IpdXbOra3Z1za6uX6C6StG3k9IoJyalzdF04v9aW90uH4fflLYZnqnDC3V4pQ5v1OGdOnxAh0eiDhd1uKnDqeUMajmDWs6gljOo5QxqOYNazkwtZ6aWM1PLmanlzNRyZmo5M7WcmVrOTC1nppazUMtZqOUs1HIWajkLtZyFWs5CLWehlrNQy1mo5azUclZqOSu1nJVazkotZ6WWs1LLWanlrNRyVmo5G7WcjVrORi1no5azUcvZqOVs1HI2ajkbtZyNWs5OLWenlrNTy9mp5ezUcnZqOTu1nJ1azk4tZ6eWc1DLOajlHNRyDmo5B7Wcg1rOQS3noJZzUMs5qOVUoqZTidpOJWo8lw/FLqfmU4naTyVqQJWoBVWiJnT5JOpyYRsqbEOFbaiwDX0JiOgnLcc2VNiGCttQYRsqbEONbaixDTW2oVhbSFhcSFhdSFheSFhfSFhgSFhhSFhiSFhjSFhkSFhlSFhmSFhnSFhoSFhpSFhqSFhrSFhsSFhtSFhuSFhvSFhwSFhxSFhySFhzSFh0SFh1SFh2SFh3SFh4SFh5SFh6SFh7SFh8SFh9SFh+SFh/SFiASFiBSFiCSFiDSFiESFiFSFiGSFiHSFiISFiJSFiKSFiLSFiMSFiNSFiOSFiPSFiQSFiRSFiSSFiTSFiUSFiVSFiWSFiXSFiYSFiZSFiaSFibSFicSFidSFieSFifSFigSFihSFiiSFijSFikSFilSFimSFinyFinyFinyFinyFinyInaUGOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdImOdosA6RYF1igLrFAXWKYpEbWhgnaLAOkWBdYoC6xQF1ikKrFMUWKcosE5RYJ2iwDpFgXWK4kecon5quXanpVy/+5THp6N5czhrv2jsBrXZBvXZBo3JBv2IAfS6gzTbIM82KGYblGcbVGYbNNuT2rM9qT3bk9qzPaljtid1zPakjtme1DHbkzpme1LHbE/qmO1JHf/zk3rzKf1VPuVFnqml7j6l9RPfXNW2/dPW8uXYn172fduU04SbNOEmT7gpJtyUJ9xUJtxUX39T0W5TT99tOvJYXv6JYnN66bh3p/Oxv9FpZfvXP23k/Whv79re0F37G7rreDt3LekN3VWz33V3evlyHN51cwHTLxCzX6D33QUOfgrtL5Cnv0DbXiCnOHKBQr/A6d9gHPzMe+ICbf/bmNbbflKNY5OKtqeXX4HlyKT2+pPSv096Qo6ou+9tyo//TPoE2nDiTfGcN+XnvKk85031v71pefHn+ZfL8/dXFzfLGx5+7Ov6w+3l9Xrz8vavz99+ZDn7Nw==" }, { "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/rAbHmtsn98e7qNFRl1GK4zGjYwio5LRKKNJRrOMpIhRihiliFGKmKSISYqYpIhJipikiEmKmKSISYqYpIhJipiliFmKmKWIWYqYpYhZipiliFmKmKWIWYpoUkSTIpoU0aSIJkU0KaJJEU2KaFJEkyIWKWKRIhYpYpEiFilikSIWKWKRIhYpYpEiuhTRpYguRXQpoksRXYroUkSXIroU0aWIVYpYpYhVililiFWKWKWIVYpYpYhVililiGw2tAqtilYjrSZazbRqtFpo1WlFbYTaCLURaiPURqiNUBuhNkJthNoItVHURlEbRW0UtVHURlEbxJkhzwyBZkg0Q6QZMs0QaoZUM8SaIdcMwWZINkO0GbLNEG6GdDPEmyHfDAFnSDhDxBkyzhByhpQzxJwh5wxBZ0g6Q9QZss4Qdoa0M8SdIe8MgWdIPEPkGTLPEHqG1DPEniH3DMFnSD5D9BmyzxB+hvQzxJ8h/wwBaEhAQwQaMtAQgoYUNMSgIQcNQWhIQkMUGrLQEIaGNDTEoSEPDYFoSERDJBoy0RCKhlQ0xKIhFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLXLRIhctctEiFy1y0SIXLbvmafc87aInuWiRixa5aJGLFrlo/beL3k4/t+/77dNhd7/Ze//4cXz+d9H3drz8evv75fbvbw==" }, { "name": "pay_fee", "is_unconstrained": true, "custom_attributes": ["aztec(public)"], "abi": { "error_types": {}, "param_witnesses": { "fee_limit": [{ "end": 41, "start": 40 }], "inputs": [{ "end": 40, "start": 0 }] }, "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": "fee_limit", "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" } }], "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": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268] }, "bytecode": "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", "debug_symbols": "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u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311K+u5by3bWU766lfHct5btrKd9dS/nuWsp311zf3edPv/7j+aqbI9TN5vruftqNSXXD1OLw+ugmvL/qxqW6CaluUqqbkuqGqTeR57Ob+mqmqN6yn3fDnKnj66Ob4/5VN8yZOv3xi/N5nq+6SalutlQ3R6kbqkfo592YVDdLqhuX6kZKb5aU3lA9Qj/vpqW6kdJipkcon/zY4Wl2fvbTpz7+l2k9K3/XSfzoneko+uW92+Del0bvP7pxZjeWn/MUX3YTUt2kVDcl1U1LdbOlujlK3cQj1Y1JdbOkupHS4pDS4pDS4pDS4pDS4pDS4pDS4pTS4pTS4pTS4pTS4pTS4pTS4pTS4pTS4pTS4pTS4pLS4pLS4pLS4pLS4pLS4pLS4pLS4pJSv5JSv5ZSv5ZSv5ZSP6Y/KM3P5734/PFbN9NN9Mt7z8G9Xyjfj0+c20/cuFp+fMKuP7GuP+HXn4jrT+T1J+r6E339ies339dvfq7f/Fy/+bl+83P95uf6zc/1m5/rNz/Xb36u3/zcvvl5nutP2PUn1vUn/PoTcf2JvP5EXX+irz+xrz9x/eZ2/eZ2/eZ2/eZ2/eZ2/eZ2/eZ2/eZ2/eZ2/eZ2/ebr+s3X9Zuv6zdf12++rt98Xb/5un7zdf3m6/rN1/Wb+/Wb+/Wb+/Wb+/Wb+/Wb+/Wb+/Wb+/Wb+/Wb+/Wbx/Wbx/Wbx/Wbx/Wbx/Wbx/Wbx/Wbx/Wbx/Wbx/Wb5/Wb5/Wb5/Wb5/Wb5/Wb5/Wb5/Wb5/Wb5/Wb5/Wb1/Wb1/Wb1/Wb1/Wb1/Wb1/Wb1/Wb1/Wb1/Wb1/Wb9/Wb9/Wb9/Wb9/Wb9/Wb9/Wb9/Wb9/WbX9/hzvUd7lzf4c71He5c3+HO9R3uXN/hzvUd7lzf4c71He5c3+HO9R3uXN/hzvUd7lzf4c71He5c3+HO9R3uXN/hzvUd7lzf4c71Hc6e60Pc6yN2/5F1/xG//0jcfyTvP1L3H+n7j+z7j9y/vt2/vt2/vt2/vt2/vt2/vt2/vt2/vt2/vt2/vt2//rp//XX/+uv+9df966/711/3r7/uX3/dv/66f/11//p+//p+//p+//p+//p+//p+//p+//p+//p+//p+//px//px//px//px//px//px//px//px//px//px//p5//p5//p5//p5//p5//p5//p5//p5//p5//p5//p1//p1//p1//p1//p1//p1//p1//p1//p1//p1//p9//p9//p9//p9//p9//p9//p9//p9//p9//p9//r7/vX3/evv+9ff96+/719/37/+vn/9ff/6+/719/3rn/vXP/evf+5f/9y//rl//XP/+uf+9c/965/717+/9dn9rc/ub312f+uz+1vf65967z+S9x+p+4/0/Uf2/UfuX//+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3tz67v/XZ/a3P7m99dn/rs/tbn93f+uz+1mf3t751f+tb97e+dX/rW/e3vnV/61v3t751f+tb97e+dX/rW/e3vnV/61s3t76/TY/Yp3/85DH7/NnsL3509ceP+u/iz90/G1kqjbhKI6HSSKo0UiqNtEojW6WRI9LIH/t/ROZXNqKirEtFWZeKsi4VZV0qyrpUlHWpKOtSUdaloqyuoqyuoqyuoqyuoqyuoqyuoqyuoqyuoqyuoqyuoqyhoqyhoqyhoqyhoqyhoqyhoqyhoqyhoqyhoqyhoqypoqypoqypoqypoqypoqypoqypoqyp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b9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/r2/a1v39/69v2tb9/f+vb9rW/f3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t79zf+s79re/c3/rO/a3v3N/6zv2t71zf+tZzfet7fcTuP7LuP+L3H4n7j+T9R+r+I33/kX3/kfvXt/vXt/vXt/vXt/vXt/vXt/vXt/vXt/vXt/vXt/vXX/evv+5ff92//rp//XX/+uv+9df966/711/3r7/uX9/vX9/vX9/vX9/vX9/vX9/vX9/vX9/vX9/vX9/vXz/uXz/uXz/uXz/uXz/uXz/uXz/uXz/uXz/uXz/uXz/vXz/vXz/vXz/vXz/vXz/vXz/vXz/vXz/vXz/vX7/uX7/uX7/uX7/uX7/uX7/uX7/uX7/uX7/uX7/uX7/vX7/vX7/vX7/vX7/vX7/vX7/vX7/vX7/vX7/vX3/fv/6+f/19//r7/vX3/evv+9ff96+/719/37/+vn/9c//65/71z/3rn/vXP/evf+5f/9y//rl//XP/+ve3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+uz+1uf3d/67P7WZ/e3Pru/9dn9rc/ub312f+tb97e+dX/rW/e3vnV/63v9G+77j+T9R+r+I33/kX3/kfvXv7/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1vfur/1rftb37q/9a37W9+6v/Wt+1uf39/6/P7W5/e3Pr+/9fn9rc/vb31+f+vz+1uf39/6/P7W5/e3Pr+/9fn9rc/vb31+f+vz+1uf39/6/P7W5/e3Pr+/9fn9rc/vb31+f+vz+1uf39/6/P7W5/e3Pr+/9fn9rc/vb31+f+vz+1uf39/6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DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CM10IzXgvNeC0047XQjNd6Al0g0QUKXaDRBTa6AHqS0YzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXo5mvBzNeDma8XI04+VPoAskukChCzS6wEYXQE8ymvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrz8a8bLzrM+PnjcflLmL//C8sdP/+XC9fnTYV/8cOf+8bN94rdfvD4bWmoNuVpDodZQqjVUv6KhtM+G8vy+oY8qTamyf0WVvT+r/O6/sd9VOb+kyofavO57/kWVrzm3X17l70ja53/Tdo4z/xzPUmvI1RoKtYZSraH6FQ39TGxOU6rsX1HlZ5J2zi+p8h+LTXwN/K3l/uNza2X8pEqec378dD32ZRWjVFmUKv7Hq9Szns8qnl9VCUqVpFSpX/Iu+7cq/R+L0V8y/T/+7K1/Uy7/7OiwO1rr458R/hIz8rcdrV/yV1X12dF+vniJ9Uv+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cpptcpptcpptcpq95DR7yWn2ktPsJafZS06zl5xmLznNXnKaveQ0e8lptstptstptstptstptstptstptstptstptstptstpdshpdshpdshpdshptpwP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8sj5II+cD/LI+SCPnA/yyPkgj5wP8qj5IONR80G+OhLT7FdHYpr96khMs18diWn2qyMxzX51JKbZr47ENPvVkZhmvzqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIznNVvNBvjqS02w1H+SrIzXNNjkfpMn5IE3OB2lyPkh71DTb5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQJueDNDkfpMn5IE3OB2lyPkiT80GanA/S5HyQ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FlLPzULquVlIPTcLqedmIfXcLKSem4XUc7OQem4WUs/NQuq5WUg9Nwup52Yh9dwspJ6bhdRzs5B6bhbSnpuFtOdmIe25WUh7bhbSfsZu0z03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2nPzULac7OQ9twspD03C2n/PAupXj/8k9bj+Efraeuvynz50/u3n/7dF42vfrenfXxXz/XbT4d9foNU/wbPz75B/YJvkGt99lTry6duTpnNKXMYZc7Pk3x+TRnjlFmcMs4pE5wyySlTnDLNKbM5ZTgqYBwVMI4KGEcFjKMCxlEB46iAcVTAOCpgHBUwjgosjgosjgosjgosjgosjgosjgosjgosjgosjgosjgo4RwWcowLOUQHnqIBzVMA5KuAcFXCOCjhHBZyjAsFRgeCoQHBUIDgqEBwVCI4KBEcFgqMCwVGB4KhAclQgOSqQHBVIjgokRwWSowLJUYHkqEByVCA5KlAcFSiOChRHBYqjAsVRgeKoQHFUoDgqUBwVKI4KNEcFmqMCzVGB5qhAc1SgOSrQHBVojgo0RwWaowKbowKbowKbowKbowKbowKbowKbowKbowKbowKbowKHowKHowKHowKHowKHowKHowIcdvBw2MHDYQcPhR3cD4UdfJUxTpnFKeOcMsEpk5wyxSnTnDKbU4ajAsZRAeOogHFUwDgqYBwVMI4KGEcFjKMCxlEB46jA4qjA4qjA4qjA4qjA4qjA4qjA4qjA4qjA4qjA4qiAc1TAOSrgHBVwjgo4RwWcowLOUQHnqIBzVMA5KhAcFQiOCgRHBYKj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O3qSAz3JgZ7kQE9yoCc50JMc6EkO9CQHepIDPcmBnuRET3KiJznRk5zoSU70JCd6khM9yYme5ERPcqInudCTXOhJLvQkF3qSCz3JhZ7kQk9yoSe50JNc6Elu9CQ3epIbPcmNnuRGT3KjJ7nRk9zoSW70JDd6kjd6kjd6kjd6kjd6kjd6kjd6kjd6kjd6kjd6kjd6kg96kg96kg96kg96kg96kg96kg96kg96kg96ktGMl6EZL0MzXoZmvAzNeNkT6AKJLlDoAo0usNEF0JOMZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeBma8TI042VoxsvQjJehGS9DM16GZrwMzXgZmvEyNONlaMbL0IyXoRkvQzNehma8DM14GZrxMjTjZWjGy9CMl6EZL0MzXoZmvAzNeC0047XQjNdCM14LzXitJ9AFEl2g0AUaXWCjC6AnGc14LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC004+VoxsvRjJejGS9HM17+BLpAogsUukCjC2x0AfQkoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5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Al0g0QUKXaDRBTa6AHqS0YzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXgvNeC0047XQjNdCM14LzXgtNOO10IzXQjNeC814LTTjtdCM10IzXo5mvBzNeDma8XI04+VPoAskukChCzS6wEYXQE8ymvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04+VoxsvRjJejGS9HM16OZrwczXg5mvFyNOPlaMbL0YyXoxkvRzNejma8HM14OZrxcjTj5WjGy9GMl6MZL0czXo5mvBzNeDma8XI04xVoxivQjFegGa9AM17xBLpAogsUukCjC2x0AfQkoxmvQDNegWa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xVoxivQjFegGa9AM16BZrwCzXgFmvEKNOMVaMYr0IxXoBmvQDNegWa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xVoxivQjFegGa9AM16BZrwCzXgFmvEKNOMVaMYr0IxXoBmvQDNegWa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xVoxivQjFegGa9AM16BZrwCzXgFmvEKNOMVaMYr0IxXoBmvQDNegWa8As14BZrxCjTjFWjGK9CMV6AZr0AzXoFmvALNeAWa8Qo04xVoxivQjFegGa9AM16JZrwSzXglmvFKNOOVT6ALJLpAoQs0usBGF0BPMprxSjTjlWjGK9GMV6IZr0QzXolmvBLNeCWa8Uo045VoxivRjFeiGa9EM16JZrwSzXglmvFKNOOVaMYr0YxXohmvRDNeiWa8Es14JZrxSjTjlWjGK9GMV6IZr0QzXolmvBLNeCWa8Uo045VoxivRjFeiGa9EM16JZrwSzXglmvFKNOOVaMYr0YxXohmvRDNeiWa88g8yXq+z6EeB1/9Y+n2Bv/1hz71//LCX/farzZ8vfjpWxo+ffv3H/Kuf/mx+T27+DG7+D3Jv/+DmbXLza3LzPrn5mNx8Tm6+Jjc/ecPW5A1bkzdsT96wPXnD9uQN25M37B/kf//BzU/esD15w/bkDduTN2xP3rB78obdkzfsnrxh9+QN+we5/H9w85M37J68YffkDbsnb9g9ecOeyRv2TN6wZ/KGPZM37B/0y/yDm5+8Yc/kDXsmb9gzecOewRu2nsEbtp7BG7aewRu2nsEbtp7BG7aewRu2nsEbtp7BG7aewRu2nskb1iZvWJu8YW3yhrXJG/YP+kv/wc1P3rA2ecPa5A1rkzesTd6wa/KGXZM37Jq8YdfkDfsHfd//4OYnb9g1ecOuyRt2Td6wa/KG9ckb1idvWJ+8YX3yhv2DeQz/4OYnb1ifvGF98ob1yRvWJ2/YmLxhY/KGjckbNiZv2D+Yk/IPbn7yho3JGzYmb9iYvGFj8obNyRs2J2/YnLxhc/KG/YP5Rf/g5idv2Jy8YSdnOtXkTKeanOlUkzOdanKmU03OdKrJmU41OdOpJmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5EynmpzpVJMznWpyplNNznSqyZlONTnTqSZnOtXkTKeanOlUkzOdanKmU03OdKrJmU41OdOpJmc61eRMp5qc6VSTM51qcqZTTc50qsmZTjU506kmZzrV5Eynmpzp1JMznXpyplNPznTqyZlO/QzesD0506knZzr15Eynnpzp1JMznXpyplNPznTqyZlOPTnTqSdnOvXkTKeenOnUkzOdenKmU0/OdOrJmU49OdOpJ2c69eRMp56c6dSTM516cqZTT8506smZTj0506knZzr15Eynnpzp1JMznXpyplNPznTqyZlOPTnTqSdnOvXkTKeenOnUkzOdenKmU0/OdOrJmU49OdOpJ2c69eRMp56c6dSTM516cqZTT8506smZTj0506knZzr15Eynnpzp1JMznXpyplNPznTqyZlOPTnTqSdnOvXkTKeenOnUkzOdenKmU0/OdOrJmU49OdOpJ2c69eRMp56c6dSTM516cqZTT8506smZTj0506knZzr15Eynnpzp1JMznXpyplNPznTqyZlOPTnTqSdnOvXkTKeenOnUkzOdenKmU0/OdOrJmU49OdOpJ2c69eRMp56c6dSTM516cqZTT8502pMznfbkTKc9OdNpT8502s/gDbsnZzrtyZlOe3Km056c6bQnZzrtyZlOe3Km056c6bQnZzrtyZlOe3Km056c6bQnZzrtyZlOe3Km056c6bQnZzrtyZlOe3Km056c6bQnZzrtyZlOWzfTyZd9NO9rfd287IZ9p3nZDftG87qZTu80L7th32ledsO+07zshn2nedkN+07zshv2neZlN+w7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvODN+zRzXR6p/nBG/boZjq90/zgDXuewRv26GY6vdP84A17dDOd3ml+8IY9uplObzSvm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN6xuptM7zU/esLqZTu80P3nD6mY6vdP85A2rm+n0TvOTN+zkTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OpMznc7kTKczOdPpTM50OoMzndYzONPp1fzcDftqfu6GfTU/d8O+mp+7YV/Nz92wr+bnbthX83M37Kv5uRv21fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNOzjT6dX85A07ONPp1fzkDTs40+nV/OQNK5zp9PnTr/94vm5ed8O+0bzuhn2jed0N+9PmTTfTKbw+mg/vr5uX3bDvNC+7Yd9pXnbDvtO87IZ9p3lZnY88n83X31EbWZ1/o3ndfJvjH7/69R/96+Zl1eb0Rxf5PM/XzcuqzTvNy/5T5TvNy6rNO83Lqs07zcv+U+UbzeumrLzTvK7Ov9H8ZJ3XTVl5p/mY3Lzs3ead5idvWNmUlXzy81e/ttHPfvrUx32tnpW/azt++6qq+xjwVVW396//qrJ5L//RV/1sXnXX52P5KR3xd5pX3fVvNa+6699qPiY3r7rr32pedde/1bzurn+jed3t/Ubzuvv4583L5r281fzkDSub9/JW85M3rGzey1vNT96wsnkvbzU/ecPK5r281fzkDSub9/JW85M3rGzey1vNT96wsnkvbzU/ecPK5r281fzkDSub9/JW85M3rGzey1vNT96wsnkvbzU/ecPK5r281fzkJSUbmfJW85OXlGxkyjvNy0amvNW87JJ6Xd8/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eDWa8Wo049VoxqvRjFejGa9GM16NZrwazXg1mvFqNOPVaMar0YxXoxmvRjNejWa8Gs14NZrxajTj1WjGq9GMV6MZr0YzXo1mvBrNeDWa8Wo049VoxqvRjFejGa9GM16NZrwazXg1mvFqNOPVaMar0YxXoxmvRjNejWa8Gs14NZrxajTjtdGM10YzXhvNeG0047WfQBdIdIFCF2h0gY0ugJ5kNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10YzXhvNeG0047XRjNdGM14bzXhtNOO10YzXRjNeG814bTTjtdGM10EzXgfNeB0043XQjNd5Al0g0QUKXaDRBTa6AHqS0YzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM10EzXgfNeB0043XQjNdBM14HzXgdNON10IzXQTNeB814HTTjddCM1wEzXv6AGa9XAUMXWOgCji4Q6AKJLlDoAo0usNEF0JNs6Ek29CQbepINPcmGnmRDT7KhJ9nQk2zoSTb0JC/0JC/0JC/0JC/0JC/0JC/0JC/0JC/0JC/0JC/0JDt6kh09yY6eZEdPsqMn2dGT7OhJdvQkO3qSHT3JgZ7kQE9yoCc50JMc6EkO9CQHepIDPcmBnuRAT3KiJznRk5zoSU70JCd6khM9yYme5ERPcqInOdGTXOhJLvQkF3qSCz3JYMbLcYzX3/6w594/ftjLfvvVr6/5xU9H5Pnx0xF1/uqnP5uvyc335Ob35ObP4OZhvB6leVNtPj0/ms9YXze/Jjfvk5uPyc3rbtgdn83732led8O+0bzuhn2jed0N+0bzuhv2581v3Q37RvOyG/ad5mU37DvNy27Yd5qX3bDvND95w+7JG3ZP3rB78obdkzfsmbxhz+QNeyZv2DN5w8L8BJTmJ2/YM3nDnskb9kzesGfuhg2c74TS/NwNGzi/DKX5uRs2cD4fSvNzN2zg/EmU5udu2MD5qijNT96wJrthM+uz+Z1fN6/772HfaF7338O+0bzuv4d9o3nZDftO87Ib9p3mZTdsff7qqIyvm5fdsG80v2R1/p3mZXX+neZldf6d5mV1/p3mZXX+neZldf6d5mV1vu2ji+jun/x0nrIfP/360vm7tuO3ryq7FX79V5X9X2m//qvK/m+6/+CrfjTvuru+/bP55+80r7vr32hed9e/0bzurn+j+ZjcvO6uf6N53f9N90bzuv+b7o3mZffxO83Lbtg3mo/JGzYmb9iYvGFj8oaF5SpQmp+8YWPyho3JGzYmb9iYvGFz8obNyRs2J2/YnLxhYXknlOYnb9icvGFz8obNyRs2J2/Ymrxha/KGrckbtiZvWFgO0R9ufttn6shez9fNy27Yd5qX3bDvNC+7Yd9pXnbDvtO87IZ9o3ndjKN3mpfdsO80L7th32ledsO+0/zkDaubcfRO85M3rG7G0TvNT96wuhlHbzSvm3H0TvOTN6xuxtE7zU/esLoZR+80P3nD6mYcvdP85A2rm3H0TvOTN6xuxtE7zU/esLoZR+80P3nD6mYcvdP85A2rm3H0TvOTN6xuxtE7zQ/esKabcfRO84M3rOlmHL3T/OANa8/gDWu6GUfvND94w5puxtE7zQ/esKabcfRG87oZR+80P3nD6mYcvdP85A2rm3H0TvOTN6xuxtE7zU/esDZ5w9rkDaubLvVO85M3rG661DvNT96wuulS7zQ/ecPqpku90/zkDaubAPVO85M3rG6m0zvNT96wuplO7zQ/ecPqZjq90/zkDaub6fRO85M3rG6m0zvNT96wuplO7zQ/ecPqZjq90/zkDaub6fRO85M3rG6m0zvNT96wuplO7zQ/ecPqZjq90/zkDaub6fRO85M3rG6m0zvNT96wuplO7zQ/ecPqZjq90/zkDaub6fRO85M3rG6m0zvNT96wkzOdbHKmk03OdLLJmU42OdPJJmc62eRMJ5uc6WSTM51scqaTTc50ssmZTjY508kmZzrZ5Ewnm5zpZJMznWxyppNNznSyyZlONjnTySZnOtnkTCebnOlkkzOdbHKmk03OdLLJmU42OdPJJmc62eRMJ5uc6WSTM51scqaTTc50ssmZTmtyptOanOm0Jmc6rcmZTusZvGHX5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdFqTM53W5EynNTnTaU3OdPLJmU4+OdPJJ2c6+eRMJ38Gb1ifnOnkkzOdfHKmk0/OdPLJmU4+OdPJJ2c6+eRMJ5+c6eSTM518cqaTT8508smZTj4508knZzr55Ewnn5zp5JMznXxyppNPznTyyZlOPjnTySdnOvnkTCefnOnkkzOdfHKmkwtnOpV/Nr/z6+Z1N+wbzetu2Deal92wxz9+9es/+tfNy27Yd5qXXVLvNC+7pN5oXjcW6Z3mZZfUO83LLql3mv9DUnnZT+Tnxo86X/dTYv20WD9brJ+j1c8fy64B9GPEftLzo5+M9XU/S6wfF+snxPqh6vOOz3787/RTYv20WD9brJ+j1U89Yv2YWD9LrB8X6yfE+hHT5xLT5xLT5xLT5xLT5xbT5xbT5xbT5xbT5xbT5xbT5xbT5xbT5xbT5xbT5y2mz1tMn7eYPm8xfd5i+rzF9HmL6fMW0+ctps9bTJ8PU58z67Ofv/Ovwo+J9bPE+nGxfkKsnxTrh6nP9fmvZqMyvu6npfqJ5xHrx8T6WWL9uFg/IdZPivXD1J+2j18c3f2Tn85T9uOnX98jf9dJ/NZ9j+5+j+7+aHT/0Y9RN0V/Qpv9/J1+TKyfJdaPi/UTYv2kWD8l1k+L9bPF+jla/SwxfV5i+rzE9HmJ6fMS0+clps9LTJ+XmD4vMX1eYvrsYvrsYvrsYvrsYvrsYvrsYvrsYvrsYvrsYvrsYvocYvocYvocYvocYvocTH3+uRc+qE69d/opsX5arJ8t1s/R6ofq1HunHxPrZ4n142L9iOlziulziulziulziulziulzielzielzielzielzielzielzielzielzielzielzi+lzi+lzi+lzi+lzi+lzi+lzi+lzi+lzi+lzi+nzFtPnLabPW0yft5g+bzF93mL6vMX0eYvp8xbT5y2mz0dMn4+YPh8xfT5i+nzE9PmI6fMR0+cjps9HTJ+Plj7no6XP+Wjpcz5a+pyPlj7no6XP+Wjpcz5a+pyPlj7no6XP+Yjps4nps4nps4nps4nps4nps4nps4nps4nps4nps4np8xLT5yWmz0tMn5eYPi8xfV5i+rzE9HmJ6fMS0+clps8ups8ups8ups8ups8ups8ups8ups8ups8ups8ups8hps8hps8hps8hps9i/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP5hi/sEU8w+mmH8wxfyDKeYfTDH/YIr5B1PMP1hi/sES8w+WmH+wxPyD9Wjpc4n5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfLDH/YIn5B0vMP1hi/sES8w+WmH+wxPyDJeYfbDH/YIv5B1vMP9hi/sF+tPS5xfyDLeYfbDH/YIv5B1vMP9hi/sEW8w821z9Y/tnPzq/7cbF+Qqwfpj4fXx/9HPev+ymxfrZYP0erH6pf751+TKyfJdbPl/O+qj/KPPH5udO/fay+97H+3sf29z52vvWxry1NP//Yl/+V1KofH3v9q/wvP9bf+9j+3sfOtz72tYvg5x/78o/d8mML2bbfPvb6m3z9H/7///K//+u//E//5T//t9cH/vJ/93/82//87//6X//tx//x3//P/+3/+b95/ez/BQ==" }, { "name": "mint_public", "is_unconstrained": true, "custom_attributes": ["aztec(public)"], "abi": { "error_types": {}, "param_witnesses": { "amount": [{ "end": 42, "start": 41 }], "inputs": [{ "end": 40, "start": 0 }], "to": [{ "end": 41, "start": 40 }] }, "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": "to", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress" }, "visibility": "private" }, { "name": "amount", "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" } }], "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": [42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269] }, "bytecode": "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", "debug_symbols": "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qSxuqSxuqSxuqSxuqSxuqSxuqSxuqSxuqSxuqSw+Ull8pLIY/adgZX4Z/Nn5XTcu1U1IdZNS3WypbkqqGzKL9/O1+WFnfNfNEepmPeg/6ulXtONa7YRWO6nVztZqp7TaIWOn1ueDo6p+8OkfAk0fzZ/BzaP/OKnfvfml0fxnO+j5UP7VzvN9O67VTmi1k1rtbK12Squd1mrnSLWD/mOofkU7S6sdrVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVQOrVQOrVQOrVQOrVQOrVQOrVRGlbheX0pc2/NtO6XVTmu1c6TaQbW4X9HO0mrHtNpxrXZCq53UakcrlVMrlVMrlVMrlbdWKm+tVN5aqby1UnlrpfLWSuWtlcpbK5W3VipvrVQurVQurVQurVQurVQurVQurVQurVQurVQurVQurVRurVRurVRurVRurVRurVRurVRurVRurVRurVRurVQ+Wql8tFL5aKXy0Urlo5XKRyuVj1YqH61UPlqpfKRSeT1SqbweqVRej1Qqr0cqlT/+l2utdqRSeT1SqbweqVRej1Qqr0crlZdWKi+tVF5aqby0UnlppfLSSuWllcpLK5WXViovrVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVQ2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVR2rVQOrVQOrVQOrVQOrVQOrVQOrVTWcvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fUvL7Vtabt/ScvuWltu3tNy+peX2LS23b2m5fabl9pmW22dabp9puX32SKWyabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZlttnWm6fabl9puX2mZbbZ1pun2m5fabl9pmW22dabp9puX2m5faZltvnWm6fa7l9ruX2uZbb549UKruW2+dabp9ruX2u5fa5ltvnWm6fa7l9ruX2uZbb56zbt/2rnc5v20mtdrZWO2QqH7fPdo77t+20VDuoTPcr2lla7ZhWO67VTki1c2MgfX5l3X/F7r/i91+J+6/k/Vf2/Vfq/it9/5Vz/ZW4f/tx//bj/u3H/duP+7cf928/7t9+3L/9uH/7cf/28/7t5/3bz/u3n/dvP+/fft6//bx/+3n/9vP+7ef929/3b3/fv/19//b3/dvf929/37/9ff/29/3b3/dvf9+//bp/+3X/9uv+7df926/7t1/3b7/u337dv/26f/t1//b7/u33/dvv+7ff92+/799+37/9vn/7ff/2+/7t9/3bP/dv/9y//XP/9s/92z/3b//cv/1z//bP/ds/92//XL/9eJ77r6z7r9j9V/z+K3H/lbz/yr7/St1/pe+/cv/21/3bX/dvf92//XX/9tf921/3b3/dv/11//bX/dtf92/f7t++3b99u3/7dv/27f7t2/3bt/u3b/dv3+7fvt2//fu7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+uL+7u+uL/ri/u7vri/64v7u764v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/68v7u768v+vL+7u+vL/ry/u7vry/69v3d337/q5v39/17fu7vn1/17fv7/r2/V3fvr/r2/d3ffv+rm/f3/Xt+7u+fX/Xt+/v+vb9Xd++v+vb93d9+/6ub9/f9e37u759f9e37+/69v1d376/69v3d337/q5v39/17fu7vn1/17fv7/r2/V3fvr/r2/d3ffv+rm/f3/Xt+7u+fX/Xt+/v+vb9Xd++v+vb93d9+/6ub9/f9e37u759f9e37+/69v1d376/69v3d337/q5v39/17fu7vn1/17fv7/r2/V3fvr/r2/d3ffv+rm/f3/Xt+7u+fX/Xt+/v+vb9Xd/+bf+kkT710yfPWl+fzfrmo1afH/Xn58e6fzUSKo2kSiNbpZFSaaRVGjkijfy2f37I79nIUmnEVBpRSdZSSdZSSdZSSdZSSdZSSdZSSdZWSdZWSdZWSdZWSdZWSdZWSdZWSdZWSdZWSdZWSdajkqxHJVmPSrIelWQ9Ksl6VJL1qCTrUUnWo5KsRyRZ6xFJ1npEkrUekWStRyRZ6xFJ1npEkrUekWStRyRZ6xFJ1npUknWpJOtSSdalkqxLJVmXSrIulWRdKsm6VJJ1qSTrUklWU0lWU0lWU0lWU0lWU0lWU0lWU0lWU0lWU0lWU0lWV0lWV0lWV0lWV0lWV0lWV0lWV0lWV0lWV0lWV0nWUEnWUEnWUEnWUEnWUEnWUEnWUEnWUEnWUEnWUEnWVEnWVEnWVEnWVEnWVEnWVEnWVEnWVEnWVEnWVEnWrZKsWyVZt0qyqjhYpeJglYqDVSoOVqk4WKXiYJWKg1UqDlapOFil4mCVioNVKg5WqThYpeJglYqDVSoOVqk4WKXiYJWKg1UqDlapOFil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DDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDuYDDu4GXZwM+zgZtjBzbCD+wmmTDJlNlOmmDLNlGFSgGEHN8MOboYd3Aw7uBl2cDPs4GbYwc2wg5thBzfDDm6GHdwMO7gZdnAz7OBm2MHNsIObYQc3ww5uhh3cDDu4GXZwM+zgZtjBzbCDm2EHN8MOboYd3Aw7uBl2cDPs4GbYwc2wg5thBzfDDm6GHdwMO7gZdnAz7OBm2MHNsIObYQc3ww5uhh3cDDu4GXZwM+zgZtjBzbCDm2EHN8MOboYd3Aw7uBl2cDPs4GbYwc2wg5thBzfDDm6GHdwMO7gZdnAz7OBm2MHNsIObYQc3ww5uhh3cDDu4GXZwM+zgZtjBzbCDm2EHN8MOboYd3Aw7uBl2cDPs4GbYwc2wg5thBzfDDm6GHdwMO7gZdnAz7OBm2MHNsIObYQc3ww4Www4Www4Www4Www7WE0yZZMpspkwxZZopw6QAww4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www4Www42ww42ww42ww42ww72E0yZZMpspkwxZZopw6QAww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww42ww4ehh08DDt4GHbwMOzgeYIpk0yZzZQppkwzZZgUYNjBw7CDh2EHD8MOHoYdPAw7eBh28DDs4GHYwcOwg4dhBw/DDh6GHTwMO3gYdvAw7OBh2MHDsIOHYQcPww4ehh08DDt4GHbwMOzgYdjBw7CDh2EHD8MOHoYdPAw7eBh28DDs4GHYwcOwg4dhBw/DDh6GHTwMO3gYdvAw7OBh2MHDsIOHYQcPww4ehh08DDt4GHbwMOzgYdjBw7CDh2EHD8MOHoYdPAw7eBh28DDs4GHYwcOwg4dhBw/DDh6GHTwMO3gYdvAw7OBh2MHDsIOHYQcPww4ehh08DDt4GHbwMOzgYdjBw7CDh2EHD8MOHoYdPAw7eBh28DDs4GHYwcOwg4dhBw/DDh6GHTwMO3gYdvAw7OBh2MGDsIPxIOzgR5nFlDGmjDNlgimTTJnNlCmmTDNlmBRYTAosJgUWkwKLSYHFpMBiUmAxKbCYFFhMCiwmBYxJAWNSwJgUMCYFjEkBY1LAmBQwJgWMSQFjUsCZFHAmBZxJAWdSwJkUcCYFnEkBZ1LAmRRwJgWCSYFgUiCYFAgmBYJJgWBSIJgUCCYFgkmBYFIgmRRIJgWSSYFkUiCZFEgmBZJJgWRSIJkUSCYFNpMCm0mBzaTAZlJgMymwmRTYTApsJgU2kwKbSYFiUqCYFCgmBYpJgWJSoJgUKCYFikmBYlKgmBRoJgWaSYFmUqCZFGgmBZpJgWZSoJkUaCYFmkmBw6TAYVLgMClwmBQ4TAocJgUOkwKHSYHDpADDDi6GHVwMO7gYdnAx7OB6gimTTJnNlCmmTDNlmBRg2MHFsIOLYQcXww4uhh1cDDu4GHZwMezgYtjBxbCDi2EHF8MOLoYdXAw7uBh2cDHs4GLYwcWwg4thBxfDDi6GHVwMO7gYdnAx7OBi2MHFsIOLYQcXww4uhh1cDDu4GHZwMezgYtjBxbCDi2EHF8MOLoYdXAw7uBh2cDHs4GLYwcWwg4thBxfDDi6GHVwMO7gYdnAx7OBi2MHFsIOLYQcXww4uhh1cDDu4GHZwMezgYtjBxbCDi2EHF8MOLoYdXAw7uBh2cDHs4GLYwcWwg4thBxfDDi6GHVwMO7gYdnAx7OBi2MHFsIOLYQcXww4uhh1cDDu4GHZwMezgYtjBxbCDi2EHF8MOLoYdXAw7uBh2cDHs4GLYwcWwg8awg8awg8awg8awg/YEUyaZMpspU0yZZsowKcCwg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg8awg86wg86wg86wg86wg/4EUyaZMpspU0yZZsowKcCwg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg86wg8Gwg8Gwg8Gwg8Gwg/EEUyaZMpspU0yZZsowKcCwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gwg8Gw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" }, { "name": "claim_public", "is_unconstrained": true, "custom_attributes": ["aztec(public)"], "abi": { "error_types": {}, "param_witnesses": { "amount": [{ "end": 42, "start": 41 }], "inputs": [{ "end": 40, "start": 0 }], "leaf_index": [{ "end": 44, "start": 43 }], "secret": [{ "end": 43, "start": 42 }], "to": [{ "end": 41, "start": 40 }] }, "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": "to", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress" }, "visibility": "private" }, { "name": "amount", "type": { "kind": "field" }, "visibility": "private" }, { "name": "secret", "type": { "kind": "field" }, "visibility": "private" }, { "name": "leaf_index", "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" } }], "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] }, "bytecode": "H4sIAAAAAAAA/+2dB5gURfrGe5cBV4ddQMxxzenU2QXB7CiYc87nIVkRFTCfCc8cQVQM9zeBiopkiSoSJAdBT71g1tPL2Uty/6nZet13y+rZnaWq9xutfp5+pvrrqvp+9VZ1VXWcsqhuaVcWRWU63Fr//iD69oI4Wf2bWbulxmFeGZ+cZSXCWV4inK1KhDNVIpytS4SzTYlwrlMinBUlwrluiXCuVyKc6RLhbFsinJUlwllVIpztSoSzfYlwdigRzvVLhLNjiXBuUCKcG5YI50YlwrlxiXBuUiKcm5YI52Ylwrl5iXBuUSKcW5YI51Ylwrl1iXBWlwjnNiXCuW2JcG5XIpzblwjnDiXCuWOJcO5UIpw7lwjnLiXCuWuJcO7mkHMf4sQ9z9317x76d0/40r81+rdW/3bSZUzp7c65da/c2iW3djX27Z1blc99c+t+el+13rd/bj0gtx6YWw/SZTw4tx6SW7vl1u659dDcelhuPTy3HpFbj8ytR+XWo3PrMbn12Nx6XG49PreekFtPzK0n5daTc+spufXU3Hpabj09t56RW8/MrWfl1rMNlnNy67m59Ye59bzc+qPc2iO3np9be+bWXrm1d27tk1v75tZ+ubV/br0gt16YWwfk1oty68DcenFuvSS3XppbB+XWwbl1SG69LLdenluvyK1X5tarcuvVufUazdJes/w4t16bW6/Lrdfn1hty6425dWhuvSm3/iS33pxbb8mtt+bW23Lr7bn1jtx6p1Guu3Lr3bn1ntx6b269L7cOy63Dc+v9uXVEbn0gtz6YWx/KrSNz68O59ZHc+mhufSy3/jS3/l9ufTy3PpFbn8ytT+XWp3PrqNw6Orc+k1ufza3P5dYxufX53PqCZkE7ejG3js2tL+XWcbl1fG6dkFsn5tZJuXVybp2SW1/OrVNz67TcOj23zsitM3PrrNz6Sm59Nbe+lltn59bXc+uc3Do3t87LrfNz6xu5dUFuXZhbF+XWxbl1SW5dmluX5dbluXVFbl2ZW9/Mraty6+rc+lZufTu3/iy3vpNb382t7+XWn+fWX0QN2/Uvc+uvcuv7ufUDbftQ/36k41bo7Y9z6ye59dPc+llu/Ty3/jq3fpFbv9RxfqN/f6t/f6d/f69//6B//6h//6R//6x//6J//6p//6Z//65//6F/v9K//9S//9K//9a//9G//9W/X+vfNfr3f/oXnVyZ/i3Xv630b0r/tta/bfTvOvq3Qv+uq3/X079p/dtW/1bq3yr9y89ufLNk9W9m7ZYarmB+IETZ1cMGrfR+dQNa3dxVN05VJasbfupmmrpRpW4CqRss6uaFujGgDmp1QVtdLFYXYtVFTnUBUV2cUxe+1EUldcFGXQxRFxrUSbw6QVYnn+rErjq3bpNb1WRfTaTVJFVNANXkSk1c1KRADbhqMNuNmD+lcqgOXnXuqmNXB6Pq0FVnrjpys/M2O+yW7qRbumNe2864pTvgUu90zY72w6iug22sU1UdqupMVUeqOlHVgarOU3WcqtNUHabqLFVHqTpJ1UGqzlF1jKpTVB2i6gxVR6g6QdUB5ju/srpOT3V4qrNTHZ3q5FQHpzo31bGpTk11aKozUx2Z6sRUB6Y6L9X+dTbfLK+1qg9vqn8PHjSox1XV/Qf26n1l9cWXDam+uE/1+RdfNrDXYE74V0rYUf8eWTjJP5rr67/NTVidqg9voX97DBnS+6JLhlQPubi6R69e1Vf0H9Kv+uLLew/qM+DiKzhtp1QznfZr3Xynr7dvptMPm5vwf81NuFWHZib8YXMTPrpRMxM+Rwk31789ewwYkK+OwYN7Dxpy3kU9rjzv/P5Dzhvc/+renPTJzZvp85ytm5lw123qwwhS87nosgFD+l8y4Kr4NrTHNs30fAwlLLbhntBcpxethdNBzXV671o4/Wgt0j69czOBn6eERbbgnzc/6e/o2kIT+/g/ZppZwn82N2FZTTMTbkkJi63IXdYi7e7NBe7U3IRnUkJLlzL4svOHDOrRc0g88rnN9TxwbT0Paq7na9eihm6ntE1s93c1l3N4cxOOX4sCTlmLtNOLF2dWc8s4p7kJP1yLAn5afAF/3VzO3zc3Ybq2+QVsV1t0AdevbSbnJs1N2GUtCrhv8QU8oLmc3ZqbsMdaFLB38QXs11zOgc1NOIISNqvvH9lcz2PW1vPY5nqethaVOm8t0i4qvkEsbW4ZVzU34Z/WooB/K76AXzWX8+vmJqzu1PwC7tOpmU57Fun0m8s/N+qEFZRZNnJ0SXuvmoy6TI1r2uY7juqSdrneh99qbW+lt/GLS+ApvZ0y7K31dmsjn3X09jqGvVJvVxr2dnq7nWHvoLc7GPaOerujYd9Yb+M3q+1b6+2tDfv2ent7I58d9PYOhn1Hvb0j2dN6X37RdmXDhbMysuG6VjnZcMmqFdnaIDuyraNtrcmG9tOGbOtq2zpkW0/bKsiW1rZ1ydZW29YjW6W2pclWpW1tydZO2yrJhgtcVWTDJah2ZFtf29qTDV1NB7JtoG3rk21DbetINlx02oBsG2vbhmTbRNs2Iht6gI3Jtpm2bUI2nNBvSjZ0ApuRbUtt25xsW2nbFmTDRastyVatbVuRDaPq1mTbVtuqybadtm1Dtu21bVuy7aBt25FtR23bnmw7adsOZMP1jR3Jtou27US2XbVtZ7Ltpm27kA191a5kw3MKu6FPiervk+bToC8j2+7ox8i2B/owsu2J/otsGW1rQ7Ya8g1brbZVkA0XrnEMqn3ddTgbOerfO3fqrPI91HW+uZxVvoe7zzejxosjonqts+TnUNLqSB0ui9ze3j2C8i0jP7CnKHwyxUU86IF+FOyqbzxMh48skK67ka6K4hxmKX82clv+ww2eww3m1lR+T21279Bmm7wU3WZ7UFyz7WFM/y622dOIw0Ob7emnzdZmQputeywjiuxtD/PL72Kb7UUc7tvsXqHNNn0pus1eS3HNtodzne9imx1EHO7bbFdPbbYmtNmo7nG0KLK3PZx3fxfb7A3E4b7N7h362aYvRbfZhymu2fZwDei72GbvIQ73bbaHpzbbKbTZqO4x3Ciytz1cj/wuttnHiMN9m+3lqc2G6wZqmUJxzbaHa+PfxTb7vA6ra7Yf6mu2m5HtI23bnHjdt+3etZ7a9t6hbde9nhBF9jaK+zTfxbY9Q4dVO/6Nbsdbke23uBdKtt/R/UzYfq9t25DtD9q2Ldn+qG3bke1PuK9Ktj/jnirZ/oL7qWT7q7btRLa/advOZPu7tu1Ctn9o265k+0rbdiPbP7XtB2T7l7btTrZ/a9seZPuPtu1Jtv9qW4ZsX2tbDdnWaFst2f6nbZ3IhhtSnclWpm17ka1c27qQrZW2dSVbStv2JltrbduHbG20bV+yraNt+5GtQtv2J9u62nYA2dbTtgPJlta2g8jWVtuyZKvUtoPJVqVth5CtnbZ10zZ1fxn3BD/VtgoqUzZyd0wq//xutVrKjO0shff1y5OpIh72tb97X51U2feLml72/YnnAA9lT5OPpvAcQDwHuufJf7f2IPf55ut4P0PTNPnaj8qV9VCuMvKFvLmcaqkiG/cHWQvjwe4Za3neYeZ9MDHCxv0T+nocP6p7wXvNno6l/LwK/lI6X3DsT3bE2a5TPRveqa6k/dxXH2jYPLXLfLuAL+SNbfirpPIcmDxjbVMZDzAYffURZeQLbbYlfEcxvispvA/xdPPEY/Yr8N0tAd8HG773N3xz/4Wl0PhyMDEf4oHZyzlppq4vwrkczvHgh8fww0gDV2Vi3zjHgx/YUxTepaw+LuJBD/SFYFdtGXXJ7Ga6rJGuiuJ0s5Q/67j83Q2e7gazqpOtaDzycDzk20A3gwPb+5N23WO060baIc5upJ2v/uwQgwfbSfSlh5AuLeW7ULl99ZvmeIo+PIk+e3/D98GGb9Vn8xinlqaeo/g4X2yJPpvHIQl99mEF+mwwFdtnH2Ckk9hn79eCffbBpF33GO1sffYPSDsfcxg+70He2D4kQd9lLei7ULl99ZvmeJHkPDtr+LbNs3kurpZCfXaWmH2c14Z5dhT1LNBnm31vU/vsg410EvvsM4TOs815DvfZu5N2PuYwha7/7Us8uF7A/dk+nnnKDJ59iAfXlvh+Avbvl4Bm+xia7VNAsywx7mth9HANsrbQmLQ/McJ2kF/N8scGyoxroocYmqUozoX6PpD6uYqOW9f3Gmo0G8bM1gYb31cAm+u+m68JMwvrhTjXay3oY2PfLL7aEl/TjUgDXrIU5vHOfR/Rueh7Q3yt09d5oIe+MMPj1JrI7bFojkH7G1rxGMTjt4e5U8H+FP4Cc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJizgTkwB+bAHJgDcxSYM2u3BObAHJgDc2AOzIE5MAfmwByYA3NJMisePM/O39xBvAOFMMK2r1+e2mK/e9WdeNy/z1X3fH/3Inj4W30evr9Y46ecdc/hm98A7G6UqYri8LHj4XuQ+XZpvteH7cOpHgJzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDszfP2Z+xh2saYq3jxBG2A71zJM2eNRSZmxnKWxj5Ho9whPj4UUwHuGXJ8NtGvkrxj0Nm/pfh9Gt6nnN/+pB/EP0b4rifNmqPu5zOlxJ+w+nMnp4P6PBewLmfwvx//sgzlji/cDCy//V282wVUT+/iMLvpA3tuGvMvr2e0K2/x+qjL7dR/D/THG/kfVUFvhC3gdTGIwo18HEA7ZqZzy1Pf2Us3OmXS6P9UjrrKEvylVOZe1GcRWX+//w6pw/HvC/LOb/tcBfiuLM1sdA3H+muP//+s4ZP2Wva3v8fzEq3+6WsiPOfOoLFugwH/fcD/7Msh9LoT6e/yPH138Hmf3fvhbfRxCrI9817LtMr/ADO/e9b9MYg3jQA1qDXfUR+I8fZjfTdTPSVVGc/Szlz0Zuyx/3P1I8ti6mdoZ25Om9uTzTfjEaHUIamf8Rxu99Ij6PG0mMgXHjBnPDdhjpy+O4+b/uaSorl8HXf5+Z2mOb2zX6H26fYKt2xlM39rkvZ/3Yd4BRNvO/uZT2GcOm6mtg63otcNzzXKWbYfMzDhWed8FfY/Mu7v/McdecN1dEyf1PGlhs/5P2twJjPudlliNryeurJuaF9Dh+kScfs/zfaO7767q50ZFG2VCPR1DZEOfrRuZGR3pg9DlWHUVlVPl2t5QdccpT9TqldJj/W47nRh0t+7EUmhsdSVoe477M+fo+ljiz5Id9H0esjnzXsG/MjeAH9hSF10/Vx0U86AGtwa6OmaN1mNnNdPsb6aooztGW8mcjt+U/xuA5xmBWdbIOtTO0I5/j89ExGnUjjRDnALJhLOJvYuD44XHKxzcWyqJvf0fEvMbB3xHhuQZsfB3G11h6aAwj/PF42yaKv1aDONvo9mDrf/naFl977Oa8bJ0b/Cck+k747EZ2xNmR2nQvy1ynsWtMUuc6h1kYq50x1s1XfYz7mK/i2D3CKDfmSOpazb5G+bORv7Gex2Tz3B3+eEzuXOB4qKB4WYeMfsresC825yNcdsTZh46p/Wi+YbtWc5RlP5ZC85GjSMtj3Zc5w2M06vtYi+/jidWR7xr2jfkI/MCeovCRNB9BPOgBrcGu+giM7cxuputmpKuiOMdYyp+N/MzHkPexBrOqkwOpnR1F8xEP/x1tnSPZrmchzn5ks12rsV3n8HDPpeB1Dv5GF2x8Xrefc57i//Oar7u4ny/UfRPLfTnr/vMa+rr+z2tz7mZeo6qiOPyNM1/z3bj2BX+BOTAH5sAcmANzYA7MgTkwB+bAHJgLLoE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA/N3ljnu/T7ES+L9vqYwwsbvZsHG72bh3QGHz4jXMEtEfvk9Bdu3wDzolbG9+9c6qn/Xzud7D2bbxnvs8FcWffsdxz0N1hTF6a+Zbe90pS1pVfTR9A0RtE2X7wPwdxv2Ib8DSV8f7+cW+1/r3PaQrjyqZ9zPE+O+RTByn4d0rYjRx3tF3Hc1hXF/YkS6FDH6eB+12Hd2+F1s/j4FGA/0xHhAEYwHEiPStSFGH9+8SpPfpjAeRIxItw4xZj0xHlQEY5YYDyI2/B7siTFbBOPBxAj7usR4iCfGg4tgPIQYkW49YvTx7lua/DaFkb+7gHRpYvQxjhf7XjC/04h0bYnRx5yQvy/RFEaeJyJdJTH6+NZYOmo4H2qMkb+1y7xglPrd2HbEeIQnxuZ8N5bnwe2J0cf7+umo4bf3GmM8khiRrgMxuv9WQR3jkUUwHkWMSLc+MR7tifGoIhiPJkak60iMHr6blGc8ughG/r4Q0m1AjB6+pZBnPKYIRv7mANJtSIzHeWI8tgjG44gR6TYiRh/fRUhHDb8b1Rjj8cSIdBsT4wmeGI8vgvEEYkS6TYjxRE+MJxTBeCIxIt2mxHiSJ8YTi2A8iRiRbjNiPNkT40lFMJ5MjEi3OTGe4onx5CIYTyFGpNuCGE/1xHhKEYynEiPSbUmMp3liPLUIxtOIEem2IsbTPTGeVgTj6cSIdFsT4xmeGE8vgvEMYkS6amI80xPjGUUwnkmMSLcNMZ7lifHMIhjPIkak25YYz/bEeFYRjGcTI9JtR4zneGI8uwjGc4gR6bYnxnM9MZ5TBOO5xIh0OxDjDz0xnlsE4w+JEel2JMbzPDH+sAjG84gR6XYixh95YjyvCMYfESPS7UyMPTwx/qgIxh7EiHS7EOP5nhh7FMF4PjEiHbfHnp4Yzy+CsScxIl2GGHt5YuxZBGMvC4/L+31VxMO++rgve60qe++o6WXvQzx93fPk66JPETx9/fLk66KPxVd/977yddEvanrZ+xPPBe558nXRvwgeMFRROtbsQveMec0uKILxQuIZ4J4nr9mFRfAMIM0utGh2kXvGvGYDimC8iHgGuufJa3ZRETwDSbOLLJpd7J4xr9nAIhgvJp5L3PPkNbu4CJ5LSLOLLZpd6p4xr9klRTBeSjyD3PPkNbu0CJ5BpNmlFs0Gu2fMazaoCMbBxDPEPU9es8FF8AwhzQZbNLvMPWNesyFFMF5GPJe758lrdlkRPJeTZpdZNLvCPWNes8uLYLyCeK50z5PX7IoieK4kza6waHaVJ8Yri2C8ihiRjufzV3tivKoIxquJ8Spiw+81nhivLoLxGmJEOn6258eeGK8pgvHHxIh0/GzPtZ4Yf1wE47XEiHT8bM91nhivLYLxOmJEOn6253pPjNcVwXg9MSIdP9tzgyfG64tgvIEYmReMN3pivKEIxhuJC+n42Z6hnhhvLIJxKDEiHT/bc5MnxqFFMN5EjEjHz/b8xBPjTUUw/oQYkY6f7bnZE+NPimC8mRiRjp/tucUT481FMN5CjEjHz/bc6onxliIYbyVGpONne27zxHhrEYy3ESPS8bM9t3tivK0IxtuJEen42Z47PDHeXgTjHcSIdPxsz52eGO8ogvFOYkQ6frbnLk+MdxbBeBcxIh0/23O3J8a7imC8mxiRjp/tuccT491FMN5DjEjHz/bc64nxniIY7yVGpONne+7zxHhvEYz3ESPS8bnrME+M9xXBOIwY7wuMa83IPNXueDJcdvY1XEDZh1t4yjyVnX3dL6DsYCg1xmElwNirBBiDjoExMH73GMNxHXSUxBh0DDoGxu8eY98SYAx1HRgD43ePsRTGwsAY5j2B8bvHGI6ZcFwHxuIYw32Fumeum8OoeEa458lrdn8RPCNIM6Tr65extrmMiucB9zx5zUYUwfMAaTbCopkHxtrmMiqeB93z5DV7oAieB0mzByyaeWCsbS6j4nnIPU9esweL4HmINHvQopkHxtrmMiqeke558po9VATPSNLsIYtmHhhrm8uoeB52z5PXbGQRPA+TZiMtmnlgrG0uo+J5xD1PXrOHi+B5hDR72KKZVMZefhlrm8uoeB51z5PX7JEieB4lzZCubwkw9ioBxmElwFgKOgbGwCiJMRzXQUdJjEHHoGNg/O4xhnl4YPweMdY2l1HxPOaeJ6/Zo0XwPEaaIV1fv4y1zWVUPD91z5PX7LEieH5Kmj1m0UwqY6/A6IRxeAkwhroOjIGx+Yz/55yxc6ZYxv/zrJmfcmYyqkyPG2V6zChTFcVh3R/3UM4y8ou8sf041UMxzMNKkDnoHHSOYw46B53jmIPOQec45qBz0DmOOegcdI5jDjoHneOYg85B5zjmoHPQOY456Bx0jmMOOged45iDzkHnOOagc9A5jjnoHHSOYw46B53jmIPOQec45qBz0DmOOegcdI5jDjoHneOYg85B5zjmoHPQOY456Nw8Zv62HVjTFO8+IYyw/ZR4nnDP0zlt8KilzNjOUvgJz/p4Kmf+ufcnI7vuT5DuiMPH15MeyllGfpE3tuGvWOZhJcgcdG4eM39vEqxpine/EEbYHieep9zzdEobPGop1I895VkfT+XM92NPR3bdnyLdEYePr6c9lLOM/CJvbD9N9RCY/TPz91Sf0L9pijdCCCNsTxLPKOc8tZm0waOWQn3CKM/6+ClnXZ8wOrLrPop0Rxxuq6M9lLOM/CJvbI+meiiGeVgJMgedg85xzEHnoHMcc9A56BzHHHQOOscxB52DznHMQeegcxxz0DnoHMccdA46xzEHnYPOccxB5++PzooH/xMG1jTFe0AII2xPE88zznk6ZdIGj1oK3Xd4xrM+fspZd9/h2ciu+zOkO+Lw8fWsh3KWkV/kje1nqR6KYR5WgsylqHNoG0Hn7xJzaBuBOY45tI3AHMcc2kZgjmMObSMwxzGHthGY45hD2wjMccyhbQTmOObQNgJzHHNoG4E5jjm0jcAcxxzaRmCOYw5tIzDHMYe2EZjjmEPbaB6z4nlQh8GapngPCmGEbTTxPOeep3Pa4FFLoed2nvOsj6dy5p/bGRPZdX+OdEccbqtjPJSzjPwib2yPoXoIzIHZxqx4HtJhsKYp3kNCGGF7lnied85Tk0kbPGop1I8971kfP+Ws68deiOy6P0+6Iw631Rc8lLOM/CJvbL9A9RCYA3NgDsyBOTAH5sAcmANzSzArnpE6DNY0xRsphBG2McTzonuezmmDRy2Fzpte9KyPp3Lmz5vGRnbdXyTdEYfb6lgP5Swjv8gb22OpHgJzYLYxK56HdRisaYr3sBBG2F4gnpfc8+ydNnjUUqgfe8mzPp7Kme/HxkV23V8i3RGH2+o4D+UsI7/IG9vjqB6KYR5WgsxB56BzHHPQ+fujs+J5RIfBmqZ4jwhhhG0s8Yx3z7N32uBRS6FxebxnfTyVMz8uT4jsuo8n3RGHj68JHspZRn6RN7YnUD0UwzysBJmDzkHnOOag8/dHZ8XzqA6DNU3xHhXCCNs44pnonqc2bfCopdC4PNGzPp7KmR+XJ0V23SeS7ojTiso5yUM5y8gv8sb2JKqHUmPm+qt257uryney+zLVtsvlsR7pOtnQF+VScTbQ4Z79eve88LjLBgzo36d/70GHXtl/8JDBfMxM0b9sW2NsT4qJo8r5Mm1n3ZSzhn22Jkb4Un6nR8717aP6l6lRw6VQ/zKdeKa556nxVM6MyncGsbvJt3NvpdVMQ6uphlZVFIcZZnrQr4z8Im9sz7T4dqdFlz7K96wmaDHLwjMrYS1mWXy706JrZ+X7lSZo8YqF55WEtXjF4tudFrX5sf3VJmjxqoXn1YS1eNXi2+Exso/y/VoTtHjNwvNawlq8ZvHtUIt83zm7CVrMtvDMTlgL+CuW+dUSZJ5VgswSdK4wwm58d8n7fr0JWrxu4Xk9YS1et/h2qEVP5XtOE7SYY+GZk7AW8Fcs86sCmCuMsBvfXXso33OboMVcC8/chLWYa/HtsC3vpXzPa4IW8yw88xLWYp7Ft0Mt8vPl+U3QYr6FZ37CWsBfKqo/Z0+39clT994U86il0Hk6GNIU5nP3N5wzZjJcP2+QrwXufdXY2gu2F/j13Uflu8h9vvnzpMU6r9Y630WWMi3R4TLHei6mfMvID+wpCle0rY+LeNADxy3YK3PrQh1mdjPdfCNdFcVZaCl/NnJb/kUGzyKDWdXJ1+l6Dh9tqyntun1Ufyy3J108HNP5546nRA2XQv0OH/c+rnH76rtsuk8xysT9G9/f8zX+vGHwYHs+1UMxzMNKkDno3DxmxdNbh8Gapni9hTDCxvenPFz/75w2eNTS1PscPvTxdZ9DlWlBZNed59GIw8eXr3la3Dx6AdVDMczDSpA56Nw8ZsXTT4fByudC/YQwmueGimehc57aos8DF3rWx0856/qxRTG6LyTdEYePLw/nZvl2sNDgwfYiqofAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MspkVzwU6DNY0xbtACCNs/HzQYuc8dfcdmEcthe47LI786uOnnHX3HZbE6L6YdEccbqu+nktabPBgu9CzVIE5MAfmwByYA3NgDsyBOTBn1m4JzIE5MAfmwByYA3NgDsyBOTA7ZlY8A3QYrGmKN0AII2yLiGepc566996ZRy2F7jss9ayPn3LW3XdYFtl1X0q6Iw631WUeyllGfpE3tpdRPQTmwByYA3NgDsyBOTAH5sDcEsyKZ6AOgzVN8QYKYYRtCfEsd85T97wW86il0HnTcs/6+Cln3XnTisiu+3LSHXG4ra7wUM4y8ou8sb2C6qEY5mElyBx0DjrHMQedg85xzEHnoHMcc9A56BzHHHQOOscxB52DznHMQeegcxxz0DnoHMccdA46xzEHnb8/OiueS3QYrGmKd4kQRtiWEc9K5zydMmmDRy2F7jus9KyPn3LW3Xd4M7LrvpJ0Rxw+vt70UM4y8ou8sf0m1UMxzMNKkLkUdQ5tI+j8XWIObSMwxzGHthGY45hD2wjMccyhbQTmOObQNgJzHHNoG4E5jjm0jcAcxxzaRmCOYw5tIzDHMYe2EZjjmEPbCMxxzKFtBOY45tA2AnMcc2gbzWNWPIN0GKxpijdICCNsK4hnlXuezmmDRy2FnttZ5VkfT+XMP7ezOrLrvop0Rxxuq6s9lLOM/CJvbK+megjMgdnGrHiG6DBY0xRviBBG2N4knrfc8+ydNnjUUqgfe8uzPp7Kme/H3o7sur9FuiMOt9W3PZSzjPwib2y/TfVQDPOwEmQOOged45iDzt8fnRXP5ToM1jTFu1wII2yr/fLUpg0etRQal98mnnec83TOn++8XQTPO8TzM+c8dfME9+XMZFS+7xK7q3yVVu8ZWr1taFVFcZjhPQ/6lZFf5I1t+AvMgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYM4G5sAcmANzYA7MUWDOrN0SmANzYA7MgVn/BubAHJgDc2AOzIE5MAfmwNxSzPwuCFjTFO8tIYyw/Yx4YKt2xVNT997Ee67zzdRmynN5/Nwol8pb2d/X2yjPGm3/pSW+4vuVh3pQdf6LqOFSZmxnKQw2le4DHd5V/yrGj90z5t89+UTn1Vrn+7HBo3x/SvyOfNew7zK9wg/sKQpf2D76ZvmU9kOr9+t3R5/p33KKy/s/JL8fWNJ8ZMSr0HE/ozyyUX39QrMqivMRxf2gAG8FpclGbvX92OD92CirqvNz29dzfOSeo7aMytpK5/tLQ6OWaN82/X23b/ixte8b29fHbaydVZJ2iKv6jQ91+JeWsmUjt2X70NDsQ4OnUJyPo8bL+iGV9QNL3sUcix8U4c92DLf0MTqQjtEPPXH8yuD4laFLOYXN8RbM5nj7kSW+KsP7HsrA4yaWQuMt2FQ6HIO76V/F+Ll7xnx/9GudF/qjzw0e5fsL4nfku4Z9oz+CH9hTFH6YxtsvaD+04nb7pf4tp7i8n4/bTyxpPjXiYbz9kvLIRvX1C82qKM6nFPeTArwVlCYbudX3c4P3c6Osqs7vpGP5U/cctdynYLz9yNCoJdq3TX/f7Rt+bO17HI23jbWzStIOcVW/YRsnfLUtc47ymcFTKM7nUeNl/YzK+okl72KOxU+K8Gc7hlv6GH2MjlFf4/77Bsf7hi6qfdXocF9im0Rs7zpnq23wPQIcw+CAvxTFmVlbH3eqZlNtCN/BeIvK86ZhU2VY6bwMdfqa31HENvwpRtu3tDx8gy/D5XT37YhOvVVey5zzdu6s9MN/sLY29IO/FMWZo+udpgzfLBUUL+uQ0U/Z69rOEiqjyneVpeyIs6B9vU6LdFi1dXxncjXp+K5lP5ZCc9WlpOUi92XOH/MLiTNLftj3AmJ15LuGfWPchh/YUxR+h8ZtxIMe0Brs6hhfrMPMbqZbYaSrojiLLeXPRm7Lv8jgWWQwqzpZSu3sXRoDlntiWhyjEX9TFXG4b/PwrdH8N334u0pu8t27awWVwR1vXf+5iOouS7rAX4rifNRI/+n+mK/rP92XveHxjP5zuaXsiPM5tesvqH9Ev7OCdPzKsh9Lof5zEWn5hvsy5/vP+cSZJT/sex6xOvJdw77Rf8IP7CkK/4P6T8SDHtAa7Kr/RB/E7Ga6pUa6KoqzwFL+bOS2/G8YPG8YzKpOfkvt7CvqP5d4YloQoxF//xZxuG/z0J/Xqnz5u9du8j1/Hz9jYl3/+QbVXZZ0gb8UxYk61P3E9Z/uj/m6/tPXfICPW5XvN3NNsn/T33So12kdHVb9ozl/U/s3suzHUqj/fIO0nOu+zPn+cw5xZskP+36dWB35rmHf6D/hB/YUhTfsUB8X8aAHtAa76j/RBzG7mW6Rka6K4syzlD8buS3/XINnrsGs6mQ9amdoR4ppoSemeTEaLSeNEIf7Ng/9eSc+h3XYf/b2MybW9Z9zqe6ypAv8pSjO1o30n+6P+br+09d8gI9ble9CS9kRZ3tq1ztS/2jO39T+vSz7sRTqP+eSlrPdlznff75GnFnyw75fJVZHvmvYN/pP+IE9ReHO1H8iHvSA1rP1r+o/0Qcxu5nuDSNdFcV53VL+bOS2/LMNntkGs6qTXaid7UX953xPTK/HaLSENEKcpWTDtVnEV20dxw9ft/VwHarBuSPyxjZfm4Ftvlee2kyx31rmcz0f46KvawHtdLnMPg9lr6Zy+WqvcfXOdezh3D3/3MD8qOHS1Lkwwmsc8lQRD/ua46nsc6Oml32Ohcdh2TNVxMO+Znsq++tR08s+W/9yvwlGlZe+DfbN9VHVz59K/byH66J9FC/fX8gSB/ylKM69dK/uTM3G9+p4rPRwH6yPn/t9dfcsVxg6mPf7UhTnvALzXc4LnOgHkSffO0Tc8qi+z8K+NUZc7mfeKpAuihr2h+a9VG6DC4kJNj7/nGvxPZ98m2miqOFxYfbDlWS7T/9yPwJbReTl/3oKnq++RYzzjXJ5unbR4HoN8jZ9cz3cT5qtNmy+7p9wP4G8sb2KGG3/YeHrv67i/lNjNfEgPII0W2HY/PQpdYxmP4Bt2zMEfA1ihSeeuP8HW0E8CD9Ami03bD7vnS83GLG9jBih33Li8XUfM+6/IZcTD8IPkmZLDZvPewVLDUZsLyFG6MfXodw/V1HHs8zgMX1XUvgh0myxYfN5nmjen8Y23/uHfnwP39c9zyUGj+mbn0UYSZotMGy+znNs96Swzff7zGcPWvK5B77/+DBpNs+w+To/sl2HxvYcYjTvN7bkvU6+5/AIaTbbsCnG1zwxzjYYsf0aMUK/2cQz2xPPHIPH9F1J4UdJs1cNm2J8xROjeU0T268QI/R7lXh8XdN8zeAxfVdSuDdpNsuwKcaZnhhnGYzYnkmM0G8W8czyxPOKwWP6rqRwP9JshmFTjNM9Mc4wGLE9nRih3wzimeGJZ6bBY/qupPAFpNk0w6YYp3pinGYwYnsqMUK/acQzzRPPdIPH9F1J4QGk2cuGTTFO8cT4ssGI7SnECP1eJp6XPfFMNXhM35UUHkiaTTZsinGSJ8bJBiO2JxEj9JtMPJM98UwxeEzflRS+hDSbaNgU4wRPjBMNRmxPIEboN5F4JnrimWTwmL4rKTyINBtv2BTjOE+M4w1GbI8jRug3nnjGe+KZYPCYvispPIQ0e8mwKcaxnhhfMhixPZYYod9LxPOSJ55xBo/pu5LCl5NmLxo2xfiCJ8YXDUZsv0CM0O9F4nnRE89YgydJ33HXiJPwHXetNQnfcdcsk/Add+0vCd9x19CS8B13LSoJ33HXdJLwHXdtJAnfcdcYkvAdd66eZL+GZ8paol+D75bo1+C7Jfo1+G6Jfg2+W6Jfg++W6NfguyX6NfhuiX4NvluiX4PvQv2aw+eQaqui+uVH5MvXPJmXLIXhj3nKhfG8JIxnrDCeU4TxLBbGs0gYz93CeI4QxrO7MJ4HhfHcKIxnf2E82wjjuUwYz4bCePoL41lXGM8jwnjOFsYzTRjPVGE8xwvjmSuM5y1hPA8L47lNGE83YTw7C+PpJIznx8J4thDGUyOM5xJhPO2F8ZwvjCcljOc0YTzzhPHMEcZzrzCeo4TxdBbG85AwnpuE8RwojGc7YTxXCOPZWBjPnsJ4LhTGkxbG86gwnnOF8UwWxjNJGM+JwnhWCONZKYznDmE8hwrj2VUYz3XCePYRxrOVMJ5BwnjWF8bTWxhPG2E8ZwjjeVUYzyvCeI4RxjNSGM/NwniywnjuE8ZzlTCeHYTxbCqMp6swnouE8VQK4zlPGM94YTzjhPGcLIxnqTCeJcJ4fiCM53BhPHcJ47lBGM9+wniqhfEMEcazgTCefsJ4ugjjqRDGc5YwnhnCeKYL4zlOGM9CYTzzhfHcKoznEGE89wvjuUYYz07CeDYXxnOxMJ52wnh6CONpJYznVGE8C4TxvCGM5x5hPEcK4xkqjOcAYTzbCuNJ4juHxfBsJIznAmE86wnjOUcYz17CeF4WxjNFGM8ewnhOEMazWhjPKmE8twvj6S6MZxdhPCOE8VwrjGdLYTyXCuPpIIynpzCe1sJ4aoXxnC6MZ7YwnteE8RwtjOcnwngOEsazvTCeK4XxbCKMZ4AwnrbCeH4ojGeiMJ4JwnhOEsazXBjPMmE8dwrjOUwYz27CeB4QxnO9MJ59hfFsLYwnI4xnsDCejsJ4+gjjWUcYz5nCeGYJ45kpjOdYYTyvC+O5RRjPwcJ4dhTGc7Uwns2E8ewtjGegMJ4qYTxlAnjSxBGRDftfJFu5kVbNT/p0qt8/RtvLKc1zOtzKkvcYsj2vw89Z0rJOY6gsWR3OrN2S14l9ZWkb/iqJ4zkhPFXCeAYK49lbGM9mwniuFsazozCeg4Xx3CKM53VhPMcK45kpjGeWMJ4zhfGsI4ynjzCejsJ4BgvjyQjj2VoYz77CeK4XxvOAMJ7dhPEcJoznTmE8y4TxLBfGc5IwngnCeCYK4/mhMJ62wngGCOPZRBjPlcJ4thfGc5Awnp8I4zlaGM9rwnhmC+M5XRhPrTCe1sJ4egrj6SCM51JhPFsK47lWGM8IYTy7COPpLozndmE8q4TxrBbGc4Iwnj2E8UwRxvOyMJ69hPGcI4xnPWE8Fwjj2UgYz+XCeLYVxnOAMJ6hwniOFMZzjzCeN4TxLBDGc6ownlbCeHoI42knjOdiYTybC+PZSRjPNcJ47hfGc4gwnluF8cwXxrNQGM9xwnimC+OZIYznLGE8FcJ4ugjj6SeMZwNhPEOE8VQL49lPGM8NwnjuEsZzuDCeHwjjWSKMZ6kwnpOF8YwTxjNeGM95wngqhfFcJIynqzCeTYXx7CCM5yphPPcJ48kK47lZGM9IYTzHCON5RRjPq8J4zhDG00YYT29hPOsL4xkkjGcrYTz7COO5ThjPrsJ4DhXGc4cwnpXCeFYI4zlRGM8kYTyThfGcK4znUWE8aWE8Fwrj2VMYz8bCeK4QxrOdMJ4DhfHcJIznIWE8nYXxHCWM515hPHOE8cwTxnOaMJ6UMJ7zhfG0F8ZziTCeGmE8Wwjj+bEwnk7CeHYWxtNNGM9twngeFsbzljCeucJ4jhfGM1UYzzRhPGcL43lEGM+6wnj6C+PZUBjPZcJ4thHGs78wnhuF8TwojGd3YTxHCOO5WxjPImE8i4XxnCKMZ6wwnpeE8ZQL4/lRgjz4fy3k/bzBo3w/6953RuX7jKcyjdZ5tdb5gh/+UhTnMf3xHlyT5IXzAif+owx5VpJWiFtu0XGN1nI0bWfXssx99MJaFpNvn0YWle+oteetMQ2mVgjDV1P22+I+Q2leMOKtMbbVf7qgjhA3RfvHFGgXFZG//+XDu/DoH+YbjOq/3fB8+0L9y/+ddx8xPu+JEb6QN7afJ0bY5hPPfE88bxmavWX4Vjz4JsRc0gz77yfGhZ4Y4Qt5Y3shMcL2FvG85YlnlaHZKsO34sF3S1eTZtg/ghjnemKEL+SN7bnECNsq4lnliWelodlKw7fiwX+1rCDNsP8BYlztiRG+kDe2VxMjbCuJZ6UnnmWGZssM34oH56PLSTPsf5AYV3hihC/kje0VxAjbMuJZ5olniaHZEsO34sEzJUtJM+x/iBiXe2KEL+SN7eXECNsS4lniiWeRodkiw7fiwXtGi0kz7B9JjEs9McIX8sb2UmKEbRHxLPLE84ah2RuGb8WDe1MLSDPsf5gYF3tihC/kje3FxAjbG8TzhieeOYZmcwzfigfX9+eRZtj/CDEu8MQIX8gb2wuIEbY5xDPHE89rhmavGb4VD54Znk2aYf+jxDjPEyN8IW9szyNG2F4jntc88bxiaPZKgr5nGr5nJuh7uuF7eoK+pxq+pyboe4rhe0qCvicZvicl6HuC4XtCgr7HGb7HJeh7rOF7bIK+0Zcgb7NvUX0d3hnFu75p2t+bGGd7YnzNYMT2bGKE7RXiecUTz0yDZ6bhW/H00+FZpBn29yPGVz0xxtXrq8QI20zimemJZ7rBM93wrXjwLfcZpBn2X0CMszwxxtXrLGKEbTrxTPfEM9XgmWr4Vjz4f79ppBn2DyDGGZ4Y4+p1BjHCNpV4pnrimWLwTDF8K56BOvwyaYb9A4lxmifGuHqdRoywTSGeKZ54Jhk8kwzfigfPRU8mzbD/EmJ82RNjXL2+TIywTSKeSZ54Jhg8EwzfigffEphImmH/IGKc7Ikxrl4nEyNsE4hngieecQbPOMO34sH3JceTZtg/hBgnemKMq9eJxAjbOOIZ54lnrMEz1vCtePAfHy+RZth/OTGO98QYV6/jiRE28POzCPuSDWW4nmxIeyrZkPdpVD4fxzq3PyxlxnaWwtz3+GijnsqZUWWabJTJ1qchzg+onC3Vf7EW1c5813T2Ndaq/1ZYj3Q1xysul4f5Ua1qyxgvsRRqyzxfcz/H7ZnheVdTeHjO7WNu5mkun+H5d0Xk9pg1z1ls5wiIwwwtdZ4XmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sCcDcyBOTAH5sAcmKPAnFm7JTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYA7MgTkwB+bAHJgDc2AOzIE5MAfmwByYA3NgDsyBOTAH5sAcmANzYM7zvKzDYE1TvJeFMMI2jXhgq3bFU5PJcDmd5ZupzZTn8phllEvlreyz9TbKs0bbX7XEV3yveagHVeevRA2XMmM7S2GwqXRzdHiM/lWMC9wzZhTPIp1Xa53vAoNH+V5M/I5817DvMr3CD+wpCl++WfTNspj2Q6vZ9bujJfq3nOLy/nnkd44lzRtGvAoddwnlkY3q6xeaVVGcNyjunAK8FZQmG7nVd4HBu8Aoq6rzfpvVc7zhnqO2jMraSuf7qqFRS7Tv2Rb9fbdv+LG177s2q4/bWDurJO0QV/UbaK+vWsqWjdyWbZ6h2TyDp1CcBVHjZZ1HZZ1jybuYY3FOEf5sx3BLH6NX0TE6xhPHawYHtuGvnMJNHW/nWOJ76mdquP1jKTTegk2lg+bj9C+PednIbX+0VOeF/mixwaN8LyN+R75r2Df6I/iBPUXhUTTeLqP9Zv+pluX6t5zi8n7uBxdY0pj9Isbb5ZRHNqqvX2hWRXH4uF5QgLeC0mQjt/ouNngXG2VVdf4gHcse+hTreGv2ny3Rvmdb9PfdvuHH1r5n0HjbWDurJO0QV/UbaK9zLGXLRv7mElnaZi3j4vD8Pa6si6isCyx5F3MsLijCn+0Ybulj9Fk6Rsd54njD4MA2/JVTuKnj7QJLfF9zF27/WAqNt2BT6aD5WP3LY142ctsfrdR5oT9aZvAo3yuI35HvGvaN/gh+YE9ReBWNtytov+38dZX+Lae4vJ/7wcWWNGa/iPF2FeWRjerrF5pVURw+rhcX4K2gNNnIrb7LDN5lRllVnc+jY9lDn2Idb83+syXa92yL/r7bN/zY2vcXNN421s4qSTvEVf0G2usCS9mykb+5RJa2Wcu4ODx/jyvrUirrYkvexRyLi4vwZzuGW/oYfZuO0aWeOMzz/iWGLuUUNsdbMJvj7XJLfFWG2R7KwOMmlkLjLc9TcQyO17+KcbV7xnx/9JbOC/3RaoNH+Z5L/I5817Bv9EfwA3uKwtHm0TfLXNoPrbjdzte/5RSX9/Nxu9KSZoURD+PtfMojG9XXLzSrojgrKO7KArwVlCYbudV3tcG72iirqvO/0LG8wj1HLfcpGG+XGxq1RPu26e+7fcOPrX1vtHl93MbaWSVph7iq37CNE77aljlHWWXwFIqzOmq8rKuorCsteRdzLK4swp/tGG7pY7TV5vUc4z1xzDY4sA1/5RRu6ni70hLfUz9Tw+0fS6HxFmwqHTR/Xf/ymJeN3PZHC3Ve6I/mGjzK9wvE78h3DftGfwQ/sKcovAeNty/QfrP/VMvz+rec4vJ+7gdXW9KY/SLG2+cpj2xUX7/QrIri8HG9ugBvBaXJRm71nWvwzjXKquq8mo5lD32Kdbw1+8+WaN82/X23b/ixte/uNN421s4qSTvEVf0G2utKS9mykb+5RJa2Wcu4ODx/jyvrW1TW1Za8izkWVxfhz3YMt/QxWkPH6OueOFYYHNiGv3IKN3W8XW2J72vuwu0fS5mxnaUw2FQ6aD5Z//KYl43c9kejdF7oj14weJTvZ4jfke8a9o3+CH5gT1H4HBpvn6H9tvPX0fq3nOLyfu4H51rSmP0ixtvRlEc2qq9faFZFcfi4nluAt4LSZCO3+r5g8L5glFXV+XF0LHvoU6zjrdl/tkT7tunvu33Dj619D6LxtrF2VknaIa7qN9BeV1vKlo38zSWytM1axsXh+XtcWRdSWeda8i7mWJxbhD/bMdzSx+h5dIxO9sRhnvdjG/5U++qkw88S2+XE5v6eUG3+GH6T/GWJg5/jQZwbaurjXq3ZVBuaove/TOWZZNhUGSY6L0OdvvCFvLENf5Wk9SSvPLWZNJUZS6G5yUTimeScJ1Pjp5w9M+10uaYY5UDZq6lcvo6ruHrnud0UD77T5ANLoTqeYuFZ45CninjYl4/rdarsE6Kml328hcdh2TNVxMO+XvRU9nFR08sOhipK55kx3/90Nvyr/nokjSUe+uE+3BdgLAEH/KUozik0ljxmGUv4+VoP7biPH/3rxtQXDB3GG/WRojhP6bK3j7692OYw6F+RZyXpi7jqPMscA9cYcbn/erlAuihq2M+aYz237UnEBNsEsk2w+J5Mvs00UdTweDP79yra9yP962scLXScT7LwlAvjOUUYz93CeI4QxrO7MJ4HhfHcKIxnf2E82wjjuUwYz4bCePoL41lXGM8jwnjOFsZzvDCeh4Xx3CaMp5swnp2F8XQSxvNjYTxbCOOpEcZziTCe9sJ4xgnjOV8YT0oYz2nCeO4VxnOUMJ7OwngeEsZzkzCeA4XxbCeM5wphPBsL49lTGM+FwnjSwngeFcZzrjCeE4Xx3CGM51BhPLsK47lOGM8+wni2EsYzSBjP+sJ4XhLG01sYz1hhPG2E8ZwhjOcYYTwjhfHcLIwnK4xnB2E89wnjuUoYz6bCeLoK47lIGE+lMJ7zhPGcLIznB8J4DhfGc5cwnhuE8ewnjKdaGM8QYTwbCOPpJ4ynizCeCmE8ZwnjOU4Yz63CeA4RxrOTMJ77hfFcI4xnc2E8FwvjaSeMp4cwnlbCeE4VxnOPMJ4jhfEMFcZzgDCebYXxXC6MZyNhPBcI41lPGM85wnj2EsazhzCeE4Tx3C6Mp7swnl2E8YwQxnOtMJ4thfFcKoyngzCensJ4aoXxtBbGc7ownqOF8fxEGM9Bwni2F8ZzpTCeTYTxDBDG01YYzw+F8ZwkjOdOYTyHCePZTRjPA8J4rhfGs68wnq2F8WSE8QwWxtNRGE8fYTzrCOM5UxjPscJ4bhHGc7Awnh2F8VwtjGczYTx7C+MZKIynShhPmQCedPTt70Pzt/HHkg3ftB1HNnwH9wdkK7f4wLMh/H8C+H4N8lDj56Wdvs1QTmnwTd9WFoZJFtaXLWmT0J19ZWkb/iqJ42UhPFXCeAYK49lbGM9mwniuFsazozCeg4Xx3CKM51hhPGcK41lHGE8fYTwdhfEMFsaTEcaztTCefYXxXC+M5wFhPLsJ4zlMGM+dwnhOEsbzQ2E8bYXxDBDGs4kwniuF8WwvjOcgYTw/EcZztDCe04XxtBbGUyuMp6cwng7CeC4VxrOlMJ5rhfGMEMazizCe7sJ4bhfGc4Iwnj2E8ewljOccYTzrCeO5QBjPRsJ4LhfGs60wngOE8QwVxnOkMJ57hPGcKoynlTCeHsJ42gnjuVgYz+bCeK4RxnO/MJ6dhPEcIoznVmE8xwnjOUsYT4Uwni7CePoJ49lAGM8QYTzVwnj2E8ZzgzCeu4TxHC6M5wfCeE4WxnOeMJ5KYTwXCePpKoxnU2E8VwnjuU8Yzw7CeLLCeG4WxjNSGM8xwnjOEMbTRhjPWGE8vYXxvCSMZ31hPIOE8WwljGcfYTzXCePZVRjPocJ47hDGc6IwnnOF8TwqjCctjOdCYTx7CuPZWBjPFcJ4thPGc6AwnpuE8TwkjKezMJ6jhPHcK4znNGE8KWE85wvjGSeMp70wnkuE8dQI49lCGM+PhfF0EsazszCebsJ4bhPG87AwnuOF8ZwtjOcRYTzrCuPpL4xnQ2E8lwnj2UYYz/7CeG4UxvOgMJ7dhfEcIYznbmE8pwjjKRfG8yMLz1hPPPg+LvLG9li/WmRUvlOc51uTL9NEnVdrnS/44S9Fcc7VH5/DNQFeOC9wmt8Y5uclJpJm7suWqU0bPGCMDMbIKK/iedE5T00mTT6awvMi8bzgnCdT46ecdW31eZ3XGof5Kq3GGFpNMbSqojjPk35jPOhXRn6RN7bhLzAH5sAcmANzYA7MgTkwB+aWYlY8OB8Ca5riTRTCCNsLxIhvcOE8Up2rjtu6nne8c96a/PkG+8sSB/ylKE51TX3cSZpNne9OMPSN09zHOV4hzeGvksrD55wTPfGMN3jGW7RAuDpyV58q3+ec55upLbfUp8pb2Z/V2/C7Rtuft8T3ddyp9oa6xlLougPYVLpndJivbz3tnjF/rD2l88Kx9rTBo3w/SfyOfNew7zK9wg/sKQqvwh8wULwUafVs/e7oCf1bTnF5/2jy+4wlzShLvDKKE2kdUL/QrIrijKK4zxTgraA02citvk8bvE8bZVV1Po/68+c8cZhjNrafIw2e9eA7TT6wFDoGwVBF6cb5Zcxfn+xi+Ff18guql2ec+60bZ9lflji4vSLOF5n6uB/QOIs+mHV+jvLF/pdIR/f9bU3nYvvbMcTzvHOeuuu8HsaVDLfDCmf5du7FfSGYXzC0qors/Zf79lm433jG4tudFl32Ur5HN0GL0Rae0QlrMdri250WXTsp36OaoMUoC8+ohLWAv1JkrjDCbnx3sc4DbFo8beHxMOcsqMXTFt8OtejKc85CWjxl4XkqYS14blwM8zMCmCuMsBvftRk+RyikxZMWnicT1uJJi2+Hbbl3ofMR1uIJC88TCWvxhMW3Qy36KN+PN0GLxy08jyesxeMW3w7H687K9/81QYv/s/D8X8JawF+xzE8JYK4wwm58d9lH+f5pE7T4qYXnpwlrAX/FMj9ZgsxPlSDz6BJkfrwEmUeVIHMp6vyMAGZ1Tew5HT6z2idPzV5pgweaRQZjZDCmKczXuR5zzpjJcP08Rr6Gu/dVY2sv2B7u1XdNZ5VvX/dlyp/T9NJ54TpsX0uZcL/O9T2YXpQv3yeEPUXh06rr45r3E3Hcgl1dGx6mw8xupvupka6K4gyzlD8buS1/X4Onr8Gs6uTo6noOH22rKe1aPfuNY3lD0sXDPZtOqv94KWq4FOp3+D6Oh2ebazyVM3/sPWaU6SWjTFUUh+8FeehL8+3xOYMH249RPRTD/IMSZB4rgNnTcwt7eZq7dFL/p7Me6fpTQ1+Ui791gW9W8jyjN5Xf1xgeN8caToxoAzx/8fV81FiDx/RdSeF+pNkww+ZpjpBnHGYwYpvHW+jH4+YwTzzDDR7TN4//F5BmvQybz7G9l8GI7fHECP16EU8vTzxxc41exIPwANJsgmHz+ZzYBIPRfI6On1ubQDwTPPHEPbc2gXgQHkiaTTJsinGyJ8ZJBiO2JxMj9JtEPL7e3zTfBzR9V1L4EtJsimFTjC97YpxiMGL7ZWKEfvyOoId3Fgu+YzqFeBAeRJpNNWyKcZonxqkGI7anESP0m0o8Uz3xvGzwmL4rKTyENJtu2BTjDE+M0w1GbM8gRug3nXime+KZZvCYvispfDlpNtOwKcZZnhhnGozYnkWM0G8m8cz0xDPD4DF9V1K4RwL6xLV71gfhwcTzqnOeuuf4XtF54foRfL9Kvl/TYdfXj+ArpfMGy2vke477cuffM58dNVwKXaOYQzyvO+epu0bhvpx1z/vNJXY3+XbNt5t5hlazDa2qKA4zzPOgXxn5Rd7Ynmfx7VCL/PN+85ugxXwLz/yEtYC/YplHC2CuMMJufHfZW/l+owlavGHheSNhLeCvWOanSpD5iRJknleCzI+XIHNoz81jrjDCbnx36aJ8L2iCFgssPAsS1gL+imV+SgBzhRF247tLrfK9sAlaLLTwLExYC/grlvmJEmSeV4LMTwpgrjDCbnx3yd9rX9QELRZZeBYlrAX8Fcs8WgCzuh6AawPV2/jkqck/r8A80CwyGCODMU3hOaTZYueMdc9Jwddi8rXEva8aW3vB9hKvvmtqVb7L3Jcpf71iuc4L17mWWcq0QoddX+daTvmWkR/YUxTecpv6uIgHPWbrMNjVtcKlOszsZrpFRroqirPUUv5s5Lb8ywyeZQazqpP16Tj30baa0q7Vc1I4ljvqX6UxrksOJpvtGq2H/jL/DiWO+fKo4TXaRZFPzeqOG+iR0vkuMXynKM5u1HZRx610usVGOhVnqZE30vB14aVG3rbvmPq5ftopw+VobZSDdUGcPRthdN+3dcp4unZcY6ufly1lR5zO29Tr1EWH1RiJupxCOh5q2Y+l0Ni7jLT00Ffl63slcWbJD/t+k1gd+a5h3xgn4Af2FIW707GGeNADWoNd9VcYX5jdTDfLSFdFcZZbyp+N3JbfHLdWGMyqTvahdnao1zGj4dhtarSYNEIcfv7P17MP5rOQ4ODvbqP+2xhxkDZFcY5tgT6L+xYcZ2BbRoyIc2IjjEs9MHqaizZoU+aYymVHnNOovZ9B/SbqdBbp2NeyH0uhfpXngCvdlznDfQ3qe6XF9ypideS7hn2jX4Uf2FMU7kP9KuJBD2gNdtWvoo9idjPdYiNdFcVZYSl/NvIzriDvlQazqpOzqZ31pX7V1zNTK2I0eow0QpyZpO0SIx3ic/+HempjxEFavr4wsJG+BWldfhfdV59lO89FmXkuhziDGyn7cg+MfsresE2hX51iKTviXEnt/WrLfHQx6Xh7M+ernudMGe5rUN+2+dpqYnXku4Z9o1+FH9hTFL6N+lXEgx7QGuyqX0UfxexmullGuiqKs9JS/mzkZ1xB3m8azKpOrqV2djv1q76ed1sZo9ES0ghx+B0b85laXPPgfhX11MaIw/87gjj3NdK3vOKp/DxWZGkb/vh6zj5kA/e+ZINm+5ENx9X+ZEOfcgDZoPGBZEP7OIhsPObDhvZzMNne0uFDyPa2Dncj2890uDvZ3tHhQ8n2rg4fRrb3dPhwsv1ch48g2y90+Eiy/VKHjyLbr3T4aLK9r8PHkO0DHT6WbB/q8HFk+0iHjyfbxzp8Atk+0eETyfapDp9Ets90+GSyfa7Dp5Dt1zp8Ktm+0OHTyPalDp9Ott/o8Blk+60On0m23+nwWWT7vQ6fTbY/6PA5ZPujDp9Ltj/p8A/J9mcdPo9sf9HhH5Htrzp8Ptn+psM9yfZ3He5Dtn/ocH+yfaXDF5Ltnzp8Edn+pcMXk+3fOnwp2f6jw5eR7b86fAXZvtbhK8m2RoevItv/dPhqsmFgv4ZsZdr2Y7KVa9u1ZGulbdeRLaVt15OttbbdQLY22nYj2dbRtqFkq9C2m8i2rrb9hGzradvNZEtr2y1ka6ttt5KtUttuI1uVtt1OtnbadgfZ2mvbnWTroG13kW19bbubbB217R6ybaBt95JtQ23roW1qXNlY26ojt+PKRjTRqybf8Kd+NtHhNkYcpE1RnI8LjI9qjMbY9ArZMDbxtSeMTTy+Y2xaTjaMTXxtD2MTn5dibOI5VVaHV5ENY9NqsmFseotsGJveJhvGpp+RDWPTO2TD2PQu2TA2vUc2jE0/JxvGpl+QDWPTL8mGselXZMPY9D7ZjtXhD8iGselDsmFs+ohsGJs+JhvGpk/IhrHpU7JhbPqMbBibPicbxqZfkw1j0xdkw9j0JdkwNv2GbBibfks2jE2/IxvGpt+TDWPTH8iGsemPZMPY9CeyYWz6M9l+pMN/IRuOeRxbyobx6q8UD+PV38iG8ervZMN49Q+yYbz6imwYr/5JNoxX/yIbxqt/kw33CqeQDWPYf8iGMey/ZMMY9jXZMIatIRvGsP+RDWNYRFphDCsjG8awcrJhDGtFNoxhKbLdoG2tyYYxrA3ZMIatQzaMYRVkwxi2Ltkwhq1HNoxhabJhDGtLtm/GMLJhDKsiG8awdmTDGNaebBjDOpANY9j6ZLtH2zqSDWMYxrQKsmUjt+PWWJ0XzoewDX8+fQ83fA9P0Hdfw3ffBH2b39sZn6DviYbviQn6nmz4npyg77jz/iR8TzN8T0vQ9wzD94wEfYe+JfQtSfkOfYu8vqWSwvfpX3WP5B7Dphjv9sQIX8gb24WuJ1RQ2DVPx7KGPLZrGQjfT5phzng/MWJu6ZpxfYMR2/BXGX17LltBYdc8d0cNeUzffJ1oBGmGOfgI0qy9J8a7DEZstydG8/pWBYVd83Qw6tB2bQ3hB0izOw2bYmznSbM7o4aM2G5HmpnXCSso7JqnvaGZ7Rolwg+SZncYNsV4uyfGO6KGjNgudL21gsKuedoZmtmu9SL8EGmGc+qHiLHSUzurMhixXUntzDzXr6Cwa57bo4Y8pm++jj6SNMM1ipGkWVtPjLcZjNhuS4zm9f8KCrvmqTTq0HbvAeGHSbNbDZtiTHvS7NaoISO206SZeR+lgsKuedoamtnu4SD8CGl2i2FTjDd7YrwlasiI7UL3oyoo7JonbWhmuxeG8KOkGa45PkqM63pqZ+sZjNhel9qZeS20gsKueW6OGvIk6Xus4Xtsgr7jvlOZhO+47z0m4Tvuu4lJ+I77/mASvuO+45eE77jvpiXhO+67ckn4jvs+G/v+SeTcdy336ViMzW98RcTgq9/3VM7887a4r+bwGeZ83d1kaAU9UQ7bvb0KsrnUr4z8Im9sw1+xzLtGLc/M7aI6ctsu1nHfjmvbRXXfEoeu6xj6crmGetI07hrc0AR8x13LSsJ33DWhJHzHXVtJwnfcNYokfMed6yfhO+6cOQnfceeeSfiOO4dLwnfcuVASvuPOhZLwHXculITvuHOhJHzHnQsl4TvuXCgJ33HnQkn4jjsXSsJ33LlQEr7jzoWS8B3mTGHOlJTvMGcKc6akfIc5U5gzJeU7zJnkzZk4rN7BxvUn/lYP3k8oc8eWfzf/Rp0X/t8CHG3oWmjK+TW4Tj3Vte3W1N+jbJGhFZYU8dwQueapu7btvpx11zCvp3p0k+9e+W/utTLGS+jJ77wgDjO08nSfJGXwYLsVtd1imB8vQeYnBDBXGGE3vrvmv095XdS4Fub7WBVkS0oL+CuWeVRUesxPlyDzMyXI/FQJMo8WwFxhhN347tJTubk2alwLxGGGaxPWAv6KZX6iBJkfL0HmpwQwVxhhN77rvrlW3oQ5TLmFpzzhOUw5zbuKYX6qBJmfLEHmJ0qQ+fESZC7F9jyqBJmvC8yJMD8hgLnCCLvx3bWryrKsCVqUWXjKEtaijOqvGGY+XysV5oUCmCuMsBvftb1Vlj+OGtfC/IZOBdmS0uIbhiKZeQwsFebrS5D58RJkfqIEmVuV4DHIc7pSYX66BJmfKUHmUuyfR5cg83UlyPxECTKX4jhYiu1ZQr9RYYTd+O7SqwyCNKJFZOGJEj5Hiei8qhjmeSXIPLoEmR8vQeanSpA5tI1kmEeVIDOfs4W24Y+5FPuNN0qQuRTb8xNR6TGX4rxOwjFYYYTd+O6U931N1LgW5nfoK8iWjZLR4hpCKIa5TACzeo78Rh2u3t4nT6deaYMHmkWGZljAkGZe0ux/zhkzGa4f5K98Xe3el7WNY/tqr7479VT5rnFfpvyzS/hfCfx/4BpLmf6rw2WO9byS8i0jP7CnKLzl9vVxEQ964LgFu/o+Gv4bg9nNdKg//v8MxLnKUv5s5Lb8awyeNQazqpP16Tj30baa0q7VfxThWD6AdBnqnCe8i8y+w7vI/n2Hd5Hr8g3vIvv3Hd5Frss3vIvs33d4F7ku3+/b91swR2+JORN8t8ScCb5bYs4E3y0xZ4LvlpgzwXdLzJnguyXmTPDdEnMm+G6JORN8t8ScCb5bYs4E3y0xZ4LvlpgzwXdLzJnguyXmTPDdEnMm+G6JORN8t8ScCb7DnMm/7zBnCnOmpHyHOVOYMyXlO8yZwpwpKd/f9zkT8g735vz7DvfmWm7OhLzDvTn/vsO9uZabMyHvcG/Ov+9wb67l5kzIO8yZ/PsOc6YwZ0rKd5gzJT9nCtfPW65fC9fPk/Mdrp+3XL8Wd/28KqpfyhPg4SVLYRvPX4XxbCOMZ4IwnonCeO4VxoNxXQrPL4Xps64wnp2F8dwmjKetsPb8iTB9LhHG014YzyvCeB4SxvMbYTwbC+PZUxjPo8J4Vgnj+bMwnq2E8YwRxjNcGM97wnh6C+NpI4xnB2E804XxzBDGc58wnjuF8bQTdr7zoTB9ugrjqRTGM0sYz0xhPL8WxjNEGM8GwnhWCOP5gzCezYXx/EwYTythPH8TxrOtMJ5JwngmC+O5RxjP3cJ4fiWM5wJhPOsJ49lFGM8IYTy3CuNJCzs//VSYPh2E8dQK41ksjOe3wng2EcazWhjPX4TxbC2MZ5gwnr7CeDLCeH4ujGcdYTw7CuO5QxjP7cJ4PhLGs7cwnoHCeKqE8ewujOdBYTxfCOPZUBjPI8J4VgrjeVgYT40wnk7CeP4ojGcLYTzvCONJCePpLIxnO2E86wu7ntlBGM/7kSyetDCeDYTV167C9LlFGA/eTZXC85kwnkHCeNYXxrNEGM9IYTy/E8azqTCet4TxVAvj6SWMZ7wwno2EzTd+IUyffsJ4ugjjqRDGs5MwnvuF8VQJO94rhfF8HMniaSeM50thPJcL49lIGM+bwnj2EsazhzCePwnj2VIYzzhhPGOF8bwrjKe1MJ7thfFMFcYzTRjPXcJ42gubr34gTJ8BwnjaCuP5WhjPbsJ4HhDGc5Mwns+F8XQUxrNcGM/vhfFsJoznbWE8ZQJ40sQRkQ37byJbuZFWPW/fp1P9/v9pezmluUaHW1ny/h/ZbtThayxpWaf/UVmyOpxZuyWvE/vK0jb8VRLHNUJ43hbGs5kwnt8L41kujKejMJ7PhfHcJIznAWE8uwnj+VoYT1thPAOE8XwgjAfXW6Tw3CVMn2nCeKYK49leGE9rYTzvCuMZK4xnnDCeLYXx/EkYzx7CePYSxvOmMJ6NhPFcLoznS2E87YTxfCyMp1LYfLVKGA+eh5TCs5MwngphPF2E8fQTxvMLYTwbCTvexwvTp5cwnmphPG8J49lUGM/vhPGMFMazRBjP+sJ4Bgnj+UwYz83CeG4RxrOrMJ4NhM030sL0eV8YTwdh9bW+MB58T0YKT2dhPClhPO8I49lCGM8fhfF0EsZTI4znYWE8K4XxPCKMZ0NhPF8I43lQGM/uwniqhPEMFMaztzCej4Tx3C6M5w5hPDsK41lHGM/PhfFkhPH0FcYzTBjP1sJ4/iKMZ7Uwnk2E8fxWGM9iYTy1wng6COP5VBhPWtj1zFuF6TNCGM8uwnjWE8ZzgTCeXwnjuVsYzz3CeCYL45kkjGdbYTx/E8bTShjPz4TxbC6M5w/CeFYI49lAGM8QYTy/FsYzUxjPLGE8lcJ4ugrj+VAYTzth56d3CtPnPmE8M4TxTBfGs4MwnjbCeHoL43lPGM9wYTxjhPFsJYznz8J4VgnjeVQYz57CeDYWxvMbYTwPCeN5RRhPe2E8lwjj+UQYT1th5zu3CdNnZ2E86wrj+aUwno7C2vO9wvSZKIxngjCebYTx/FUYT7mF5yZPPDdG9UuWtm/yq0VG5Zsq81Omq3VerXW+4Ie/FMUZpQcfzKl44bzAOVSHub6gFeKWW3Rco7UcStvZJpa5TyML+16HfMMXl/eFAuW1cWe1HXndSPy8XUZpELeC/BZTXrNOTQPztSKGq8nvjcTfTL/f4lBlxNiH4xfbNybg++6ooe+7o+R8dzDK3SHBcrc3fLdP0Hc7w3e7BH3fbtQ3tpPwXWmUuzLBcrc1fLdN0Hfa8J1O0PfNRn1jOwnfYw3fYxP0PdzwPTxB330N330T9D3e8D0+Qd8TDd8TE/Q92fA9OUHfMw3fMxP0Pc3wPS1B3zMM3zMM3zz3w/f7MWfFvNn1nPUqnRfPWXmOjv2/aOKcdTfSrpzyKjRn3c3wy1y2uSWnV8tQI71trpw1ePgcgLf5fIx5biSeoRaeoRS+ySiDGTbZWL+rDN7G5vytKQ7SqvZyJeWT1eHMWi01PdNUNixlxnaWwlcSzxrnPJkaP+WsOy/+L7G7ybdLvg+4wtDqJkOrKorDDFd40K+M/CJvbF9h8e1Oi66dle/LmqDFZRaeyxLWAv5KkbnCCLvx3WUv5fs/TdDiPxae/ySsxX8svh1q0Uv5ntIELaZYeKYkrMUUi2+Hx3VG+R7cBC0GW3gGJ6wF/BXLfIUA5goj7MZ3bb7+Lm2CFpdaeC5NWAv4K5b5CgHMFUbYje8ufZTvfzdBi39beP6dsBbwVyzz4BJk/q8A5goj7MZ3l/xc7l9N0OJfFp5/JawF/H0fmAcLYK4wwm58d+2qfF/cBC0utvBcnLAWF1t8Ozz+9lG+L2qCFhdZeC5KWAv4K5b5CgHMFUbYje8ueyvf/2yCFv+08PwzYS3gr1jmwSXIfKkA5goj7MZ31y7K91dN0OIrC89XCWsBf8UyXyaAucIIu/HdtVb5vrAJWlxo4bkwYS0utPh22H/m23L/JmjR38LTP2Et+lt8O9Sip/L9jyZo8Q8Lzz8S1gL+imW+tASZ/yWAWd3Pu1GHb9nFJ09Nr7TBA80igzEyGNMU5vtHf3fOmMlw/fydfPVx76vG1l6w3cer75qeKt/z3Zcpf62wh84Lz3mebynTj3S4zLGePSjfMvIDe4rCN+1SHxfxoAeOW7Cr50l76jCzm+n+YaSrojg9LeXPRm7Lf77Bc77BrOrkSjrOfbStprRr9cwAjuUtSZernPM0fD4UeWP7qgR83x019I3tJHx3MMrdIcFytzd8t0/QdzvDd7sEfd8eNfSN7SR8Vxrlrkyw3G0N320T9J02fKcT9H1z1NA3tpPwPdbwPTZB38MN38MT9N3X8N03Qd/jDd/jE/Q90fA9MUHfkw3fkxP0PdPwPTNB39MM39MS9D3D8D3D4tvDeVBtOmr4fKJaCp2r8bnSjR608HW+x+e6a/Eu1Ld4befeVxlaVUXfPh/39PxinufvBg+24a9Y5l0FMHO7qI7ctgsP5/y17aK67zhD1z6Gvlyunp40jTsX6pmA77hzoSR8x50LJeE77lwoCd9x50JJ+I47F0rCd9y5UBK+486FkvAddy6UhO+4c6EkfMedCyXhO+5cKAnfcedCSfiOOxdKwnfcuVASvuPOhZLwHXculITvuHOhJHzHnQsl4TvMmcKcKSnfYc4U5kxJ+Q5zpjBnSsp3mDPJnDOdr8MOr39m2Ef+mQMdPp/8/kiHHT4D0uD5k5TO23xuQ/k+17nenfLvwp8XNVzKjO0shc8lnh8656m7Zu6+nHXXRs8hdjf57tVJaXW2odV5hlZVFIcZzvagXxn5Rd7Yhr9ima8oQeZLS5D5qxJk/q8A5goj7MZ3l/y7WWc1QYuzLDxnJawF/BXLfFkJMg8WwFxhhN347pofT85sghZnWnjOTFgL+CuWuX8JMl9agsxXlCDzYAHMFUbYje9O+Xn+GU3Q4gwLzxkJawF/xTIPFsBcYYTd+O7SW/k+vQlanG7hOT1hLeCvWOZLS5D5ihJkHlyCzP8tQeb+gTkR5lLsN/5VgsyXlSDzvwUwVxhhN75r83OC05qgxWkWntMS1gL+imUeXILM55Qg8xUlyHxpCTJ/VYLM/y1B5rNLkPmyEmQuxf75rBJk7l+CzKXYP5fiOFiK7bkU+43/CGCuMMJufHfNf4v81CZocaqF59SEtYC/YpnPKkHmK0qQeXAJMoe2kQzzf0uQ+asSZA79RjLMF5Ygcym250tLkPk/Jcgs4RisMMJufHfK+z6lCVqcYuE5JWEt4K9Y5tMFMPM3A7fbzSdPp/w3MpkHmkUGY2Qwpil8Lml2snPGum9kwtfJ5Osk976sbRzbJ3n13Sn/jcwT3Jcp/+zS8TovfCPzBEuZjtPhMsd6Hk/5lpEf2FMUrt6tPi7iQQ8ct2BX38g8UYeZ3Ux3ipGuiuKcaCl/NnJb/hMMnhMMZlUnG9Jx7qNtNaVdq29k4lg+gHQJ7zi79d3BKHd4x9m/7/COc12+4R1n/77DO851+YZ3nOuW8I6ze9/f9+/CYI7eEnMm+G6JORN8t8ScCb5bYs4E3y0xZ4LvlpgzwXdLzJnguyXmTPDdEnMm+G6JORN8t8ScCb5bYs4E3y0xZ4LvlpgzwXdLzJnguyXmTPDdEnMm+G6JORN8hzmTf99hzhTmTEn5DnOmMGdKyneYM4U5U1K+v+9zJuQd7s359x3uzbXcnAl5h3tz/n2He3MtN2dC3uHenH/f4d5cy82ZkHeYM/n3HeZMYc6UlO8wZ0p+zhSun7dcvxaunyfnO1w/b7l+Le76OYfLc+tQHb6a9g+lcMrC3sMDe5p8RVQGXrIU7kE8PrT0VM78uyMnG2VCueGviuIMpXJ6eBco32Z6GDzYPpl4sJQTj4920JQ6Z56/CuPZRhjPBGE8E4Xx3CuMB3NBKTy/FKbPusJ4dhbGc5swnrbC2vMnwvS5RBhPe2E8rwjjeUgYz2+E8WwsjGdPYTyPCuNZJYznz8J4thLGM0YYz3BhPO8J4+ktjKeNMJ4dhPFMF8YzQxjPfcJ47hTG007Y+c6HwvTpKoynUhjPLGE8M4Xx/FoYzxBhPBsI41khjOcPwng2F8bzM2E8rYTx/E0Yz7bCeCYJ45ksjOceYTx3C+P5lTCeC4TxrCeMZxdhPCOE8dwqjCct7Pz0U2H6dBDGUyuMZ7Ewnt8K49lEGM9qYTx/EcaztTCeYcJ4+grjyQjj+bkwnnWE8ewojOcOYTy3C+P5SBjP3sJ4BgrjqRLGs7swngeF8XwhjGdDYTyPCONZKYznYWE8NcJ4Ognj+aMwni2E8bwjjCcljKezMJ7thPGsL+x6ZgdhPO9HsnjSwng2EFZfVwrT5xZhPDcL4/lMGM8gYTzrC+NZIoxnpDCe3wnj2VQYz1vCeKqF8fQSxjNeGM9GwuYbvxCmTz9hPF2E8VQI49lJGM/9wniqhB3vlcJ4Po5k8bQTxjNUGM+XwnguF8azkTCeN4Xx7CWMZw9hPH8SxrOlMJ5xwnjGCuN5VxhPa2E82wvjmSqMZ5ownruE8bQXNn/+QJg+A4TxtBXG87UwngeE8XwujKejMJ7lwnh+L4xnM2E8bwvjKRPAk46+/W3nNO2/kmz4BjG+kaxsp2hbT4pXbvGBd8dPJhue70Ee6nn5azp9O2/Wydd3l9lXlrbhr5I4ThHC87Ywns2E8fxeGM9yYTwdhfF8LoznAWE8XwvjaSuMZ4Awng+E8eB8WQrPXcL0mSaMZ6ownu2F8bQWxvOuMJ6xwnjGCePZUhjPn4Tx7CGMZy9hPG8K49lIGM/lwni+FMYzVBhPO2E8HwvjqRQ2f64SxnN/JItnJ2E8FcJ4ugjj6SeM5xfCeDYSdryPF6ZPL2E81cJ43hLGs6kwnt8J4xkpjGeJMJ71hfEMEsbzmTCem4Xx3CKM50phPBsIm2+khenzvjCeDsLqa31hPPheihSezsJ4UsJ43hHGs4Uwnj8K4+kkjKdGGM/DwnhWCuN5RBjPhsJ4vhDG86Awnt2F8VQJ4xkojGdvYTwfCeO5XRjPHcJ4dhTGs44wnp8L48kI4+krjGeYMJ6thfH8RRjPamE8mwjj+a0wnsXCeGqF8XQQxvOpMJ60sOuZtwrTZ4Qwnl2E8awnjOcCYTy/EsZztzCee4TxTBbGM0kYz7bCeP4mjKeVMJ6fCePZXBjPH4TxrBDGs4EwniHCeH4tjGemMJ5ZwngqhfF0FcbzoTCedsLOT+8Ups99wnhmCOOZLoxnB2E8bYTx9BbG854wnuHCeMYI49lKGM+fhfGsEsbzqDCePYXxbCyM5zfCeB4SxvOKMJ72wnguEcbziTCetsLOd24Tps/OwnjWFcbzS2E8HYW153uF6TNRGM8EYTzbCOP5qzCecgvPUE88OJbBg234U8+G43oUjrM07b+PGK/0xAhfyBvbVxIjbOCvoLBrnrujhprdbfhWPPdr2z2kGfbfT5rd60kz+ELe2L6XNIPtbuK52xNPB6OddTB8K54ROoz3MdO0fwQx3uOJEb6QN7bvIUbYOlA7G+GJp72hGbZHEA++/YtvlKZpP/9PQwdPxwJ8Ie8Rhj5cr/w/KO098bQzNMN2e+LB+0B3kmbY/yBpdlfkh7G9cWxiG/6qyNaONGvnSTO8vwHNsN2ONMM5+R2kGfY/RJrd6UmzdoZm2L6TNIPtduK53RNPpdHOKg3figffRami/gz7+T+87/DECF/IG9t3ECNs/B+fIz3xtDU0w/ZI4sG7pzhHTdP+h0mzSk/HAnwh75GGPlyvbUmztp540oZm2G5LPHgf9VbSDPsfIc1ui/wwtjWOTWzDXxXZ0qRZ2pNm+H4LNMN2mjTDNepbSDPsf5Q0u9WTZmlDM2zfSprBdjPxPOqJZ6yhGbYfJR7cxxtHmmF/b2K82RMjfCFvbN9MjLCNJZ7enniGG5oNN7RQPP10eAxphv39iNFXvcIX8sa2rV6HE08/Tzx9Dc36GlooHjzvPYw0w/4LiNFXvcIX8sa2rV77Es8FnnjGG5qNN7RQPPhPiV6kGfbz/+v5qlf4Qt7YttXreOIZ4IlnoqHZREMLxYP3zCeQZtg/kBh91St8IW9s2+p1IvEM9MQz2dBssqGF4sG9nkmkGfZfQoy+6hW+kDe2bfU6mXgu8cQz09BspqGF4sH39maRZtg/iBh91St8IW9s2+p1JvEM8sQzzdBsmqGF4hmiw1NJM+wfQoy+6hW+kDe2bfXK/387xBPPDEOzGYYWigffsZ9OmmE//+e9r3qFL+SNbVu9ziCeyz3xjDV4xlq08OV7uOF7eIK++xq++yboe7zhe3yCvicavicm6Huy4Xtygr5nGr5nJuh7muF7WoK+Zxi+ZyToO/Qt36++5ft6fLdknyq9b8FcZo07353Zh1rwX5o85/3aU5nj+rSvE/Ad16cl4TuuT0vCd1yfloTvuGM7Cd9x/WkSvuP60yR8x/VpSfiO69Nsvivc+c7wuTuepeZrIIvJhmsSS8iGazvLyYZrZCvIhmuNK8mGa7Z/JRuuff+NbLiHwPc2cG9oLNlwT4av5+OezXCy4b4bX8PGPbC+ZLtNh/m6Le5zjicb7jnytUrck5xINtxr5utzuMc7mWy4B8zXpHAffybZcE+dr8PcqcPTyIbnJv5INjzDsBHd/8YzDnyNAs+pzCAbnhm5nGwddD5vkg3PCq0iG57RWU22e3T4LbLhOay3yYZnon5GNjwz9Q7Z8Nzbu2QbqsPvkQ3PqP2cbHjW7xdk66HDvyTbuTr8K7KdpMPvk+1EHf6AbCfo8IdkO16HPyLbcTr8MdmO1eFPyHaMDn9KtqN1+DOyHaXDn5PtSB3+NdmO0OEvyHa4Dn9JtsN0+DdkO1SHf0u27jr8O7JtqOvy92TbRNv+QLZNtW0Daqeb6fDXFG9zbfsT2bbQtj+TbUtLvK0s8bbWtr+QrVyHB5EN3x+5hGz4Bv5AsuF/hgeQDe+CXkA2fP+zH9kqdLg32fAc/KNkw7ehbiZbWof5Xjr+cz1NmuI9fX5OAd8efoRs+H/HtpQW77zwcyH4DtzDZMN/7YwkW0cdrqT8NtA2fjYH39G+ndJupMP83BPe33qIbPimYTvKD/8bdSfF20yHHyQbvp/SntLiG/78XB/+B/gBsuHdyBFkw/cwO1B+1drGz1Zuo213U9ptdZifW8X/UdxPNvzHdkfKD+9B83PC+PbtfWTD/x0OJdvOOnwl2fBdtJPJtqsO9yDbbjp8Ltl+oMMnkW13HT6RbHvo8Alkw/uCx5MN34Q9jmz4bv+xZMO3Eo8hWycdPppsnXX4KLLhf4OPJFsXHT6CbPi+xOFkwzeqDyPbPjp8KNn21eHuZNtPhzekutxf2zYh2wHatinZDtS2zch2kLZtTrastm1BtoO1bUuyHaJtW5Gtm7ahv1T9kgo+q+2tdf7Q6kX9q/q00TpcFrmdSz+j80oZLKPJjji/140HfRgvnJdZjuctef2piXlFOq8XdBh5VhIrlwG2NZl6lr9lvp3mOf3L2mYjV9rWZFQZRsXowdoizr8a0WNU1FCPCRY9oAPi8jH2LNlwjHF9VdTU6/GMJz1Gx+jB9Yc45TWF9RgdNa6H2ZYrKfwc6VFII2Zmjdy3mUxtmhi4rJFR1shg81NnmRpP5czY2rNZV1UUpyuVc5SHctraE7ZHUT0Uw7y3AGauv2p3vjMq36fdl6lWzZfXI12fNvQdRTo/ZynrU550NusdfQz8qThP6nAbIw7SpijOVgX6trQlrep7fqEnw/zdTb5e8qJhU3q84EmPF6OGemAb/hQjrvm82AI8exk8Kg7mIG2MOEiboji7FqgfVY4xzstRky8H2nRrQ9cxxIg4ezQyPj5H29mofnxEnpVUXp4LPeu+bBnb3BD6P0tlQ5zOjejvY37ip+wN++lU1PDeCJcdcfapqddpPx1OUx1NIh2PsuzHUmje8Axp6aEfz9f3U8SZJT/s+0lideS7hn2XRQ37ZthTFD6ypj4u4kEPaA12dcygT2Z2M91zRroqijPKUv5s5Lb8Txs8TxvMqk4OpHZ2FM1r3fdt9jEUGu1FGiHO82TDeMbzdRw/PNZN8sQdd19zEjHCxvdSzPFF6TyOxvAp2j6OyjDeeRlqevP90TKjDJ3JDk6Mj9iHuCmKc1Yj/bP7cb42w2M4+hSU6wViRJwfNjI+Pk/b2dz6sg4jz0oqL+KW037sW2PE5fvBhdKZ4SlGGtWuxhnxbH4qKK2z5zdqMhmT/0WDs4oYnrfwTSA+D/M+a7uGH27XOCbNds1tBnEubqRdP+e8HHXt2rz+Z/Z5fF1rcCPtmq8fZCN7u0Z5EZfbJ/atMbY5Dh87HDbnq6qNTDDiVVC8bOS2rzaP6c4GV6H2wNcoEee6Rs7TzLSq/kbqmyBKZ9zffZnSLDRsSo+5kR89FkYN9cA2/CnGZTqMfZwO7RHX/WcRs/m+iCtmsKUMlplkR5w7GjkW5saU41VLXnc3Ma9I54XnP5BnZfRtfZVO0ylNVocza7X0zPDzN2bZplPZEOf+Rvq1aR4Y/ZS9ro1MpTKqfJdZyo44I2me+widL6GO3iQdx1j2Yyl0PsXvzUx2X+Z8ffN5X5b8sG9zPHTgu4Z943wKfmBPUfg5Op8yn8uD1mDneTCzm+nmGun4vGCKpfzZyG35457xgz9VJz+ldjaGzqdmeGKaEqNRJ9IIcRaSRm964llm8IAD/rgvb2PEQdoUxZmQeJ9VNxdbGFMOftdvakw5FlI5EOflRsYVxDP78TEUZwrly2l4TEScGY34mxLjb44lr1eamFek85qnwzwmgpWPU/fn6nVj4kSjbKgP7qcQZ24j7ct9X1I3Jvq6TjGByqjynWEpO+IspL5qMY15qCOeN71n2Y+l0Jjo+T6E9XrACxbfzxGrI98NzjUwJsIPn0cg/C6NieZ1eWjN905wvsLsZropRjq+J/aipfzZyG35XzB4XjCYVZ0so3b2Ho2JHuZI1vtA5vhXRXGmkkZTnfN0LjiWwJ+Kg+O00FiCOB810h8jntm3j6M45vkV0tjOrz5r5vnVAkteXxR5frVIh3ksASufX02gNFkdzqzVUjeWvGiU7Zt5CZUNcf7QyFji/npH3VjivuwNj22MJZMtZUecv9Ix/nfL+RPPN1K1396PpdBY4rk/s16Ds/WlzxCrI9817BtjCfzw/UGEW9XWxzWfkYPWYOd7vMxupptrpKuiOM9byp+N3JbfHNueM5hVnfyT2hnakc9zvudjNOKxBHH4GxDux7YuGe6nkTf6Rf7WDerfHEuQluf2bbWGxZ4nLKU4PEZxGh5LEKd9I/7irjkut+TVsYl5RTovvJfFY4nt3Nj9PLWndZ6K+rDdt9q0QNkqKF42cjuW+Ho2h+9hqHxt9+wQZ6vaep2qaawwr6uq/Xta9mMpNJZ47s+sz7na+tJRxOrId4NnTTCWwA8/g4LwHjSWmPfnoTXY+XnaQs9ELjTS8X39Zy3lz0Zuy2+ObeYz0apOtqN2tieNJb7uSz0bo9EM0ghx+DqJ+/tCe2ds11fRL8JfofMSpOXzkq6N9Mdx5yX8PUDzGpftvARx9mvm2LXSkteBTcwr0nmt0mHbeQnXnft5as+i7xV3b2Qscf+8W91Y4uuaA78noPJ90VJ2xDmSjvGjaawwx321/yzLfiyFxhLP/VmGn+VCfdv60qeI1ZHvBs+RYSyBH9hTFD6TxhLEgx7QGuz8Hgazm+mmGOmqKM5oS/mzkdvym2PbKINZ1clx1M7OorHE/TzN/sy/ef+siuLweYn7+1A9Co4l/J0/89ky21iCOOc30h+b12WQ1+sUxzwvQRrbeUmfZp6XrLbk1b/I8xK8w89jCVj5vMT9PLWndZ6K+rC9j3VxI2OJ+/eE6sYSX9cc+L0Mle/zlrIjzhA6xi+3nHfwfOPmZp6XeO7PMvycMurb1pc+QayOfNewb4wl8AM7vx/zExpLEA96QGuwq2MGYxCzm+kWGumqKM7TlvJnI7flN8e2pwxmVSdXUTu7mcYSX+8lPB2jEY8liPMi2fDsGuKnKQ0/1+brfCrue0/MCBu/02k+b5A/nul5PfTpr1MZ3D8vUfdMNs4jcJzBTy3Zcb6CcRP7EDdFcR5opH9e4bwcdc9LLCcts1SuFcSIOA83Mj4up+1sVD8+Is9KKi/iltN+7FtjxJ1P+RZKx77UstpIo9rV6xamVYafCkrr+plsG/9q4ptvMDMf3zdz3x7qnsmGlmjX8MPtGsef2a65zSDO842066XOy1HXrpfovNCuUa6lxIg4LzXSrpfQdjaqb9fIk5/DRdxy2o99a4xtjsPHDodXGWlUG5lrxKug/dnIbV9tHtO1Bg/3hWZ74Gv/iDO9gNZpS1pVf6d2qAsrnfFNK/5+1juGTenxM096vBM11APb8KcY8S2ud/zydLbx1Bg8Ks7bOtzGiIO0KYozv5FjAfFaG3n9nMpqjo0OyprXns/ZmGUV2RFncSPlWB1Tjl9a8lrWxLwinRe+p4Y8K4kVcZVOKylNVocza7V0zreJFUbZUM98/RRxVic+7+jc2U/ZG/ZXOC9811J2xHmX5us/p/M+1NF7pOOXlv1YCp0XriAt3Y91GetYt9TiezGxOvJdw75xXgg/sPM4+wWdFyIe9IDWYOcxldnNdKuNdFUUZ5ml/NnIbfmXGjxLDWZVJ7+idvYlnRcm9Sw3NHqHNEKct0mjd5zz1Hbmfhp5m+OPioPj1ByjkDZFcf7cSH+MeGbf/iHFeY/y5TQ8liDO3xvx916Mv48sef2ziXlFOi98S5PHErAirqq75ZQmq8OZtVrqxpJlRtlQH9zPfjO/bWQscT9HrRtL3Je94bGNseRNS9kRp1Wnep1a63Ca6ojnGxtY9mMpNJZ47s/yY8ki4sxG9r50IbE68l3DvjGWwA/sKQp37FQf17wu/80cUP+qYwZjELOb6d4z0lVRnCWW8mcjt+U3x7bFBnP+G2bUztCOPF0PqLGd+0Kjt0kjxHmXbDgX428QIw2fp73ridscc962MMLG86T3PPGsMHhqDH0KnafxdRXE2UbXfdx5tJlWtZdJOrI6HvD9TXybU9nwrc39KJ+DDFtFVK9LNnKr0UH1RcjnexCFwYhvfx6UPGNtUxkPNBgVzyEeNOPvmWIpNH4cQjwHe+DxVM78uNTNKFPWKFMVxdmVytnNQznLyC/yxnY38u2jzlkLjNF7GFqkKM6+BfqJQroiT9WeD7KU7TDPZUPe6KcOS8B3d8P3AYZv/i4waxgZ6bB0J+ZDPTCrfA93n2/+eDtC54U2Bj8HUJmOJA1clYl9Yx4IP7CnKHw8zQMRD3pgPAO7asuoS2Y30x1ipKuiOIdZyp+N3Jb/cIPncINZ1Ul3mvt5OB7ybeAwgwPbB5B2h8dodxhphzg8Hu7rSbtDDR5s70s8mPN0IxvmDuDn733vlwC32e99038TI2zdiXFfC+NB7hnzc599DUZsH0SMsB1KPN09aWbW9R6GPjxOtzHiIG2K4vRqZE5tps2/y1RWX85W2u7wf9jyfXwbD/qlo/r/7ohIL16yFAZDRVT//x4uedaL6v+/Y/CQiwf16Nv7pN49epURWsrA5F9GX0Pb5WTncCuLbQ39pqnI8Kts6+hwa7KVGxKlKX/EV38VUEHb2ciVdDX5qgQPlkJVCQZfTUtVJf5epG/vIcfUnHLxMbXH9r7o/N6DBvfrf8np/YcM7D14MNce6DsY9LaaRZxWZLfVrFpSFtsay29czVboMNcsfK1DNuSP+P5qOyOyttvqvPSBe/qg/kN62+p3bY9cta+VkUe5JX1cnqpe/h+804uLjW0JAA==", "debug_symbols": "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2D5hsX3CYvuExfYJi+0TFtsnLLZPWGyfsNg+YbF9wmL7Jovtmyy2b7LYvsli++aFcuXJYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+yaL7Zsstm+y2L7JYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+yaL7Zsstm+y2L7JYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+yaL7Zsstm+y2L7JYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+yaL7Zsstm+y2L7JYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+yaL7Zsstm+y2L7JYvsmi+2bLLZvsti+yWL7Jovtmyy2b7LYvsli+2Yt22fzQ07oQznKkmMsOZWuvKfc5ew5H8oJlJxSmO4FOYMlR1hyJkvOQsk5IZDuPzLOf0TOf2Se/8g6/xE9/xE7/xE//5E4/5F9+iPrus5/ZJz/iJz/yDz/kXX+I3r+I3b+I37+I3H+I+dPf5w//XH+9Mf50x/nT3+cP/1x/vTH+dMf509/nD/9cf705fzpy/nTl/OnL+dPX86fvpw/fTl/+nL+9OX86cv505/nT3+eP/15/vTn+dOf509/nj/9ef705/nTn+dPf54//XX+9Nf501/nT3+dP/11/vTX+dNf509/nT/9df701/nT1/Onr+dPX8+fvp4/fT1/+nr+9PX86ev509fzp6/nT9/On76dP307f/p2/vTt/Onb+dO386dv50/fzp++nT99P3/6fv70/fzp+/nT9/On7+dP38+fvp8/fT9/+n7+9OP86cf504/zpx/nTz/On36cP/04f/px/vTj/OnH+dM/n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp+axPz2d9ej7r0/NZn57P+vR81qfnsz49n/Xp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/0ic/8j50x/nT3+cP/1x/vTH+dMf509/nD/9cf70x/nTH+dPf5w/fTl/+nL+9OX86cv505fzpy/nT1/On76cP305f/py/vTn+dOf509/nj/9ef705/nTn+dPf54//Xn+9Of505/nT3+dP/11/vTX+dNf509/nT/9df701/nTX+dPf50//XX+9PX86ev509fzp6/nT1/Pn76eP309f/p6/vT1/Onr+dO386dv50/fzp++nT99O3/6dv707fzp2/nTt/Onb+dP38+fvp8/fT9/+n7+9P386fv50/fzp+/nT9/Pn76fP/04f/px/vTj/OnH+dOP86cf508/zp9+nD/9OH/6cf709/nT3+dPf58//X3+9Pf509/nT3+fP/19/vT3+dM/n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZn5zP+uR81ifnsz45n/XJ+axPzmd9cj7rk/NZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfPJ/1zfNZ3zyf9c3zWd88n/XN81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWd86n/Wt81nfOp/1rfNZ3zqf9a3zWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/16fmsT89nfXo+69PzWZ+ez/r0fNan57M+PZ/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+dz/rsfNZn57M+O5/12fmsz85nfXY+67PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1+fmsz89nfX4+6/PzWZ+fz/r8fNbn57M+P5/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWV+cz/rifNYX57O+OJ/1xfmsL85nfXE+64vzWd8+n/Xt81nfPp/17fNZ3z6f9e3z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4qWi4qWi4mdFxc+Kip8VFT8rKn5WVPysqPhZUfGzouJnRcXPiopfFRW/Kip+VVT8qqj4VVHxq6LiV0XFr4qKXxUVvyoqXisqXisqXisqXisqXisqXisqXisqXisqXisqXisq3ioq3ioq3ioq3ioq3ioq3ioq3ioq3ioq3ioq3ioq3isq3isq3isq3isq3isq3isq3isq3isq3isq3isqPioqPioqPioqPioqPioqPioqPioqPioqPioq/nGA+jZkvR+y/ckhfztF8/OIx5Hozz1i5B8h+UfM/CNW/hGaf4TlH+H5R0T+EenVva8r/4iRf4TkHzHzj1j5R2j+EZZ/hOcfEflH5Ff3yK/ukV/dI7+6R351j/zqHvnVPfKre+RX98iv7pFf3ZJf3ZJf3ZJf3ZJf3ZJf3ZJf3ZJf3ZJf3ZJf3ZJf3TO/umd+dc/86p751T3zq3vmV/fMr+6ZX90zv7pnfnWv/Ope+dW98qt75Vf3yq/ulV/dK7+6V351r/zqXvnVrfnVrfnVrfnVrX9c3eOKdV/mdPvfZh+ft/g4ZZWc8sc1PsY17389dPvfKo9OsU/4Lls+Thlz/H7KX3/crvuHTX49wx9/efVXH10+fn5U5RdlPeYj0lu33T98O0F/07w+vqp/n68a3+er7m/zVe36Pl91fJ+vKt/nq87v81XX9/mq+n2+6vd5W7Lv87Zk5W9Len/5jx9ri/6tryqy76/wMq+//LJ3+bu1fL96yx+95Utv+bO3/NVbvvaWb73le2/5vbuu9+660bvrRu+uG727bvTuutG760bvrhu9u2707rrRu+tG7667e3fd3bvr7t5dd/fuun8Om32t/N5dd/fuurt31929u+7u3HXtujp33Zv8zl33Jr9z173J79x1b/I7d92b/M5d9ya/c9e9ye/cdW/yO3fdm/zeXXf07rqjd9cdvbvu6N11/xzO/lr5vbvu6N11R++uO3p33dG760rvriu9u6707rrSu+v++dKEr5Xfu+tK764rvbuu9O660rvrzt5dd/buurN31529u+6fLzP5Wvm9u+7s3XVn7647e3fd2bvrrt5dd/Xuuqt31129u+6fLxn6Wvm9u+7q3XVX7667enfd1bvrau+uq727rvbuutq7637K5q8vlN+762rvrqu9u6727rrau+ta765rvbuu9e661rvr1u/S+lz5vbuu9e661rvrtt5NdZPfu+u23k11k9+767beTXWT37vrtt5NdZPfu+u23k11k9+767beTXWT37vrtt5NdZPfu+u23k11k9+767beTXWT37vrtt5NdZPfu+u23k11k9+767beTXWT37vrtt5NdZPfu+u23k11k9+767beTXWT37vrtt5NdZPfuuuO3rupRu/dVKP3bqrRezfVuFp33dF7N9XovZtq9N5NNXrvphq9d1ON3rupRu/dVKP3bqrRezfV6L2bavTeTTV676YavXdTjd67qUbv3VSj926q0Xs31ei9m2r03k01eu+mGr13U43eu6lG791Uo/duqtF7N9XovZtq9N5NNXrvphq9d1ON3rupRu/dVKP3bqrRezfV6L2bavTeTTV676YavXdTjd67qUbv3VSj926q0Xs31ei9m2r03k01eu+mGr13U43eu6lG791Uo/duqtF7N9XovZtq9N5NNXrvphq9d1ON3rupRu/dVKP3bqrRezfV6L2bavTeTTV676YavXdTjd67qUbv3VSj926q0Xs31ei9m2r03k01eu+mGr13U43eu6lG791Uo/duqtF7N9XovZtq9N5NNXrvphq9d1ON3rupRu/dVKP3bqrRezfV6L2bavTeTTV676YavXdTjd67qUbv3VSj926q0Xs31ei9m2r03k01eu+mGr13U43eu6lG791U0ns3lfTeTSW9d1NJ791UcrXuutJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTSe/dVNJ7N5X03k0lvXdTzd67qWbv3VSz926q2Xs31e3/tbf81l139t5NNXvvppq9d1PN3rupZu/dVLP3bqrZezfV7L2bavbeTTV776aavXdTzd67qWbv3VSz926q2Xs31ey9m2r23k01e++mmr13U83eu6lm791Us/duqtl7N9XsvZtq9t5NNXvvppq9d1PN3rupZu/dVLP3bqrZezfV7L2bavbeTTV776aavXdTzd67qWbv3VSz926q2Xs31ey9m2r23k01e++mmr13U83eu6lm791Us/duqtl7N9XsvZtq9t5NNXvvppq9d1PN3rupZu/dVLP3bqrZezfV7L2bavbeTTV776aavXdTzd67qWbv3VSz926q2Xs31ey9m2r23k01e++mmr13U83eu6lm791Us/duqtl7N9XsvZtq9t5NNXvvppq9d1PN3rupZu/dVLP3bqrZezfV7L2bavbeTTV776aavXdTzd67qWbv3VSz926q2Xs31ey9m2r23k01e++mmr13U83eu6lm791Us/duqtV7N9XqvZtq9d5NtXrvplpX6667eu+mWr13U63eu6lW791Uq/duqtV7N9XqvZtq9d5NtXrvplq9d1Ot3rupVu/dVKv3bqrVezfV6r2bavXeTbV676ZavXdTrd67qVbv3VSr926q1Xs31eq9m2r13k21eu+mWr13U63eu6lW791Uq/duqtV7N9XqvZtq9d5NtXrvplq9d1Ot3rupVu/dVKv3bqrVezfV6r2bavXeTbV676ZavXdTrd67qVbv3VSr926q1Xs31eq9m2r13k21eu+mWr13U63eu6lW791Uq/duqtV7N9XqvZtq9d5NtXrvplq9d1Ot3rupVu/dVKv3bqrVezfV6r2bavXeTbV676ZavXdTrd67qVbv3VSr926q1Xs31eq9m2r13k21eu+mWr13U63eu6lW791Uq/duqtV7N9XqvZtq9d5NtXrvplq9d1Ot3rupVu/dVKv3bqrVezfV6r2bavXeTbV676ZavXdTrd67qVbv3VSr926q1Xs31eq9m0p776bS3ruptPduKu29m0qv1l1Xe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birtvZtKe++m0t67qbT3birrvZvKeu+mst67qaz3biq7Wndd672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6ms924q672bynrvprLeu6m8924q772bynvvpvLeu6n8at11vfduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKu+9m8p776by3rupvPduKkfvppofMm5Hx1/I/+tP7xh3FdeYv0TLI81z2/3Da/7Fh+/3Qm7nX3kv5PeEr7wX8gvIV97Let/Lw3shvzJ95b2Q38W+8l7IL3lfeS/kt8evvBfya+kX3gt6K9xX3sv7fffxvbzfdx/fy/t99/G9rPe9PLyX9/vu43t5v+8+vpf3++7je3m/7z6+l/f77sN7Qe9j/Mp7eb/vPr6X9/vu43t5v+8+vpf1vpeH9/J+3318L+/33cf38n7ffXwv7/fdx/fyft99eC/oTahfeS/v993H9/J+3318L+/33cf3st738vBe3u+7j+/l/b77+F7e77uP7+X9vvv4Xt7vuw/vBb2D+Cvv5f2++/he3u+7j+/l/b77+F7W+14e3sv7fffxvTR9373Lb/paepePfnvcH/LX2LX/VaLfHr/sXgK9S/sr7wX99viF94J+e/zCe0G/PX7hvaz3vTy8F/Tb4xfeC/rt8QvvBf1a+oX38n7ffXwv7/fdh/eC3mL/lffyft99fC/v993H9/J+3318L+t9Lw/v5f2++/he3u+7j+/l/b77+F7e77uP7+X9vvvwXtD/fsRX3sv7fffxvbzfdx/fy/t99/G9rPe9PLyX9/vu43t5v+8+vpf3++7je3m/7z6+l/f77sN7Qf/LLV95L+/33cf38n7ffXwv7/fdx/ey3vfy8F7e77uP7+X9vvv4Xt7vu4/v5f2++/he3u+7D+8F/W8mfeW9vN93H99L0/fdu/ymr6V3+Qssf62Pfypmxaz9r5L89viV90J+e/zKeyG/PX7lvZDfHr/yXshvj194L+h/++sr74X89viV90J+e/zKeyG/ln7lvaz3vTy8l/f77uN7eb/vPr6X9/vu43t5v+8+vpf3++7De0H/219feS/v993H9/J+3318L+/33cf3st738vBe3u+7j+/l/b77+F7e77uP7+X9vvv4Xt7vuw/vBf1vf33lvbzfdx/fy/t99/G9vN93H9/Let/Lw3t5v+8+vpf3++7je3m/7z6+l/f77uN7eb/vPrwX9L/99ZX38n7ffXwv7/fdx/fyft99fC/rfS8P7+X9vvv4Xt7vu4/v5f2++/hemr7v3uU3fS39KR/9L2npte/ydUrpf5Xof0nrK++F/Pb4lfdCfnv8yntZ73t5eC/kt8evvBfy2+NX3gv57fEr74X89viV90J+Lf26e9nof/vrK+/l/b77+F7e77uP7+X9vvv4Xtb7Xh7ey/t99/G9vN93H9/L+3338b2833cf38v7fffhvaD/7a+vvJf3++7je3m/7z6+l/f77uN7We97eXgv7/fdx/fyft99fC/v993H9/J+3318L+/33Yf3gv63v77yXt7vu4/v5f2++/he3u+7j+9lve/l4b2833cf38v7fffxvbzfdx/fy/t99/G9vN93H94L+t/++sp7eb/vPr6X9/vu43t5v+8+vpfV817u8pu+lt7lo98eNT7kx6j9rxL99viF94J+e/zCe0G/PX7dvaD/Ja2vvBf02+MX3gv67fEL7wX99viF97Le9/LwXtCvpV94L+/33cf38n7ffXwv7/fdx/fyft99eC/of/vrK+/l/b77+F7e77uP7+X9vvv4Xtb7Xh7ey/t99/G9vN93H9/L+3338b2833cf38v7fffhvaD/7a+vvJf3++7je3m/7z6+l/f77uN7We97eXgv7/fdx/fyft99fC/v993H9/J+3318L+/33Yf3gv63v77yXt7vu4/v5f2++/he3u+7j+9lve/l4b2833cf38v7fffxvbzfdx/fy/t99/G9vN93H94L+t/++jfu5S6/6WvpXT757dHG/T80sRm1/1WS3x6/8l7W+14e3gv57fEr74X89viV90J+e/zKeyG/PX7lvZDfHr/wXtD/9tdX3gv5tfQr7+X9vvv4Xt7vu4/vZb3v5eG9vN93H9/L+3338b2833cf38v7fffxvbzfdx/ci1/of/vrK+/l/b77+F7e77uP7+X9vvv4Xtb7Xh7ey/t99/G9vN93H9/L+3338b2833cf38v7fffhvaD/7a+vvJf3++7je3m/7z6+l/f77uN7We97eXgv7/fdx/fyft99fC/v993H9/J+3318L+/33Yf3gv63v77yXt7vu4/v5f2++/he3u+7j+9lve/l4b2833cf30vT9927/KavpT/lo/9lJFP/kK/7oXx0034un+yV+5p3+VvkoXyypb0gn+w8L8gnO88L8sl/bn1BPvmPl/sXlbdDn7XzdVex7bcGPdf9q6L//ZNP/qrkfvLJX5X857pP/qrkP6p98ldd3+erot8+Pverot9UPverot9qjr7q/vXH5N9E/Piuf/1h3fd/5dCuXyqG2ce9oF+XvvBe/v28h33qvaD/EY+vvJd/P294n3sv/35eB0/uxeT+Yfvts7/fy7+fd8fPvZf1vpeH9/Lv5630c+/l388r7Ofey/d83zX9uBd7fC/f8333+b18z/fdp/eC/kc8vvJevmmfjut+LyEP7+Wb9umn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o/Vd3ozWd3kzWt/lzah8sdSXfdHv8ma0er4Z3dX3fN25q+/5DnNX3/PF5Kd67fm2cVff8xXirh5trnbdHdMueaQe7ZhP1aOrNuSuPvyRequvWtcP9dt+V3+XNHiShCdp8iQtniTlSTKeJOdJCp6kjZPkPPd2nns7z72d597Oc2/nubfz3Nt57u0893aeewfPvYPn3sFz7+C5d/DcO3juHTz3Dp57B8+9g+fem+fem+fem+fem+fem+fem+fem+fem+fem+feG+fecuHcWy6ce8uFc2+5cO4tF8695cK5t1w495YL595y4dxbLp57D557D557D557D557D557D557D557D557D557D557C8+9hefewnNv4bm38NxbeO4tPPcWnnsLz72F596T596T596T596T596T596T596T596T596T596T596L596L596L596L596L596L596L596L596L596L597Kc2/lubfy3Ft57q0891aeeyvPvZXn3spzb+W5N4+1FB5rKTzWUnispfBYS+GxlsJjLYXHWgqPtRQeayk81lJ4rKXwWEvhsZbCYy2Fx1oKj7UUHmspPNZSeKyl8FhLqWctp8T90zP8d0l//eF5mzj//PCcen18eMzrwad1229bcn77N0Hm+vi68r2+7vxeX3d9r6+r3+vr2vf6uv69vm58r6+7v9XXreeUv/brfq+3qv293qr293qrqufCv/brfq+3qv293qr293qr2t/rrWp/q7eqeX2rt6r5CbsJhvz6AuP2l4VPvu6/9fG7KCGKmkRRiyhKiaKMKMqJooIoagNFfcK2ggRRREcfREcfREcfREcfREcfREcfREcfREcfREcXoqML0dGF6OhCdHQhOroQHV2Iji5ERxeiowvR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0SfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0RfR0ZXo6Ep0dCU6uhIdXYmOrkRHV6KjK9HRlejoSnR0Izq6ER3diI5uREe3akePPe85rtv/nI8kVft5xLpL2td6kizbl99/9R6XPdJvzfV7c/1B1q9qPz+r/uu//o/ooO3G4v3qLH50Fi+dxc/O4ldn8ehW+0w8us8+E49uss/Ed+6w3rnDRucOG507bHTusNG5w37CsowvFN+5w0bnDhudO2x07rDRucPuzh12d+6wu3OH3Z077CcsTvhC8Z077O7cYXfnDrs7d9jduMOuq3GHXVfjDruuxh12XY077Load9h1Ne6w62rcYdfVuMOuq3GHXVfnDjs6d9jRucOOzh12dO6w5SsePlV85w47OnfY0bnDjs4ddnTusNK5w0rnDiudO6x07rDlKzc+VXznDiudO6x07rDSucNK5w47O3fY2bnDzs4ddnbusOUrUD5VfOcOOzt32Nm5w87OHXZ27rCrc4ddnTvs6txhV+cOW76S5lPFd+6wq3OHXZ077OrcYVfnDqudO6x27rDaucNq5w5bviLoU8V37rDaucNq5w6rnTusdu6w1rnDWucOa507rHXusPUrmz5TfOcOy97s9Ex85w7beafT6rzTaXXe6bQ673RanXc6rc47nVbnnU6r806n1Xmn0+q802l13um0Ou90Wp13Oq3OO50We6eTXf7zsyb7gXh0h30mHt1hn4lHd9hn4tEd9pl4dId9Jh7dYZ+JR3fYJ+LZO52eiUd32GfiO3dY9k6nZ+I7d1j2Tqdn4jt3WPZOp2fiO3dY9k6nf1u8snc6PRPfuMMqe6fTM/GNO6xejTussnc6PRPfuMMqe6fTM/GNO6yydzo9Ec/e6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDsve6fRMfOcOy97p9Ex85w7L3un0THznDtt5p5N23umknXc6aeedTtp5p5N23umk8J1O677+zvSReHaH/bfFw3c6PRHP7rBPxLM77BPx7A77RDyow94lgfrmXRKoG94lgXrcXRKoc90lgfrRf5dkpL1Gd0mg3nGXBOoId0kgn79Lwrm3kbYA3SXh3NtIG3vuknDubaTtOj8lkXbm3CXx3Ju03+YuiefepF00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7cb7lnbjfUu78b6l3Xjf0m68b2k33re0G+9b2o33Le3G+5Z2431Lu/G+pd1439JuvG9pN963tBvvW9qN9y3txvuWduN9S7vxvqXdeN/SbrxvaTfet7Qb71vajfct7cb7lnbjfUu78b6l3Xjf0m68b2k33re0G+9b2o33Le3G+5Z2431Lu/G+pd1439JuvG9pN963tBvvW9qN9y3txvuWduN9S7vxvqXdeN/SbrxvaTfet7Qb71vajfct7cb7lnbjfUu78b6l3Xjf0m68b2k33re0G+9b2o33Le3G+5Z2431Lu/G+pd1439JuvG9pN963tBvvW9qN9y3txvuWduN9S7vxvqXdeN/SbrxvaTfet7Qb71vajfct7cb7lnbjfUu78b6l3Xjf0m68b2k33re0G+9b2o33Le3G+5Z2431Lu/G+pd1439JuvG9pN963tBvvW9qN9y3txvuWduN9S7vvvqVx9d23dNPetq/etLftqzftbfvqTXvbvnrT3rav3rS37as37W376k1727560964r/bdt3TT3riv9t23dNPeuK/23bd00964r/bdt3TT3riv9t23dNPeuK/23bd00964r/bdt3TT3riv9t23dNPeuK/23bd00964r/bdt3TT3riv9t23dDu1cV/tu2/pdmrjvtp339Lt1MZ9te++pdupjftq331Lt1Mb99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtob99W++5Zu2hv31b77lm7aG/fVvvuWbtohffVDD6RXfuiB9L8PPZCe9qEH0qc+9EB6z4ceSD/50APpER96IL5/10PZ8fOhB+bPlF08H3pg/kzZmfOhB+bPlN02H3pg/kzZQfOhh+XPg7Ir5kMPy58HZafLhx6WP4+L5c+Dsk/lQw/Lnwdl78mHHpY/D8p+krseys6RDz0wf6bsBvnQA/Nnyg6PDz0wf6bs2vjQA/Nnyk6MDz3J/nw/J3snxcc5o+gcKTpnFp2zis7RonOs6BwvOieKzinyg1nkB7PID2aRH8wiP5hFfjCL/GAW+cEs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8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4i/KJuyifuIvyibson7iL8om7KJ+4a/KJctXkE2/njKJzpOicWXTOKjpHi86xonO86JwoOqfID0aRH4wiPxhFfjCK/GAU+cEo8oNR5AejyA9GkR+MIj+QIj+QIj+QIj+QIj+QIj+QIj+QIj+QIj+QIj+QIj+YRX4wi/xgFvnBLPKDWeQHs8gPZpEfzCI/mEV+MIv8YBX5wSryg1XkB6vID1aRH6wiP1hFfrCK/GAV+cEq8gMt8gMt8gMt8gMt8gMt8gMt8gMt8gMt8gMt8gMt8gMr8gMr8gMr8gMr8gMr8gMr8gMr8gMr8gMr8gMr8gMv8gMv8gMv8gMv8gMv8gMv8gMv8gMv8gMv8gMv8oMo8oMo8oMo8oMo8oMo8oMo8oMo8oMo8oMo8oMo8oNd5Ae7yA92kR/sIj/YRX6wi/xgF/nBLvKDXeQHRfnEUZRPHEX5xFGUTxxF+cRxraJztOgcKzrHi86JonOK/KAonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiaMonziK8omjKJ84ivKJoyifOIryiVKUT5SifKIU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vy/ob95/0fuvXtHfvP+i91+9or95/0Xvv3pFf/P+i95/9Yr+5v0Xvf/qFf3N+y96/9Ur+pv3X/T+q1f0N++/6P1Xr+hv3n/R+69e0d+8/6L3X72iv3n/Re+/ekV/8/6L3n/1iv6H/u/r/oPu8UR/2H3JdGz77bP+4LN7j/s3vX77ojLXo2/68a9fW/wm3uyX+IUV737/L8DDHovXzuKts3jvLD46i99c8eYf4v2h+MerlrqIH53FS2fx3A77gnhwh30uHtxhf4nfj61SwR32uXhwh/3YyRXXeCwe3GHteiae3GGfiTdyh30qntthY+jHnxkf/0nKuB32BfHcDvuCeG6HfUE8t8NGfIjff6NguR32BfHcDvuCeG6HfUE8t8M+F+/cDvtr2dxtHvpYPLjDPhcP7rDPxYM77HPx4A77XDy4wz4XD+6wH+L333ifd3CHdfsQ//gP4A7usB+/+G+KB3fYp+ID3GGfiwd32OfiwR32uXhwh30uHtxhn4v/Y59XvduxavyF+I8zouCMnX/GvgrOGAVn/LFV6Ec4QUMfnzELzlgFZ2jBGVZwxp/Xedy9xC5/fEYUnLGzz5jXdRWcMQrOkIIzZsEZq+AMLTjDCs748zr/eGfQsMdnRMEZO/+McRWcMQrOkIIzZsEZq+AMLTjDCs4oqPNRUOejoM6loM6loM6loM6loM6loM6loM6loM6loM6loM6loM5nQZ3PgjqfBXU+C+p8FtT5LKjz+cd1bnL/p2xtrsdneMEZUXDGzj9jXQVn/HGd2/w4Q+fjM6TgjFlwxio4QwvOsIIzvOCMKDhj55/x58iJDf+oc318xig4QwrOmAVnrIIztOAMKzjDC86IgjN2/hlWUOdWUOdWUOdWUOdWUOdWUOdWUOdWUOdWUOdWUOdeUOdeUOdeUOdeUOdeUOdeUOdeUOdeUOdeUOdeUOdRUOdRUOdRUOdRUOdRUOdRUOdRUOdRUOdRUOePc2T3lND15PfPiHvK8PY/H+3OuZ0g6SfM9BNW+gmafoKln+DpJ0T6CTv5hPE4NfapJ/xZTe95N5i51984QdJPmOknrPQTNP0ESz/B00+I9BN29gnjSj8hvaZHek2P9Joe6TU90mt6/GFNj/HrhPn4BE8/IdJP2NknyJV+wkg/QdJPmOknrPQTNP2E9JqW9JqW9JqW9Jqe6TU902t6ptf0TK/pmV7TM72mZ3pNz/Sanuk1PdNreqXX9Eqv6ZVe0yu9pld6Ta/0ml7pNb3Sa3ql1/RKr2lNr2lNr2lNr2lNr2lNr2lNr+nH6Sf52M46r1/J3u2/fmz/XT/2OKP0/MfG3/dj8vf92Pz7fuzhldjHI7DYv35sf/zY4zjH8x8bf9+Pyd/3Y/Pv+7HHVyL31Qpm8egmH//N9/MfG3/fj8nf92Pz7Mdu/5f/55/+r3/+p//lP/3H/3L7gR//f//3v/yv//rP//lffv5f//X//T//+//P7bP/Pw==" }], "outputs": { "globals": { "storage": [{ "fields": [{ "name": "balances", "value": { "fields": [{ "name": "slot", "value": { "kind": "integer", "sign": false, "value": "1" } }, { "name": "typ", "value": { "kind": "string", "value": "Map<AztecAddress, PublicMutable<U128>>" } }], "kind": "struct" } }, { "name": "portal_address", "value": { "fields": [{ "name": "slot", "value": { "kind": "integer", "sign": false, "value": "2" } }, { "name": "typ", "value": { "kind": "string", "value": "SharedImmutable<EthAddress>" } }], "kind": "struct" } }], "kind": "struct" }] }, "structs": { "functions": [{ "fields": [{ "name": "parameters", "type": { "fields": [{ "name": "portal_address", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::eth_address::EthAddress" } }], "kind": "struct", "path": "GasToken::constructor_parameters" } }], "kind": "struct", "path": "GasToken::constructor_abi" }, { "fields": [{ "name": "parameters", "type": { "fields": [{ "name": "fee_limit", "type": { "kind": "field" } }], "kind": "struct", "path": "GasToken::pay_fee_parameters" } }, { "name": "return_type", "type": { "kind": "field" } }], "kind": "struct", "path": "GasToken::pay_fee_abi" }, { "fields": [{ "name": "parameters", "type": { "fields": [{ "name": "fee_limit", "type": { "kind": "field" } }], "kind": "struct", "path": "GasToken::check_balance_parameters" } }], "kind": "struct", "path": "GasToken::check_balance_abi" }, { "fields": [{ "name": "parameters", "type": { "fields": [{ "name": "to", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress" } }, { "name": "amount", "type": { "kind": "field" } }], "kind": "struct", "path": "GasToken::mint_public_parameters" } }], "kind": "struct", "path": "GasToken::mint_public_abi" }, { "fields": [{ "name": "parameters", "type": { "fields": [{ "name": "to", "type": { "fields": [{ "name": "inner", "type": { "kind": "field" } }], "kind": "struct", "path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress" } }, { "name": "amount", "type": { "kind": "field" } }, { "name": "secret", "type": { "kind": "field" } }, { "name": "leaf_index", "type": { "kind": "field" } }], "kind": "struct", "path": "GasToken::claim_public_parameters" } }], "kind": "struct", "path": "GasToken::claim_public_abi" }] } }, "file_map": { "111": { "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" }, "117": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/public_mutable.nr", "source": "use crate::context::Context;\nuse crate::oracle::storage::storage_read;\nuse crate::oracle::storage::storage_write;\nuse dep::protocol_types::traits::{Deserialize, Serialize};\nuse crate::state_vars::storage::Storage;\n\n// docs:start:public_mutable_struct\nstruct PublicMutable<T> {\n context: Context,\n storage_slot: Field,\n}\n// docs:end:public_mutable_struct\n\nimpl<T> Storage<T> for PublicMutable<T> {}\n\nimpl<T> PublicMutable<T> {\n // docs:start:public_mutable_struct_new\n pub fn new(\n // Note: Passing the contexts to new(...) just to have an interface compatible with a Map.\n context: Context,\n storage_slot: Field\n ) -> Self {\n assert(storage_slot != 0, \"Storage slot 0 not allowed. Storage slots must start from 1.\");\n PublicMutable { context, storage_slot }\n }\n // docs:end:public_mutable_struct_new\n\n // docs:start:public_mutable_struct_read\n pub fn read<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"PublicMutable reads only supported in public functions\");\n let fields = storage_read(self.storage_slot);\n T::deserialize(fields)\n }\n // docs:end:public_mutable_struct_read\n\n // docs:start:public_mutable_struct_write\n pub fn write<T_SERIALIZED_LEN>(self, value: T) where T: Serialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"PublicMutable writes only supported in public functions\");\n let fields = T::serialize(value);\n storage_write(self.storage_slot, fields);\n }\n // docs:end:public_mutable_struct_write\n}\n" }, "120": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/state_vars/shared_immutable.nr", "source": "use crate::{\n context::Context, history::public_storage::public_storage_historical_read,\n oracle::{storage::{storage_read, storage_write}}, state_vars::storage::Storage\n};\nuse dep::protocol_types::{constants::INITIALIZATION_SLOT_SEPARATOR, traits::{Deserialize, Serialize}};\n\n// Just like PublicImmutable but with the ability to read from private functions.\nstruct SharedImmutable<T>{\n context: Context,\n storage_slot: Field,\n}\n\nimpl<T> Storage<T> for SharedImmutable<T> {}\n\nimpl<T> SharedImmutable<T> {\n pub fn new(\n // Note: Passing the contexts to new(...) just to have an interface compatible with a Map.\n context: Context,\n storage_slot: Field\n ) -> 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 // Intended to be only called once. \n pub fn initialize<T_SERIALIZED_LEN>(self, value: T) where T: Serialize<T_SERIALIZED_LEN> {\n assert(\n self.context.private.is_none(), \"SharedImmutable can only be initialized from public functions\"\n );\n // TODO(#4738): Uncomment the following assert\n // assert(\n // self.context.public.unwrap_unchecked().is_deployment(), \"SharedImmutable can only be initialized during contract deployment\"\n // );\n\n // We check that the struct is not yet initialized by checking if the initialization slot is 0\n let initialization_slot = INITIALIZATION_SLOT_SEPARATOR + self.storage_slot;\n let fields_read: [Field; 1] = storage_read(initialization_slot);\n assert(fields_read[0] == 0, \"SharedImmutable already initialized\");\n\n // We populate the initialization slot with a non-zero value to indicate that the struct is initialized\n storage_write(initialization_slot, [0xdead]);\n\n let fields_write = T::serialize(value);\n storage_write(self.storage_slot, fields_write);\n }\n\n pub fn read_public<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.private.is_none(), \"Public read only supported in public functions\");\n let fields = storage_read(self.storage_slot);\n T::deserialize(fields)\n }\n\n pub fn read_private<T_SERIALIZED_LEN>(self) -> T where T: Deserialize<T_SERIALIZED_LEN> {\n assert(self.context.public.is_none(), \"Private read only supported in private functions\");\n let private_context = self.context.private.unwrap();\n\n let mut fields = [0; T_SERIALIZED_LEN];\n\n for i in 0..fields.len() {\n fields[i] =\n public_storage_historical_read(\n (*private_context),\n self.storage_slot + i as Field,\n (*private_context).this_address()\n );\n }\n T::deserialize(fields)\n }\n}\n" }, "123": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/initializer.nr", "source": "use dep::protocol_types::{\n address::AztecAddress, hash::{silo_nullifier, pedersen_hash},\n constants::GENERATOR_INDEX__CONSTRUCTOR, abis::function_selector::FunctionSelector\n};\n\nuse crate::{\n context::{PrivateContext, PublicContext, AvmContext, ContextInterface},\n oracle::get_contract_instance::get_contract_instance,\n oracle::get_contract_instance::get_contract_instance_avm,\n history::nullifier_inclusion::prove_nullifier_inclusion\n};\n\npub fn mark_as_initialized_public(context: &mut PublicContext) {\n mark_as_initialized(context);\n}\n\npub fn mark_as_initialized_avm(context: &mut AvmContext) {\n mark_as_initialized(context);\n}\n\npub fn mark_as_initialized_private(context: &mut PrivateContext) {\n mark_as_initialized(context);\n}\n\nfn mark_as_initialized<TContext>(context: &mut TContext) where TContext: ContextInterface {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier((*context).this_address());\n ContextInterface::push_new_nullifier(context, init_nullifier, 0);\n}\n\npub fn assert_is_initialized_public(context: &mut PublicContext) {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier(context.this_address());\n assert(context.nullifier_exists(init_nullifier, context.this_address()), \"Not initialized\");\n}\n\npub fn assert_is_initialized_avm(context: &mut AvmContext) {\n let init_nullifier = compute_unsiloed_contract_initialization_nullifier(context.this_address());\n assert(context.nullifier_exists(init_nullifier, context.this_address()), \"Not initialized\");\n}\n\npub fn assert_is_initialized_private(context: &mut PrivateContext) {\n let init_nullifier = compute_contract_initialization_nullifier(context.this_address());\n prove_nullifier_inclusion(init_nullifier, *context);\n}\n\nfn compute_contract_initialization_nullifier(address: AztecAddress) -> Field {\n silo_nullifier(\n address,\n compute_unsiloed_contract_initialization_nullifier(address)\n )\n}\n\nfn compute_unsiloed_contract_initialization_nullifier(address: AztecAddress) -> Field {\n address.to_field()\n}\n\npub fn assert_initialization_matches_address_preimage_public(context: PublicContext) {\n assert_initialization_matches_address_preimage(context);\n}\n\npub fn assert_initialization_matches_address_preimage_avm(context: AvmContext) {\n let address = context.this_address();\n let instance = get_contract_instance_avm(address).unwrap();\n let expected_init = compute_initialization_hash(context.selector(), context.get_args_hash());\n assert(instance.initialization_hash == expected_init, \"Initialization hash does not match\");\n assert(\n (instance.deployer.is_zero()) | (instance.deployer == context.msg_sender()), \"Initializer address is not the contract deployer\"\n );\n}\n\npub fn assert_initialization_matches_address_preimage_private(context: PrivateContext) {\n assert_initialization_matches_address_preimage(context);\n}\n\nfn assert_initialization_matches_address_preimage<TContext>(context: TContext) where TContext: ContextInterface {\n let address = context.this_address();\n let instance = get_contract_instance(address);\n let expected_init = compute_initialization_hash(context.selector(), context.get_args_hash());\n assert(instance.initialization_hash == expected_init, \"Initialization hash does not match\");\n assert(\n (instance.deployer.is_zero()) | (instance.deployer == context.msg_sender()), \"Initializer address is not the contract deployer\"\n );\n}\n\npub fn compute_initialization_hash(init_selector: FunctionSelector, init_args_hash: Field) -> Field {\n pedersen_hash(\n [init_selector.to_field(), init_args_hash],\n GENERATOR_INDEX__CONSTRUCTOR\n )\n}\n" }, "130": { "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>(\n encrypted_log: [Field; M]\n) -> 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" }, "146": { "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" }, "152": { "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(\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" }, "153": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/salted_initialization_hash.nr", "source": "use crate::{\n address::{eth_address::EthAddress, aztec_address::AztecAddress},\n constants::GENERATOR_INDEX__PARTIAL_ADDRESS, hash::pedersen_hash, traits::ToField\n};\n\n// Salted initialization hash. Used in the computation of a partial address.\nstruct SaltedInitializationHash {\n inner: Field\n}\n\nimpl ToField for SaltedInitializationHash {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl SaltedInitializationHash {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute(salt: Field, initialization_hash: Field, deployer: AztecAddress) -> Self {\n SaltedInitializationHash::from_field(\n pedersen_hash(\n [\n salt,\n initialization_hash,\n deployer.to_field()\n ],\n GENERATOR_INDEX__PARTIAL_ADDRESS\n )\n )\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n" }, "154": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/partial_address.nr", "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" }, "155": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/eth_address.nr", "source": "use crate::{\n constants::ETH_ADDRESS_LENGTH, hash::pedersen_hash,\n traits::{Empty, ToField, Serialize, Deserialize}, utils\n};\n\nstruct EthAddress{\n inner : Field\n}\n\nimpl Eq for EthAddress {\n fn eq(self, other : Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for EthAddress {\n fn empty() -> Self {\n Self {\n inner : 0\n }\n }\n}\n\nimpl ToField for EthAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn serialize(self: Self) -> [Field; ETH_ADDRESS_LENGTH] {\n [self.inner]\n }\n}\n\nimpl Deserialize<ETH_ADDRESS_LENGTH> for EthAddress {\n fn deserialize(fields: [Field; ETH_ADDRESS_LENGTH]) -> Self {\n EthAddress::from_field(fields[0])\n }\n}\n\nimpl EthAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn from_field(field: Field) -> Self {\n field.assert_max_bit_size(160);\n Self { inner: field }\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n\n pub fn conditional_assign(predicate: bool, lhs: Self, rhs: Self) -> Self {\n let result = utils::conditional_assign(predicate, rhs.to_field(), lhs.to_field());\n Self { inner: result }\n }\n}\n" }, "161": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/contract_instance.nr", "source": "use crate::{\n address::{\n aztec_address::AztecAddress, eth_address::EthAddress, partial_address::PartialAddress,\n public_keys_hash::PublicKeysHash\n},\n contract_class_id::ContractClassId,\n constants::{GENERATOR_INDEX__CONTRACT_DEPLOYMENT_DATA, CONTRACT_INSTANCE_LENGTH},\n traits::{Deserialize, Hash, Serialize}\n};\n\nstruct ContractInstance {\n salt : Field,\n deployer: AztecAddress,\n contract_class_id : ContractClassId,\n initialization_hash : Field,\n public_keys_hash : PublicKeysHash,\n}\n\nimpl Eq for ContractInstance {\n fn eq(self, other: Self) -> bool {\n self.public_keys_hash.eq(other.public_keys_hash) &\n self.initialization_hash.eq(other.initialization_hash) &\n self.contract_class_id.eq(other.contract_class_id) &\n self.salt.eq(other.salt)\n }\n}\n\nimpl Serialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn serialize(self) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n [\n self.salt,\n self.deployer.to_field(),\n self.contract_class_id.to_field(),\n self.initialization_hash,\n self.public_keys_hash.to_field()\n ]\n }\n}\n\nimpl Deserialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn deserialize(serialized: [Field; CONTRACT_INSTANCE_LENGTH]) -> Self {\n Self {\n salt: serialized[0],\n deployer: AztecAddress::from_field(serialized[1]),\n contract_class_id: ContractClassId::from_field(serialized[2]),\n initialization_hash: serialized[3],\n public_keys_hash: PublicKeysHash::from_field(serialized[4]),\n }\n }\n}\n\nimpl Hash for ContractInstance {\n fn hash(self) -> Field {\n self.to_address().to_field()\n }\n}\n\nimpl ContractInstance {\n fn to_address(self) -> AztecAddress {\n AztecAddress::compute(\n self.public_keys_hash,\n PartialAddress::compute(\n self.contract_class_id,\n self.salt,\n self.initialization_hash,\n self.deployer\n )\n )\n }\n}\n" }, "163": { "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" }, "166": { "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" }, "188": { "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" }, "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" }, "229": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/utils.nr", "source": "// general util packages/modules are usually bad practice\n// because there is no criteria for what we should not put in here.\n// Reducing the size of this package would be welcome.\n\nmod arrays;\nmod field;\nmod reader;\nmod uint256;\n\n// if predicate == true then return lhs, else return rhs\npub fn conditional_assign(predicate: bool, lhs: Field, rhs: Field) -> Field {\n if predicate { lhs } else { rhs }\n}\n\npub fn arr_copy_slice<T, N, M>(src: [T; N], mut dst: [T; M], offset: u64) -> [T; M] {\n for i in 0..dst.len() {\n dst[i] = src[i + offset];\n }\n dst\n}\n" }, "234": { "path": "/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr", "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 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 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\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 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" }, "236": { "path": "/usr/src/noir-projects/noir-contracts/contracts/gas_token_contract/src/main.nr", "source": "mod lib;\n\ncontract GasToken {\n use dep::aztec::protocol_types::{abis::function_selector::FunctionSelector, address::{AztecAddress, EthAddress}};\n use dep::aztec::state_vars::{SharedImmutable, PublicMutable, Map};\n\n use crate::lib::{calculate_fee, get_bridge_gas_msg_hash};\n\n #[aztec(storage)]\n struct Storage {\n balances: Map<AztecAddress, PublicMutable<U128>>,\n portal_address: SharedImmutable<EthAddress>,\n }\n\n #[aztec(public)]\n #[aztec(initializer)]\n fn constructor(portal_address: EthAddress) {\n storage.portal_address.initialize(portal_address);\n }\n\n #[aztec(public)]\n fn claim_public(to: AztecAddress, amount: Field, secret: Field, leaf_index: Field) {\n let content_hash = get_bridge_gas_msg_hash(to, amount);\n\n // Consume message and emit nullifier\n context.consume_l1_to_l2_message(\n content_hash,\n secret,\n storage.portal_address.read_public(),\n leaf_index\n );\n\n let new_balance = storage.balances.at(to).read() + U128::from_integer(amount);\n storage.balances.at(to).write(new_balance);\n }\n\n // TODO(@just-mitch): remove this function before mainnet deployment\n // convenience function for testing\n // the true canonical gas token contract will not have this function\n #[aztec(public)]\n fn mint_public(to: AztecAddress, amount: Field) {\n let amount = U128::from_integer(amount);\n let new_balance = storage.balances.at(to).read().add(amount);\n\n storage.balances.at(to).write(new_balance);\n }\n\n #[aztec(public)]\n fn check_balance(fee_limit: Field) {\n let fee_limit = U128::from_integer(fee_limit);\n assert(storage.balances.at(context.msg_sender()).read() >= fee_limit, \"Balance too low\");\n }\n\n #[aztec(public)]\n fn pay_fee(fee_limit: Field) -> Field {\n let fee_limit_u128 = U128::from_integer(fee_limit);\n let fee = U128::from_integer(calculate_fee(context));\n // TODO(6252): implement debug logging in AVM\n //dep::aztec::oracle::debug_log::debug_log_format(\n // \"Gas token: paying fee {0} (limit {1})\",\n // [fee.to_field(), fee_limit]\n //);\n assert(fee <= fee_limit_u128, \"Fee too high\");\n\n let sender_new_balance = storage.balances.at(context.msg_sender()).read() - fee;\n storage.balances.at(context.msg_sender()).write(sender_new_balance);\n\n let recipient_new_balance = storage.balances.at(context.fee_recipient()).read() + fee;\n storage.balances.at(context.fee_recipient()).write(recipient_new_balance);\n\n let rebate = fee_limit_u128 - fee;\n rebate.to_field()\n }\n\n // utility function for testing\n unconstrained fn balance_of_public(owner: AztecAddress) -> pub Field {\n storage.balances.at(owner).read().to_field()\n }\n}\n" }, "237": { "path": "/usr/src/noir-projects/noir-contracts/contracts/gas_token_contract/src/lib.nr", "source": "use dep::aztec::prelude::{AztecAddress, EthAddress};\nuse dep::aztec::context::interface::PublicContextInterface;\nuse dep::aztec::protocol_types::hash::sha256_to_field;\n\npub fn calculate_fee<TPublicContext>(context: TPublicContext) -> Field where TPublicContext: PublicContextInterface {\n context.transaction_fee()\n}\n\npub fn get_bridge_gas_msg_hash(owner: AztecAddress, amount: Field) -> Field {\n let mut hash_bytes = [0; 68];\n let recipient_bytes = owner.to_field().to_be_bytes(32);\n let amount_bytes = amount.to_be_bytes(32);\n\n for i in 0..32 {\n hash_bytes[i + 4] = recipient_bytes[i];\n hash_bytes[i + 36] = amount_bytes[i];\n }\n\n // Function selector: 0x3e87b9be keccak256('mint_public(bytes32,uint256)')\n hash_bytes[0] = 0x3e;\n hash_bytes[1] = 0x87;\n hash_bytes[2] = 0xb9;\n hash_bytes[3] = 0xbe;\n\n let content_hash = sha256_to_field(hash_bytes);\n content_hash\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" }, "29": { "path": "std/hash.nr", "source": "mod poseidon;\nmod mimc;\nmod poseidon2;\n\nuse crate::default::Default;\nuse crate::uint128::U128;\nuse crate::sha256::{digest, sha256_var};\n\n#[foreign(sha256)]\n// docs:start:sha256\npub fn sha256<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:sha256\n{}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n#[foreign(blake3)]\n// docs:start:blake3\npub fn blake3<N>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{}\n\n// docs:start:pedersen_commitment\nstruct PedersenPoint {\n x : Field,\n y : Field,\n}\n\npub fn pedersen_commitment<N>(input: [Field; N]) -> PedersenPoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[foreign(pedersen_commitment)]\npub fn __pedersen_commitment_with_separator<N>(input: [Field; N], separator: u32) -> [Field; 2] {}\n\npub fn pedersen_commitment_with_separator<N>(input: [Field; N], separator: u32) -> PedersenPoint {\n let values = __pedersen_commitment_with_separator(input, separator);\n PedersenPoint { x: values[0], y: values[1] }\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash<N>(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[foreign(pedersen_hash)]\npub fn pedersen_hash_with_separator<N>(input: [Field; N], separator: u32) -> Field {}\n\npub fn hash_to_field(inputs: [Field]) -> Field {\n let mut sum = 0;\n\n for input in inputs {\n let input_bytes: [u8; 32] = input.to_le_bytes(32).as_array();\n sum += crate::field::bytes32_to_field(blake2s(input_bytes));\n }\n\n sum\n}\n\n#[foreign(keccak256)]\n// docs:start:keccak256\npub fn keccak256<N>(input: [u8; N], message_size: u32) -> [u8; 32]\n// docs:end:keccak256\n{}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation<N>(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n#[foreign(sha256_compression)]\npub fn sha256_compression(_input: [u32; 16], _state: [u32; 8]) -> [u32; 8] {}\n\n// Generic hashing support. \n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\ntrait Hash{\n fn hash<H>(self, state: &mut H) where H: Hasher;\n}\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\ntrait Hasher{\n fn finish(self) -> Field;\n \n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\ntrait BuildHasher<H> where H: Hasher{\n fn build_hasher(self) -> H;\n}\n\nstruct BuildHasherDefault<H>;\n\nimpl<H> BuildHasher<H> for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn build_hasher(_self: Self) -> H{\n H::default()\n }\n}\n\nimpl<H> Default for BuildHasherDefault<H>\nwhere \n H: Hasher + Default\n{\n fn default() -> Self{\n BuildHasherDefault{}\n } \n}\n\nimpl Hash for Field {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self);\n }\n}\n\nimpl Hash for u8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash<H>(_self: Self, _state: &mut H) where H: Hasher {}\n}\n\nimpl Hash for U128 {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n H::write(state, self.lo as Field);\n H::write(state, self.hi as Field);\n }\n}\n\nimpl<T, N> Hash for [T; N] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<T> Hash for [T] where T: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<A, B> Hash for (A, B) where A: Hash, B: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl<A, B, C> Hash for (A, B, C) where A: Hash, B: Hash, C: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl<A, B, C, D> Hash for (A, B, C, D) where A: Hash, B: Hash, C: Hash, D: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl<A, B, C, D, E> Hash for (A, B, C, D, E) where A: Hash, B: Hash, C: Hash, D: Hash, E: Hash {\n fn hash<H>(self, state: &mut H) where H: Hasher{\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n" }, "3": { "path": "std/cmp.nr", "source": "// docs:start:eq-trait\ntrait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\nimpl Eq for Field { fn eq(self, other: Field) -> bool { self == other } }\n\nimpl Eq for u64 { fn eq(self, other: u64) -> bool { self == other } }\nimpl Eq for u32 { fn eq(self, other: u32) -> bool { self == other } }\nimpl Eq for u8 { fn eq(self, other: u8) -> bool { self == other } }\nimpl Eq for u1 { fn eq(self, other: u1) -> bool { self == other } }\n\nimpl Eq for i8 { fn eq(self, other: i8) -> bool { self == other } }\nimpl Eq for i32 { fn eq(self, other: i32) -> bool { self == other } }\nimpl Eq for i64 { fn eq(self, other: i64) -> bool { self == other } }\n\nimpl Eq for () { fn eq(_self: Self, _other: ()) -> bool { true } }\nimpl Eq for bool { fn eq(self, other: bool) -> bool { self == other } }\n\nimpl<T, N> Eq for [T; N] where T: Eq {\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0 .. self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<T> Eq for [T] where T: Eq {\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0 .. self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<N> Eq for str<N> {\n fn eq(self, other: str<N>) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl<A, B> Eq for (A, B) where A: Eq, B: Eq {\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl<A, B, C> Eq for (A, B, C) where A: Eq, B: Eq, C: Eq {\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl<A, B, C, D> Eq for (A, B, C, D) where A: Eq, B: Eq, C: Eq, D: Eq {\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl<A, B, C, D, E> Eq for (A, B, C, D, E) where A: Eq, B: Eq, C: Eq, D: Eq, E: Eq {\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3) & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\nstruct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n// docs:start:ord-trait\ntrait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else {\n if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n }\n}\n\nimpl<T, N> Ord for [T; N] where T: Ord {\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0 .. self.len() {\n if result == Ordering::equal() {\n let result_i = self[i].cmp(other[i]);\n\n if result_i == Ordering::less() {\n result = result_i;\n } else if result_i == Ordering::greater() {\n result = result_i;\n }\n }\n }\n result\n }\n}\n\nimpl<T> Ord for [T] where T: Ord {\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0 .. self.len() {\n if result == Ordering::equal() {\n let result_i = self[i].cmp(other[i]);\n\n if result_i == Ordering::less() {\n result = result_i;\n } else if result_i == Ordering::greater() {\n result = result_i;\n }\n }\n }\n result\n }\n}\n\nimpl<A, B> Ord for (A, B) where A: Ord, B: Ord {\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl<A, B, C> Ord for (A, B, C) where A: Ord, B: Ord, C: Ord {\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D> Ord for (A, B, C, D) where A: Ord, B: Ord, C: Ord, D: Ord {\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D, E> Ord for (A, B, C, D, E) where A: Ord, B: Ord, C: Ord, D: Ord, E: Ord {\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max<T>(v1: T, v2: T) -> T where T: Ord {\n if v1 > v2 { v1 } else { v2 }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min<T>(v1: T, v2: T) -> T where T: Ord {\n if v1 > v2 { v2 } else { v1 }\n}\n\nmod cmp_tests {\n use crate::cmp::{min, max};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0 as u64, 1 as u64), 0);\n assert_eq(min(0 as u64, 0 as u64), 0);\n assert_eq(min(1 as u64, 1 as u64), 1);\n assert_eq(min(255 as u8, 0 as u8), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0 as u64, 1 as u64), 1);\n assert_eq(max(0 as u64, 0 as u64), 0);\n assert_eq(max(1 as u64, 1 as u64), 1);\n assert_eq(max(255 as u8, 0 as u8), 255);\n }\n}\n" }, "31": { "path": "std/merkle.nr", "source": "// Regular merkle tree means a append-only merkle tree (Explain why this is the only way to have privacy and alternatives if you don't want it)\n// Currently we assume that it is a binary tree, so depth k implies a width of 2^k\n// XXX: In the future we can add an arity parameter\n// Returns the merkle root of the tree from the provided leaf, its hashpath, using a pedersen hash function.\npub fn compute_merkle_root<N>(leaf: Field, index: Field, hash_path: [Field; N]) -> Field {\n let n = hash_path.len();\n let index_bits = index.to_le_bits(n as u32);\n let mut current = leaf;\n for i in 0..n {\n let path_bit = index_bits[i] as bool;\n let (hash_left, hash_right) = if path_bit {\n (hash_path[i], current)\n } else {\n (current, hash_path[i])\n };\n current = crate::hash::pedersen_hash([hash_left, hash_right]);\n }\n current\n}\n" }, "33": { "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" }, "41": { "path": "std/uint128.nr", "source": "use crate::ops::{Add, Sub, Mul, Div, Rem, 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 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" }, "57": { "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" }, "63": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/messaging.nr", "source": "use crate::{\n hash::{compute_secret_hash, compute_message_hash, compute_message_nullifier},\n oracle::get_l1_to_l2_membership_witness::get_l1_to_l2_membership_witness\n};\n\nuse dep::std::merkle::compute_merkle_root;\nuse dep::protocol_types::{constants::L1_TO_L2_MSG_TREE_HEIGHT, address::{AztecAddress, EthAddress}, utils::arr_copy_slice};\n\npub fn process_l1_to_l2_message(\n l1_to_l2_root: Field,\n storage_contract_address: AztecAddress,\n portal_contract_address: EthAddress,\n chain_id: Field,\n version: Field,\n content: Field,\n secret: Field\n) -> Field {\n let secret_hash = compute_secret_hash(secret);\n let message_hash = compute_message_hash(\n portal_contract_address,\n chain_id,\n storage_contract_address,\n version,\n content,\n secret_hash\n );\n\n let returned_message = get_l1_to_l2_membership_witness(storage_contract_address, message_hash, secret);\n let leaf_index = returned_message[0];\n let sibling_path = arr_copy_slice(returned_message, [0; L1_TO_L2_MSG_TREE_HEIGHT], 1);\n\n // Check that the message is in the tree\n // This is implicitly checking that the values of the message are correct\n let root = compute_merkle_root(message_hash, leaf_index, sibling_path);\n assert(root == l1_to_l2_root, \"Message not in state\");\n\n compute_message_nullifier(message_hash, secret, leaf_index)\n}\n" }, "68": { "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.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 // 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\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 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 };\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.side_effect_counter };\n self.unencrypted_logs_hashes.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\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" }, "90": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/returns.nr", "source": "#[oracle(packReturns)]\nfn pack_returns_oracle<N>(_returns: [Field]) -> Field {}\n\nunconstrained pub fn pack_returns(returns: [Field]) {\n let _unused = pack_returns_oracle(returns);\n}\n\n#[oracle(unpackReturns)]\nfn unpack_returns_oracle<N>(_return_hash: Field) -> [Field; N] {}\n\nunconstrained pub fn unpack_returns<N>(return_hash: Field) -> [Field; N] {\n unpack_returns_oracle(return_hash)\n}\n" }, "91": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/get_contract_instance.nr", "source": "use dep::protocol_types::{\n address::AztecAddress, contract_instance::ContractInstance, utils::arr_copy_slice,\n constants::CONTRACT_INSTANCE_LENGTH, utils::reader::Reader\n};\n\n#[oracle(getContractInstance)]\nfn get_contract_instance_oracle(_address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH] {}\n\n// Returns a ContractInstance plus a boolean indicating whether the instance was found.\n#[oracle(avmOpcodeGetContractInstance)]\nfn get_contract_instance_oracle_avm(_address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH + 1] {}\n\nunconstrained fn get_contract_instance_internal(address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n get_contract_instance_oracle(address)\n}\n\nunconstrained fn get_contract_instance_internal_avm(address: AztecAddress) -> [Field; CONTRACT_INSTANCE_LENGTH + 1] {\n get_contract_instance_oracle_avm(address)\n}\n\npub fn get_contract_instance(address: AztecAddress) -> ContractInstance {\n let instance = ContractInstance::deserialize(get_contract_instance_internal(address));\n assert(instance.to_address().eq(address));\n instance\n}\n\npub fn get_contract_instance_avm(address: AztecAddress) -> Option<ContractInstance> {\n let mut reader = Reader::new(get_contract_instance_internal_avm(address));\n let found = reader.read();\n if found == 0 {\n Option::none()\n } else {\n Option::some(reader.read_struct(ContractInstance::deserialize))\n }\n}\n" }, "97": { "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" }, "99": { "path": "/usr/src/noir-projects/aztec-nr/aztec/src/oracle/get_l1_to_l2_membership_witness.nr", "source": "use dep::protocol_types::{address::AztecAddress};\n\nglobal L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH: u64 = 17;\n\n// Obtains membership witness (index and sibling path) for a message in the L1 to L2 message tree.\n#[oracle(getL1ToL2MembershipWitness)]\nfn get_l1_to_l2_membership_witness_oracle(\n _contract_address: AztecAddress,\n _message_hash: Field,\n _secret: Field\n) -> [Field; L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH] {}\n\nunconstrained pub fn get_l1_to_l2_membership_witness(\n contract_address: AztecAddress,\n message_hash: Field,\n secret: Field\n) -> [Field; L1_TO_L2_MESSAGE_ORACLE_CALL_LENGTH] {\n get_l1_to_l2_membership_witness_oracle(contract_address, message_hash, secret)\n}\n" } } }
|