diff --git a/Cargo.lock b/Cargo.lock index 1e0a46f8..e740bf95 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1824,7 +1824,7 @@ dependencies = [ [[package]] name = "starknet-core" -version = "0.6.0" +version = "0.6.1" dependencies = [ "base64 0.21.4", "criterion", diff --git a/Cargo.toml b/Cargo.toml index 0af082bb..ed7c6031 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,7 +36,7 @@ all-features = true [dependencies] starknet-ff = { version = "0.3.4", path = "./starknet-ff", default-features = false } starknet-crypto = { version = "0.6.0", path = "./starknet-crypto" } -starknet-core = { version = "0.6.0", path = "./starknet-core", default-features = false } +starknet-core = { version = "0.6.1", path = "./starknet-core", default-features = false } starknet-providers = { version = "0.6.0", path = "./starknet-providers" } starknet-contract = { version = "0.5.0", path = "./starknet-contract" } starknet-signers = { version = "0.4.0", path = "./starknet-signers" } diff --git a/starknet-accounts/Cargo.toml b/starknet-accounts/Cargo.toml index 6b3736dc..d513e306 100644 --- a/starknet-accounts/Cargo.toml +++ b/starknet-accounts/Cargo.toml @@ -14,7 +14,7 @@ keywords = ["ethereum", "starknet", "web3"] exclude = ["test-data/**"] [dependencies] -starknet-core = { version = "0.6.0", path = "../starknet-core" } +starknet-core = { version = "0.6.1", path = "../starknet-core" } starknet-providers = { version = "0.6.0", path = "../starknet-providers" } starknet-signers = { version = "0.4.0", path = "../starknet-signers" } async-trait = "0.1.68" diff --git a/starknet-accounts/src/factory/argent.rs b/starknet-accounts/src/factory/argent.rs index acc73419..44cc142d 100644 --- a/starknet-accounts/src/factory/argent.rs +++ b/starknet-accounts/src/factory/argent.rs @@ -1,7 +1,7 @@ use crate::{AccountFactory, PreparedAccountDeployment, RawAccountDeployment}; use async_trait::async_trait; -use starknet_core::types::FieldElement; +use starknet_core::types::{BlockId, BlockTag, FieldElement}; use starknet_providers::Provider; use starknet_signers::Signer; @@ -12,6 +12,7 @@ pub struct ArgentAccountFactory { guardian_public_key: FieldElement, signer: S, provider: P, + block_id: BlockId, } impl ArgentAccountFactory @@ -33,8 +34,14 @@ where guardian_public_key, signer, provider, + block_id: BlockId::Tag(BlockTag::Latest), }) } + + pub fn set_block_id(&mut self, block_id: BlockId) -> &Self { + self.block_id = block_id; + self + } } #[cfg_attr(not(target_arch = "wasm32"), async_trait)] @@ -63,6 +70,10 @@ where &self.provider } + fn block_id(&self) -> BlockId { + self.block_id + } + async fn sign_deployment( &self, deployment: &RawAccountDeployment, diff --git a/starknet-accounts/src/factory/open_zeppelin.rs b/starknet-accounts/src/factory/open_zeppelin.rs index 7640e67f..bb1b81b8 100644 --- a/starknet-accounts/src/factory/open_zeppelin.rs +++ b/starknet-accounts/src/factory/open_zeppelin.rs @@ -1,7 +1,7 @@ use crate::{AccountFactory, PreparedAccountDeployment, RawAccountDeployment}; use async_trait::async_trait; -use starknet_core::types::FieldElement; +use starknet_core::types::{BlockId, BlockTag, FieldElement}; use starknet_providers::Provider; use starknet_signers::Signer; @@ -11,6 +11,7 @@ pub struct OpenZeppelinAccountFactory { public_key: FieldElement, signer: S, provider: P, + block_id: BlockId, } impl OpenZeppelinAccountFactory @@ -30,8 +31,14 @@ where public_key: public_key.scalar(), signer, provider, + block_id: BlockId::Tag(BlockTag::Latest), }) } + + pub fn set_block_id(&mut self, block_id: BlockId) -> &Self { + self.block_id = block_id; + self + } } #[cfg_attr(not(target_arch = "wasm32"), async_trait)] @@ -60,6 +67,10 @@ where &self.provider } + fn block_id(&self) -> BlockId { + self.block_id + } + async fn sign_deployment( &self, deployment: &RawAccountDeployment, diff --git a/starknet-contract/Cargo.toml b/starknet-contract/Cargo.toml index 5196e0d8..07692a1d 100644 --- a/starknet-contract/Cargo.toml +++ b/starknet-contract/Cargo.toml @@ -14,7 +14,7 @@ keywords = ["ethereum", "starknet", "web3"] exclude = ["test-data/**"] [dependencies] -starknet-core = { version = "0.6.0", path = "../starknet-core" } +starknet-core = { version = "0.6.1", path = "../starknet-core" } starknet-providers = { version = "0.6.0", path = "../starknet-providers" } starknet-accounts = { version = "0.5.0", path = "../starknet-accounts" } serde = { version = "1.0.160", features = ["derive"] } diff --git a/starknet-core/Cargo.toml b/starknet-core/Cargo.toml index ab5b9cf5..28e79e9b 100644 --- a/starknet-core/Cargo.toml +++ b/starknet-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "starknet-core" -version = "0.6.0" +version = "0.6.1" authors = ["Jonathan LEI "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/starknet-core/src/types/contract/legacy.rs b/starknet-core/src/types/contract/legacy.rs index 665376fa..1d56348c 100644 --- a/starknet-core/src/types/contract/legacy.rs +++ b/starknet-core/src/types/contract/legacy.rs @@ -1,4 +1,4 @@ -use alloc::{boxed::Box, collections::BTreeMap, format, string::String, vec::Vec}; +use alloc::{borrow::ToOwned, boxed::Box, collections::BTreeMap, format, string::String, vec::Vec}; use crate::{ crypto::compute_hash_on_elements, @@ -464,8 +464,6 @@ impl LegacyContractClass { program: &'a LegacyProgram, } - // TODO: handle adding extra whitespaces in pre-0.10.0 artifacts for backward compatibility - let serialized = to_string_pythonic(&ContractArtifactForHash { abi: &self.abi, program: &self.program, @@ -628,21 +626,85 @@ impl SerializeAs for ProgramForHintedHash { reference_manager: &'a LegacyReferenceManager, } - HashVo::serialize( - &HashVo { - attributes: &source.attributes, - builtins: &source.builtins, - compiler_version: &source.compiler_version, - data: &source.data, - debug_info: &None, - hints: &source.hints, - identifiers: &source.identifiers, - main_scope: &source.main_scope, - prime: &source.prime, - reference_manager: &source.reference_manager, - }, - serializer, - ) + if source.compiler_version.is_some() { + // Anything since 0.10.0 can be hashed directly. No extra overhead incurred. + + HashVo::serialize( + &HashVo { + attributes: &source.attributes, + builtins: &source.builtins, + compiler_version: &source.compiler_version, + data: &source.data, + debug_info: &None, + hints: &source.hints, + identifiers: &source.identifiers, + main_scope: &source.main_scope, + prime: &source.prime, + reference_manager: &source.reference_manager, + }, + serializer, + ) + } else { + // This is needed for backward compatibility with pre-0.10.0 contract artifacts. + + // We're cloning the entire `identifiers` here as a temporary patch. This is not + // optimal, as it should technically be possible to avoid the cloning. This only + // affects very old contract artifacts though. + // TODO: optimize this to remove cloning. + + let patched_identifiers = source + .identifiers + .iter() + .map(|(key, value)| { + ( + key.to_owned(), + LegacyIdentifier { + decorators: value.decorators.to_owned(), + cairo_type: value + .cairo_type + .to_owned() + .map(|content| content.replace(": ", " : ")), + full_name: value.full_name.to_owned(), + members: value.members.to_owned().map(|map| { + map.iter() + .map(|(key, value)| { + ( + key.to_owned(), + LegacyIdentifierMember { + cairo_type: value.cairo_type.replace(": ", " : "), + offset: value.offset, + }, + ) + }) + .collect() + }), + references: value.references.to_owned(), + size: value.size, + pc: value.pc, + destination: value.destination.to_owned(), + r#type: value.r#type.to_owned(), + value: value.value.to_owned(), + }, + ) + }) + .collect::>(); + + HashVo::serialize( + &HashVo { + attributes: &source.attributes, + builtins: &source.builtins, + compiler_version: &source.compiler_version, + data: &source.data, + debug_info: &None, + hints: &source.hints, + identifiers: &patched_identifiers, + main_scope: &source.main_scope, + prime: &source.prime, + reference_manager: &source.reference_manager, + }, + serializer, + ) + } } } @@ -842,6 +904,14 @@ mod tests { "../../../test-data/contracts/cairo0/artifacts/pre-0.11.0/oz_account.hashes.json" ), ), + ( + include_str!( + "../../../test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.txt" + ), + include_str!( + "../../../test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.hashes.json" + ), + ), ] .into_iter() { @@ -879,6 +949,14 @@ mod tests { "../../../test-data/contracts/cairo0/artifacts/pre-0.11.0/oz_account.hashes.json" ), ), + ( + include_str!( + "../../../test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.txt" + ), + include_str!( + "../../../test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.hashes.json" + ), + ), ] .into_iter() { diff --git a/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.hashes.json b/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.hashes.json new file mode 100644 index 00000000..c3d64d45 --- /dev/null +++ b/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.hashes.json @@ -0,0 +1,4 @@ +{ + "hinted_class_hash": "0x2e2b816fbc785f0713c87a343e4ece749743c992231de6e3b2ae3d87bc349aa", + "class_hash": "0x3131fa018d520a037686ce3efddeab8f28895662f019ca3ca18a626650f7d1e" +} diff --git a/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.txt b/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.txt new file mode 100644 index 00000000..07c6be7f --- /dev/null +++ b/starknet-core/test-data/contracts/cairo0/artifacts/pre-0.10.0/braavos_proxy.txt @@ -0,0 +1 @@ +{"abi": [{"data": [{"name": "implementation", "type": "felt"}], "keys": [], "name": "Upgraded", "type": "event"}, {"inputs": [{"name": "implementation_address", "type": "felt"}, {"name": "initializer_selector", "type": "felt"}, {"name": "calldata_len", "type": "felt"}, {"name": "calldata", "type": "felt*"}], "name": "constructor", "outputs": [], "type": "constructor"}, {"inputs": [], "name": "get_implementation", "outputs": [{"name": "implementation", "type": "felt"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"name": "selector", "type": "felt"}, {"name": "calldata_size", "type": "felt"}, {"name": "calldata", "type": "felt*"}], "name": "__default__", "outputs": [{"name": "retdata_size", "type": "felt"}, {"name": "retdata", "type": "felt*"}], "type": "function"}, {"inputs": [{"name": "selector", "type": "felt"}, {"name": "calldata_size", "type": "felt"}, {"name": "calldata", "type": "felt*"}], "name": "__l1_default__", "outputs": [], "type": "l1_handler"}], "entry_points_by_type": {"CONSTRUCTOR": [{"selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", "offset": "0x91"}], "EXTERNAL": [{"selector": "0x0", "offset": "0xde"}, {"selector": "0x21691762da057c1b71f851f9b709e0c143628acf6e0cbc9735411a65663d747", "offset": "0xbd"}], "L1_HANDLER": [{"selector": "0x0", "offset": "0xf7"}]}, "program": {"prime": "0x800000000000011000000000000000000000000000000000000000000000001", "attributes": [], "identifiers": {"__main__.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "__main__.Proxy": {"destination": "src.upgrades.library.Proxy", "type": "alias"}, "__main__.__default__": {"decorators": ["external", "raw_input", "raw_output"], "pc": 204, "type": "function"}, "__main__.__default__.Args": {"full_name": "__main__.__default__.Args", "size": 3, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "calldata_size": {"offset": 1, "cairo_type": "felt"}, "calldata": {"offset": 2, "cairo_type": "felt*"}}, "type": "struct"}, "__main__.__default__.ImplicitArgs": {"full_name": "__main__.__default__.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "__main__.__default__.Return": {"cairo_type": "(retdata_size: felt, retdata: felt*)", "type": "type_definition"}, "__main__.__default__.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__main__.__l1_default__": {"decorators": ["l1_handler", "raw_input"], "pc": 231, "type": "function"}, "__main__.__l1_default__.Args": {"full_name": "__main__.__l1_default__.Args", "size": 3, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "calldata_size": {"offset": 1, "cairo_type": "felt"}, "calldata": {"offset": 2, "cairo_type": "felt*"}}, "type": "struct"}, "__main__.__l1_default__.ImplicitArgs": {"full_name": "__main__.__l1_default__.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "__main__.__l1_default__.Return": {"cairo_type": "()", "type": "type_definition"}, "__main__.__l1_default__.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__main__.constructor": {"decorators": ["constructor"], "pc": 128, "type": "function"}, "__main__.constructor.Args": {"full_name": "__main__.constructor.Args", "size": 4, "members": {"implementation_address": {"offset": 0, "cairo_type": "felt"}, "initializer_selector": {"offset": 1, "cairo_type": "felt"}, "calldata_len": {"offset": 2, "cairo_type": "felt"}, "calldata": {"offset": 3, "cairo_type": "felt*"}}, "type": "struct"}, "__main__.constructor.ImplicitArgs": {"full_name": "__main__.constructor.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "__main__.constructor.Return": {"cairo_type": "()", "type": "type_definition"}, "__main__.constructor.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__main__.get_implementation": {"decorators": ["view"], "pc": 174, "type": "function"}, "__main__.get_implementation.Args": {"full_name": "__main__.get_implementation.Args", "size": 0, "members": {}, "type": "struct"}, "__main__.get_implementation.ImplicitArgs": {"full_name": "__main__.get_implementation.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "__main__.get_implementation.Return": {"cairo_type": "(implementation: felt)", "type": "type_definition"}, "__main__.get_implementation.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__main__.library_call": {"destination": "starkware.starknet.common.syscalls.library_call", "type": "alias"}, "__main__.library_call_l1_handler": {"destination": "starkware.starknet.common.syscalls.library_call_l1_handler", "type": "alias"}, "__wrappers__.__default__": {"decorators": ["external", "raw_input", "raw_output"], "pc": 222, "type": "function"}, "__wrappers__.__default__.Args": {"full_name": "__wrappers__.__default__.Args", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.__default__.ImplicitArgs": {"full_name": "__wrappers__.__default__.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.__default__.Return": {"cairo_type": "(syscall_ptr: felt*, pedersen_ptr: starkware.cairo.common.cairo_builtins.HashBuiltin*, range_check_ptr: felt, size: felt, retdata: felt*)", "type": "type_definition"}, "__wrappers__.__default__.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__wrappers__.__default__.__wrapped_func": {"destination": "__main__.__default__", "type": "alias"}, "__wrappers__.__default___encode_return.memcpy": {"destination": "starkware.cairo.common.memcpy.memcpy", "type": "alias"}, "__wrappers__.__l1_default__": {"decorators": ["l1_handler", "raw_input"], "pc": 247, "type": "function"}, "__wrappers__.__l1_default__.Args": {"full_name": "__wrappers__.__l1_default__.Args", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.__l1_default__.ImplicitArgs": {"full_name": "__wrappers__.__l1_default__.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.__l1_default__.Return": {"cairo_type": "(syscall_ptr: felt*, pedersen_ptr: starkware.cairo.common.cairo_builtins.HashBuiltin*, range_check_ptr: felt, size: felt, retdata: felt*)", "type": "type_definition"}, "__wrappers__.__l1_default__.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__wrappers__.__l1_default__.__wrapped_func": {"destination": "__main__.__l1_default__", "type": "alias"}, "__wrappers__.__l1_default___encode_return.memcpy": {"destination": "starkware.cairo.common.memcpy.memcpy", "type": "alias"}, "__wrappers__.constructor": {"decorators": ["constructor"], "pc": 145, "type": "function"}, "__wrappers__.constructor.Args": {"full_name": "__wrappers__.constructor.Args", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.constructor.ImplicitArgs": {"full_name": "__wrappers__.constructor.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.constructor.Return": {"cairo_type": "(syscall_ptr: felt*, pedersen_ptr: starkware.cairo.common.cairo_builtins.HashBuiltin*, range_check_ptr: felt, size: felt, retdata: felt*)", "type": "type_definition"}, "__wrappers__.constructor.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__wrappers__.constructor.__wrapped_func": {"destination": "__main__.constructor", "type": "alias"}, "__wrappers__.constructor_encode_return.memcpy": {"destination": "starkware.cairo.common.memcpy.memcpy", "type": "alias"}, "__wrappers__.get_implementation": {"decorators": ["view"], "pc": 189, "type": "function"}, "__wrappers__.get_implementation.Args": {"full_name": "__wrappers__.get_implementation.Args", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.get_implementation.ImplicitArgs": {"full_name": "__wrappers__.get_implementation.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.get_implementation.Return": {"cairo_type": "(syscall_ptr: felt*, pedersen_ptr: starkware.cairo.common.cairo_builtins.HashBuiltin*, range_check_ptr: felt, size: felt, retdata: felt*)", "type": "type_definition"}, "__wrappers__.get_implementation.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "__wrappers__.get_implementation.__wrapped_func": {"destination": "__main__.get_implementation", "type": "alias"}, "__wrappers__.get_implementation_encode_return": {"decorators": [], "pc": 180, "type": "function"}, "__wrappers__.get_implementation_encode_return.Args": {"full_name": "__wrappers__.get_implementation_encode_return.Args", "size": 2, "members": {"ret_value": {"offset": 0, "cairo_type": "(implementation: felt)"}, "range_check_ptr": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "__wrappers__.get_implementation_encode_return.ImplicitArgs": {"full_name": "__wrappers__.get_implementation_encode_return.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "__wrappers__.get_implementation_encode_return.Return": {"cairo_type": "(range_check_ptr: felt, data_len: felt, data: felt*)", "type": "type_definition"}, "__wrappers__.get_implementation_encode_return.SIZEOF_LOCALS": {"value": 1, "type": "const"}, "__wrappers__.get_implementation_encode_return.memcpy": {"destination": "starkware.cairo.common.memcpy.memcpy", "type": "alias"}, "src.upgrades.library.FALSE": {"destination": "starkware.cairo.common.bool.FALSE", "type": "alias"}, "src.upgrades.library.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "src.upgrades.library.Proxy": {"type": "namespace"}, "src.upgrades.library.Proxy.Args": {"full_name": "src.upgrades.library.Proxy.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy._set_implementation": {"decorators": [], "pc": 107, "type": "function"}, "src.upgrades.library.Proxy._set_implementation.Args": {"full_name": "src.upgrades.library.Proxy._set_implementation.Args", "size": 1, "members": {"new_implementation": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy._set_implementation.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy._set_implementation.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy._set_implementation.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy._set_implementation.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy.get_implementation": {"decorators": [], "pc": 122, "type": "function"}, "src.upgrades.library.Proxy.get_implementation.Args": {"full_name": "src.upgrades.library.Proxy.get_implementation.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy.get_implementation.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy.get_implementation.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy.get_implementation.Return": {"cairo_type": "(implementation: felt)", "type": "type_definition"}, "src.upgrades.library.Proxy.get_implementation.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_admin": {"type": "namespace"}, "src.upgrades.library.Proxy_admin.Args": {"full_name": "src.upgrades.library.Proxy_admin.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_admin.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "src.upgrades.library.Proxy_admin.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_admin.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_admin.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy_admin.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_admin.hash2": {"destination": "starkware.cairo.common.hash.hash2", "type": "alias"}, "src.upgrades.library.Proxy_admin.normalize_address": {"destination": "starkware.starknet.common.storage.normalize_address", "type": "alias"}, "src.upgrades.library.Proxy_admin.storage_read": {"destination": "starkware.starknet.common.syscalls.storage_read", "type": "alias"}, "src.upgrades.library.Proxy_admin.storage_write": {"destination": "starkware.starknet.common.syscalls.storage_write", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address": {"type": "namespace"}, "src.upgrades.library.Proxy_implementation_address.Args": {"full_name": "src.upgrades.library.Proxy_implementation_address.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_implementation_address.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy_implementation_address.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_implementation_address.addr": {"decorators": [], "pc": 77, "type": "function"}, "src.upgrades.library.Proxy_implementation_address.addr.Args": {"full_name": "src.upgrades.library.Proxy_implementation_address.addr.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.addr.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_implementation_address.addr.ImplicitArgs", "size": 2, "members": {"pedersen_ptr": {"offset": 0, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.addr.Return": {"cairo_type": "(res: felt)", "type": "type_definition"}, "src.upgrades.library.Proxy_implementation_address.addr.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_implementation_address.hash2": {"destination": "starkware.cairo.common.hash.hash2", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address.normalize_address": {"destination": "starkware.starknet.common.storage.normalize_address", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address.read": {"decorators": [], "pc": 82, "type": "function"}, "src.upgrades.library.Proxy_implementation_address.read.Args": {"full_name": "src.upgrades.library.Proxy_implementation_address.read.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.read.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_implementation_address.read.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.read.Return": {"cairo_type": "(implementation_address: felt)", "type": "type_definition"}, "src.upgrades.library.Proxy_implementation_address.read.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_implementation_address.storage_read": {"destination": "starkware.starknet.common.syscalls.storage_read", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address.storage_write": {"destination": "starkware.starknet.common.syscalls.storage_write", "type": "alias"}, "src.upgrades.library.Proxy_implementation_address.write": {"decorators": [], "pc": 95, "type": "function"}, "src.upgrades.library.Proxy_implementation_address.write.Args": {"full_name": "src.upgrades.library.Proxy_implementation_address.write.Args", "size": 1, "members": {"value": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.write.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_implementation_address.write.ImplicitArgs", "size": 3, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "pedersen_ptr": {"offset": 1, "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*"}, "range_check_ptr": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Proxy_implementation_address.write.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy_implementation_address.write.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_initialized": {"type": "namespace"}, "src.upgrades.library.Proxy_initialized.Args": {"full_name": "src.upgrades.library.Proxy_initialized.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_initialized.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "src.upgrades.library.Proxy_initialized.ImplicitArgs": {"full_name": "src.upgrades.library.Proxy_initialized.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Proxy_initialized.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Proxy_initialized.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Proxy_initialized.hash2": {"destination": "starkware.cairo.common.hash.hash2", "type": "alias"}, "src.upgrades.library.Proxy_initialized.normalize_address": {"destination": "starkware.starknet.common.storage.normalize_address", "type": "alias"}, "src.upgrades.library.Proxy_initialized.storage_read": {"destination": "starkware.starknet.common.syscalls.storage_read", "type": "alias"}, "src.upgrades.library.Proxy_initialized.storage_write": {"destination": "starkware.starknet.common.syscalls.storage_write", "type": "alias"}, "src.upgrades.library.TRUE": {"destination": "starkware.cairo.common.bool.TRUE", "type": "alias"}, "src.upgrades.library.Upgraded": {"type": "namespace"}, "src.upgrades.library.Upgraded.Args": {"full_name": "src.upgrades.library.Upgraded.Args", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Upgraded.ImplicitArgs": {"full_name": "src.upgrades.library.Upgraded.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "src.upgrades.library.Upgraded.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Upgraded.SELECTOR": {"value": 1291924484015741933195105472014600539495279993452337828418116470835452386035, "type": "const"}, "src.upgrades.library.Upgraded.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "src.upgrades.library.Upgraded.alloc": {"destination": "starkware.cairo.common.alloc.alloc", "type": "alias"}, "src.upgrades.library.Upgraded.emit": {"decorators": [], "pc": 53, "type": "function"}, "src.upgrades.library.Upgraded.emit.Args": {"full_name": "src.upgrades.library.Upgraded.emit.Args", "size": 1, "members": {"implementation": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Upgraded.emit.ImplicitArgs": {"full_name": "src.upgrades.library.Upgraded.emit.ImplicitArgs", "size": 2, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}, "range_check_ptr": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "src.upgrades.library.Upgraded.emit.Return": {"cairo_type": "()", "type": "type_definition"}, "src.upgrades.library.Upgraded.emit.SIZEOF_LOCALS": {"value": 2, "type": "const"}, "src.upgrades.library.Upgraded.emit_event": {"destination": "starkware.starknet.common.syscalls.emit_event", "type": "alias"}, "src.upgrades.library.Upgraded.memcpy": {"destination": "starkware.cairo.common.memcpy.memcpy", "type": "alias"}, "src.upgrades.library.get_caller_address": {"destination": "starkware.starknet.common.syscalls.get_caller_address", "type": "alias"}, "starkware.cairo.common.alloc.alloc": {"decorators": [], "pc": 0, "type": "function"}, "starkware.cairo.common.alloc.alloc.Args": {"full_name": "starkware.cairo.common.alloc.alloc.Args", "size": 0, "members": {}, "type": "struct"}, "starkware.cairo.common.alloc.alloc.ImplicitArgs": {"full_name": "starkware.cairo.common.alloc.alloc.ImplicitArgs", "size": 0, "members": {}, "type": "struct"}, "starkware.cairo.common.alloc.alloc.Return": {"cairo_type": "(ptr: felt*)", "type": "type_definition"}, "starkware.cairo.common.alloc.alloc.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.cairo.common.bool.FALSE": {"value": 0, "type": "const"}, "starkware.cairo.common.bool.TRUE": {"value": 1, "type": "const"}, "starkware.cairo.common.cairo_builtins.BitwiseBuiltin": {"full_name": "starkware.cairo.common.cairo_builtins.BitwiseBuiltin", "size": 5, "members": {"x": {"offset": 0, "cairo_type": "felt"}, "y": {"offset": 1, "cairo_type": "felt"}, "x_and_y": {"offset": 2, "cairo_type": "felt"}, "x_xor_y": {"offset": 3, "cairo_type": "felt"}, "x_or_y": {"offset": 4, "cairo_type": "felt"}}, "type": "struct"}, "starkware.cairo.common.cairo_builtins.EcOpBuiltin": {"full_name": "starkware.cairo.common.cairo_builtins.EcOpBuiltin", "size": 7, "members": {"p": {"offset": 0, "cairo_type": "starkware.cairo.common.ec_point.EcPoint"}, "q": {"offset": 2, "cairo_type": "starkware.cairo.common.ec_point.EcPoint"}, "m": {"offset": 4, "cairo_type": "felt"}, "r": {"offset": 5, "cairo_type": "starkware.cairo.common.ec_point.EcPoint"}}, "type": "struct"}, "starkware.cairo.common.cairo_builtins.EcPoint": {"destination": "starkware.cairo.common.ec_point.EcPoint", "type": "alias"}, "starkware.cairo.common.cairo_builtins.HashBuiltin": {"full_name": "starkware.cairo.common.cairo_builtins.HashBuiltin", "size": 3, "members": {"x": {"offset": 0, "cairo_type": "felt"}, "y": {"offset": 1, "cairo_type": "felt"}, "result": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "starkware.cairo.common.cairo_builtins.SignatureBuiltin": {"full_name": "starkware.cairo.common.cairo_builtins.SignatureBuiltin", "size": 2, "members": {"pub_key": {"offset": 0, "cairo_type": "felt"}, "message": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "starkware.cairo.common.dict_access.DictAccess": {"full_name": "starkware.cairo.common.dict_access.DictAccess", "size": 3, "members": {"key": {"offset": 0, "cairo_type": "felt"}, "prev_value": {"offset": 1, "cairo_type": "felt"}, "new_value": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "starkware.cairo.common.ec_point.EcPoint": {"full_name": "starkware.cairo.common.ec_point.EcPoint", "size": 2, "members": {"x": {"offset": 0, "cairo_type": "felt"}, "y": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "starkware.cairo.common.hash.HashBuiltin": {"destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", "type": "alias"}, "starkware.starknet.common.storage.ADDR_BOUND": {"value": -106710729501573572985208420194530329073740042555888586719489, "type": "const"}, "starkware.starknet.common.storage.MAX_STORAGE_ITEM_SIZE": {"value": 256, "type": "const"}, "starkware.starknet.common.storage.assert_250_bit": {"destination": "starkware.cairo.common.math.assert_250_bit", "type": "alias"}, "starkware.starknet.common.syscalls.CALL_CONTRACT_SELECTOR": {"value": 20853273475220472486191784820, "type": "const"}, "starkware.starknet.common.syscalls.CallContract": {"full_name": "starkware.starknet.common.syscalls.CallContract", "size": 7, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.CallContractRequest"}, "response": {"offset": 5, "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.CallContractRequest": {"full_name": "starkware.starknet.common.syscalls.CallContractRequest", "size": 5, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "contract_address": {"offset": 1, "cairo_type": "felt"}, "function_selector": {"offset": 2, "cairo_type": "felt"}, "calldata_size": {"offset": 3, "cairo_type": "felt"}, "calldata": {"offset": 4, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.CallContractResponse": {"full_name": "starkware.starknet.common.syscalls.CallContractResponse", "size": 2, "members": {"retdata_size": {"offset": 0, "cairo_type": "felt"}, "retdata": {"offset": 1, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.DELEGATE_CALL_SELECTOR": {"value": 21167594061783206823196716140, "type": "const"}, "starkware.starknet.common.syscalls.DELEGATE_L1_HANDLER_SELECTOR": {"value": 23274015802972845247556842986379118667122, "type": "const"}, "starkware.starknet.common.syscalls.DEPLOY_SELECTOR": {"value": 75202468540281, "type": "const"}, "starkware.starknet.common.syscalls.Deploy": {"full_name": "starkware.starknet.common.syscalls.Deploy", "size": 9, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.DeployRequest"}, "response": {"offset": 6, "cairo_type": "starkware.starknet.common.syscalls.DeployResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.DeployRequest": {"full_name": "starkware.starknet.common.syscalls.DeployRequest", "size": 6, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "class_hash": {"offset": 1, "cairo_type": "felt"}, "contract_address_salt": {"offset": 2, "cairo_type": "felt"}, "constructor_calldata_size": {"offset": 3, "cairo_type": "felt"}, "constructor_calldata": {"offset": 4, "cairo_type": "felt*"}, "reserved": {"offset": 5, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.DeployResponse": {"full_name": "starkware.starknet.common.syscalls.DeployResponse", "size": 3, "members": {"contract_address": {"offset": 0, "cairo_type": "felt"}, "constructor_retdata_size": {"offset": 1, "cairo_type": "felt"}, "constructor_retdata": {"offset": 2, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.DictAccess": {"destination": "starkware.cairo.common.dict_access.DictAccess", "type": "alias"}, "starkware.starknet.common.syscalls.EMIT_EVENT_SELECTOR": {"value": 1280709301550335749748, "type": "const"}, "starkware.starknet.common.syscalls.EmitEvent": {"full_name": "starkware.starknet.common.syscalls.EmitEvent", "size": 5, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "keys_len": {"offset": 1, "cairo_type": "felt"}, "keys": {"offset": 2, "cairo_type": "felt*"}, "data_len": {"offset": 3, "cairo_type": "felt"}, "data": {"offset": 4, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GET_BLOCK_NUMBER_SELECTOR": {"value": 1448089106835523001438702345020786, "type": "const"}, "starkware.starknet.common.syscalls.GET_BLOCK_TIMESTAMP_SELECTOR": {"value": 24294903732626645868215235778792757751152, "type": "const"}, "starkware.starknet.common.syscalls.GET_CALLER_ADDRESS_SELECTOR": {"value": 94901967781393078444254803017658102643, "type": "const"}, "starkware.starknet.common.syscalls.GET_CONTRACT_ADDRESS_SELECTOR": {"value": 6219495360805491471215297013070624192820083, "type": "const"}, "starkware.starknet.common.syscalls.GET_SEQUENCER_ADDRESS_SELECTOR": {"value": 1592190833581991703053805829594610833820054387, "type": "const"}, "starkware.starknet.common.syscalls.GET_TX_INFO_SELECTOR": {"value": 1317029390204112103023, "type": "const"}, "starkware.starknet.common.syscalls.GET_TX_SIGNATURE_SELECTOR": {"value": 1448089128652340074717162277007973, "type": "const"}, "starkware.starknet.common.syscalls.GetBlockNumber": {"full_name": "starkware.starknet.common.syscalls.GetBlockNumber", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetBlockNumberRequest": {"full_name": "starkware.starknet.common.syscalls.GetBlockNumberRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetBlockNumberResponse": {"full_name": "starkware.starknet.common.syscalls.GetBlockNumberResponse", "size": 1, "members": {"block_number": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetBlockTimestamp": {"full_name": "starkware.starknet.common.syscalls.GetBlockTimestamp", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetBlockTimestampRequest": {"full_name": "starkware.starknet.common.syscalls.GetBlockTimestampRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetBlockTimestampResponse": {"full_name": "starkware.starknet.common.syscalls.GetBlockTimestampResponse", "size": 1, "members": {"block_timestamp": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetCallerAddress": {"full_name": "starkware.starknet.common.syscalls.GetCallerAddress", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetCallerAddressRequest": {"full_name": "starkware.starknet.common.syscalls.GetCallerAddressRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetCallerAddressResponse": {"full_name": "starkware.starknet.common.syscalls.GetCallerAddressResponse", "size": 1, "members": {"caller_address": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetContractAddress": {"full_name": "starkware.starknet.common.syscalls.GetContractAddress", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetContractAddressRequest": {"full_name": "starkware.starknet.common.syscalls.GetContractAddressRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetContractAddressResponse": {"full_name": "starkware.starknet.common.syscalls.GetContractAddressResponse", "size": 1, "members": {"contract_address": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetSequencerAddress": {"full_name": "starkware.starknet.common.syscalls.GetSequencerAddress", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetSequencerAddressRequest": {"full_name": "starkware.starknet.common.syscalls.GetSequencerAddressRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetSequencerAddressResponse": {"full_name": "starkware.starknet.common.syscalls.GetSequencerAddressResponse", "size": 1, "members": {"sequencer_address": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxInfo": {"full_name": "starkware.starknet.common.syscalls.GetTxInfo", "size": 2, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxInfoRequest": {"full_name": "starkware.starknet.common.syscalls.GetTxInfoRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxInfoResponse": {"full_name": "starkware.starknet.common.syscalls.GetTxInfoResponse", "size": 1, "members": {"tx_info": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.TxInfo*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxSignature": {"full_name": "starkware.starknet.common.syscalls.GetTxSignature", "size": 3, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureRequest"}, "response": {"offset": 1, "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxSignatureRequest": {"full_name": "starkware.starknet.common.syscalls.GetTxSignatureRequest", "size": 1, "members": {"selector": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.GetTxSignatureResponse": {"full_name": "starkware.starknet.common.syscalls.GetTxSignatureResponse", "size": 2, "members": {"signature_len": {"offset": 0, "cairo_type": "felt"}, "signature": {"offset": 1, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.LIBRARY_CALL_L1_HANDLER_SELECTOR": {"value": 436233452754198157705746250789557519228244616562, "type": "const"}, "starkware.starknet.common.syscalls.LIBRARY_CALL_SELECTOR": {"value": 92376026794327011772951660, "type": "const"}, "starkware.starknet.common.syscalls.LibraryCall": {"full_name": "starkware.starknet.common.syscalls.LibraryCall", "size": 7, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.LibraryCallRequest"}, "response": {"offset": 5, "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.LibraryCallRequest": {"full_name": "starkware.starknet.common.syscalls.LibraryCallRequest", "size": 5, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "class_hash": {"offset": 1, "cairo_type": "felt"}, "function_selector": {"offset": 2, "cairo_type": "felt"}, "calldata_size": {"offset": 3, "cairo_type": "felt"}, "calldata": {"offset": 4, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.SEND_MESSAGE_TO_L1_SELECTOR": {"value": 433017908768303439907196859243777073, "type": "const"}, "starkware.starknet.common.syscalls.STORAGE_READ_SELECTOR": {"value": 100890693370601760042082660, "type": "const"}, "starkware.starknet.common.syscalls.STORAGE_WRITE_SELECTOR": {"value": 25828017502874050592466629733, "type": "const"}, "starkware.starknet.common.syscalls.SendMessageToL1SysCall": {"full_name": "starkware.starknet.common.syscalls.SendMessageToL1SysCall", "size": 4, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "to_address": {"offset": 1, "cairo_type": "felt"}, "payload_size": {"offset": 2, "cairo_type": "felt"}, "payload_ptr": {"offset": 3, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.StorageRead": {"full_name": "starkware.starknet.common.syscalls.StorageRead", "size": 3, "members": {"request": {"offset": 0, "cairo_type": "starkware.starknet.common.syscalls.StorageReadRequest"}, "response": {"offset": 2, "cairo_type": "starkware.starknet.common.syscalls.StorageReadResponse"}}, "type": "struct"}, "starkware.starknet.common.syscalls.StorageReadRequest": {"full_name": "starkware.starknet.common.syscalls.StorageReadRequest", "size": 2, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "address": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.StorageReadResponse": {"full_name": "starkware.starknet.common.syscalls.StorageReadResponse", "size": 1, "members": {"value": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.StorageWrite": {"full_name": "starkware.starknet.common.syscalls.StorageWrite", "size": 3, "members": {"selector": {"offset": 0, "cairo_type": "felt"}, "address": {"offset": 1, "cairo_type": "felt"}, "value": {"offset": 2, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.TxInfo": {"full_name": "starkware.starknet.common.syscalls.TxInfo", "size": 7, "members": {"version": {"offset": 0, "cairo_type": "felt"}, "account_contract_address": {"offset": 1, "cairo_type": "felt"}, "max_fee": {"offset": 2, "cairo_type": "felt"}, "signature_len": {"offset": 3, "cairo_type": "felt"}, "signature": {"offset": 4, "cairo_type": "felt*"}, "transaction_hash": {"offset": 5, "cairo_type": "felt"}, "chain_id": {"offset": 6, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.emit_event": {"decorators": [], "pc": 43, "type": "function"}, "starkware.starknet.common.syscalls.emit_event.Args": {"full_name": "starkware.starknet.common.syscalls.emit_event.Args", "size": 4, "members": {"keys_len": {"offset": 0, "cairo_type": "felt"}, "keys": {"offset": 1, "cairo_type": "felt*"}, "data_len": {"offset": 2, "cairo_type": "felt"}, "data": {"offset": 3, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.emit_event.ImplicitArgs": {"full_name": "starkware.starknet.common.syscalls.emit_event.ImplicitArgs", "size": 1, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.emit_event.Return": {"cairo_type": "()", "type": "type_definition"}, "starkware.starknet.common.syscalls.emit_event.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.starknet.common.syscalls.emit_event.syscall_ptr": {"references": [{"pc": 43, "ap_tracking_data": {"offset": 0, "group": 5}, "value": "[cast(fp + (-7), felt**)]"}, {"pc": 50, "ap_tracking_data": {"offset": 1, "group": 5}, "value": "cast([fp + (-7)] + 5, felt*)"}], "full_name": "starkware.starknet.common.syscalls.emit_event.syscall_ptr", "cairo_type": "felt*", "type": "reference"}, "starkware.starknet.common.syscalls.library_call": {"decorators": [], "pc": 3, "type": "function"}, "starkware.starknet.common.syscalls.library_call.Args": {"full_name": "starkware.starknet.common.syscalls.library_call.Args", "size": 4, "members": {"class_hash": {"offset": 0, "cairo_type": "felt"}, "function_selector": {"offset": 1, "cairo_type": "felt"}, "calldata_size": {"offset": 2, "cairo_type": "felt"}, "calldata": {"offset": 3, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.library_call.ImplicitArgs": {"full_name": "starkware.starknet.common.syscalls.library_call.ImplicitArgs", "size": 1, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.library_call.Return": {"cairo_type": "(retdata_size: felt, retdata: felt*)", "type": "type_definition"}, "starkware.starknet.common.syscalls.library_call.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.starknet.common.syscalls.library_call.syscall_ptr": {"references": [{"pc": 3, "ap_tracking_data": {"offset": 0, "group": 1}, "value": "[cast(fp + (-7), felt**)]"}, {"pc": 10, "ap_tracking_data": {"offset": 1, "group": 1}, "value": "cast([fp + (-7)] + 7, felt*)"}], "full_name": "starkware.starknet.common.syscalls.library_call.syscall_ptr", "cairo_type": "felt*", "type": "reference"}, "starkware.starknet.common.syscalls.library_call_l1_handler": {"decorators": [], "pc": 15, "type": "function"}, "starkware.starknet.common.syscalls.library_call_l1_handler.Args": {"full_name": "starkware.starknet.common.syscalls.library_call_l1_handler.Args", "size": 4, "members": {"class_hash": {"offset": 0, "cairo_type": "felt"}, "function_selector": {"offset": 1, "cairo_type": "felt"}, "calldata_size": {"offset": 2, "cairo_type": "felt"}, "calldata": {"offset": 3, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.library_call_l1_handler.ImplicitArgs": {"full_name": "starkware.starknet.common.syscalls.library_call_l1_handler.ImplicitArgs", "size": 1, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.library_call_l1_handler.Return": {"cairo_type": "(retdata_size: felt, retdata: felt*)", "type": "type_definition"}, "starkware.starknet.common.syscalls.library_call_l1_handler.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.starknet.common.syscalls.library_call_l1_handler.syscall_ptr": {"references": [{"pc": 15, "ap_tracking_data": {"offset": 0, "group": 2}, "value": "[cast(fp + (-7), felt**)]"}, {"pc": 22, "ap_tracking_data": {"offset": 1, "group": 2}, "value": "cast([fp + (-7)] + 7, felt*)"}], "full_name": "starkware.starknet.common.syscalls.library_call_l1_handler.syscall_ptr", "cairo_type": "felt*", "type": "reference"}, "starkware.starknet.common.syscalls.storage_read": {"decorators": [], "pc": 27, "type": "function"}, "starkware.starknet.common.syscalls.storage_read.Args": {"full_name": "starkware.starknet.common.syscalls.storage_read.Args", "size": 1, "members": {"address": {"offset": 0, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.storage_read.ImplicitArgs": {"full_name": "starkware.starknet.common.syscalls.storage_read.ImplicitArgs", "size": 1, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.storage_read.Return": {"cairo_type": "(value: felt)", "type": "type_definition"}, "starkware.starknet.common.syscalls.storage_read.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.starknet.common.syscalls.storage_read.syscall_ptr": {"references": [{"pc": 27, "ap_tracking_data": {"offset": 0, "group": 3}, "value": "[cast(fp + (-4), felt**)]"}, {"pc": 31, "ap_tracking_data": {"offset": 1, "group": 3}, "value": "cast([fp + (-4)] + 3, felt*)"}], "full_name": "starkware.starknet.common.syscalls.storage_read.syscall_ptr", "cairo_type": "felt*", "type": "reference"}, "starkware.starknet.common.syscalls.storage_write": {"decorators": [], "pc": 35, "type": "function"}, "starkware.starknet.common.syscalls.storage_write.Args": {"full_name": "starkware.starknet.common.syscalls.storage_write.Args", "size": 2, "members": {"address": {"offset": 0, "cairo_type": "felt"}, "value": {"offset": 1, "cairo_type": "felt"}}, "type": "struct"}, "starkware.starknet.common.syscalls.storage_write.ImplicitArgs": {"full_name": "starkware.starknet.common.syscalls.storage_write.ImplicitArgs", "size": 1, "members": {"syscall_ptr": {"offset": 0, "cairo_type": "felt*"}}, "type": "struct"}, "starkware.starknet.common.syscalls.storage_write.Return": {"cairo_type": "()", "type": "type_definition"}, "starkware.starknet.common.syscalls.storage_write.SIZEOF_LOCALS": {"value": 0, "type": "const"}, "starkware.starknet.common.syscalls.storage_write.syscall_ptr": {"references": [{"pc": 35, "ap_tracking_data": {"offset": 0, "group": 4}, "value": "[cast(fp + (-5), felt**)]"}, {"pc": 40, "ap_tracking_data": {"offset": 1, "group": 4}, "value": "cast([fp + (-5)] + 3, felt*)"}], "full_name": "starkware.starknet.common.syscalls.storage_write.syscall_ptr", "cairo_type": "felt*", "type": "reference"}}, "debug_info": null, "data": ["0x40780017fff7fff", "0x1", "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x4c69627261727943616c6c", "0x400280007ff97fff", "0x400380017ff97ffa", "0x400380027ff97ffb", "0x400380037ff97ffc", "0x400380047ff97ffd", "0x482680017ff98000", "0x7", "0x480280057ff98000", "0x480280067ff98000", "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x4c69627261727943616c6c4c3148616e646c6572", "0x400280007ff97fff", "0x400380017ff97ffa", "0x400380027ff97ffb", "0x400380037ff97ffc", "0x400380047ff97ffd", "0x482680017ff98000", "0x7", "0x480280057ff98000", "0x480280067ff98000", "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x53746f7261676552656164", "0x400280007ffc7fff", "0x400380017ffc7ffd", "0x482680017ffc8000", "0x3", "0x480280027ffc8000", "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x53746f726167655772697465", "0x400280007ffb7fff", "0x400380017ffb7ffc", "0x400380027ffb7ffd", "0x482680017ffb8000", "0x3", "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x456d69744576656e74", "0x400280007ff97fff", "0x400380017ff97ffa", "0x400380027ff97ffb", "0x400380037ff97ffc", "0x400380047ff97ffd", "0x482680017ff98000", "0x5", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x2", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffca", "0x40137fff7fff8000", "0x480680017fff8000", "0x2db340e6c609371026731f47050d3976552c89b4fbb012941663841c59d1af3", "0x4002800080007fff", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc4", "0x40137fff7fff8001", "0x4003800080017ffd", "0x4826800180018000", "0x1", "0x480a7ffb7fff8000", "0x480680017fff8000", "0x1", "0x480a80007fff8000", "0x4828800180007ffc", "0x480a80017fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe3", "0x480a7ffc7fff8000", "0x208b7fff7fff7ffe", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x480680017fff8000", "0x3ad34fad732b51fe0d1a1350f149f21a0cf14a9382c9c6e7b262c4e0c8dbf18", "0x208b7fff7fff7ffe", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffa", "0x480a7ffb7fff8000", "0x48127ffe7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc4", "0x48127ffe7fff8000", "0x48127ff57fff8000", "0x48127ff57fff8000", "0x48127ffc7fff8000", "0x208b7fff7fff7ffe", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", "0x480a7ffa7fff8000", "0x48127ffe7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffbe", "0x48127ff67fff8000", "0x48127ff67fff8000", "0x208b7fff7fff7ffe", "0x480a7ffa7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff1", "0x48127ffd7fff8000", "0x48127ffe7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc2", "0x48127ffe7fff8000", "0x48127fe47fff8000", "0x48127ffd7fff8000", "0x208b7fff7fff7ffe", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd6", "0x208b7fff7fff7ffe", "0x480a7ff77fff8000", "0x480a7ff87fff8000", "0x480a7ff97fff8000", "0x480a7ffa7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe8", "0x48127ffd7fff8000", "0x480a7ffa7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff79", "0x48127ffd7fff8000", "0x48127ff27fff8000", "0x48127ff27fff8000", "0x208b7fff7fff7ffe", "0x480280027ffb8000", "0x480280027ffd8000", "0x400080007ffe7fff", "0x482680017ffd8000", "0x3", "0x480280027ffd8000", "0x48307fff7ffe8000", "0x402a7ffd7ffc7fff", "0x480280027ffb8000", "0x480280007ffb8000", "0x480280017ffb8000", "0x482480017ffd8000", "0x1", "0x480280007ffd8000", "0x480280017ffd8000", "0x480280027ffd8000", "0x482680017ffd8000", "0x3", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde", "0x40780017fff7fff", "0x1", "0x48127ffc7fff8000", "0x48127ffc7fff8000", "0x48127ffc7fff8000", "0x480680017fff8000", "0x0", "0x48127ffb7fff8000", "0x208b7fff7fff7ffe", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffca", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x1", "0x4003800080007ffc", "0x4826800180008000", "0x1", "0x480a7ffd7fff8000", "0x4828800080007ffe", "0x480a80007fff8000", "0x208b7fff7fff7ffe", "0x402b7ffd7ffc7ffd", "0x480280007ffb8000", "0x480280017ffb8000", "0x480280027ffb8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffee", "0x48127ffe7fff8000", "0x1104800180018000", "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff1", "0x48127ff47fff8000", "0x48127ff47fff8000", "0x48127ffb7fff8000", "0x48127ffb7fff8000", "0x48127ffb7fff8000", "0x208b7fff7fff7ffe", "0x480a7ff87fff8000", "0x480a7ff97fff8000", "0x480a7ffa7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffac", "0x48127ffc7fff8000", "0x48127ffe7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff2e", "0x48127ffd7fff8000", "0x48127ff17fff8000", "0x48127ff17fff8000", "0x48127ffb7fff8000", "0x48127ffb7fff8000", "0x208b7fff7fff7ffe", "0x480280007ffb8000", "0x480280017ffb8000", "0x480280027ffb8000", "0x480a7ffa7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe9", "0x208b7fff7fff7ffe", "0x480a7ff87fff8000", "0x480a7ff97fff8000", "0x480a7ffa7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff91", "0x48127ffc7fff8000", "0x48127ffe7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff1f", "0x48127ffd7fff8000", "0x48127ff17fff8000", "0x48127ff17fff8000", "0x208b7fff7fff7ffe", "0x480280007ffb8000", "0x480280017ffb8000", "0x480280027ffb8000", "0x480a7ffa7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffeb", "0x40780017fff7fff", "0x1", "0x48127ffc7fff8000", "0x48127ffc7fff8000", "0x48127ffc7fff8000", "0x480680017fff8000", "0x0", "0x48127ffb7fff8000", "0x208b7fff7fff7ffe"], "builtins": ["pedersen", "range_check"], "hints": {"0": [{"code": "memory[ap] = segments.add()", "flow_tracking_data": {"reference_ids": {}, "ap_tracking": {"offset": 0, "group": 0}}, "accessible_scopes": ["starkware.cairo.common.alloc", "starkware.cairo.common.alloc.alloc"]}], "10": [{"code": "syscall_handler.library_call(segments=segments, syscall_ptr=ids.syscall_ptr)", "flow_tracking_data": {"reference_ids": {"starkware.starknet.common.syscalls.library_call.syscall_ptr": 0}, "ap_tracking": {"offset": 1, "group": 1}}, "accessible_scopes": ["starkware.starknet.common.syscalls", "starkware.starknet.common.syscalls.library_call"]}], "22": [{"code": "syscall_handler.library_call_l1_handler(segments=segments, syscall_ptr=ids.syscall_ptr)", "flow_tracking_data": {"reference_ids": {"starkware.starknet.common.syscalls.library_call_l1_handler.syscall_ptr": 1}, "ap_tracking": {"offset": 1, "group": 2}}, "accessible_scopes": ["starkware.starknet.common.syscalls", "starkware.starknet.common.syscalls.library_call_l1_handler"]}], "31": [{"code": "syscall_handler.storage_read(segments=segments, syscall_ptr=ids.syscall_ptr)", "flow_tracking_data": {"reference_ids": {"starkware.starknet.common.syscalls.storage_read.syscall_ptr": 2}, "ap_tracking": {"offset": 1, "group": 3}}, "accessible_scopes": ["starkware.starknet.common.syscalls", "starkware.starknet.common.syscalls.storage_read"]}], "40": [{"code": "syscall_handler.storage_write(segments=segments, syscall_ptr=ids.syscall_ptr)", "flow_tracking_data": {"reference_ids": {"starkware.starknet.common.syscalls.storage_write.syscall_ptr": 3}, "ap_tracking": {"offset": 1, "group": 4}}, "accessible_scopes": ["starkware.starknet.common.syscalls", "starkware.starknet.common.syscalls.storage_write"]}], "50": [{"code": "syscall_handler.emit_event(segments=segments, syscall_ptr=ids.syscall_ptr)", "flow_tracking_data": {"reference_ids": {"starkware.starknet.common.syscalls.emit_event.syscall_ptr": 4}, "ap_tracking": {"offset": 1, "group": 5}}, "accessible_scopes": ["starkware.starknet.common.syscalls", "starkware.starknet.common.syscalls.emit_event"]}], "165": [{"code": "memory[ap] = segments.add()", "flow_tracking_data": {"reference_ids": {}, "ap_tracking": {"offset": 85, "group": 13}}, "accessible_scopes": ["__main__", "__main__", "__wrappers__", "__wrappers__.constructor"]}], "180": [{"code": "memory[ap] = segments.add()", "flow_tracking_data": {"reference_ids": {}, "ap_tracking": {"offset": 0, "group": 15}}, "accessible_scopes": ["__main__", "__main__", "__wrappers__", "__wrappers__.get_implementation_encode_return"]}], "255": [{"code": "memory[ap] = segments.add()", "flow_tracking_data": {"reference_ids": {}, "ap_tracking": {"offset": 50, "group": 20}}, "accessible_scopes": ["__main__", "__main__", "__wrappers__", "__wrappers__.__l1_default__"]}]}, "main_scope": "__main__", "reference_manager": {"references": [{"pc": 3, "ap_tracking_data": {"offset": 0, "group": 1}, "value": "[cast(fp + (-7), felt**)]"}, {"pc": 15, "ap_tracking_data": {"offset": 0, "group": 2}, "value": "[cast(fp + (-7), felt**)]"}, {"pc": 27, "ap_tracking_data": {"offset": 0, "group": 3}, "value": "[cast(fp + (-4), felt**)]"}, {"pc": 35, "ap_tracking_data": {"offset": 0, "group": 4}, "value": "[cast(fp + (-5), felt**)]"}, {"pc": 43, "ap_tracking_data": {"offset": 0, "group": 5}, "value": "[cast(fp + (-7), felt**)]"}]}}} \ No newline at end of file diff --git a/starknet-macros/Cargo.toml b/starknet-macros/Cargo.toml index 8705f4d9..d51b0369 100644 --- a/starknet-macros/Cargo.toml +++ b/starknet-macros/Cargo.toml @@ -16,7 +16,7 @@ keywords = ["ethereum", "starknet", "web3"] proc-macro = true [dependencies] -starknet-core = { version = "0.6.0", path = "../starknet-core" } +starknet-core = { version = "0.6.1", path = "../starknet-core" } starknet-contract = { version = "0.5.0", path = "../starknet-contract" } proc-macro2 = "1.0" quote = "1.0" diff --git a/starknet-providers/Cargo.toml b/starknet-providers/Cargo.toml index c728e2da..3498b63e 100644 --- a/starknet-providers/Cargo.toml +++ b/starknet-providers/Cargo.toml @@ -14,7 +14,7 @@ keywords = ["ethereum", "starknet", "web3"] exclude = ["test-data/**"] [dependencies] -starknet-core = { version = "0.6.0", path = "../starknet-core" } +starknet-core = { version = "0.6.1", path = "../starknet-core" } async-trait = "0.1.68" auto_impl = "1.0.1" ethereum-types = "0.14.1" diff --git a/starknet-signers/Cargo.toml b/starknet-signers/Cargo.toml index b4d7cd47..43e12cd1 100644 --- a/starknet-signers/Cargo.toml +++ b/starknet-signers/Cargo.toml @@ -13,7 +13,7 @@ Starknet signer implementations keywords = ["ethereum", "starknet", "web3"] [dependencies] -starknet-core = { version = "0.6.0", path = "../starknet-core" } +starknet-core = { version = "0.6.1", path = "../starknet-core" } starknet-crypto = { version = "0.6.0", path = "../starknet-crypto" } async-trait = "0.1.68" auto_impl = "1.0.1"