diff --git a/.env.example b/.env.example index bc54235..f26ac88 100644 --- a/.env.example +++ b/.env.example @@ -10,4 +10,7 @@ ROLLUP_PRIV_KEY="" ROLLUP_SEQ_URL="" SN_OS_CONFIG_HASH_VERSION="" SN_OS_PROGRAM_HASH="" -CROSS_CHAIN_WAIT_TIME=0 \ No newline at end of file +CROSS_CHAIN_WAIT_TIME=0 +L1_MULTISIG_ADDRESS="" +L2_MULTISIG_ADDRESS="" +VERIFIER_ADDRESS="" \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index e7b28a2..ade0e95 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2442,11 +2442,12 @@ dependencies = [ [[package]] name = "ethereum-instance" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "dirs", "ethers", "hex", + "log", "serde_json", "thiserror", "utils", @@ -3736,6 +3737,7 @@ dependencies = [ "async-lock", "async-trait", "blockifier", + "bytes", "cairo-vm", "clap", "dotenv", @@ -4255,7 +4257,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" dependencies = [ - "proc-macro-crate 3.1.0", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 2.0.63", @@ -6334,7 +6336,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "starkgate-manager-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", @@ -6348,7 +6350,7 @@ dependencies = [ [[package]] name = "starkgate-registry-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", @@ -6406,7 +6408,7 @@ dependencies = [ [[package]] name = "starknet-core-contract-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", @@ -6526,7 +6528,7 @@ dependencies = [ [[package]] name = "starknet-erc20-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethereum-instance", @@ -6541,7 +6543,7 @@ dependencies = [ [[package]] name = "starknet-eth-bridge-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", @@ -6599,7 +6601,7 @@ dependencies = [ [[package]] name = "starknet-proxy-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethereum-instance", @@ -6629,7 +6631,7 @@ dependencies = [ [[package]] name = "starknet-token-bridge-client" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", @@ -7375,7 +7377,7 @@ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ "cfg-if", "digest 0.10.7", - "rand 0.8.5", + "rand 0.7.3", "static_assertions", ] @@ -7493,7 +7495,7 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "utils" version = "0.1.0" -source = "git+https://github.com/karnotxyz/zaun?branch=main#ebb370c87c0293bd24c081bfe261d020dea891dc" +source = "git+https://github.com/karnotxyz/zaun?branch=feat/proxy-update#8f3581f94bb85abf9554df3f4e8aaab029d9e96f" dependencies = [ "async-trait", "ethers", diff --git a/Cargo.toml b/Cargo.toml index 4571777..899b0a5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,15 +22,15 @@ sp-core = { git = "https://github.com/massalabs/polkadot-sdk", branch = "release ] } # Zaun Deps -ethereum-instance = { git = "https://github.com/karnotxyz/zaun", package = "ethereum-instance", branch = "main" } -starkgate-manager-client = { git = "https://github.com/karnotxyz/zaun", package = "starkgate-manager-client", branch = "main" } -starkgate-registry-client = { git = "https://github.com/karnotxyz/zaun", package = "starkgate-registry-client", branch = "main" } -starknet-core-contract-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-core-contract-client", branch = "main" } -starknet-erc20-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-erc20-client", branch = "main" } -starknet-eth-bridge-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-eth-bridge-client", branch = "main" } -starknet-proxy-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-proxy-client", branch = "main" } -starknet-token-bridge-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-token-bridge-client", branch = "main" } -zaun-utils = { git = "https://github.com/karnotxyz/zaun", package = "utils", branch = "main" } +ethereum-instance = { git = "https://github.com/karnotxyz/zaun", package = "ethereum-instance", branch = "feat/proxy-update" } +starkgate-manager-client = { git = "https://github.com/karnotxyz/zaun", package = "starkgate-manager-client", branch = "feat/proxy-update" } +starkgate-registry-client = { git = "https://github.com/karnotxyz/zaun", package = "starkgate-registry-client", branch = "feat/proxy-update" } +starknet-core-contract-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-core-contract-client", branch = "feat/proxy-update" } +starknet-erc20-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-erc20-client", branch = "feat/proxy-update" } +starknet-eth-bridge-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-eth-bridge-client", branch = "feat/proxy-update" } +starknet-proxy-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-proxy-client", branch = "feat/proxy-update" } +starknet-token-bridge-client = { git = "https://github.com/karnotxyz/zaun", package = "starknet-token-bridge-client", branch = "feat/proxy-update" } +zaun-utils = { git = "https://github.com/karnotxyz/zaun", package = "utils", branch = "feat/proxy-update" } # Starknet Deps blockifier = { git = "https://github.com/bidzyyys/blockifier", branch = "feature/scale-codec" } @@ -68,6 +68,7 @@ thiserror = "1.0.50" tokio = { version = "1.36.0", features = ["macros", "rt-multi-thread"] } # Subxt Dependencies +bytes = "1.6.0" flate2 = "1.0.30" indexmap = "2.2.6" inline_colorization = "0.1.6" diff --git a/src/contract_clients/eth_bridge.rs b/src/contract_clients/eth_bridge.rs index 6d989f7..ab0ef6b 100644 --- a/src/contract_clients/eth_bridge.rs +++ b/src/contract_clients/eth_bridge.rs @@ -6,7 +6,7 @@ use ethers::providers::Middleware; use ethers::types::{Bytes, U256}; use starknet_accounts::{Account, ConnectedAccount}; use starknet_eth_bridge_client::clients::eth_bridge::StarknetEthBridgeContractClient; -use starknet_eth_bridge_client::deploy_starknet_eth_bridge_behind_unsafe_proxy; +use starknet_eth_bridge_client::deploy_starknet_eth_bridge_behind_safe_proxy; use starknet_eth_bridge_client::interfaces::eth_bridge::StarknetEthBridgeTrait; use starknet_ff::FieldElement; use starknet_providers::jsonrpc::HttpTransport; @@ -30,7 +30,7 @@ pub struct StarknetLegacyEthBridge { #[async_trait] impl BridgeDeployable for StarknetLegacyEthBridge { async fn deploy(client: Arc) -> Self { - let eth_bridge = deploy_starknet_eth_bridge_behind_unsafe_proxy(client.clone()) + let eth_bridge = deploy_starknet_eth_bridge_behind_safe_proxy(client.clone()) .await .expect("Failed to deploy starknet contract"); @@ -43,6 +43,10 @@ impl StarknetLegacyEthBridge { self.eth_bridge.address() } + pub fn implementation_address(&self) -> Address { + self.eth_bridge.implementation_address() + } + pub fn client(&self) -> Arc { self.eth_bridge.client() } @@ -72,7 +76,7 @@ impl StarknetLegacyEthBridge { .unwrap(); let contract_address = get_contract_address_from_deploy_tx(account.provider(), &deploy_tx).await.unwrap(); - log::debug!("contract address (eth bridge) : {:?}", contract_address); + log::debug!("🎡 contract address (eth bridge) : {:?}", contract_address); let add_implementation_txn = invoke_contract( legacy_eth_bridge_proxy_address, @@ -110,6 +114,7 @@ impl StarknetLegacyEthBridge { } /// Initialize Starknet Legacy Eth Bridge + /// IMP : only need to be called when using unsafe proxy pub async fn initialize(&self, messaging_contract: Address) { let empty_bytes = [0u8; 32]; @@ -127,6 +132,60 @@ impl StarknetLegacyEthBridge { self.eth_bridge.initialize(Bytes::from(calldata)).await.expect("Failed to initialize eth bridge"); } + /// Add Implementation Starknet Legacy Eth Bridge + pub async fn add_implementation_eth_bridge(&self, messaging_contract: Address) { + let empty_bytes = [0u8; 32]; + + let messaging_bytes = messaging_contract.as_bytes(); + + let mut padded_messaging_bytes = Vec::with_capacity(32); + padded_messaging_bytes.extend(vec![0u8; 32 - messaging_bytes.len()]); + padded_messaging_bytes.extend_from_slice(messaging_bytes); + + let mut calldata = Vec::new(); + // `empty_bytes` act as an empty params for the calldata we are passing in bytes. + // Here in this case of ETH Bridge it represents the EIC contract address, Token Address (ETH) + // EIC = 0x0000000000000000000000000000000000000000 + // ETH Address to be passed in bridge = 0x0000000000000000000000000000000000000000 + calldata.extend(empty_bytes); + calldata.extend(empty_bytes); + calldata.extend(padded_messaging_bytes); + + log::debug!("🎡 add_implementation_eth_bridge : bytes : {:?}", Bytes::from(calldata.clone())); + + self.eth_bridge + .add_implementation(Bytes::from(calldata), self.implementation_address(), false) + .await + .expect("Failed to initialize eth bridge"); + } + + /// Upgrade To Starknet Legacy Eth Bridge + pub async fn upgrade_to_eth_bridge(&self, messaging_contract: Address) { + let empty_bytes = [0u8; 32]; + + let messaging_bytes = messaging_contract.as_bytes(); + + let mut padded_messaging_bytes = Vec::with_capacity(32); + padded_messaging_bytes.extend(vec![0u8; 32 - messaging_bytes.len()]); + padded_messaging_bytes.extend_from_slice(messaging_bytes); + + let mut calldata = Vec::new(); + // `empty_bytes` act as an empty params for the calldata we are passing in bytes. + // Here in this case of ETH Bridge it represents the EIC contract address, Token Address (ETH) + // EIC = 0x0000000000000000000000000000000000000000 + // ETH Address to be passed in bridge = 0x0000000000000000000000000000000000000000 + calldata.extend(empty_bytes); + calldata.extend(empty_bytes); + calldata.extend(padded_messaging_bytes); + + log::debug!("🎡 upgrade_to_eth_bridge : bytes : {:?}", Bytes::from(calldata.clone())); + + self.eth_bridge + .upgrade_to(Bytes::from(calldata), self.implementation_address(), false) + .await + .expect("Failed to initialize eth bridge"); + } + /// Sets up the Eth bridge with the specified data pub async fn setup_l1_bridge(&self, max_total_balance: &str, max_deposit: &str, l2_bridge: FieldElement) { self.eth_bridge.set_max_total_balance(U256::from_dec_str(max_total_balance).unwrap()).await.unwrap(); @@ -150,12 +209,12 @@ impl StarknetLegacyEthBridge { ) .await; - log::debug!("setup_l2_bridge : l2 bridge initialized //"); + log::debug!("🎡 setup_l2_bridge : l2 bridge initialized //"); wait_for_transaction(rpc_provider, tx.transaction_hash, "setup_l2_bridge : initialize").await.unwrap(); let tx = invoke_contract(l2_bridge_address, "set_l2_token", vec![erc20_address], account).await; - log::debug!("setup_l2_bridge : l2 token set //"); + log::debug!("🎡 setup_l2_bridge : l2 token set //"); wait_for_transaction(rpc_provider, tx.transaction_hash, "setup_l2_bridge : set_l2_token").await.unwrap(); let tx = invoke_contract( @@ -166,7 +225,7 @@ impl StarknetLegacyEthBridge { ) .await; - log::debug!("setup_l2_bridge : l1 bridge set //"); + log::debug!("🎡 setup_l2_bridge : l1 bridge set //"); wait_for_transaction(rpc_provider, tx.transaction_hash, "setup_l2_bridge : set_l1_bridge").await.unwrap(); } diff --git a/src/contract_clients/starknet_sovereign.rs b/src/contract_clients/starknet_sovereign.rs index 5353d6f..2bf769f 100644 --- a/src/contract_clients/starknet_sovereign.rs +++ b/src/contract_clients/starknet_sovereign.rs @@ -1,9 +1,10 @@ use std::sync::Arc; -use ethers::types::{Address, I256}; +use ethers::abi::AbiEncode; +use ethers::types::{Address, Bytes, I256, U256}; use starknet_api::hash::{StarkFelt, StarkHash}; use starknet_core_contract_client::clients::StarknetSovereignContractClient; -use starknet_core_contract_client::deploy_starknet_sovereign_behind_unsafe_proxy; +use starknet_core_contract_client::deploy_starknet_sovereign_behind_safe_proxy; use starknet_core_contract_client::interfaces::OperatorTrait; use starknet_ff::FieldElement; use starknet_proxy_client::proxy_support::{ @@ -23,12 +24,20 @@ impl StarknetSovereignContract { self.core_contract_client.address() } + pub fn implementation_address(&self) -> Address { + log::debug!( + "🎡 self.core_contract_client.implementation_address() : {:?}", + self.core_contract_client.implementation_address() + ); + self.core_contract_client.implementation_address() + } + pub fn client(&self) -> Arc { self.core_contract_client.client() } pub async fn deploy(config: &Config) -> Self { - let client = deploy_starknet_sovereign_behind_unsafe_proxy(config.eth_client().signer().clone()) + let client = deploy_starknet_sovereign_behind_safe_proxy(config.eth_client().signer().clone()) .await .expect("Failed to deploy the starknet contact"); @@ -36,9 +45,12 @@ impl StarknetSovereignContract { } /// Initialize Starknet core contract with the specified data. + /// IMP : only need to be called when using unsafe proxy pub async fn initialize_with(&self, init_data: CoreContractInitData) { let data = ProxyInitializeData::<0> { sub_contract_addresses: [], eic_address: Default::default(), init_data }; + log::debug!("ℹī¸ initialize_with : data : {:?}", data); + self.core_contract_client.initialize_with(data).await.expect("Failed to initialize"); self.core_contract_client @@ -47,8 +59,82 @@ impl StarknetSovereignContract { .expect("Failed to register operator"); } + /// Add implementation Starknet core contract with the specified data. + #[allow(clippy::too_many_arguments)] + pub async fn add_implementation_core_contract( + &self, + block_number: StarkFelt, + state_root: StarkFelt, + program_hash: FieldElement, + config_hash: StarkHash, + implementation_address: Address, + verifier_address: Address, + finalized: bool, + ) { + let program_hash = StarkFelt(program_hash.to_bytes_be()); + + let init_data = + Self::get_init_data_core_contract(block_number, state_root, program_hash, config_hash, verifier_address); + let final_bytes = Self::get_calldata_bytes(init_data.clone()); + + log::debug!("ℹī¸ add_implementation : data : {:?} : {:?}", init_data, final_bytes.clone()); + + // https://sepolia.etherscan.io/tx/0x9ac02beb912e5c6226828110380d727a6fd7e4748cbded2198cdf62ea78dab62 + // let bytes_etherscan = + // Bytes::from_str(" + // 0x0000000000000000000000000000000000000000000000000000000000000000001f0f5ba973c4d890fc2f1c18c33b87f487839fb44b9019e08d37d2ab943055000000000000000000000000f294781d719d2f4169ce54469c28908e6fa752c1044b9bae3e41deeeeeefe4dc6260a368e88458baab232bd5c89418063e4550c20000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000" + // ).unwrap(); + + self.core_contract_client + .add_implementation(final_bytes, implementation_address, finalized) + .await + .expect("Failed to call add implementation"); + + log::debug!("ℹī¸ add_implementation : done"); + } + + /// Add implementation Starknet core contract with the specified data. + #[allow(clippy::too_many_arguments)] + pub async fn upgrade_to_core_contract( + &self, + block_number: StarkFelt, + state_root: StarkFelt, + program_hash: FieldElement, + config_hash: StarkHash, + implementation_address: Address, + verifier_address: Address, + finalized: bool, + ) { + let program_hash = StarkFelt(program_hash.to_bytes_be()); + + let init_data = + Self::get_init_data_core_contract(block_number, state_root, program_hash, config_hash, verifier_address); + let final_bytes = Self::get_calldata_bytes(init_data.clone()); + + log::debug!("ℹī¸ upgrade_to : data : {:?} : {:?}", init_data, final_bytes.clone()); + + // https://sepolia.etherscan.io/tx/0x9ac02beb912e5c6226828110380d727a6fd7e4748cbded2198cdf62ea78dab62 + // let bytes_etherscan = + // Bytes::from_str(" + // 0x0000000000000000000000000000000000000000000000000000000000000000001f0f5ba973c4d890fc2f1c18c33b87f487839fb44b9019e08d37d2ab943055000000000000000000000000f294781d719d2f4169ce54469c28908e6fa752c1044b9bae3e41deeeeeefe4dc6260a368e88458baab232bd5c89418063e4550c20000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000" + // ).unwrap(); + + self.core_contract_client + .upgrade_to(final_bytes, implementation_address, finalized) + .await + .expect("Failed to call upgrade to"); + + log::debug!("ℹī¸ upgrade_to : done"); + + self.core_contract_client + .register_operator(self.core_contract_client.client().address()) + .await + .expect("Failed to register operator"); + } + /// Initialize Starknet core contract with the specified program and config hashes. The rest of /// parameters will be left default. + /// IMP : only need to be called when using unsafe proxy pub async fn initialize(&self, program_hash: StarkFelt, config_hash: StarkFelt) { self.initialize_with(CoreContractInitData { program_hash: convert_felt_to_u256(program_hash), @@ -59,28 +145,53 @@ impl StarknetSovereignContract { } /// Initialize Starknet core contract with the specified block number and state root hash. + /// IMP : only need to be called when using unsafe proxy pub async fn initialize_core_contract( &self, block_number: StarkFelt, state_root: StarkFelt, program_hash: FieldElement, config_hash: StarkHash, + verifer_address: Address, ) { let program_hash = StarkFelt(program_hash.to_bytes_be()); - let init_data = CoreContractInitData { + let init_data = + Self::get_init_data_core_contract(block_number, state_root, program_hash, config_hash, verifer_address); + + self.initialize_with(init_data).await; + } + + fn get_init_data_core_contract( + block_number: StarkFelt, + state_root: StarkFelt, + program_hash: StarkFelt, + config_hash: StarkHash, + verifier_address: Address, + ) -> CoreContractInitData { + CoreContractInitData { program_hash: convert_felt_to_u256(program_hash), // zero program hash would be deemed invalid + verifier_address, config_hash: convert_felt_to_u256(config_hash), // TODO : // Figure out the exact params for production env initial_state: CoreContractState { block_number: I256::from_raw(convert_felt_to_u256(block_number)), state_root: convert_felt_to_u256(state_root), - ..Default::default() + // TODO : + // Remove hardcoded values. + block_hash: U256::zero(), }, - ..Default::default() - }; + } + } - self.initialize_with(init_data).await; + fn get_calldata_bytes(calldata: CoreContractInitData) -> Bytes { + let mut bytes_final = Address::zero().encode(); + let bytes: Vec = >>::into(calldata.clone()); + for x in bytes { + bytes_final.push(x); + } + + Bytes::from(bytes_final) } } diff --git a/src/contract_clients/token_bridge.rs b/src/contract_clients/token_bridge.rs index c17c67f..6e269de 100644 --- a/src/contract_clients/token_bridge.rs +++ b/src/contract_clients/token_bridge.rs @@ -6,10 +6,10 @@ use ethers::addressbook::Address; use ethers::prelude::U256; use ethers::types::Bytes; use starkgate_manager_client::clients::starkgate_manager::StarkgateManagerContractClient; -use starkgate_manager_client::deploy_starkgate_manager_behind_unsafe_proxy; +use starkgate_manager_client::deploy_starkgate_manager_behind_safe_proxy; use starkgate_manager_client::interfaces::manager::StarkgateManagerTrait; use starkgate_registry_client::clients::starkgate_registry::StarkgateRegistryContractClient; -use starkgate_registry_client::deploy_starkgate_registry_behind_unsafe_proxy; +use starkgate_registry_client::deploy_starkgate_registry_behind_safe_proxy; use starknet_accounts::{Account, ConnectedAccount}; use starknet_erc20_client::clients::erc20::ERC20ContractClient; use starknet_erc20_client::deploy_dai_erc20_behind_unsafe_proxy; @@ -19,7 +19,7 @@ use starknet_providers::jsonrpc::HttpTransport; use starknet_providers::JsonRpcClient; use starknet_proxy_client::proxy_support::ProxySupportTrait; use starknet_token_bridge_client::clients::token_bridge::StarknetTokenBridgeContractClient; -use starknet_token_bridge_client::deploy_starknet_token_bridge_behind_unsafe_proxy; +use starknet_token_bridge_client::deploy_starknet_token_bridge_behind_safe_proxy; use starknet_token_bridge_client::interfaces::token_bridge::StarknetTokenBridgeTrait; use tokio::time::sleep; use zaun_utils::{LocalWalletSignerMiddleware, StarknetContractClient}; @@ -42,13 +42,13 @@ pub struct StarknetTokenBridge { #[async_trait] impl BridgeDeployable for StarknetTokenBridge { async fn deploy(client: Arc) -> Self { - let manager = deploy_starkgate_manager_behind_unsafe_proxy(client.clone()) + let manager = deploy_starkgate_manager_behind_safe_proxy(client.clone()) .await .expect("Failed to deploy starkgate manager contract"); - let registry = deploy_starkgate_registry_behind_unsafe_proxy(client.clone()) + let registry = deploy_starkgate_registry_behind_safe_proxy(client.clone()) .await .expect("Failed to deploy starkgate registry"); - let token_bridge = deploy_starknet_token_bridge_behind_unsafe_proxy(client.clone()) + let token_bridge = deploy_starknet_token_bridge_behind_safe_proxy(client.clone()) .await .expect("Failed to deploy starknet contract"); let erc20 = @@ -102,7 +102,7 @@ impl StarknetTokenBridge { save_to_json("L2_token_bridge_class_hash", &JsonValueType::StringType(token_bridge_class_hash.to_string())) .unwrap(); - log::debug!("token_bridge_class_hash : {:?}", token_bridge_class_hash); + log::debug!("🌗 token_bridge_class_hash : {:?}", token_bridge_class_hash); let deploy_contract_implementation_token_bridge = account .invoke_contract( @@ -132,12 +132,13 @@ impl StarknetTokenBridge { get_contract_address_from_deploy_tx(account.provider(), &deploy_contract_implementation_token_bridge) .await .unwrap(); - log::debug!("contract address (token bridge) : {:?}", address_token_bridge_impl); + log::debug!("🌗 contract address (token bridge) : {:?}", address_token_bridge_impl); address_token_bridge_impl } /// Initialize Starknet Token Bridge. + /// IMP : only need to be called when using unsafe proxy pub async fn initialize(&self, messaging_contract: Address) { let empty_bytes = [0u8; 32]; @@ -166,6 +167,76 @@ impl StarknetTokenBridge { .expect("Failed to initialize starknet token bridge"); } + /// Add Implementation Starknet Token Bridge + pub async fn add_implementation_token_bridge(&self, messaging_contract: Address) { + let empty_bytes = [0u8; 32]; + + let mut manager_calldata = Vec::new(); + manager_calldata.extend(empty_bytes); + manager_calldata.extend(pad_bytes(self.registry_address())); + manager_calldata.extend(pad_bytes(self.bridge_address())); + + let mut registry_calldata = Vec::new(); + registry_calldata.extend(empty_bytes); + registry_calldata.extend(pad_bytes(self.manager_address())); + + let mut bridge_calldata = Vec::new(); + bridge_calldata.extend(empty_bytes); + bridge_calldata.extend(pad_bytes(self.manager_address())); + bridge_calldata.extend(pad_bytes(messaging_contract)); + + self.manager + .add_implementation(Bytes::from(manager_calldata.clone()), self.manager.implementation_address(), false) + .await + .expect("Failed to initialize starkgate manager"); + log::debug!("🎡 add_implementation_token_bridge : manager bytes : {:?}", Bytes::from(manager_calldata)); + self.registry + .add_implementation(Bytes::from(registry_calldata.clone()), self.registry.implementation_address(), false) + .await + .expect("Failed to initialize starkgate registry"); + log::debug!("🎡 add_implementation_token_bridge : registry bytes : {:?}", Bytes::from(registry_calldata)); + self.token_bridge + .add_implementation(Bytes::from(bridge_calldata.clone()), self.token_bridge.implementation_address(), false) + .await + .expect("Failed to initialize eth bridge"); + log::debug!("🎡 add_implementation_token_bridge : token_bridge bytes : {:?}", Bytes::from(bridge_calldata)); + } + + /// Upgrade To Starknet Token Bridge + pub async fn upgrade_to_token_bridge(&self, messaging_contract: Address) { + let empty_bytes = [0u8; 32]; + + let mut manager_calldata = Vec::new(); + manager_calldata.extend(empty_bytes); + manager_calldata.extend(pad_bytes(self.registry_address())); + manager_calldata.extend(pad_bytes(self.bridge_address())); + + let mut registry_calldata = Vec::new(); + registry_calldata.extend(empty_bytes); + registry_calldata.extend(pad_bytes(self.manager_address())); + + let mut bridge_calldata = Vec::new(); + bridge_calldata.extend(empty_bytes); + bridge_calldata.extend(pad_bytes(self.manager_address())); + bridge_calldata.extend(pad_bytes(messaging_contract)); + + self.manager + .upgrade_to(Bytes::from(manager_calldata.clone()), self.manager.implementation_address(), false) + .await + .expect("Failed to initialize starkgate manager"); + log::debug!("🎡 upgrade_to_token_bridge : manager bytes : {:?}", Bytes::from(manager_calldata)); + self.registry + .upgrade_to(Bytes::from(registry_calldata.clone()), self.registry.implementation_address(), false) + .await + .expect("Failed to initialize starkgate registry"); + log::debug!("🎡 upgrade_to_token_bridge : registry bytes : {:?}", Bytes::from(registry_calldata)); + self.token_bridge + .upgrade_to(Bytes::from(bridge_calldata.clone()), self.token_bridge.implementation_address(), false) + .await + .expect("Failed to initialize eth bridge"); + log::debug!("🎡 upgrade_to_token_bridge : token_bridge bytes : {:?}", Bytes::from(bridge_calldata)); + } + /// Sets up the Token bridge with the specified data pub async fn setup_l1_bridge(&self, governor: Address, l2_bridge: FieldElement, fee: U256) { self.token_bridge.register_app_role_admin(governor).await.unwrap(); @@ -197,7 +268,7 @@ impl StarknetTokenBridge { ) .await .unwrap(); - log::debug!("setup_l2_bridge : register_app_role_admin //"); + log::debug!("🌗 setup_l2_bridge : register_app_role_admin //"); let tx = invoke_contract( l2_bridge, @@ -214,7 +285,7 @@ impl StarknetTokenBridge { ) .await .unwrap(); - log::debug!("setup_l2_bridge : register_app_governor //"); + log::debug!("🌗 setup_l2_bridge : register_app_governor //"); let tx = invoke_contract( l2_bridge, @@ -231,7 +302,7 @@ impl StarknetTokenBridge { ) .await .unwrap(); - log::debug!("setup_l2_bridge : set_l2_token_governance //"); + log::debug!("🌗 setup_l2_bridge : set_l2_token_governance //"); let tx = invoke_contract( l2_bridge, @@ -250,7 +321,7 @@ impl StarknetTokenBridge { ) .await .unwrap(); - log::debug!("setup_l2_bridge : set_erc20_class_hash //"); + log::debug!("🌗 setup_l2_bridge : set_erc20_class_hash //"); let tx = invoke_contract( l2_bridge, @@ -262,7 +333,7 @@ impl StarknetTokenBridge { wait_for_transaction(rpc_provider_l2, tx.transaction_hash, "setup_l2_bridge : token bridge : set_l1_bridge") .await .unwrap(); - log::debug!("setup_l2_bridge : set_l1_bridge //"); + log::debug!("🌗 setup_l2_bridge : set_l1_bridge //"); } pub async fn register_app_role_admin(&self, address: Address) { diff --git a/src/contract_clients/utils.rs b/src/contract_clients/utils.rs index 0d7777f..187959b 100644 --- a/src/contract_clients/utils.rs +++ b/src/contract_clients/utils.rs @@ -1,19 +1,13 @@ use std::sync::Arc; -use blockifier::execution::contract_class::ContractClassV0Inner; use ethers::types::U256; use hex::encode; -use indexmap::IndexMap; -use parity_scale_codec::Encode; use serde::{Deserialize, Serialize}; use serde_json::json; use starknet_accounts::{Account, AccountFactory, ConnectedAccount, OpenZeppelinAccountFactory, SingleOwnerAccount}; -use starknet_api::core::{ClassHash, ContractAddress, Nonce, PatriciaKey}; -use starknet_api::deprecated_contract_class::{EntryPoint, EntryPointType}; use starknet_api::hash::{pedersen_hash_array, StarkFelt, StarkHash}; -use starknet_api::transaction::{DeclareTransactionV0V1, Fee, TransactionHash, TransactionSignature}; use starknet_core::types::contract::legacy::LegacyContractClass; -use starknet_core::types::{BlockId, BlockTag, FunctionCall}; +use starknet_core::types::{BlockId, BlockTag, CompressedLegacyContractClass, DeclareTransactionResult, FunctionCall}; use starknet_core::utils::get_selector_from_name; use starknet_ff::FieldElement; use starknet_providers::jsonrpc::HttpTransport; @@ -87,12 +81,20 @@ pub fn get_bridge_init_configs(config: &CliArgs) -> (FieldElement, StarkHash) { (program_hash, config_hash) } -#[derive(Serialize, Deserialize, Debug, Eq, PartialEq)] -pub struct CustomDeclareV0Transaction { - pub declare_transaction: DeclareTransactionV0V1, - pub program_vec: Vec, - pub entrypoints: IndexMap>, - pub abi_length: usize, +/// Broadcasted declare contract transaction v0. +#[derive(Debug, Eq, PartialEq, Serialize)] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] +pub struct BroadcastedDeclareTransactionV0 { + /// The address of the account contract sending the declaration transaction + pub sender_address: FieldElement, + /// The maximal fee that can be charged for including the transaction + pub max_fee: FieldElement, + /// Signature + pub signature: Vec, + /// The class to be declared + pub contract_class: Arc, + /// If set to `true`, uses a query-only transaction version that's invalid for execution + pub is_query: bool, } #[derive(Serialize, Deserialize, Debug, Eq, PartialEq)] @@ -102,12 +104,6 @@ pub struct RpcResult { id: u64, } -#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] -pub struct DeclareV0Result { - pub txn_hash: TransactionHash, - pub class_hash: ClassHash, -} - pub const TEMP_ACCOUNT_PRIV_KEY: &str = "0xbeef"; pub(crate) enum DeclarationInput<'a> { @@ -131,44 +127,25 @@ pub async fn declare_contract(input: DeclarationInput<'_>) -> FieldElement { sierra.class_hash() } LegacyDeclarationInputs(artifact_path, url) => { - let contract_artifact: ContractClassV0Inner = serde_json::from_reader( + let contract_abi_artifact_temp: LegacyContractClass = serde_json::from_reader( std::fs::File::open(env!("CARGO_MANIFEST_DIR").to_owned() + "/" + &artifact_path).unwrap(), ) .unwrap(); - let contract_abi_artifact: LegacyContractClass = serde_json::from_reader( - std::fs::File::open(env!("CARGO_MANIFEST_DIR").to_owned() + "/" + &artifact_path).unwrap(), - ) - .unwrap(); - - let empty_vector_stark_hash: Vec = Vec::new(); - let empty_array: [u8; 32] = [0; 32]; - - let class_info = contract_artifact.clone(); - - let program = class_info.program; - let encoded_p = program.encode(); - let entry_points_by_type = class_info.entry_points_by_type; - - let declare_txn: DeclareTransactionV0V1 = DeclareTransactionV0V1 { - max_fee: Fee(0), - signature: TransactionSignature(empty_vector_stark_hash), - nonce: Nonce(StarkFelt(empty_array)), - class_hash: ClassHash(StarkHash { 0: contract_abi_artifact.class_hash().unwrap().to_bytes_be() }), - sender_address: ContractAddress(PatriciaKey(StarkHash { 0: FieldElement::ONE.to_bytes_be() })), - }; - let abi_length = contract_abi_artifact.abi.len(); + let contract_abi_artifact = + contract_abi_artifact_temp.clone().compress().expect("Error : Failed to compress the contract class"); - let params: CustomDeclareV0Transaction = CustomDeclareV0Transaction { - declare_transaction: declare_txn, - program_vec: encoded_p, - entrypoints: entry_points_by_type, - abi_length, + let params: BroadcastedDeclareTransactionV0 = BroadcastedDeclareTransactionV0 { + sender_address: FieldElement::from_hex_be("0x1").unwrap(), + max_fee: FieldElement::from(482250u128), + signature: Vec::new(), + contract_class: Arc::new(contract_abi_artifact), + is_query: false, }; let json_body = &json!({ "jsonrpc": "2.0", - "method": "madara_declareV0", + "method": "madara_addDeclareTransactionV0", "params": [params], "id": 4 }); @@ -179,10 +156,9 @@ pub async fn declare_contract(input: DeclarationInput<'_>) -> FieldElement { match raw_txn_rpc { Ok(val) => { log::debug!( - "Txn Sent Successfully : {:?}", - val.json::>().await.unwrap() + "🚧 Txn Sent Successfully : {:?}", + val.json::>().await.unwrap() ); - log::debug!("Declare Success : {:?}", contract_abi_artifact.class_hash().unwrap()); } Err(err) => { log::debug!("Error : Error sending the transaction using RPC"); @@ -190,7 +166,7 @@ pub async fn declare_contract(input: DeclarationInput<'_>) -> FieldElement { } } - contract_abi_artifact.class_hash().unwrap() + contract_abi_artifact_temp.class_hash().unwrap() } } } diff --git a/src/contracts/BraavosBaseAccount.casm.json b/src/contracts/BraavosBaseAccount.casm.json new file mode 100644 index 0000000..ddb7c99 --- /dev/null +++ b/src/contracts/BraavosBaseAccount.casm.json @@ -0,0 +1,4436 @@ +{ + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "compiler_version": "2.5.3", + "bytecode": [ + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x85", + "0x4825800180007ffa", + "0x0", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x24e", + "0x20680017fff7ffa", + "0x71", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xb0b", + "0x482480017fff8000", + "0xb0a", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff3", + "0x834", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x31", + "0x4824800180007ff3", + "0x834", + "0x400080007ff17fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x252", + "0x482480017fe88000", + "0x1", + "0x20680017fff7ffc", + "0x1e", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ff37fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x24f", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fee8000", + "0x1", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x78", + "0x4825800180007ffa", + "0x0", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1b5", + "0x20680017fff7ffa", + "0x64", + "0x20680017fff7ffd", + "0x54", + "0x48307ffb80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xa72", + "0x482480017fff8000", + "0xa71", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff3", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x24", + "0x4824800180007ff3", + "0x0", + "0x400080007ff17fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x1d2", + "0x482480017fe88000", + "0x1", + "0x20680017fff7ffc", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1d2", + "0x48127ff77fff8000", + "0x48127fec7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fee8000", + "0x1", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x96", + "0x4825800180007ffa", + "0x0", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x185", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x7d", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x17d", + "0x20680017fff7ffe", + "0x69", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x19b", + "0x20680017fff7ffe", + "0x55", + "0x48307ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127fd67fff8000", + "0x48127fc57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x9dd", + "0x482480017fff8000", + "0x9dc", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007fc3", + "0x3ac", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fd17fff", + "0x10780017fff7fff", + "0x25", + "0x4824800180007fc3", + "0x3ac", + "0x400080007fd27fff", + "0x48127fd17fff8000", + "0x48127fe07fff8000", + "0x48127ff67fff8000", + "0x1104800180018000", + "0x183", + "0x482480017fc88000", + "0x1", + "0x20680017fff7ffc", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x13c", + "0x48127ff77fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fcf8000", + "0x1", + "0x48127fbe7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x48127fd77fff8000", + "0x48127fc67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x48127fee7fff8000", + "0x48127fdd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x48127ffd7fff8000", + "0x48127fec7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x78", + "0x4825800180007ffa", + "0x0", + "0x400280007ff77fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xff", + "0x482680017ff78000", + "0x1", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127fe17fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x93d", + "0x482480017fff8000", + "0x93c", + "0x480080007fff8000", + "0x480080027fff8000", + "0x484480017fff8000", + "0x6", + "0x482480017fff8000", + "0x26322", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fde", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff47fff", + "0x10780017fff7fff", + "0x25", + "0x48307ffe80007fde", + "0x400080007ff57fff", + "0x482480017ff58000", + "0x1", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0xe7", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x48127ff67fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff28000", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127fd77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x48127ffd7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127fe27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x480080007ff68000", + "0x1104800180018000", + "0x177", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f494d504c454d454e544544", + "0x400080007ffe7fff", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffa80007ffb", + "0x4844800180007fff", + "0x2", + "0x400280007ffd7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0x1b8", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f494d504c454d454e544544", + "0x400080007ffe7fff", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480080007ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdb", + "0x20680017fff7ffe", + "0x8", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f494d504c454d454e544544", + "0x400080007ffe7fff", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x1ba", + "0x20680017fff7ffd", + "0xec", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x400180007ffa8000", + "0x400180017ffa8001", + "0x400180027ffa8002", + "0x400180037ffa8003", + "0x400180047ffa8004", + "0x400180057ffa8005", + "0x400180067ffa8006", + "0x400180077ffa8007", + "0x400180087ffa8008", + "0x400180097ffa8009", + "0x4001800a7ffa800a", + "0x4001800b7ffa800b", + "0x4001800c7ffa800c", + "0x4001800d7ffa800d", + "0x4001800e7ffa800e", + "0x4001800f7ffa800f", + "0x400180107ffa8010", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80027fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480a80057fff8000", + "0x480a80067fff8000", + "0x480a80077fff8000", + "0x480a80087fff8000", + "0x480a80097fff8000", + "0x480a800a7fff8000", + "0x480a800b7fff8000", + "0x480a800c7fff8000", + "0x480a800d7fff8000", + "0x480a800e7fff8000", + "0x480a800f7fff8000", + "0x480a80107fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a3", + "0x20680017fff7ffd", + "0xb6", + "0x48127ff87fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480680017fff8000", + "0x2", + "0x1104800180018000", + "0x2f7", + "0x20680017fff7ffd", + "0xa3", + "0x48127ffc7fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0x313", + "0x20680017fff7ffe", + "0x8d", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x7", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4155585f44415441", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127fd67fff8000", + "0x48127fd67fff8000", + "0x48127fd67fff8000", + "0x48127fd67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x5265706c616365436c617373", + "0x400080007fdb7fff", + "0x400080017fdb7fd9", + "0x400080027fdb7ffa", + "0x480080047fdb8000", + "0x20680017fff7fff", + "0xd", + "0x480080037fda8000", + "0x482480017fd98000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480080037fda8000", + "0x482480017fd98000", + "0x7", + "0x480680017fff8000", + "0x1", + "0x480080057fd78000", + "0x480080067fd68000", + "0x1104800180018000", + "0x2f4", + "0x20680017fff7ffd", + "0x3f", + "0x40780017fff7fff", + "0x1", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x2dd76e7ad84dbed81c314ffe5e7a7cacfb8f4836f01af4e913f275f89a3de1a", + "0x48127ffe7fff8000", + "0x482480017ffd8000", + "0x1", + "0x480680017fff8000", + "0x4c69627261727943616c6c", + "0x400080007ff27fff", + "0x400080017ff27ff1", + "0x400080027ff27fea", + "0x400080037ff27ffc", + "0x400080047ff27ffd", + "0x400080057ff27ffe", + "0x480080077ff28000", + "0x20680017fff7fff", + "0xb", + "0x480080067ff18000", + "0x482480017ff08000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480080087fee8000", + "0x480080097fed8000", + "0x10780017fff7fff", + "0x9", + "0x480080067ff18000", + "0x482480017ff08000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480080087fee8000", + "0x480080097fed8000", + "0x1104800180018000", + "0x2db", + "0x20680017fff7ffd", + "0xe", + "0x48127fdd7fff8000", + "0x48127fbc7fff8000", + "0x48127ff47fff8000", + "0x48127fbc7fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fdd7fff8000", + "0x48127fbc7fff8000", + "0x48127ff47fff8000", + "0x48127fbc7fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fed7fff8000", + "0x48127fcc7fff8000", + "0x48127ff47fff8000", + "0x48127fcc7fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x48127ffb7fff8000", + "0x48127fda7fff8000", + "0x48127fda7fff8000", + "0x48127fda7fff8000", + "0x48127fda7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x73f", + "0x482480017fff8000", + "0x73e", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff8", + "0x4a42", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x47", + "0x4825800180007ff8", + "0x4a42", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x272", + "0x20680017fff7ff8", + "0x21", + "0x20680017fff7ffb", + "0x12", + "0x400280007ffc7ffc", + "0x400280017ffc7ffd", + "0x400280027ffc7ffe", + "0x400280037ffc7fff", + "0x48127ff77fff8000", + "0x48127f7c7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x4", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffcb", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127f7c7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127f7c7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x6d6", + "0x482480017fff8000", + "0x6d5", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff9", + "0x1928", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x3f", + "0x4825800180007ff9", + "0x1928", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x2", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x40137ffc7fff8000", + "0x40137ffd7fff8001", + "0x20680017fff7ffe", + "0x1c", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480080007ffd8000", + "0x480080017ffc8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x262", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc5", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x243", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080017ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7fe77fff8000", + "0x402b7fef80007ff0", + "0x480a80007fff8000", + "0x480680017fff8000", + "0x3", + "0x1104800180018000", + "0x249", + "0x20680017fff7ffd", + "0x14a", + "0x48127ffc7fff8000", + "0x480a7fef7fff8000", + "0x480a7ff07fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x14e", + "0x20680017fff7ffd", + "0x138", + "0x480080007fff8000", + "0x48287ff280007fff", + "0x20680017fff7fff", + "0x124", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480680017fff8000", + "0x4", + "0x1104800180018000", + "0x235", + "0x20680017fff7ffd", + "0x112", + "0x480680017fff8000", + "0x2", + "0x48297fef80007ff0", + "0x48307ffd7ffe8000", + "0xa0680017fff8000", + "0x8", + "0x482480017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400080007ff67fff", + "0x10780017fff7fff", + "0xf5", + "0x48307ffe80007ffd", + "0x400080007ff77fff", + "0x482480017ff78000", + "0x1", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x48327ff87fef8000", + "0x48327ff97fef8000", + "0x1104800180018000", + "0x23e", + "0x20680017fff7ffd", + "0xdf", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x480680017fff8000", + "0x2", + "0x1104800180018000", + "0x213", + "0x20680017fff7ffd", + "0xcb", + "0x48127ffc7fff8000", + "0x480a7fef7fff8000", + "0x480a7ff07fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x118", + "0x20680017fff7ffd", + "0xb9", + "0x480080007fff8000", + "0x400080007fd97fff", + "0x48127ffb7fff8000", + "0x480a80007fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x201", + "0x48127fc37fff8000", + "0x482480017fc28000", + "0x1", + "0x20680017fff7ffb", + "0xa2", + "0x48127ffa7fff8000", + "0x480a7fef7fff8000", + "0x480a7ff07fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x103", + "0x20680017fff7ffd", + "0x90", + "0x480080007fff8000", + "0x400080007fef7fff", + "0x48127fac7fff8000", + "0x480a7feb7fff8000", + "0x1104800180018000", + "0x234", + "0x48127fd07fff8000", + "0x482480017fd08000", + "0x1", + "0x20680017fff7ffb", + "0x7b", + "0x20680017fff7ffd", + "0x39", + "0x48127fdb7fff8000", + "0x480a7fe87fff8000", + "0x480a7ffd7fff8000", + "0x480a7ff17fff8000", + "0x480a7fef7fff8000", + "0x480a7ff07fff8000", + "0x1104800180018000", + "0x23a", + "0x20680017fff7ffd", + "0x25", + "0x480680017fff8000", + "0x1", + "0x20680017fff7ffe", + "0x7", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f54584e5f534947", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ecb7fff8000", + "0x48127e5e7fff8000", + "0x48127eca7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x11", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ed07fff8000", + "0x48127e637fff8000", + "0x48127ecf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12a", + "0x48127eb17fff8000", + "0x480a7fe87fff8000", + "0x480a7ffd7fff8000", + "0x48127e637fff8000", + "0x48127ed07fff8000", + "0x48127ed07fff8000", + "0x1104800180018000", + "0x201", + "0x20680017fff7ffd", + "0x2c", + "0x480680017fff8000", + "0x1", + "0x20680017fff7ffe", + "0x7", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4155585f534947", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127da17fff8000", + "0x48127d347fff8000", + "0x48127da07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127da37fff8000", + "0x48127d367fff8000", + "0x48127da27fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127da67fff8000", + "0x48127d397fff8000", + "0x48127da57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x480a7fe87fff8000", + "0x48127ff77fff8000", + "0x48127f8a7fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x48127fab7fff8000", + "0x48127fab7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x480a7fe87fff8000", + "0x48127fba7fff8000", + "0x48127fba7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x48127fd37fff8000", + "0x48127fd37fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x480a7fe87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482480017ff48000", + "0x1", + "0x480a7fe87fff8000", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4155585f44415441", + "0x400080007ffe7fff", + "0x48127ff87fff8000", + "0x480a7fe87fff8000", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x480a7fe87fff8000", + "0x480a7fe97fff8000", + "0x480a7fea7fff8000", + "0x480a7feb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffb80007ffc", + "0xa0680017fff8000", + "0x6", + "0x48317ffe80007ffd", + "0x400280007ffa7fff", + "0x10780017fff7fff", + "0x10", + "0x482680017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400280007ffa7fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x482a7ffd7ffb8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482680017ffa8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8004", + "0xe", + "0x4825800180047ffd", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffc7ffc", + "0x480280017ffc7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffc7ffd", + "0x10780017fff7fff", + "0x12", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48317fff80007ffd", + "0x480280007ffc7ffd", + "0x480280017ffc7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffc7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11f", + "0x20680017fff7ffe", + "0x4f", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc25", + "0x20680017fff7ffe", + "0x37", + "0x48127fec7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x14b", + "0x20680017fff7ffa", + "0x20", + "0x20680017fff7ffd", + "0xe", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fa67fff8000", + "0x48127fb47fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x45", + "0x48127fa77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fb57fff8000", + "0x48127fb57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x54", + "0x48127fa77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fa67fff8000", + "0x48127fa67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffa80007ffb", + "0x400280007ffd7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0x18c", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574457865637574696f6e496e666f", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x480280037ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280047ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x6", + "0x480680017fff8000", + "0x1", + "0x480280047ffd8000", + "0x480280057ffd8000", + "0x1104800180018000", + "0x1bc", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80017ffc", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ffb7fff", + "0x10780017fff7fff", + "0xc", + "0x400280007ffb7fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x482480017ffc8000", + "0x100000000", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x1104800180018000", + "0x1a7", + "0x48127ff67fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3f7", + "0x482480017fff8000", + "0x3f6", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a3", + "0x20680017fff7ffc", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff99", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080027ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeae", + "0x20680017fff7ffd", + "0x25", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea5", + "0x480080007ff08000", + "0x20680017fff7ffc", + "0x12", + "0x48127ffb7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffa7fff8000", + "0x48127ffb7fff8000", + "0x480080007ff98000", + "0x1104800180018000", + "0x228", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xfb", + "0x48127f007fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x10b", + "0x48127ef17fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ef07fff8000", + "0x48127ef07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb0a", + "0x20680017fff7ffe", + "0x2b", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffb7ffd", + "0x10780017fff7fff", + "0x14", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480280007ffb7ffd", + "0x480280017ffb7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x7d", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x27c", + "0x20680017fff7ffe", + "0x69", + "0x480680017fff8000", + "0x0", + "0x48307feb80007fec", + "0x48307ffd7ffe8000", + "0xa0680017fff8000", + "0x8", + "0x482480017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x48", + "0x48307ffe80007ffd", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48307fe680007fe7", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff09", + "0x48307fe57fd18000", + "0x48307fe67fd08000", + "0x20680017fff7ffb", + "0x2e", + "0x48307fcf80007fd0", + "0x48307ffc7fe18000", + "0xa0680017fff8000", + "0x8", + "0x482480017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400080007ff57fff", + "0x10780017fff7fff", + "0x11", + "0x48307ffe80007ffd", + "0x400080007ff67fff", + "0x40780017fff7fff", + "0x3", + "0x482480017ff38000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48307fd97fc68000", + "0x48307ff77fc58000", + "0x480680017fff8000", + "0x0", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482480017ff38000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x7", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1c", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482480017fd98000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x24", + "0x48127fd97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fca7fff8000", + "0x48127fca7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x32", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fca7fff8000", + "0x48127fca7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2af", + "0x482480017fff8000", + "0x2ae", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff9", + "0xcc6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x31", + "0x4825800180007ff9", + "0xcc6", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x10", + "0x480080007fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa03", + "0x48127ff37fff8000", + "0x48127ff17fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffce", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0xa", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x1", + "0x48127ffe7fff8000", + "0x482480017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x244", + "0x482480017fff8000", + "0x243", + "0x480080007fff8000", + "0x480080037fff8000", + "0x482480017fff8000", + "0xd2a", + "0xa0680017fff8000", + "0x8", + "0x48317ffe80007ff6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff57fff", + "0x10780017fff7fff", + "0xa9", + "0x48317ffe80007ff6", + "0x400280007ff57fff", + "0x482680017ff58000", + "0x1", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x6f", + "0x480080007fff8000", + "0x48307ffb80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffa8000", + "0x1", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x37", + "0x480080007ffd8000", + "0x48327ff77ff98000", + "0x48327ffe7ffa8000", + "0x400280007ff77ffe", + "0x400280017ff77fff", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x480280047ff78000", + "0x480280057ff78000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007fe9", + "0x816", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x12", + "0x4824800180007fe9", + "0x816", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff9f", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fe68000", + "0x1", + "0x48127fe47fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x48327ff77ff98000", + "0x20680017fff7ffe", + "0xc", + "0x482480017fff8000", + "0x1", + "0x400280007ff77fff", + "0x400380017ff77ffa", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x400280007ff77ffe", + "0x400280017ff77fff", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127fed7fff8000", + "0x48127feb7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x20680017fff7ffd", + "0xc", + "0x482680017ff98000", + "0x1", + "0x400280007ff77fff", + "0x400380017ff77ffa", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x400380007ff77ff9", + "0x400280017ff77fff", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127ff47fff8000", + "0x48127ff27fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff58000", + "0x1", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x9", + "0x40780017fff7fff", + "0xf0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x4825800180007ffd", + "0x800000000000010ffffffffffffffffb781126dcae7b2321e66a241adc64d2f", + "0x20680017fff7fff", + "0x9", + "0x40780017fff7fff", + "0xef", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x4825800180007ffc", + "0x800000000000010ffffffffffffffffb781126dcae7b2321e66a241adc64d2f", + "0x20680017fff7fff", + "0x9", + "0x40780017fff7fff", + "0xee", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x484a7ffb7ffb8001", + "0x48487ffb80008001", + "0x482680017ffb8001", + "0x6f21413efbe40de150e596d72f7a8c5609ad26c15c915c1f4cdfcb99cee9e89", + "0x483080007fff7ffd", + "0x4850800080008001", + "0x48307ffb80018000", + "0xa0680017fff8000", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x404480017ff97ffe", + "0x3", + "0x10780017fff7fff", + "0x8f", + "0x4844800180008002", + "0x4000000000000088000000000000000", + "0x4830800080017ffc", + "0x480280007ff87ffe", + "0x480280017ff87ffe", + "0x402480017ffd7fff", + "0xfbfffffffffffff77fffffffffffffff", + "0x400280027ff87fff", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x484a7ffc7ffc8001", + "0x48487ffc80008001", + "0x482680017ffc8001", + "0x6f21413efbe40de150e596d72f7a8c5609ad26c15c915c1f4cdfcb99cee9e89", + "0x483080007fff7ffd", + "0x4850800080008001", + "0x48307ffb80018000", + "0xa0680017fff8000", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x404480017ff97ffe", + "0x3", + "0x10780017fff7fff", + "0x6e", + "0x4844800180008002", + "0x4000000000000088000000000000000", + "0x4830800080017ffc", + "0x480280037ff87ffe", + "0x480280047ff87ffe", + "0x402480017ffd7fff", + "0xfbfffffffffffff77fffffffffffffff", + "0x400280057ff87fff", + "0x480a7ffc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1ef15c18599971b7beced415a40f0c7deacfd9b0d1819e03d723d8bc943cfca", + "0x480680017fff8000", + "0x5668060aa49730b7be4801df46ec62de53ecd11abe43a32873000c36e8dc1f", + "0x482680017ff88000", + "0x6", + "0x48507ffe7ffe8000", + "0x48507ffc7ffc8001", + "0x48507ffb80008001", + "0x482480017ffa8001", + "0x6f21413efbe40de150e596d72f7a8c5609ad26c15c915c1f4cdfcb99cee9e89", + "0x483080007fff7ffd", + "0x48307ffc80007ffb", + "0x20680017fff7fff", + "0x4e", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x81", + "0x20680017fff7fff", + "0x9", + "0x40780017fff7fff", + "0xaa", + "0x48127f2e7fff8000", + "0x48127f527fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x48127fde7fff8000", + "0x48127fde7fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x72", + "0x48127ffd7fff8000", + "0x48127fa77fff8000", + "0x48127fa77fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x6c", + "0x48127fdf7fff8000", + "0x48127fdf7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x9c", + "0x20680017fff7fff", + "0x6", + "0x40780017fff7fff", + "0x1", + "0x10780017fff7fff", + "0xc", + "0x48307f8e80007ffe", + "0x20680017fff7fff", + "0x9", + "0x40780017fff7fff", + "0x39", + "0x48127f2e7fff8000", + "0x48127f907fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fac7fff8000", + "0x48127fac7fff8000", + "0x48127fc97fff8000", + "0x48127fc97fff8000", + "0x1104800180018000", + "0xd6", + "0x20680017fff7fff", + "0x6", + "0x40780017fff7fff", + "0x1", + "0x10780017fff7fff", + "0xa", + "0x48307f5580007ffe", + "0x20680017fff7fff", + "0x7", + "0x48127f2e7fff8000", + "0x48127f907fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127f2e7fff8000", + "0x48127f907fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xcb", + "0x48127f2e7fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xda", + "0x482680017ff88000", + "0x3", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xe7", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x12", + "0x4825800180007ffd", + "0x100000000", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffc7fff", + "0x482480017ffe8000", + "0xefffffffffffffde00000000ffffffff", + "0x480280017ffc7fff", + "0x400280027ffc7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x10", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x482680017ffd8000", + "0xffffffffffffffffffffffff00000000", + "0x400280017ffc7fff", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffc", + "0x8", + "0x40780017fff7fff", + "0x16", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x4800800080068004", + "0x4800800180058004", + "0x4850800380037ffe", + "0x4850800180017ffe", + "0x485080007ffd7ffe", + "0x482480017fff7ffe", + "0x6f21413efbe40de150e596d72f7a8c5609ad26c15c915c1f4cdfcb99cee9e89", + "0x48307ffd7ffc7ffa", + "0x400280007ffa7ffd", + "0x400280017ffa7ffe", + "0x400380027ffa7ffb", + "0x400380037ffa7ffc", + "0x400380047ffa7ffd", + "0x480280057ffa8000", + "0x480280067ffa8000", + "0x48127ffd7fff8000", + "0x482680017ffa8000", + "0x7", + "0x480080007ffe8000", + "0x480080017ffd8000", + "0x48307ffe80007ffa", + "0x20680017fff7fff", + "0x5", + "0x40127ffe7fff7ffa", + "0x10780017fff7fff", + "0xe", + "0x48307ffe7ffa8000", + "0x48507ffe80007fff", + "0x48507fff7fff8000", + "0x48307ffa7ff68000", + "0x48307fff80027ffe", + "0x483080017fff7ff4", + "0x48507ffe7ffb7fff", + "0x48307ff380007ffe", + "0x48127ff47fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x40780017fff7fff", + "0x2a", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x7", + "0x40780017fff7fff", + "0x2a", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x4800800080068004", + "0x4800800180058004", + "0x4850800380037ffe", + "0x4850800180017ffe", + "0x485080007ffd7ffe", + "0x482480017fff7ffe", + "0x6f21413efbe40de150e596d72f7a8c5609ad26c15c915c1f4cdfcb99cee9e89", + "0x48307ffd7ffc7ffa", + "0x48317ffd80007ffa", + "0x20680017fff7fff", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x48317ffd80007ffb", + "0x48507ffe80007fff", + "0x48507fff7fff8000", + "0x48327ff97ffa8000", + "0x48307fff80027ffe", + "0x483180017fff7ffa", + "0x48507ffe7ffb7fff", + "0x48287ffb80007ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ff47fff8000", + "0x48317ffd80007ffc", + "0x20680017fff7fff", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x48317ffd80007ffd", + "0x48507ffe80007fff", + "0x48507fff7fff8000", + "0x48327ff97ffc8000", + "0x48307fff80027ffe", + "0x483180017fff7ffc", + "0x48507ffe7ffb7fff", + "0x48287ffd80007ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ff47fff8000", + "0x480080007fff8000", + "0x480080017ffe8000", + "0x48307ffe80007ffb", + "0x20680017fff7fff", + "0x5", + "0x40127ffe7fff7ffb", + "0x10780017fff7fff", + "0xd", + "0x48307ffe7ffb8000", + "0x48507ffe80007fff", + "0x48507fff7fff8000", + "0x48307ffa7ff78000", + "0x48307fff80027ffe", + "0x483080017fff7ff5", + "0x48507ffe7ffb7fff", + "0x48307ff480007ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x7", + "0x40780017fff7fff", + "0x30", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x484680017ffd8000", + "0x800000000000011000000000000000000000000000000000000000000000000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa5", + "0x208b7fff7fff7ffe" + ], + "hints": [ + [ + 0, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 26, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 45, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x834" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -12 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 65, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 101, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 116, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 138, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 153, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 179, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 198, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -12 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 218, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 241, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 256, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 278, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 293, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 328, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 347, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3ac" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -60 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 368, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 391, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 406, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 420, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 434, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 448, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 463, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 486, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 512, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -33 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 533, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 555, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 572, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 588, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 628, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 653, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 678, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 749, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 849, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 870, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -37 + } + } + } + } + ] + ], + [ + 895, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 911, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -14 + } + } + } + } + ] + ], + [ + 966, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1017, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4a42" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1095, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1122, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1928" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1192, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1262, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1282, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1358, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1415, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1513, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1540, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1577, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1597, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1610, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 1614, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1624, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1791, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 1820, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1969, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 1973, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1983, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2053, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2075, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2098, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2133, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2185, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xcc6" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2241, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2278, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2295, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -10 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2363, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x816" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -22 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2388, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2470, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2523, + [ + { + "FieldSqrt": { + "val": { + "Deref": { + "register": "AP", + "offset": -4 + } + }, + "sqrt": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2533, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x4000000000000088000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 2548, + [ + { + "FieldSqrt": { + "val": { + "Deref": { + "register": "AP", + "offset": -4 + } + }, + "sqrt": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2558, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x4000000000000088000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 2681, + [ + { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -3 + }, + "b": { + "Immediate": "0x0" + } + } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2685, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 2726, + [ + { + "RandomEcPoint": { + "x": { + "register": "AP", + "offset": 4 + }, + "y": { + "register": "AP", + "offset": 5 + } + } + }, + { + "AllocConstantSize": { + "size": { + "Immediate": "0x2" + }, + "dst": { + "register": "AP", + "offset": 6 + } + } + } + ] + ], + [ + 2786, + [ + { + "RandomEcPoint": { + "x": { + "register": "AP", + "offset": 4 + }, + "y": { + "register": "AP", + "offset": 5 + } + } + }, + { + "AllocConstantSize": { + "size": { + "Immediate": "0x2" + }, + "dst": { + "register": "AP", + "offset": 6 + } + } + } + ] + ] + ], + "pythonic_hints": [ + [0, ["memory[ap + 0] = 0 <= memory[fp + -6]"]], + [26, ["memory[ap + 0] = segments.add()"]], + [45, ["memory[ap + 0] = 2100 <= memory[ap + -12]"]], + [65, ["memory[ap + 0] = segments.add()"]], + [101, ["memory[ap + 0] = segments.add()"]], + [116, ["memory[ap + 0] = segments.add()"]], + [138, ["memory[ap + 0] = segments.add()"]], + [153, ["memory[ap + 0] = 0 <= memory[fp + -6]"]], + [179, ["memory[ap + 0] = segments.add()"]], + [198, ["memory[ap + 0] = 0 <= memory[ap + -12]"]], + [218, ["memory[ap + 0] = segments.add()"]], + [241, ["memory[ap + 0] = segments.add()"]], + [256, ["memory[ap + 0] = segments.add()"]], + [278, ["memory[ap + 0] = segments.add()"]], + [293, ["memory[ap + 0] = 0 <= memory[fp + -6]"]], + [328, ["memory[ap + 0] = segments.add()"]], + [347, ["memory[ap + 0] = 940 <= memory[ap + -60]"]], + [368, ["memory[ap + 0] = segments.add()"]], + [391, ["memory[ap + 0] = segments.add()"]], + [406, ["memory[ap + 0] = segments.add()"]], + [420, ["memory[ap + 0] = segments.add()"]], + [434, ["memory[ap + 0] = segments.add()"]], + [448, ["memory[ap + 0] = segments.add()"]], + [463, ["memory[ap + 0] = 0 <= memory[fp + -6]"]], + [486, ["memory[ap + 0] = segments.add()"]], + [512, ["memory[ap + 0] = memory[ap + -1] <= memory[ap + -33]"]], + [533, ["memory[ap + 0] = segments.add()"]], + [555, ["memory[ap + 0] = segments.add()"]], + [572, ["memory[ap + 0] = segments.add()"]], + [588, ["memory[ap + 0] = segments.add()"]], + [628, ["memory[ap + 0] = segments.add()"]], + [653, ["memory[ap + 0] = segments.add()"]], + [678, ["memory[ap + 0] = segments.add()"]], + [749, ["memory[ap + 0] = segments.add()"]], + [849, ["memory[ap + 0] = segments.add()"]], + [870, ["syscall_handler.syscall(syscall_ptr=memory[ap + -37])"]], + [895, ["memory[ap + 0] = segments.add()"]], + [911, ["syscall_handler.syscall(syscall_ptr=memory[ap + -14])"]], + [966, ["memory[ap + 0] = segments.add()"]], + [1017, ["memory[ap + 0] = 19010 <= memory[fp + -8]"]], + [1095, ["memory[ap + 0] = segments.add()"]], + [1122, ["memory[ap + 0] = 6440 <= memory[fp + -7]"]], + [1192, ["memory[ap + 0] = segments.add()"]], + [1262, ["memory[ap + 0] = memory[ap + -1] <= memory[ap + -2]"]], + [1282, ["memory[ap + 0] = segments.add()"]], + [1358, ["memory[ap + 0] = segments.add()"]], + [1415, ["memory[ap + 0] = segments.add()"]], + [1513, ["memory[ap + 0] = segments.add()"]], + [1540, ["memory[ap + 0] = segments.add()"]], + [1577, ["memory[ap + 0] = memory[fp + -3] < memory[ap + -1]"]], + [1597, ["memory[ap + 0] = segments.add()"]], + [ + 1610, + [ + "memory[ap + 4] = memory[fp + -3] < 3618502788666131106986593281521497120414687020801267626233049500247285301248" + ] + ], + [ + 1614, + [ + "\n(value, scalar) = (memory[ap + 3], 313594649253062377472)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + -2] = x\nmemory[ap + -1] = y\n" + ] + ], + [ + 1624, + [ + "\n(value, scalar) = (memory[fp + -3], 10633823966279326983230456482242756608)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + -1] = x\nmemory[ap + 0] = y\n" + ] + ], + [1791, ["syscall_handler.syscall(syscall_ptr=memory[fp + -3])"]], + [1820, ["memory[ap + -1] = memory[ap + 0] < 4294967296"]], + [ + 1969, + [ + "memory[ap + 4] = memory[ap + -1] < 3618502788666131106986593281521497120414687020801267626233049500247285301248" + ] + ], + [ + 1973, + [ + "\n(value, scalar) = (memory[ap + 3], 313594649253062377472)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + -2] = x\nmemory[ap + -1] = y\n" + ] + ], + [ + 1983, + [ + "\n(value, scalar) = (memory[ap + -2], 10633823966279326983230456482242756608)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + -1] = x\nmemory[ap + 0] = y\n" + ] + ], + [2053, ["memory[ap + 0] = memory[ap + -1] <= memory[ap + -2]"]], + [2075, ["memory[ap + 0] = memory[ap + -1] <= memory[ap + -2]"]], + [2098, ["memory[ap + 0] = segments.add()"]], + [2133, ["memory[ap + 0] = segments.add()"]], + [2185, ["memory[ap + 0] = 3270 <= memory[fp + -7]"]], + [2241, ["memory[ap + 0] = segments.add()"]], + [2278, ["memory[ap + 0] = segments.add()"]], + [2295, ["memory[ap + 0] = memory[ap + -1] <= memory[fp + -10]"]], + [2363, ["memory[ap + 0] = 2070 <= memory[ap + -22]"]], + [2388, ["memory[ap + 0] = segments.add()"]], + [2470, ["memory[ap + 0] = segments.add()"]], + [ + 2523, + [ + "\nfrom starkware.crypto.signature.signature import FIELD_PRIME\nfrom starkware.python.math_utils import is_quad_residue, sqrt\n\nval = memory[ap + -4]\nif is_quad_residue(val, FIELD_PRIME):\n memory[ap + 0] = sqrt(val, FIELD_PRIME)\nelse:\n memory[ap + 0] = sqrt(val * 3, FIELD_PRIME)\n" + ] + ], + [ + 2533, + [ + "\n(value, scalar) = (memory[ap + -3], 5316911983139663648412552867652567040)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + 0] = x\nmemory[ap + 1] = y\n" + ] + ], + [ + 2548, + [ + "\nfrom starkware.crypto.signature.signature import FIELD_PRIME\nfrom starkware.python.math_utils import is_quad_residue, sqrt\n\nval = memory[ap + -4]\nif is_quad_residue(val, FIELD_PRIME):\n memory[ap + 0] = sqrt(val, FIELD_PRIME)\nelse:\n memory[ap + 0] = sqrt(val * 3, FIELD_PRIME)\n" + ] + ], + [ + 2558, + [ + "\n(value, scalar) = (memory[ap + -3], 5316911983139663648412552867652567040)\nx = min(value // scalar, 340282366920938463463374607431768211455)\ny = value - x * scalar\nmemory[ap + 0] = x\nmemory[ap + 1] = y\n" + ] + ], + [2681, ["memory[ap + 0] = (memory[fp + -3] + 0) % PRIME < 4294967296"]], + [ + 2685, + [ + "\n(value, scalar) = (memory[ap + -1], 10633823966279327296825105735305134080)\nx = min(value // scalar, 340282366920938463463374607431768211454)\ny = value - x * scalar\nmemory[ap + 0] = x\nmemory[ap + 1] = y\n" + ] + ], + [ + 2726, + [ + "\nfrom starkware.crypto.signature.signature import ALPHA, BETA, FIELD_PRIME\nfrom starkware.python.math_utils import random_ec_point\n(memory[ap + 4], memory[ap + 5]) = random_ec_point(FIELD_PRIME, ALPHA, BETA)\n", + "\nif '__boxed_segment' not in globals():\n __boxed_segment = segments.add()\nmemory[ap + 6] = __boxed_segment\n__boxed_segment += 2\n" + ] + ], + [ + 2786, + [ + "\nfrom starkware.crypto.signature.signature import ALPHA, BETA, FIELD_PRIME\nfrom starkware.python.math_utils import random_ec_point\n(memory[ap + 4], memory[ap + 5]) = random_ec_point(FIELD_PRIME, ALPHA, BETA)\n", + "\nif '__boxed_segment' not in globals():\n __boxed_segment = segments.add()\nmemory[ap + 6] = __boxed_segment\n__boxed_segment += 2\n" + ] + ] + ], + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "offset": 0, + "builtins": ["range_check"] + }, + { + "selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "offset": 153, + "builtins": ["range_check"] + }, + { + "selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "offset": 293, + "builtins": ["range_check"] + } + ], + "L1_HANDLER": [], + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "offset": 463, + "builtins": ["range_check", "ec_op", "poseidon"] + } + ] + } +} diff --git a/src/contracts/BraavosBaseAccount.sierra.json b/src/contracts/BraavosBaseAccount.sierra.json new file mode 100644 index 0000000..978ad0f --- /dev/null +++ b/src/contracts/BraavosBaseAccount.sierra.json @@ -0,0 +1,2735 @@ +{ + "sierra_program": [ + "0x1", + "0x4", + "0x0", + "0x2", + "0x5", + "0x3", + "0x298", + "0x168", + "0x5e", + "0x52616e6765436865636b", + "0x800000000000000100000000000000000000000000000000", + "0x45635374617465", + "0x800000000000000700000000000000000000000000000000", + "0x4563506f696e74", + "0x4e6f6e5a65726f", + "0x800000000000000700000000000000000000000000000001", + "0x1", + "0x2", + "0x753332", + "0x537472756374", + "0x800000000000000f00000000000000000000000000000001", + "0x0", + "0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3", + "0x456e756d", + "0x800000000000000700000000000000000000000000000003", + "0x19b9ae4ba181a54f9e7af894a81b44a60aea4c9803939708d6cc212759ee94c", + "0x4", + "0x5", + "0x4172726179", + "0x800000000000000300000000000000000000000000000001", + "0xa", + "0x536e617073686f74", + "0x7", + "0x800000000000000700000000000000000000000000000002", + "0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62", + "0x8", + "0x66656c74323532", + "0x9", + "0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672", + "0x800000000000000300000000000000000000000000000003", + "0xc", + "0x2a594b95e3522276fe0ac7ac7a7e4ad8c47eaa6223bc0fd6991aa683b7ee495", + "0xb", + "0xd", + "0x800000000000000700000000000000000000000000000004", + "0x39a088813bcc109470bd475058810a7465bd632650a449e0ab3aee56f2e4e69", + "0x426f78", + "0x22", + "0xfeece2ea7edbbbebeeb5f270b77f64c680a68a089b794478dd9eca75e0196a", + "0x11", + "0x1d49f7a4b277bf7b55a2664ce8cef5d6922b5ffb806b89644b9e0cdbbcac378", + "0x13", + "0x13fdd7105045794a99550ae1c4ac13faa62610dfab62c16422bfcf5803baa6e", + "0x14", + "0x436f6e747261637441646472657373", + "0x3d37ad6eafb32512d2dd95a2917f6bf14858de22c27a1114392429f2e5c15d7", + "0x16", + "0x3288d594b9a45d15bb2fcb7903f06cdb06b27f0ba88186ec4cfaa98307cb972", + "0x18", + "0xa853c166304d20fb0711becf2cbdf482dee3cac4e9717d040b7a7ab1df7eec", + "0x19", + "0x3e1934b18d91949ab9afdbdd1866a30ccca06c2b1e6581582c6b27f8b4f6555", + "0x1b", + "0x3ab802bcce3a9ca953b0e1f31a5b29eb27a9b727c891e24300e1b5cc57387ba", + "0x1d", + "0x556e696e697469616c697a6564", + "0x800000000000000200000000000000000000000000000001", + "0x24", + "0x3f", + "0x800000000000000700000000000000000000000000000006", + "0x7d4d99e9ed8d285b5c61b493cedb63976bc3d9da867933d829f49ce838b5e7", + "0x20", + "0x21", + "0x753634", + "0x3808c701a5d13e100ab11b6c02f91f752ecae7e420d21b56c90ec0a475cc7e5", + "0x23", + "0x2ca39cde64b91db1514d78c135ee79d71b3b57fffee52f1a3ef96618a34d8c8", + "0x25", + "0x1f5d91ca543c7f9a0585a1c8beffc7a207d4af73ee640223a154b1da196a40d", + "0x27", + "0x29", + "0x2a", + "0x3693aea200ee3080885d21614d01b9532a8670f69e658a94addaadd72e9aca", + "0x18508a22cd4cf1437b721f596cd2277fc0a5e4dcd247b107ef2ef5fd2752cf7", + "0x2c", + "0x2d", + "0x8416421239ce8805ed9d27e6ddae62a97ab5d01883bb8f5246b4742a44b429", + "0x2e", + "0x161ee0e6962e56453b5d68e09d1cabe5633858c1ba3a7e73fee8c70867eced0", + "0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99", + "0x436c61737348617368", + "0x11771f2d3e7dc3ed5afe7eae405dfd127619490dec57ceaa021ac8bc2b9b315", + "0x33", + "0x35", + "0x3ae40d407f8074730e48241717c3dd78b7128d346cf81094e31806a3a5bdf", + "0x36", + "0x3c", + "0x38", + "0x1597b831feeb60c71f259624b79cf66995ea4f7e383403583674ab9c33b9cec", + "0x39", + "0x75313238", + "0x3342418ef16b3e2799b906b1e4e89dbb9b111332dd44f72458ce44f9895b508", + "0x3b", + "0x800000000000000f00000000000000000000000000000002", + "0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5", + "0x3d", + "0x80000000000000070000000000000000000000000000000e", + "0x348a62b7a38c0673e61e888d83a3ac1bf334ee7361a8514593d3d9532ed8b39", + "0x3a", + "0xa36a0a15af8cf1727a3a4fd9137671f23256b1f42299af56605a6910c522ce", + "0x40", + "0x28f8d296e28032baef1f420f78ea9d933102ba47a50b1c5f80fc8a3a1041da", + "0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7", + "0x4a94eaca3bda76720f34a035b84b428a2fa1f29daf31122270a178d19aced5", + "0x800000000000000f00000000000000000000000000000003", + "0x45", + "0x3cdada5675fa63cae7dc9d70103e482a408eb2a87e802d630ab35238f3732dd", + "0x46", + "0x506f736569646f6e", + "0x45634f70", + "0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259", + "0x4a", + "0x2f38f86c5ecb87a0ffcca1ec0f96d2926fdefb8edf253ab0bf0730cb2a8aa10", + "0x2b292b97b1469787b081031c1b0989c5d6f0904f872f8716706f2987cd8c5f", + "0x4c", + "0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511", + "0x2a8d8c48ed39481d043e4ff67c3b718fc5d6e257b46e486b0050abe8e8a8ad7", + "0x4f", + "0x74584e9f10ffb1a40aa5a3582e203f6758defc4a497d1a2d5a89f274a320e9", + "0x52", + "0x240be7833e76be1d2b442e7f6982513412ff27c5b780661d4feef16d91299f", + "0x54", + "0x4275696c74696e436f737473", + "0x53797374656d", + "0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6", + "0x51", + "0x28f184fd9e4406cc4475e4faaa80e83b54a57026386ee7d5fc4fa8f347e327d", + "0x59", + "0x5a", + "0xc1f0cb41289e2f6a79051e9af1ead07112b46ff17a492a90b3944dc53a51c8", + "0x5b", + "0x4761734275696c74696e", + "0x15e", + "0x7265766f6b655f61705f747261636b696e67", + "0x77697468647261775f676173", + "0x6272616e63685f616c69676e", + "0x73746f72655f74656d70", + "0x5d", + "0x66756e6374696f6e5f63616c6c", + "0x3", + "0x656e756d5f6d61746368", + "0x5c", + "0x7374727563745f6465636f6e737472756374", + "0x61727261795f736e617073686f745f706f705f66726f6e74", + "0x64726f70", + "0x61727261795f6e6577", + "0x66656c743235325f636f6e7374", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x61727261795f617070656e64", + "0x7374727563745f636f6e737472756374", + "0x656e756d5f696e6974", + "0x58", + "0x57", + "0x6765745f6275696c74696e5f636f737473", + "0x56", + "0x77697468647261775f6761735f616c6c", + "0x55", + "0x736e617073686f745f74616b65", + "0x6", + "0x53", + "0x4f7574206f6620676173", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x50", + "0x4e", + "0x4d", + "0x4b", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x49", + "0x48", + "0x47", + "0x64697361626c655f61705f747261636b696e67", + "0x44", + "0x6a756d70", + "0x756e626f78", + "0x72656e616d65", + "0x4e4f545f494d504c454d454e544544", + "0x647570", + "0x61727261795f6c656e", + "0x7533325f746f5f66656c74323532", + "0x43", + "0xe", + "0x616c6c6f635f6c6f63616c", + "0x66696e616c697a655f6c6f63616c73", + "0xf", + "0x41", + "0x73746f72655f6c6f63616c", + "0x10", + "0x3e", + "0x7533325f636f6e7374", + "0x37", + "0x12", + "0x34", + "0x636c6173735f686173685f746f5f66656c74323532", + "0x656e61626c655f61705f747261636b696e67", + "0x66656c743235325f69735f7a65726f", + "0x32", + "0x626f6f6c5f6e6f745f696d706c", + "0x494e56414c49445f4155585f44415441", + "0x7265706c6163655f636c6173735f73797363616c6c", + "0x31", + "0x2dd76e7ad84dbed81c314ffe5e7a7cacfb8f4836f01af4e913f275f89a3de1a", + "0x6c6962726172795f63616c6c5f73797363616c6c", + "0x30", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x42", + "0x15", + "0x2f", + "0x66656c743235325f737562", + "0x28", + "0x2b", + "0x17", + "0x26", + "0x1e", + "0x61727261795f736c696365", + "0x1a", + "0x1c", + "0x636f6e74726163745f616464726573735f746f5f66656c74323532", + "0x494e56414c49445f54584e5f534947", + "0x494e56414c49445f4155585f534947", + "0x496e646578206f7574206f6620626f756e6473", + "0x61727261795f676574", + "0x636c6173735f686173685f7472795f66726f6d5f66656c74323532", + "0x6765745f657865637574696f6e5f696e666f5f76325f73797363616c6c", + "0x1f", + "0x7533325f6f766572666c6f77696e675f737562", + "0x7533325f737562204f766572666c6f77", + "0x21adb5788e32c84f69a1863d85ef9394b7bf761a0ce1190f826984e5075c371", + "0x66656c743235325f616464", + "0x68616465735f7065726d75746174696f6e", + "0x800000000000010ffffffffffffffffb781126dcae7b2321e66a241adc64d2f", + "0x65635f706f696e745f66726f6d5f785f6e7a", + "0x756e777261705f6e6f6e5f7a65726f", + "0x1ef15c18599971b7beced415a40f0c7deacfd9b0d1819e03d723d8bc943cfca", + "0x5668060aa49730b7be4801df46ec62de53ecd11abe43a32873000c36e8dc1f", + "0x65635f706f696e745f7472795f6e65775f6e7a", + "0x65635f706f696e745f69735f7a65726f", + "0x65635f706f696e745f756e77726170", + "0x7533325f7472795f66726f6d5f66656c74323532", + "0x65635f73746174655f696e6974", + "0x65635f73746174655f6164645f6d756c", + "0x65635f73746174655f7472795f66696e616c697a655f6e7a", + "0x65635f706f696e745f7a65726f", + "0x65635f73746174655f616464", + "0x65635f6e6567", + "0x961", + "0xffffffffffffffff", + "0x74", + "0x6d", + "0xea", + "0xe3", + "0xd4", + "0xa0", + "0xc6", + "0xbf", + "0x185", + "0x176", + "0x166", + "0x155", + "0x11c", + "0x145", + "0x13e", + "0x1f7", + "0x1e6", + "0x1af", + "0x1d6", + "0x1cd", + "0x20f", + "0x214", + "0x222", + "0x5f", + "0x60", + "0x61", + "0x62", + "0x25b", + "0x260", + "0x26a", + "0x63", + "0x64", + "0x65", + "0x27a", + "0x66", + "0x67", + "0x68", + "0x69", + "0x6a", + "0x6b", + "0x6c", + "0x6e", + "0x6f", + "0x36b", + "0x70", + "0x71", + "0x72", + "0x73", + "0x75", + "0x76", + "0x77", + "0x35f", + "0x78", + "0x79", + "0x7a", + "0x7b", + "0x7c", + "0x7d", + "0x7e", + "0x7f", + "0x80", + "0x81", + "0x354", + "0x82", + "0x83", + "0x84", + "0x342", + "0x85", + "0x86", + "0x87", + "0x88", + "0x2ca", + "0x89", + "0x8a", + "0x2cf", + "0x8b", + "0x8c", + "0x8d", + "0x8e", + "0x8f", + "0x2da", + "0x90", + "0x2dd", + "0x2f2", + "0x91", + "0x92", + "0x93", + "0x94", + "0x95", + "0x2fd", + "0x96", + "0x97", + "0x302", + "0x98", + "0x99", + "0x335", + "0x9a", + "0x9b", + "0x9c", + "0x316", + "0x9d", + "0x9e", + "0x31b", + "0x9f", + "0xa1", + "0x32a", + "0xa2", + "0xa3", + "0xa4", + "0xa5", + "0xa6", + "0xa7", + "0x3ae", + "0xa8", + "0x388", + "0xa9", + "0xaa", + "0xab", + "0x3a6", + "0xac", + "0xad", + "0x39c", + "0xae", + "0xaf", + "0xb0", + "0xb1", + "0xb2", + "0x3f9", + "0xb3", + "0xb4", + "0x3cd", + "0xb5", + "0xb6", + "0x3d2", + "0xb7", + "0xb8", + "0xb9", + "0x3ee", + "0xba", + "0xbb", + "0x3e7", + "0xbc", + "0xbd", + "0xbe", + "0xc0", + "0xc1", + "0xc2", + "0xc3", + "0xc4", + "0x41a", + "0xc5", + "0xc7", + "0xc8", + "0xc9", + "0xca", + "0xcb", + "0xcc", + "0xcd", + "0xce", + "0xcf", + "0xd0", + "0xd1", + "0xd2", + "0xd3", + "0x5bb", + "0xd5", + "0x5ad", + "0x599", + "0xd6", + "0x58c", + "0xd7", + "0x579", + "0xd8", + "0x56c", + "0x55d", + "0x54e", + "0xd9", + "0x540", + "0x532", + "0xda", + "0xdb", + "0x524", + "0xdc", + "0xdd", + "0x4db", + "0xde", + "0xdf", + "0xe0", + "0x4ce", + "0xe1", + "0x4b0", + "0x4b3", + "0x4c8", + "0xe2", + "0xe4", + "0x4e2", + "0x51a", + "0x4f8", + "0x4fb", + "0x50d", + "0xe5", + "0xe6", + "0xe7", + "0xe8", + "0xe9", + "0x5d0", + "0xeb", + "0xec", + "0xed", + "0xee", + "0xef", + "0x5e1", + "0xf0", + "0xf1", + "0xf2", + "0xf3", + "0x5ed", + "0xf4", + "0x5f9", + "0xf5", + "0xf6", + "0x62f", + "0x627", + "0xf7", + "0xf8", + "0x620", + "0xf9", + "0xfa", + "0x617", + "0xfb", + "0xfc", + "0xfd", + "0xfe", + "0xff", + "0x100", + "0x101", + "0x102", + "0x103", + "0x104", + "0x64c", + "0x105", + "0x106", + "0x651", + "0x107", + "0x108", + "0x109", + "0x10a", + "0x65c", + "0x10b", + "0x10c", + "0x660", + "0x10d", + "0x10e", + "0x10f", + "0x110", + "0x111", + "0x112", + "0x113", + "0x114", + "0x115", + "0x67e", + "0x116", + "0x117", + "0x118", + "0x697", + "0x119", + "0x11a", + "0x11b", + "0x11d", + "0x11e", + "0x6cd", + "0x6c4", + "0x11f", + "0x120", + "0x121", + "0x122", + "0x123", + "0x6e8", + "0x124", + "0x6e1", + "0x125", + "0x126", + "0x127", + "0x6f5", + "0x6fa", + "0x128", + "0x74b", + "0x129", + "0x12a", + "0x743", + "0x736", + "0x72e", + "0x722", + "0x12b", + "0x12c", + "0x12d", + "0x12e", + "0x12f", + "0x130", + "0x782", + "0x763", + "0x768", + "0x777", + "0x131", + "0x796", + "0x132", + "0x133", + "0x134", + "0x135", + "0x7a3", + "0x136", + "0x137", + "0x138", + "0x84c", + "0x139", + "0x7bb", + "0x7c0", + "0x826", + "0x7cb", + "0x7d0", + "0x800", + "0x13a", + "0x13b", + "0x13c", + "0x7ed", + "0x13d", + "0x13f", + "0x814", + "0x81e", + "0x140", + "0x141", + "0x83a", + "0x844", + "0x142", + "0x869", + "0x143", + "0x87b", + "0x88d", + "0x144", + "0x90a", + "0x146", + "0x8ff", + "0x147", + "0x148", + "0x149", + "0x8f3", + "0x14a", + "0x14b", + "0x14c", + "0x8b1", + "0x14d", + "0x14e", + "0x14f", + "0x150", + "0x8c4", + "0x8d7", + "0x8d5", + "0x151", + "0x8de", + "0x8ed", + "0x8eb", + "0x152", + "0x91a", + "0x153", + "0x154", + "0x927", + "0x156", + "0x157", + "0x158", + "0x159", + "0x933", + "0x15a", + "0x93e", + "0x944", + "0x15b", + "0x15c", + "0x950", + "0x95a", + "0x15d", + "0x193", + "0x207", + "0x22c", + "0x237", + "0x244", + "0x24f", + "0x254", + "0x271", + "0x27f", + "0x28c", + "0x377", + "0x3bd", + "0x408", + "0x420", + "0x5c9", + "0x5db", + "0x5e7", + "0x5f3", + "0x5ff", + "0x636", + "0x645", + "0x656", + "0x666", + "0x685", + "0x69d", + "0x6d6", + "0x6ee", + "0x755", + "0x790", + "0x79c", + "0x7ac", + "0x85c", + "0x914", + "0x920", + "0x938", + "0x954", + "0x52a5", + "0x1302012020110341003c0e0340c02c040280902007018040140400c0200400", + "0xb05808074080380d0400b0101c06c080680d0640b0600801c170580805414", + "0x160200e0342402c2302022020210341f03c18020200200e0341f02c1e0340c", + "0xf060080a4080a00d07c0f09c0801c2604808048080940d0400f0580805808", + "0x40b8230202d0202c0341f03c2b0201d0200e0341002c130201d0202a03410", + "0xd07c0f0c8080380d0640b04c0804c080c40d0400f04c080c0080bc0d0400f", + "0x120200e0341902c2302036020350341f03c300200e0341902c230203402033", + "0x80f80d0f40b0f00801c260ec0801c26048080e83908c080e0080dc0d07c0f", + "0xe0341902c300204302043020420342402c04104160203002030020400203f", + "0x80541404c0811c081180d0400f0740801c2608c08114081100d07c0f0a408", + "0x4c0204b0341003c1d02016020300204a0342402c490203a0e4480200705c1d", + "0x8074081400d07c0f08c0813c081380d07c0f13408074080380d0400b04c08", + "0x70981302054020530341003c0414816020070181802013020510341f03c18", + "0xb1640801c17160080541408c0815c081580d07c0f154080380d0640b05808", + "0x1f03c130200e0345f02c5e02043020160205d0342402c041705b0205a03419", + "0x805808058080580807408178080c0080580818c0d1880b08c08184081800d", + "0x2302066020650341f03c400200e0341902c1d02012020120201d0205e02064", + "0xd1a80b1a40d0300b04c08154081a00d0400f1240819c0d0640b0f0080e839", + "0x1f03c160200e0341902c021bc021b8230206d0206c0341f03c130206b0200e", + "0x81d40d0400f04c081d0081cc0d0400f058081c80d0640b08c081c4081c00d", + "0x1d0200e0341902c2302077020760341f03c160206b0200e0341002c1302016", + "0xf120081ac080380d07c0b08c081e4081e00d07c0f04c08060080380d07c0b", + "0x1f03c4c02015050230207f0207e0341f03c021f4041f0230207b0207a0341f", + "0x860088508c082100820c0d07c0f20808074080380d07c0b04c08204082000d", + "0x80208e0488d0208c074080208a22c080208a034080208a034890348803487", + "0x55020082481b0200824816020082441d02008240820200823884020082408f", + "0x9708008020970580802096058080208a254090209405808020932040802092", + "0xd2749c020082280d26c99020082289a020082280802499020092602302008", + "0x9f1ac08020921ec0802090278080208e04c8d0208c204080208a1ac0802097", + "0x8240a102008238a0234082301802008228490200822848020082484802008", + "0x8024981fc080209707408020970600802092060080209f04c08020921e408", + "0x8240a4020082381823408230a3024082501d02008248a2024082500d02499", + "0x8d0208c294080208e0748d0208c06c8d0208c0580802092058080209f1dc08", + "0xa702008238222340823074020082286b0200827c7402008248a60200823816", + "0x8e0808d0208c2ac080208a2a8080208a2a409020942a009020941c40802090", + "0xd2bcae020082281b020082280d024ae020092600d2b46d02008248ac02008", + "0x8020b1130080209305808020b02b8080208e020092b8080249804c0802097", + "0x8f020082280d0248f02009260840200825c080248202009260232340823016", + "0x97034b507408020b412408020b3278080208a0200927808024982c80902094", + "0xa502009260a40200822808024a402009260b723408230b602008228b602008", + "0x80208a0340929808024981d00802097020092940802498294080208a03409", + "0x82300d2e43c020082e0a70200822808024a70200926008024a602009260a6", + "0x80208a0f008020b30f008020bc0f008020b019808020902ec080208e2e88d", + "0x30020082483c020082406102008248be02008238bd2340823074020082cc3c", + "0x8e0a48d0208c048080208a02409020bf048080209219008020921780802092", + "0xd3140d3100d30c54020082ccc202008238c1234082305702008240c002008", + "0x920c8080209f034090c8080249831808020920c8080208a020090c80802498", + "0x822808024ac02009260c80240825054020082480d31c32020082383202008", + "0x900ac8d0208c020093280802498328080208a034093280802498034c92b008", + "0x8024cd02009260cd020082280d024cd020092600d330cb024082507402008", + "0x902094034092b008024981b408020971fc0802092264080208e0b48d0208c", + "0x8238d0234082300d024820200926016020082cccf020082483c02008248ce", + "0x923c0802498034d202009020941300802096134080208e13c080209034408", + "0x9260d3020082280d024d3020092601d02008244b60200824049020082e008", + "0x9812408020920c08d0208c07408020b034c080208e12408020bc0200934c08", + "0x8248d4020082480d024a102009260790200825ca10200822808024a102009", + "0x80209209c080209009c08020b01140802090358080208e3548d0208c2d808", + "0x12020082e008024bb02009260bb020082280d024bb02009260660200825c3f", + "0x8e0c88d0208c04808020b304808020bc23409020bf05808020b407408020b3", + "0x823008024082fc3423408230160200836012024082fc3802008240d702008", + "0x90364080208e0d88d0208c1d0080209f034db0d80802090368080208e3648d", + "0x610200825cdd02408250be0200822808024be02009260dc024082503402008", + "0x80249815c080209705808020df37809020941c40802092034092f80802498", + "0xc2020082280d024c2020092600d38008024c002009260c0020082280d024c0", + "0x8d0208c354080208e3688d0208c334080208e328080208e020093080802498", + "0x825c0d0244d020092604c0200825c2b020082382d02008240d00200823838", + "0xb1020093440802498020091340802498344080208a03409344080249813c08", + "0x8024c102009260c1020082280d024c1020092600d384d7234082301d02008", + "0x92f408024982f4080208a034092f40802498034e3358080208a3888d0208c", + "0xba02008228ba0200825c0d02408250d7020082283f23408230e40240825008", + "0x8020920340929c08024981c4080209708808020902dc080208e1008d0208c", + "0xd024082fc08024da02009260da020082280d024da02009260360200825c40", + "0xe5020093640802498364080208a0340936408024980d0080209709c8d0208c", + "0x43234082301b020082cc08024d502009260d5020082280d024d5020092600d", + "0x98340080208a0340934008024980b40802097034090ac0802498280080208e", + "0xd024d602009260450200825cc102008238080242b0200926008024d002009", + "0x935c08024980340935c08024980e008020972f4080208e020093580802498", + "0x822808024b7020092609c020082489c020082cc0d39c0d398ba0200824008", + "0x80208a034e93a009020942e80802092034092dc080249808808020972dc08", + "0xd3b83b2340823009020082280d3b4ec02408250eb0240825009020083a88d", + "0x92800802498034f03588d0208c1148d0208c02408020b3034ef0240802092", + "0x82480d3d00d3cc08020082280d3c80d3c408024a002009260a0020082280d", + "0x93e413048093e0090200d024080340d3e0080340d034f7034f6034f523408", + "0xd04c083e00804c080480d048083e008048082340d034f80200d0240d060a0", + "0xf80241602018034160741b234f80208d04c12234a00348d020f80208d02013", + "0x92dc080740d2dc23024f8020220201b0340d3e0080340903420020fa08808", + "0x90a4080880d0a4083e00808c080580d034f80200d0240d2f408000ba020f8", + "0x80ac0808c0d034f8020c1020200340d3e008034090342d020d70acc1024f8", + "0x2903430020f80200d2f40d340083e008034ba0340d3e0082e8082dc0d034f8", + "0x90b40d0c8083e0080342b034d5020f802030340093040d0c0083e0080c008", + "0x80480d06c083e00806c082340d364083e0080d0083400d0d0083e00835432", + "0x1d06c12020d9020f8020d9020d503409020f802009020300341d020f80201d", + "0x80d00d0d8083e008034320340d3e0080b4080800d034f80200d0240d36409", + "0xf80200d0240d388d7024a40e0da024f8024360741b234d903436020f802036", + "0x40020f8020ba0fc090e00d2e8083e0082e8083680d0fc083e008034360340d", + "0xd3e0080340903443020aa09c083e0091000835c0d368083e008368082340d", + "0x400340d3e008114080fc0d35845024f802027020e20343b020f80200d2e80d", + "0x80480d368083e008368082340d034f80204702027034d311c093e00835808", + "0xda048450343b020f80203b0203b034d3020f8020d30204303438020f802038", + "0xf80200d0240d1340833c4c020f8024d4020d6034d412448234f80203b34c38", + "0xcd024f80204f020480340d3e0083440834c0d3444f024f80204c020470340d", + "0xd150083e008318081300d318083e008328083500d034f8020cd02049034ca", + "0x3003449020f8020490201203448020f8020480208d034c2020f8020540204d", + "0xf80200d0240d308091244804808308083e008308083540d024083e00802408", + "0x49020f8020490201203448020f8020480208d03455020f80204d020d00340d", + "0xd0240d154091244804808154083e008154083540d024083e008024080c00d", + "0xf80203802012034da020f8020da0208d03457020f802043020d00340d3e008", + "0xd15c090e0da0480815c083e00815c083540d024083e008024080c00d0e008", + "0x83e0080344f034c0020f80200d2e80d034f8020ba020b70340d3e00803409", + "0x64020f80200d0ac0d16c083e008164c0024c103459020f8020590202903459", + "0xd7020f8020d70208d03458020f80205e020d00345e020f80205b190090b40d", + "0x8160083e008160083540d024083e008024080c00d388083e008388080480d", + "0xd3e00808c083440d034f8020bd020d30340d3e0080340903458024e235c12", + "0x93040d2f8083e0082f8080a40d2f8083e008034cd03461020f80200d2e80d", + "0x83400d2ec083e0080f0660242d03466020f80200d0ac0d0f0083e0082f861", + "0x9020300341d020f80201d020120341b020f80201b0208d034cf020f8020bb", + "0xd034f80200d0240d33c090741b0480833c083e00833c083540d024083e008", + "0x300341d020f80201d020120341b020f80201b0208d034b6020f802020020d0", + "0xf80200d0240d2d8090741b048082d8083e0082d8083540d024083e00802408", + "0x80a40d1ac083e0080344f034ae020f80200d2e80d034f80208d020d10340d", + "0xac0242d034ac020f80200d0ac0d1b4083e0081acae024c10346b020f80206b", + "0x1802012034a0020f8020a00208d034aa020f8020ab020d0034ab020f80206d", + "0x9060a0048082a8083e0082a8083540d024083e008024080c00d060083e008", + "0x80340903418280093ec13048093e0090200d024080340d3e0080340d034aa", + "0x83e0082340804c0d04c083e00804c080480d048083e008048082340d034f8", + "0xd080083f022020f80241602018034160741b234f80208d04c12234a00348d", + "0xbd020fd2e8083e0092dc080740d2dc23024f8020220201b0340d3e00803409", + "0x83f82b304093e0090a4080880d0a4083e00808c080580d034f80200d0240d", + "0xba020b70340d3e0080ac0808c0d034f8020c1020200340d3e008034090342d", + "0x30020f8020300202903430020f80200d2f40d340083e008034ba0340d3e008", + "0x34020f8020d50c8090b40d0c8083e0080342b034d5020f802030340093040d", + "0xd074083e008074080480d06c083e00806c082340d364083e0080d0083400d", + "0x803409034d90241d06c12020d9020f8020d9020d503409020f80200902030", + "0xd0d8083e0080d8080d00d0d8083e008034320340d3e0080b4080800d034f8", + "0xf80200d0d80d034f80200d0240d388d7024ff0e0da024f8024360741b234d9", + "0xf8020da0208d03440020f8020ba0fc093280d2e8083e0082e8083680d0fc08", + "0x83e008034ba0340d3e00803409034430210009c083e009100083180d36808", + "0x47024f8020d6020c20340d3e008114080fc0d35845024f802027020540343b", + "0xd0ec083e0080ec080ec0d34c083e00834c080a40d034f80204702055034d3", + "0x4c350093e008120081200d034f802049020d303449120093e0080ecd302457", + "0x4d0344f020f80204d0204c0344d020f80204c020d40340d3e008350081240d", + "0x80c00d0e0083e0080e0080480d368083e008368082340d344083e00813c08", + "0xd3e00803409034d10243836812020d1020f8020d1020d503409020f802009", + "0xd0e0083e0080e0080480d368083e008368082340d334083e00810c083400d", + "0x803409034cd0243836812020cd020f8020cd020d503409020f80200902030", + "0x29034c6020f80200d13c0d328083e008034ba0340d3e0082e8082dc0d034f8", + "0x90b40d308083e0080342b03454020f8020c6328093040d318083e00831808", + "0x80480d35c083e00835c082340d15c083e008154083400d154083e008150c2", + "0xe235c1202057020f802057020d503409020f80200902030034e2020f8020e2", + "0xd2e80d034f802023020d10340d3e0082f40834c0d034f80200d0240d15c09", + "0x8164c0024c103459020f8020590202903459020f80200d3340d300083e008", + "0xf80205e020d00345e020f80205b190090b40d190083e0080342b0345b020f8", + "0x83e008024080c00d074083e008074080480d06c083e00806c082340d16008", + "0x20020d00340d3e00803409034580241d06c1202058020f802058020d503409", + "0x8024080c00d074083e008074080480d06c083e00806c082340d184083e008", + "0xd10340d3e00803409034610241d06c1202061020f802061020d503409020f8", + "0xf80203c020290343c020f80200d13c0d2f8083e008034ba0340d3e00823408", + "0xf8020662ec090b40d2ec083e0080342b03466020f80203c2f8093040d0f008", + "0x83e008060080480d280083e008280082340d2d8083e00833c083400d33c08", + "0xd034b60241828012020b6020f8020b6020d503409020f8020090203003418", + "0xd034f80200d0240d060a00250104c12024f802408034090200d034f80200d", + "0xd048083e008048082340d0741b024f80208d020c00348d020f80208d02013", + "0xd06c083e00806c0804c0d034f80200d0240d0880840816020f80241d02059", + "0xd3e00803409034ba021032dc083e00908c081640d08c20024f80201b020c0", + "0xc1020f80242902064034292f4093e0080800816c0d080083e0080800804c0d", + "0xd0024f80242d020220342d020f8020bd020160340d3e008034090342b02104", + "0xd034f802030020230340d3e008340080800d034f80200d0240d3540841430", + "0xf80200d2e80d034f8020c10205e0340d3e0082dc081540d034f80201602055", + "0x83e0080d032024c103434020f8020340202903434020f80200d2f40d0c808", + "0x38020f8020da020d0034da020f8020d90d8090b40d0d8083e0080342b034d9", + "0xd024083e008024080c00d04c083e00804c080480d048083e008048082340d", + "0xf8020d5020200340d3e0080340903438024130481202038020f802038020d5", + "0x93e00935c130488d3640d35c083e00835c080d00d35c083e008034320340d", + "0xf8020430205803443020f80200d0d80d034f80200d0240d09c40025060fce2", + "0x83e0082dc080a40d058083e008058080a40d034f80203b0203f034450ec09", + "0x8388082340d358083e008304b705845048be034c1020f8020c102061034b7", + "0xf80200d2e80d034f80200d0240d34c0841c47020f8024d60203c034e2020f8", + "0xf8020d4020550344c350093e008124083080d124083e00811c081980d12008", + "0x93e0081204c0245703448020f8020480203b0344c020f80204c020290340d", + "0xd3e008344081240d334d1024f80204d020480340d3e00813c0834c0d13c4d", + "0xd150083e008318081340d318083e008328081300d328083e008334083500d", + "0xd503409020f802009020300343f020f80203f02012034e2020f8020e20208d", + "0x83e00834c083400d034f80200d0240d150090fce204808150083e00815008", + "0x9020f802009020300343f020f80203f02012034e2020f8020e20208d034c2", + "0x8058081540d034f80200d0240d308090fce204808308083e008308083540d", + "0x4f03455020f80200d2e80d034f8020c10205e0340d3e0082dc081540d034f8", + "0xd0ac0d300083e00815c55024c103457020f8020570202903457020f80200d", + "0x400208d03464020f80205b020d00345b020f8020c0164090b40d164083e008", + "0x8190083540d024083e008024080c00d09c083e00809c080480d100083e008", + "0x81540d034f80202b020d30340d3e0080340903464024271001202064020f8", + "0x5e020f80200d2e80d034f8020bd020d10340d3e0082dc081540d034f802016", + "0xd184083e0081605e024c103458020f8020580202903458020f80200d2ec0d", + "0x8d03466020f80203c020d00343c020f8020612f8090b40d2f8083e0080342b", + "0x83540d024083e008024080c00d04c083e00804c080480d048083e00804808", + "0xd034f8020ba020d30340d3e0080340903466024130481202066020f802066", + "0xf80200d33c0d2ec083e008034ba0340d3e008080083440d034f80201602055", + "0x83e0080342b034b6020f8020cf2ec093040d33c083e00833c080a40d33c08", + "0x83e008048082340d1b4083e0081ac083400d1ac083e0082d8ae0242d034ae", + "0x6d020f80206d020d503409020f8020090203003413020f8020130201203412", + "0xf80201b020d10340d3e0080880834c0d034f80200d0240d1b40904c1204808", + "0xc1034ab020f8020ab02029034ab020f80200d3340d2b0083e008034ba0340d", + "0xd0034a7020f8020aa1c4090b40d1c4083e0080342b034aa020f8020ab2b009", + "0x80c00d04c083e00804c080480d048083e008048082340d1d0083e00829c08", + "0xd3e0080340903474024130481202074020f802074020d503409020f802009", + "0xa502029034a5020f80200d13c0d298083e008034ba0340d3e008234083440d", + "0x77290090b40d290083e0080342b03477020f8020a5298093040d294083e008", + "0x8060080480d280083e008280082340d1e4083e0081fc083400d1fc083e008", + "0x79024182801202079020f802079020d503409020f8020090203003418020f8", + "0xf80200d0240d0741b02508060a0024f80248d034090200d034f80200d0340d", + "0x83e008280082340d08816024f8020130205b03413020f802013020130340d", + "0x83e008058080580d034f80200d0240d08c0842420020f80242202064034a0", + "0xf8020ba020200340d3e00803409034290210a2f4ba024f8024b702022034b7", + "0xd2f40d304083e008034ba0340d3e008080081780d034f8020bd020230340d", + "0x80342b0342d020f80202b304093040d0ac083e0080ac080a40d0ac083e008", + "0x8280082340d354083e0080c0083400d0c0083e0080b4d00242d034d0020f8", + "0xf8020180201203409020f802009020ae03408020f802008020b6034a0020f8", + "0x1206009020a028008354083e008354083540d048083e008048080c00d06008", + "0x320203403432020f80200d0c80d034f802029020200340d3e00803409034d5", + "0xd3e00803409034da0d80942cd90d0093e0090c8182808d3640d0c8083e008", + "0x1203408020f802008020b603434020f8020340208d03438020f80200d0d80d", + "0x81840d048083e008048080c00d024083e008024082b80d364083e00836408", + "0xd10c271003f388d7280f8020200e012024d9020340606b03420020f802020", + "0xba0340d3e0080ec082b00d034f80200d0240d114084303b020f8024430206d", + "0xd3020d40340d3e00811c081240d34c47024f8020d602048034d6020f80200d", + "0x835c082340d350083e008124081340d124083e008120081300d120083e008", + "0xf80203f0201203440020f802040020ae034e2020f8020e2020b6034d7020f8", + "0x270fc40388d728008350083e008350083540d09c083e00809c080c00d0fc08", + "0xb6034d7020f8020d70208d0344c020f802045020d00340d3e00803409034d4", + "0x80c00d0fc083e0080fc080480d100083e008100082b80d388083e00838808", + "0x8034090344c09c3f100e235ca00204c020f80204c020d503427020f802027", + "0x290344f020f80200d13c0d134083e008034ba0340d3e008080081780d034f8", + "0x90b40d334083e0080342b034d1020f80204f134093040d13c083e00813c08", + "0x82d80d0d8083e0080d8082340d318083e008328083400d328083e008344cd", + "0x1202030034da020f8020da0201203409020f802009020ae03408020f802008", + "0xf80200d0240d31812368090203628008318083e008318083540d048083e008", + "0xd3340d150083e008034ba0340d3e008058083440d034f802023020d30340d", + "0x80342b03455020f8020c2150093040d308083e008308080a40d308083e008", + "0x8280082340d164083e008300083400d300083e008154570242d03457020f8", + "0xf8020180201203409020f802009020ae03408020f802008020b6034a0020f8", + "0x1206009020a028008164083e008164083540d048083e008048080c00d06008", + "0x80344f0345b020f80200d2e80d034f802013020d10340d3e0080340903459", + "0xf80200d0ac0d178083e0081905b024c103464020f8020640202903464020f8", + "0xf80201b0208d034be020f802061020d003461020f80205e160090b40d16008", + "0x83e008074080480d024083e008024082b80d020083e008020082d80d06c08", + "0xbe0481d0240806ca0020be020f8020be020d503412020f802012020300341d", + "0x843413048093e009234080880d234083e008024080580d034f80200d2ac0d", + "0xa70341b020f8020120207103418020f802013020aa0340d3e00803409034a0", + "0x16020f80200d2980d034f80200d0240d0350e0200d1d00d074083e00806008", + "0xd074083e0080880829c0d06c083e008280081c40d088083e008058082940d", + "0x843c23020f80241d0207703420020f8020200201303420020f80201b020d4", + "0x81e40d2f4083e0080347f034ba020f802023020a40340d3e00803409034b7", + "0x200201303408020f802008020120340d020f80200d0208d03429020f8020ba", + "0x8034132840d0a4083e0080a4080a40d2f4083e0082f4083680d080083e008", + "0x82dc0834c0d034f80200d0240d0b42b3048d0202d0acc1234f8020292f420", + "0x83e0080c0200249e03430020f8020d00207b034d0020f80200d2980d034f8", + "0x8020f802008020120340d020f80200d0208d03432020f8020d50209c034d5", + "0x8020082dc0d034f80200d0203f034320200d234080c8083e0080c8082680d", + "0xd234083e008234080a40d234083e0080349903409020f80200d2e80d034f8", + "0xd280083e008048130242d03413020f80200d0ac0d048083e00823409024c1", + "0xd034f80200d2ac0d0600802018020f8020180208203418020f8020a002081", + "0xd280083e00804c0822c0d04c083e0080480823c0d04809024f80200902084", + "0xd06c083e008024080000d060083e0082808d024c1034a0020f8020a002029", + "0x3b0341b020f80201b0211003408020f802008020120340d020f80200d0208d", + "0xd088160748d020220581d234f80201806c08034124440d060083e00806008", + "0xf80200d2640d024083e008034ba0340d3e008020082dc0d034f80200d0203f", + "0x83e0080342b03412020f80208d024093040d234083e008234080a40d23408", + "0x83e0080600844c0d060083e008280084480d280083e008048130242d03413", + "0x8034a60348d020f802009020093040d024083e008034081e40d0600802018", + "0x2203408020f80200d0201603412234090208d020f80208d0203b03412020f8", + "0xd04c083e008234082a80d034f80200d0240d048084508d024093e00902008", + "0x8034090340d454080347403418020f802013020a7034a0020f80200902071", + "0xa0020f802012020710341d020f80201b020a50341b020f80200d2980d034f8", + "0xd058083e0080580804c0d058083e008280083500d060083e0080740829c0d", + "0xd08c083e008088082900d034f80200d0240d0800845822020f80241802077", + "0x11803416020f80201602013034ba020f8020b702117034b7020f80202302079", + "0xa60340d3e0080800834c0d034f80200d0240d2e816024082e8083e0082e808", + "0x290211803416020f8020160201303429020f8020bd02119034bd020f80200d", + "0x9020093e008034083000d034083e0080340804c0d0a416024080a4083e008", + "0x13020f80208d0211b0340d3e00803409034120211a234083e009024081640d", + "0x8280083e008280084740d020083e0080200804c0d280083e00804c084700d", + "0x8020f8020080201303418020f8020120211e0340d3e00803409034a002009", + "0xf802008020550340d3e008034080fc0d0600802408060083e008060084740d", + "0xd2640d048083e008034ba0340d3e008234081780d034f802009020550340d", + "0x80342b034a0020f802013048093040d04c083e00804c080a40d04c083e008", + "0x8074084800d074083e00806c0847c0d06c083e008280180242d03418020f8", + "0xd3e008034ab0340d3e008034fa0341b020f80200d4840d074080201d020f8", + "0x1d234f802012024094880d048083e008048080c00d024083e008024080480d", + "0xf802020021250340d3e008034090342302124080083e0090880848c0d08816", + "0x83e008020082d80d034083e008034082340d060083e0082dc084980d2dc08", + "0x16020f802016020300348d020f80208d020ae0341d020f80201d0201203408", + "0x83e0082e8083e40d2e818024f8020180212803418020f80201806c0949c0d", + "0x8d07408034184a80d2f4083e0082f4081840d2f4a0024f8020a002129034ba", + "0x9034320212c354083e0090c0084ac0d0c0d00b42b30429280f8020bd2e816", + "0xe235c38368363643408cf8020180212e0340d3e008354084b40d034f80200d", + "0x80d8084c00d034f8020d90212f0340d3e0080d0081540d1143b10c271003f", + "0x1310340d3e008388081540d034f8020d7020550340d3e0080e0081540d034f8", + "0xf802043021320340d3e00809c083440d034f802040021300340d3e0080fc08", + "0x80580d358083e008035330340d3e008114083440d034f80203b021320340d", + "0xd60213403447020f8020470207103429020f8020290208d03447020f8020da", + "0x84dc49020f802448021360344834c093e008358470a48d4d40d358083e008", + "0x790344d020f80204c020a40344c020f802049021380340d3e00803409034d4", + "0x94e40d13c083e00813c080a40d34c083e00834c082340d13c083e00813408", + "0xd034f80200d0240d318084ecca020f8024cd0213a034cd344093e00813cd3", + "0x84fc0d034f80200d4f80d308083e008150084f40d150ca024f8020ca0213c", + "0x815c085040d15c083e008034a60340d3e008034090345502140034f8024c2", + "0x1440340d3e008034090340d50c080347403459020f8020c002142034c0020f8", + "0x8190085080d190083e00816c085140d16c083e008034a60340d3e00815408", + "0x83e008034a60340d3e0081780851c0d1605e024f8020590214603459020f8", + "0x3c020f80245802148034be020f8020be02142034be020f8020610214503461", + "0xd2ec083e0082f8085280d034f80203c020d30340d3e008034090346602149", + "0xf802066020d30340d3e008034090340d52c0803474034cf020f8020bb02142", + "0xf80200d0240d2b808530b6020f8024cf02148034cf020f8020be021420340d", + "0xca0214d0340d3e00804c080fc0d034f8020b6020d30340d3e008034ab0340d", + "0xd1b4083e0080354e0346b020f80200d2e80d034f8020a00205e0340d3e008", + "0x2d034ab020f80200d0ac0d2b0083e0081b46b024c10346d020f80206d02029", + "0xb6034d1020f8020d10208d03471020f8020aa0214f034aa020f8020ac2ac09", + "0x80c00d0b4083e0080b4082b80d0ac083e0080ac080480d304083e00830408", + "0x803409034713402d0acc1344a002071020f80207102150034d0020f8020d0", + "0x929cd00ac8d5440d29cca024f8020ca0213c0340d3e0082b80834c0d034f8", + "0x854c0d1fc083e008034a60340d3e00803409034a41dca52355229874024f8", + "0x79021540347b020f8020a602030034a1020f8020740201203479020f80207f", + "0xd270083e008290085580d034f80200d0240d035550200d1d00d278083e008", + "0x1570349e020f80209c021540347b020f80207702030034a1020f8020a502012", + "0x12d0340d3e008034090348102158264083e009268084ac0d268083e00827808", + "0x84208093040d210083e008280085640d208083e008034ba0340d3e00826408", + "0x8000081240d44000024f80208f020480348b020f80200d5680d23c083e008", + "0x83e0084440804c0d22c083e00822c080a40d444083e008440083500d034f8", + "0xf80200d0240d46d194608d5711744d12234f80251122cca1eca104d5b03511", + "0x11e020f802113020300351d020f802112020120351c020f8021170215d0340d", + "0x846c085800d034f80200d0240d0355f0200d1d00d47c083e008470085780d", + "0xf8021200215e0351e020f802119020300351d020f8021180201203520020f8", + "0x80340903522021623e8083e009484085840d484083e00847c083f80d47c08", + "0x95900d48c083e008034a60340d3e0083e80858c0d034f80200d2ac0d034f8", + "0x82d80d344083e008344082340d498083e008494085940d494083e00848c13", + "0x11e020300342d020f80202d020ae0351d020f80211d02012034c1020f8020c1", + "0xf80200d0240d4991e0b51d304d128008498083e008498085400d478083e008", + "0x82340d49c083e0084880853c0d034f8020130203f0340d3e008034ab0340d", + "0x2d020ae0351d020f80211d02012034c1020f8020c1020b6034d1020f8020d1", + "0x11d304d12800849c083e00849c085400d478083e008478080c00d0b4083e008", + "0x85340d034f8020130203f0340d3e008034ab0340d3e00803409035274782d", + "0xf8020d10208d03528020f8020810214f0340d3e008280081780d034f8020ca", + "0x83e0080b4082b80d284083e008284080480d304083e008304082d80d34408", + "0x1281ec2d284c1344a002128020f802128021500347b020f80207b020300342d", + "0x8280081780d034f8020130203f0340d3e0083180834c0d034f80200d0240d", + "0xd4a4083e0084a4080a40d4a4083e00803566034f9020f80200d2e80d034f8", + "0xd4b4083e0084a92b0242d0352b020f80200d0ac0d4a8083e0084a4f9024c1", + "0x12034c1020f8020c1020b6034d1020f8020d10208d0352e020f80212d0214f", + "0x85400d340083e008340080c00d0b4083e0080b4082b80d0ac083e0080ac08", + "0xf8020a00205e0340d3e008034090352e3402d0acc1344a00212e020f80212e", + "0xd34c083e00834c082340d4bc083e0083500853c0d034f8020130203f0340d", + "0x300342d020f80202d020ae0342b020f80202b02012034c1020f8020c1020b6", + "0xd0240d4bcd00b42b304d3280084bc083e0084bc085400d340083e00834008", + "0xd034f802018021670340d3e00804c080fc0d034f8020a00205e0340d3e008", + "0x12034c1020f8020c1020b603429020f8020290208d03530020f8020320214f", + "0x85400d340083e008340080c00d0b4083e0080b4082b80d0ac083e0080ac08", + "0xf8020a00205e0340d3e00803409035303402d0acc10a4a002130020f802130", + "0x8d03531020f8020230214f0340d3e00806c085a00d034f8020130203f0340d", + "0x82b80d074083e008074080480d020083e008020082d80d034083e00803408", + "0x8034a002131020f8021310215003416020f802016020300348d020f80208d", + "0x13020f8020130203403413020f80200d0c80d034f80200d2ac0d4c4162341d", + "0x120216a0340d3e008034090341d06c095a418280093e00904c080348d3640d", + "0x9034220216b034f8024160213f034a0020f8020a00208d03416048093e008", + "0x8080090249e03420020f80208d0216c0340d3e008048081540d034f80200d", + "0xf80201802012034a0020f8020a00208d034b7020f8020230209c03423020f8", + "0x22021440340d3e00803409034b7060a0234082dc083e0082dc082680d06008", + "0x8024a00256d03409020f80200902013034a0020f8020a00208d0340d3e008", + "0x29021700340d3e00803409034c10216f0a4083e0092f4085b80d2f4ba024f8", + "0x95cc0d034f80200d0240d0c0085c8d0020f80242d021710342d0ac093e008", + "0x82340d0d0083e0080c8120257503432020f80200d5d00d354083e0083408d", + "0xd5020da0342b020f80202b0201303418020f80201802012034ba020f8020ba", + "0x363648d3e0080d0d50ac182e8132840d0d0083e0080d0080a40d354083e008", + "0xf80208d020b70340d3e008048081540d034f80200d0240d368363648d020da", + "0x83e00835c082700d35c083e0080e02b0249e03438020f8020300207b0340d", + "0xe2020f8020e20209a03418020f80201802012034ba020f8020ba0208d034e2", + "0xd3e008234082dc0d034f802012020550340d3e00803409034e2060ba23408", + "0xd060083e008060080480d2e8083e0082e8082340d0fc083e008304085d80d", + "0xd3e008048081540d034f80200d0240d0fc182e88d0203f020f80203f0209a", + "0x80344f03440020f80200d2e80d034f802009020d10340d3e008234082dc0d", + "0xf80200d0ac0d10c083e00809c40024c103427020f8020270202903427020f8", + "0xf80201b0208d034d6020f8020450217603445020f8020430ec090b40d0ec08", + "0x177034d60741b23408358083e008358082680d074083e008074080480d06c08", + "0xd280083e008034320340d3e008034ab0340d3e008034fa03413020f80200d", + "0xd0240d0581d0257806c18024f8024a00200d234d9034a0020f8020a002034", + "0x18020f8020180208d0340d3e0080353e03422020f802009021790340d3e008", + "0x83e00808c085f00d034f80200d0240d2dc085ec23080093e009088085e80d", + "0x90340d5f80803474034bd020f8020ba0217d03412020f80202002043034ba", + "0xf8020b702043034c1020f8020290217f03429020f80200d2980d034f80200d", + "0xf8024bd0218103412020f80201204c096000d2f4083e008304085f40d04808", + "0xd0020f80202b021830340d3e008034ab0340d3e008034090342d021820ac08", + "0xd340083e0083400804c0d06c083e00806c080480d060083e008060082340d", + "0x90c8083580d0c8d50c08d3e008234d006c18049840348d020f80208d0203b", + "0x80d00811c0d0d8083e008048080000d034f80200d0240d3640861434020f8", + "0xf8020d50201203430020f8020300208d0340d3e0080e00834c0d0e0da024f8", + "0xda0d8d50c0124440d368083e008368080ec0d0d8083e0080d8084400d35408", + "0xd034f802012021860340d3e008034090343f388d7234080fce235c8d3e008", + "0x188034d5020f8020d50201203430020f8020300208d03440020f8020d902187", + "0xd30340d3e008034ab0340d3e00803409034403543023408100083e00810008", + "0x809c8d0250003427020f80200d2980d034f802012021860340d3e0080b408", + "0xf80201b0201203418020f8020180208d0343b020f8020430218903443020f8", + "0x130218a0340d3e008034090343b06c18234080ec083e0080ec086200d06c08", + "0xd114083e008034ba0340d3e0080240862c0d034f80208d020490340d3e008", + "0x2b03447020f8020d6114093040d358083e008358080a40d358083e0080344f", + "0x82340d124083e0081200861c0d120083e00811cd30242d034d3020f80200d", + "0x160748d02049020f8020490218803416020f802016020120341d020f80201d", + "0x8d3e0080200d0258c03408020f802008020300340d020f80200d0201203449", + "0x804c0863c0d034f80200d0240d2800863813020f8024120218d0341223409", + "0x19103423080220581d04cf80201b021900341b020f802018020ff03418020f8", + "0xf802023020550340d3e008080084bc0d034f8020220212f0340d3e00807408", + "0x9020f80200902012034ba020f8020b702193034b7020f802016021920340d", + "0x803409034ba23409234082e8083e0082e8086500d234083e008234080c00d", + "0x83e008234080c00d024083e008024080480d2f4083e008280086540d034f8", + "0x8034fa0341b020f80200d6580d2f48d0248d020bd020f8020bd021940348d", + "0xc10a4bd2e8b708c2008816074233e00804c084b80d034f80200d2ac0d034f8", + "0xd034f802022021300340d3e008058084bc0d034f80201d02055034d00b42b", + "0x8304083440d034f802029021300340d3e0082f4084c40d034f8020ba02055", + "0x1970340d3e008340083440d034f80202d021320340d3e0080ac084c80d034f8", + "0x19903418020f8020d502198034d5020f8020300201603430080093e00808008", + "0x866c0d060083e0080601b0259a0340d020f80200d0208d03432020f80200d", + "0x8d6700d0c8083e0080c8084d00d0d0083e0080d0084d00d0d018024f802018", + "0xd3e00803409034380219d368083e0090d8083f40d0d8d9024f8020320d00d", + "0x3f020f8020e202016034e2080093e0080800865c0d35c083e008368086780d", + "0xd35c083e00835c084d00d0fc083e0080fc081c40d364083e008364082340d", + "0x8034090343b0219f10c083e00909c084d80d09c40024f8020d70fcd923535", + "0x83e008358081e40d358083e008114082900d114083e00810c084e00d034f8", + "0x83e00834c080a40d34c083e0082dc470257503447020f8020470202903447", + "0xd124083e008035a10340d3e0080340903448021a0034f8024d30213f034d3", + "0xd350083e008350084d00d35018024f8020180219b03440020f8020400208d", + "0x83e009134083f40d1344c024f802049350402359c03449020f80204902134", + "0xca020f80204f0219e034cd020f80200d4cc0d034f80200d0240d344086884f", + "0xcd020f8020cd0213403454020f8020c602016034c6080093e0080800865c0d", + "0x55020d40340d3e0080340903457021a4154c2024f8024ca334541301268c0d", + "0x8234082b80d024083e008024080480d308083e008308082340d300083e008", + "0x5e1905b164123e0083008d024c2049a5034c0020f8020c0020130348d020f8", + "0xd2f8083e008034ba0340d3e0080340903461021a6160083e009178080f00d", + "0x13403466060093e0080600866c0d164083e008164082340d0f0083e00803533", + "0xcf2ec093e0080f0661648d6700d0f0083e0080f0084d00d198083e00819808", + "0x6b020f8020b60219e0340d3e00803409034ae021a72d8083e00933c083f40d", + "0xbb020f8020bb0208d034ac020f80206d020160346d080093e0080800865c0d", + "0x93e0081acac2ec8d4d40d1ac083e0081ac084d00d2b0083e0082b0081c40d", + "0xf802071021380340d3e00803409034a7021a81c4083e0092a8084d80d2a8ab", + "0x83e008294080a40d294083e008298081e40d298083e0081d0082900d1d008", + "0xab020f8020ab0208d034a4020f80200d6a40d1dc083e008294be024c1034a5", + "0x93e008290182ac8d6700d290083e008290084d00d060083e008060084d00d", + "0x8034090347b021aa284083e0091e4083f40d1dc083e0081dc080ec0d1e47f", + "0xf80209c020160349c080093e0080800865c0d278083e008284086780d034f8", + "0x83e008278084d00d268083e008268081c40d1fc083e0081fc082340d26808", + "0x903484021ab208083e009204084d80d20499024f80209e2687f235350349e", + "0x822c081e40d22c083e00823c082900d23c083e008208084e00d034f80200d", + "0x816c080480d440083e00800077024c103400020f8020000202903400020f8", + "0x80ec0d44d124448d3e0080485b025ac03412020f802012020300345b020f8", + "0x86bc0d034f80200d0240d460086b917020f802513021ad03510020f802110", + "0x80353e0351c020f802058020660351b020f802119021b003519020f802117", + "0x93e008280086c80d034f80200d0240d474086c40d3e00946c084fc0d034f8", + "0x83e00847c081840d020083e008020082d80d264083e008264082340d47d1e", + "0x2008d1f0209904db303420020f8020200201303423020f802023020290351f", + "0x1b60340d3e0080340903523021b5488083e0093e8086d00d3e9214808d3e008", + "0xd2980d034f8021260214703527498093e008494085180d494083e00848808", + "0x949c085200d3e4083e0083e4085080d3e4083e0084a0085040d4a0083e008", + "0xf8020f90214a0340d3e0084a40834c0d034f80200d0240d4a8086dd29020f8", + "0x834c0d034f80200d0240d035b80200d1d00d4b4083e0084ac085080d4ac08", + "0x90352f021b94b8083e0094b4085200d4b4083e0083e4085080d034f80212a", + "0xd034f80211c020550340d3e0084b80834c0d034f80200d2ac0d034f80200d", + "0xf80200d6e80d4c0083e008034ba0340d3e008478081780d034f80211002049", + "0x83e0080342b03532020f8021314c0093040d4c4083e0084c4080a40d4c408", + "0x83e008480082340d4d4083e0084d0083f00d4d0083e0084c9330242d03533", + "0x64020f802064020ae03511020f8021110201203521020f802121020b603520", + "0xd4d5121911148520280084d4083e0084d4086ec0d448083e008448080c00d", + "0x8484082d80d4d8083e008480082340d034f80212f020d30340d3e00803409", + "0xab0340d3e008034090340d6f0080347403539020f80211e0206103538020f8", + "0xd3e008478081780d034f802110020490340d3e008470081540d034f80200d", + "0xd484083e008484082d80d480083e008480082340d4e8083e00848c083f00d", + "0x1bb03512020f8021120203003464020f802064020ae03511020f80211102012", + "0x8474085100d034f80200d0240d4e9121911148520280084e8083e0084e808", + "0xd4d8083e008264082340d034f802023020550340d3e008080083440d034f8", + "0xd4f53c024f802139021b203539020f8020a00206103538020f802008020b6", + "0x83500d034f80213e020490353f4f8093e008440081200d034f80213c0205e", + "0x13604db303541020f802141020130351c020f80211c0202903541020f80213f", + "0x80340903547021bd518083e009514086d00d515445088d3e0085051c4f538", + "0xf80214a021470354d528093e008520085180d520083e008518086d80d034f8", + "0xd53c083e00853c085080d53c083e008538085040d538083e008034a60340d", + "0x14a0340d3e0085400834c0d034f80200d0240d544086f950020f80254d02148", + "0xf80200d0240d035bf0200d1d00d550083e00854c085080d54c083e00853c08", + "0x1c0558083e009550085200d550083e00853c085080d034f802151020d30340d", + "0x8034ba0340d3e0085580834c0d034f80200d2ac0d034f80200d0240d55c08", + "0xf80215a564093040d568083e008568080a40d568083e008035c103559020f8", + "0x83e008578083f00d578083e00856d5d0242d0355d020f80200d0ac0d56c08", + "0x111020f8021110201203544020f802144020b603542020f8021420208d03560", + "0x8580083e008580086ec0d448083e008448080c00d190083e008190082b80d", + "0xf802157020d30340d3e008034ab0340d3e00803409035604486444544508a0", + "0xd58c083e0085840870c0d584083e0083f8087080d3f8083e008034a60340d", + "0xae03511020f8021110201203544020f802144020b603542020f8021420208d", + "0x1422800858c083e00858c086ec0d448083e008448080c00d190083e00819008", + "0x164020f802147020fc0340d3e008034ab0340d3e00803409035634486444544", + "0xd444083e008444080480d510083e008510082d80d508083e008508082340d", + "0xa002164020f802164021bb03512020f8021120203003464020f802064020ae", + "0xf802058021c40340d3e008440081240d034f80200d0240d591121911151142", + "0x83f00d034f8020a00205e0340d3e00808c081540d034f802020020d10340d", + "0x1110201203408020f802008020b603499020f8020990208d03565020f802118", + "0x8594086ec0d448083e008448080c00d190083e008190082b80d444083e008", + "0xd034f8020a00205e0340d3e00803409035654486444408264a002165020f8", + "0x81dc081240d034f802023020550340d3e008080083440d034f802058021c4", + "0x83e008020082d80d264083e008264082340d598083e008210083f00d034f8", + "0x12020f8020120203003464020f802064020ae0345b020f80205b0201203408", + "0x81780d034f80200d0240d598121905b0209928008598083e008598086ec0d", + "0xd3e008080083440d034f802058021c40340d3e0081dc081240d034f8020a0", + "0xb60347f020f80207f0208d03567020f80207b020fc0340d3e00808c081540d", + "0x80c00d190083e008190082b80d16c083e00816c080480d020083e00802008", + "0x803409035670486416c081fca002167020f802167021bb03412020f802012", + "0xd10340d3e008160087100d034f802018021320340d3e008280081780d034f8", + "0xf8020a7020fc0340d3e0082f8081240d034f802023020550340d3e00808008", + "0x83e00816c080480d020083e008020082d80d2ac083e0082ac082340d5a008", + "0x168020f802168021bb03412020f8020120203003464020f802064020ae0345b", + "0x18021320340d3e008280081780d034f80200d0240d5a0121905b020ab28008", + "0xd034f802023020550340d3e008080083440d034f802058021c40340d3e008", + "0x82d80d2ec083e0082ec082340d5a8083e0082b8083f00d034f8020be02049", + "0x120203003464020f802064020ae0345b020f80205b0201203408020f802008", + "0xf80200d0240d5a8121905b020bb280085a8083e0085a8086ec0d048083e008", + "0x81540d034f802020020d10340d3e008060084c80d034f8020a00205e0340d", + "0x8020082d80d164083e008164082340d5b0083e008184083f00d034f802023", + "0xf8020120203003464020f802064020ae0345b020f80205b0201203408020f8", + "0xd034f80200d0240d5b0121905b02059280085b0083e0085b0086ec0d04808", + "0x8080083440d034f802018021320340d3e00808c081540d034f8020a00205e", + "0xd5b8083e0085b8080a40d5b8083e008035c50356d020f80200d2e80d034f8", + "0xd5cc083e0085c1710242d03571020f80200d0ac0d5c0083e0085b96d024c1", + "0x1203408020f802008020b603457020f8020570208d03574020f802173020fc", + "0x86ec0d048083e008048080c00d234083e008234082b80d024083e00802408", + "0xf8020a00205e0340d3e00803409035740488d0240815ca002174020f802174", + "0x83f00d034f802020020d10340d3e008060084c80d034f802023020550340d", + "0x90201203408020f802008020b60344c020f80204c0208d03575020f8020d1", + "0x85d4086ec0d048083e008048080c00d234083e008234082b80d024083e008", + "0xd034f802048021440340d3e00803409035750488d02408130a002175020f8", + "0x8080083440d034f802018021320340d3e00808c081540d034f8020a00205e", + "0xd5dc083e0085dc080a40d5dc083e0080354e03576020f80200d2e80d034f8", + "0xd5f0083e0085e57a0242d0357a020f80200d0ac0d5e4083e0085dd76024c1", + "0x1203408020f802008020b603440020f8020400208d0357d020f80217c020fc", + "0x86ec0d048083e008048080c00d234083e008234082b80d024083e00802408", + "0xf8020a00205e0340d3e008034090357d0488d02408100a00217d020f80217d", + "0x81540d034f802020020d10340d3e008060084c80d034f802023020550340d", + "0x8020082d80d100083e008100082340d5fc083e0080ec083f00d034f8020b7", + "0xf802012020300348d020f80208d020ae03409020f8020090201203408020f8", + "0xd034f80200d0240d5fc122340902040280085fc083e0085fc086ec0d04808", + "0x8080083440d034f802018021320340d3e00808c081540d034f8020a00205e", + "0xd9020f8020d90208d03580020f802038020fc0340d3e0082dc081540d034f8", + "0xd234083e008234082b80d024083e008024080480d020083e008020082d80d", + "0xfb035800488d02408364a002180020f802180021bb03412020f80201202030", + "0x83e0080480871c0d034f80200d0240d04c0871812234093e009024080348d", + "0x18020f802018021c90348d020f80208d0208d03418020f8020a0021c8034a0", + "0xd074083e008035c50341b020f80200d2e80d034f80200d0240d0608d02408", + "0x2d03422020f80200d0ac0d058083e0080741b024c10341d020f80201d02029", + "0x1c903413020f8020130208d03423020f802020021ca03420020f80201608809", + "0x903412021cc23409024f8024080340972c0d08c130240808c083e00808c08", + "0x804c087380d024083e008024082340d04c083e008234087340d034f80200d", + "0x82800873c0d280083e008034a60340d3e00803409034130240902013020f8", + "0x1d0034180480902018020f802018021ce03412020f8020120208d03418020f8", + "0x1c30348d020f802008021c20340d3e0080340903409021d1020083e00903408", + "0x2b0340d3e008034090341202008048083e008048086ec0d048083e00823408", + "0x86ec0d060083e008280083f00d280083e008024130242d03413020f80200d", + "0xd3e0080340903409021d3020083e009034087480d0600802018020f802018", + "0x8048083e008048083540d048083e008234081340d234083e008020081300d", + "0xd280083e008024130242d03413020f80200d0ac0d034f80200d0240d04808", + "0x83e008034082340d0600802018020f802018020d503418020f8020a0020d0", + "0x9048087540d0488d0248d3e0080200d025d403408020f802008020130340d", + "0x8234083000d234083e0082340804c0d034f80200d0240d2800875813020f8", + "0x90208d0340d3e0080340903416021d7074083e00906c081640d06c18024f8", + "0x87640d08022024f802018024097600d060083e0080600804c0d024083e008", + "0x1dc034bd2e8093e00808c0876c0d034f80200d0240d2dc0876823020f802420", + "0x2b020f80202907413235de0340d3e00803409034c1021dd0a4083e0092f408", + "0x30020f8020d0021e1034d0020f80202d2e8097800d0b4083e0080ac0877c0d", + "0xf80200d0240d0c022024080c0083e0080c0087880d088083e008088082340d", + "0x1e0034d5020f8020c1021e30340d3e008074081540d034f8020130212f0340d", + "0x1e203422020f8020220208d03434020f802032021e103432020f8020d52e809", + "0x12f0340d3e008074081540d034f80200d0240d0d022024080d0083e0080d008", + "0xd9021e203422020f8020220208d034d9020f8020b7021e40340d3e00804c08", + "0x16021e30340d3e00804c084bc0d034f80200d0240d3642202408364083e008", + "0x90208d03438020f8020da021e1034da020f802036060097800d0d8083e008", + "0x878c0d034f80200d0240d0e009024080e0083e0080e0087880d024083e008", + "0x82340d0fc083e008388087840d388083e00835c8d025e0034d7020f8020a0", + "0x1970340d3e008034ab0343f024090203f020f80203f021e203409020f802009", + "0x198034a0020f8020130201603413020f802012021e503412024093e00802408", + "0x93040d06c083e00806c080a40d06c083e0080600822c0d060083e00828008", + "0x80480d034083e008034082340d058083e008024087940d074083e00806c8d", + "0xd049e60341d020f80201d0203b03416020f8020160201303408020f802008", + "0x1223409234f8024080340979c0d08c200888d0202308022234f80201d05808", + "0xf802009020120341b020f802012021e90340d3e008034090341828013235e8", + "0xd035eb0200d1d00d088083e00806c087a80d058083e008234080c00d07408", + "0xa0020300341d020f8020130201203420020f802018021ec0340d3e00803409", + "0x8074080480d08c083e008088087b40d088083e008080087a80d058083e008", + "0xd08c160748d02023020f802023021ee03416020f802016020300341d020f8", + "0x8048087c40d034f80200d0240d28013025f00488d024f8024090200d235ef", + "0xd7cc08034740341d020f802018021f20341b020f80208d0208d03418020f8", + "0x87c80d06c083e00804c082340d058083e008280087d00d034f80200d0240d", + "0x22074097d80d088083e008088080a40d088083e008035f50341d020f802016", + "0xd0801b02408080083e008080087dc0d06c083e00806c082340d080083e008", + "0x83e008035f803413020f80200d7e00d048083e008034320340d3e008034ab", + "0x83e008034082340d06c083e008060a004c8d7e40d060083e008035f8034a0", + "0x12020f8020120203403409020f802009020ae03408020f802008020120340d", + "0x8d06c1202408034a07ec0d234083e0082340804c0d06c083e00806c087e80d", + "0xd034f80200d0240d2dc087f423020f802420021fc0342008816074123e008", + "0x20003429020f8020bd021ff0340d3e0082e8083440d2f4ba024f802023021fe", + "0x82b80d058083e008058080480d074083e008074082340d304083e0080a408", + "0xd3e00803409034c10881607412020c1020f8020c10212003422020f802022", + "0xd058083e008058080480d074083e008074082340d0ac083e0082dc0847c0d", + "0xd020120342b08816074120202b020f80202b0212003422020f802022020ae", + "0x18d0341223409234f802008034096300d020083e008020080c00d034083e008", + "0xff03418020f8020130218f0340d3e00803409034a00220104c083e00904808", + "0xd3e008074086440d08c2008816074133e00806c086400d06c083e00806008", + "0x22022030340d3e00808c081540d034f8020200212f0340d3e008058088080d", + "0x8234080c00d024083e008024080480d2e8083e0082dc088100d2dc083e008", + "0x88140d034f80200d0240d2e88d0248d020ba020f8020ba021050348d020f8", + "0xbd021050348d020f80208d0203003409020f80200902012034bd020f8020a0", + "0xa0048093e0080480865c0d04c083e00803606034bd23409234082f4083e008", + "0xd060083e008060081c40d034083e008034082340d060083e008280080580d", + "0x83e009074084d80d0741b024f8020130600d2353503413020f80201302134", + "0x83e008080082900d080083e008058084e00d034f80200d0240d0880881c16", + "0xd06c083e00806c082340d2e8083e008048080580d2dc083e008035a903423", + "0xbd024f8020b72e81b23535034b7020f8020b702134034ba020f8020ba02071", + "0xf80200d0240d0ac08820c1020f8024290213603423020f8020230202903429", + "0x30020f80200902159034d0020f80202d020a40342d020f8020c1021380340d", + "0xd0d0083e008340081e40d0c8083e00808c081e40d354083e0080c0081e40d", + "0x290348d020f80208d0202903408020f802008020b6034bd020f8020bd0208d", + "0xa08240d0d0083e0080d0080a40d0c8083e0080c8080a40d354083e00835408", + "0x80e00882c0d0e0083e008368088280d368363648d3e0080d0323548d020bd", + "0xf8020d70220c03436020f802036020b6034d9020f8020d90208d034d7020f8", + "0x808c081540d034f8020090205e0340d3e00803409034d70d8d92340835c08", + "0xbd020f8020bd0208d034e2020f80202b0220d0340d3e008234081540d034f8", + "0x803409034e2020bd23408388083e008388088300d020083e008020082d80d", + "0x20d0340d3e008048083440d034f80208d020550340d3e008024081780d034f8", + "0x88300d020083e008020082d80d06c083e00806c082340d0fc083e00808808", + "0x93e008020083000d020083e0080200804c0d0fc0806c8d0203f020f80203f", + "0x90480d0260f0340d3e00803409034130220e048083e009234081640d23409", + "0xa00208d0341d020f802018022110340d3e008034090341b02210060a0024f8", + "0x1d024a023408074083e008074088480d024083e0080240804c0d280083e008", + "0x1b0208d03422020f8020160221303416020f80200d2980d034f80200d0240d", + "0x220241b23408088083e008088088480d024083e0080240804c0d06c083e008", + "0x804c0d034083e008034082340d080083e00804c0884c0d034f80200d0240d", + "0x83e008020080580d080090348d02020020f8020200221203409020f802009", + "0xf802012020aa0340d3e0080340903413022140488d024f8024090202203409", + "0xd036150200d1d00d06c083e0082800829c0d060083e008234081c40d28008", + "0x804c081c40d058083e008074082940d074083e008034a60340d3e00803409", + "0x8088083500d08818024f802018022160341b020f802016020a703418020f8", + "0xd0240d2dc0885c23020f80241b0207703420020f8020200201303420020f8", + "0xf80200d0208d034bd020f8020ba02079034ba020f802023020a40340d3e008", + "0x9304088640d30429024f8020bd034098600d2f4083e0082f4080a40d03408", + "0x83e008036060340d3e008080083440d034f80200d0240d0b4088682b020f8", + "0xf8020d002134034d50ac093e0080ac0866c0d0c018024f80201802216034d0", + "0x2160340d3e00803409034d90221b0d032024f8024d5340300a41268c0d34008", + "0x13403432020f8020320208d034da020f8020360219803436060093e00806008", + "0x19c03438020f80203802134034380ac093e0080ac0866c0d368083e00836808", + "0x3f020f8024e2020fd03434020f80203402071034e235c093e0080e0da0c88d", + "0x909c2b060d7049a303427020f80203f0219e0340d3e00803409034400221c", + "0x3b020d4034d6020f802034020d40340d3e00803409034450221d0ec43024f8", + "0x480222003448020f8020d311c0987c0d34c083e008358088780d11c083e008", + "0xd1244302408124083e008124088840d10c083e00810c082340d124083e008", + "0x83e008035c5034d4020f80200d2e80d034f802034020200340d3e00803409", + "0x4f020f80200d0ac0d134083e008130d4024c10344c020f80204c020290344c", + "0x45020f8020450208d034cd020f8020d102222034d1020f80204d13c090b40d", + "0xd3e0080d0080800d034f80200d0240d3344502408334083e008334088840d", + "0x82340d328083e008100088880d034f802018020200340d3e0080ac084c80d", + "0x1320340d3e00803409034ca35c09020ca020f8020ca02221034d7020f8020d7", + "0x83e008035c5034c6020f80200d2e80d034f802018020200340d3e0080ac08", + "0x55020f80200d0ac0d308083e008150c6024c103454020f8020540202903454", + "0xd9020f8020d90208d034c0020f8020570222203457020f8020c2154090b40d", + "0xd3e008060080800d034f80200d0240d300d902408300083e008300088840d", + "0x64020f80205b022200345b020f8020590800987c0d164083e0080b40888c0d", + "0xf80200d0240d1902902408190083e008190088840d0a4083e0080a4082340d", + "0x888c0d178083e008034a60340d3e008060080800d034f8020b7020d30340d", + "0x82340d2f8083e008184088800d184083e008160200261f03458020f80205e", + "0x320340d3e008034ab034be03409020be020f8020be022210340d020f80200d", + "0x22428013024f8024120200d234d903412020f8020120203403412020f80200d", + "0x8d0340d3e0080353e0341d020f802009020160340d3e008034090341b06009", + "0xd034f80200d0240d0800889422058093e009074080880d04c083e00804c08", + "0x74034ba020f802023020a7034b7020f8020160207103423020f802022020aa", + "0x29020f8020bd020a5034bd020f80200d2980d034f80200d0240d036260200d", + "0x227304083e0092e8081dc0d2e8083e0080a40829c0d2dc083e008080081c40d", + "0x80a40d0b4083e008304082900d034f80200d2ac0d034f80200d0240d0ac08", + "0xd303430340093e0082342d024570348d020f80208d0203b0342d020f80202d", + "0xa00201203413020f8020130208d034d5020f8020b7020d40340d3e0080c008", + "0xa004c127980d340083e008340080ec0d354083e0083540804c0d280083e008", + "0xd3e008034ab0340d3e00803409034d90d03223408364340c88d3e008340d5", + "0x8d0250003436020f80200d2980d034f8020b7020200340d3e0080ac0834c0d", + "0xa00201203413020f8020130208d03438020f8020da02189034da020f802036", + "0x490340d3e008034090343828013234080e0083e0080e0086200d280083e008", + "0x83e0080344f034d7020f80200d2e80d034f802009020d10340d3e00823408", + "0x40020f80200d0ac0d0fc083e008388d7024c1034e2020f8020e202029034e2", + "0x18020f8020180208d03443020f8020270218703427020f80203f100090b40d", + "0xd022280344306c182340810c083e00810c086200d06c083e00806c080480d", + "0x8d0222b0348d020f8020080222a0340d3e008034090340902229020083e009", + "0x80342b0340d3e008034090341202008048083e008048087b80d048083e008", + "0x8060087b80d060083e008280088b00d280083e008024130242d03413020f8", + "0x550340d3e008034090348d0222e024083e009034088b40d0600802018020f8", + "0x13021f703413020f8020120223003412020f8020090222f0340d3e00802008", + "0xf80200d2e80d034f80208d021320340d3e00803409034130200804c083e008", + "0xf80201806c090b40d06c083e0080342b03418020f802008280093040d28008", + "0x8034ab0341602008058083e008058087dc0d058083e008074088c40d07408", + "0xf8024a00200d234d9034a0020f8020a002034034a0020f80200d0c80d034f8", + "0x160342308022234f802012022330340d3e0080340903416074098c81b06009", + "0x92dc080880d060083e008060082340d034f80200d4f80d2dc083e00804c08", + "0xba02071034c1020f8020bd020aa0340d3e0080340903429022342f4ba024f8", + "0xd034f80200d0240d036350200d1d00d0b4083e0083040829c0d0ac083e008", + "0x829c0d0ac083e0080a4081c40d0c0083e008340082940d340083e008034a6", + "0x82900d034f80200d0240d0c8088d8d5020f80242d020770342d020f802030", + "0x2b02022034d9020f8020d902029034d9020f8020340207903434020f8020d5", + "0x81c40d35c083e008368082a80d034f80200d0240d0e0088dcda0d8093e009", + "0xd3e008034090340d8e008034740343f020f8020d7020a7034e2020f802036", + "0xa7034e2020f8020380207103427020f802040020a503440020f80200d2980d", + "0x81dc0d10c083e00810c0804c0d10c083e008388083500d0fc083e00809c08", + "0x81e40d358083e0080ec082900d034f80200d0240d114088e43b020f80243f", + "0x98e80d11c083e00811c080a40d34c083e008364220263a03447020f8020d6", + "0x128ec0d120083e008120080a40d34c083e00834c080a40d120083e00811c20", + "0x8124082b80d13c8d024f80208d0223c0344d130d4124123e00808c4834c09", + "0xf80204d020290344c020f80204c02029034d4020f8020d40202903449020f8", + "0xab0340d3e00803409034c6328098f4cd344093e00913c1b0608d3640d13408", + "0x80480d344083e008344082340d150083e0081344c3508d7e40d034f80200d", + "0x54021fa0348d020f80208d0203403449020f802049020ae034cd020f8020cd", + "0xc2048f8020431508d124cd344a07ec0d10c083e00810c0804c0d150083e008", + "0x43020d10340d3e008034ab0340d3e00803409034c015c5530812020c015c55", + "0xd034f80204c020550340d3e008234088f80d034f8020d4020550340d3e008", + "0x816c080a40d16c083e0080344f03459020f80200d2e80d034f80204d02055", + "0x81905e0242d0345e020f80200d0ac0d190083e00816c59024c10345b020f8", + "0xf8020c602012034ca020f8020ca0208d03461020f8020580210703458020f8", + "0xd18449318ca04808184083e008184088fc0d124083e008124082b80d31808", + "0x8364220263a0340d3e008234088f80d034f802045020d30340d3e00803409", + "0x83e008198085080d198083e0080f0085040d0f0083e008034a6034be020f8", + "0xf80200d0240d33c08900bb020f80246602148034be020f8020be0202903466", + "0xd2b8083e0082d8be0263a034b6020f80200d5d00d034f8020bb020d30340d", + "0xac02055034ab2b06d1ac123e00808c202b80904a3b034ae020f8020ae02029", + "0x83e0081b4080a40d2a8083e0081ac082b80d034f8020ab020550340d3e008", + "0xf80200d5d00d034f8020cf020d30340d3e008034090340d904080347403471", + "0x742f80904a3b03474020f8020740202903474020f8020a7080098e80d29c08", + "0x82b80d034f8020a4020550340d3e0081dc081540d29077294a6048f802023", + "0x81c443026420340d3e008034ab03471020f8020a502029034aa020f8020a6", + "0xf80201b0201203418020f8020180208d03479020f80207f022430347f020f8", + "0xd1e4aa06c18048081e4083e0081e4088fc0d2a8083e0082a8082b80d06c08", + "0xf80202b020d40340d3e008234088f80d034f802032020d30340d3e00803409", + "0x9e020f80209e021420349e020f80207b021450347b020f80200d2980d28408", + "0xd3e008034090349a02244270083e009278085200d284083e0082840804c0d", + "0x2903481020f802099088098e80d264083e008035740340d3e0082700834c0d", + "0x823c081540d22c8f21082048f80202308081024128ec0d204083e00820408", + "0x110020f8020840202903400020f802082020ae0340d3e00822c081540d034f8", + "0x83e008035740340d3e0082680834c0d034f80200d0240d036450200d1d00d", + "0x2344822024128ec0d448083e008448080a40d448083e008444200263a03511", + "0x113020ae0340d3e008464081540d034f80211802055035194611744c123e008", + "0xf802110284099080d034f80200d2ac0d440083e00845c080a40d000083e008", + "0x83e00806c080480d060083e008060082340d470083e00846c0890c0d46c08", + "0x90351c0001b060120211c020f80211c0223f03400020f802000020ae0341b", + "0xd3e008048089180d034f80208d0223e0340d3e00804c083440d034f80200d", + "0x93040d478083e008478080a40d478083e0080344f0351d020f80200d2e80d", + "0x841c0d484083e00847d200242d03520020f80200d0ac0d47c083e0084791d", + "0x9020ae03416020f802016020120341d020f80201d0208d034fa020f802121", + "0x93e00804c085a80d3e8090581d048083e8083e0083e8088fc0d024083e008", + "0xd3e00804c081540d034f80200d0240d0600891c0d3e009280084fc0d28013", + "0x8034a60340d3e008234081540d034f802012020550340d3e008024081540d", + "0xf802008020b60340d020f80200d0208d0341d020f80201b021450341b020f8", + "0x18021440340d3e008034090341d0200d23408074083e008074085080d02008", + "0x805822025750342204c093e00804c085a80d058083e008036480340d3e008", + "0x8034090342302249034f8024200213f03420020f8020200202903420020f8", + "0x550340d3e008048081540d034f802009020550340d3e00804c081540d034f8", + "0x8034082340d2e8083e0082dc085140d2dc083e008034a60340d3e00823408", + "0xd2e8080348d020ba020f8020ba0214203408020f802008020b60340d020f8", + "0xf8020120216a034bd020f80200d9200d034f802023021440340d3e00803409", + "0x9304084fc0d304083e008304080a40d304083e0082f429025750342904809", + "0xd3e008024081540d034f802013020550340d3e008034090342b0224a034f8", + "0x2d021450342d020f80200d2980d034f80208d020550340d3e008048081540d", + "0x8340085080d020083e008020082d80d034083e008034082340d340083e008", + "0xd0264b0340d3e0080ac085100d034f80200d0240d340080348d020d0020f8", + "0x24d034d5020f8020d5021060340d3e00803409034320224c35430024f80248d", + "0xda0d8093e009364300264b034d9048093e008048085a80d0d0083e00835408", + "0xd7020f8020da0224d034da020f8020da021060340d3e00803409034380224e", + "0x80a40d388083e008388080a40d0fc083e00803650034e2020f80200d93c0d", + "0xd03652100083e0090fce20265103436020f8020360208d0343f020f80203f", + "0x8020b603427020f8020400224d03440020f802040021060340d3e00803409", + "0xd70208d9500d04c083e00804c080a40d35c083e00835c0894c0d020083e008", + "0x895c0d034f80200d0240d114089580d3e0090ec089540d0ec43024f802013", + "0xd3e00809c0895c0d034f802009020550340d3e008048081540d034f802034", + "0xb603436020f8020360208d03447020f8020d602145034d6020f80200d2980d", + "0xd3e008034090344710c362340811c083e00811c085080d10c083e00810c08", + "0xd10c083e00810c082d80d034f802048020550344834c093e008114089600d", + "0x49024f80200909c432365403409020f8020090202903427020f80202702253", + "0x12020f8020120202903434020f8020340225303449020f802049020b6034d4", + "0x813c0894c0d13cd4024f8020d4022590344d130093e008048341248d9500d", + "0xd113c099680d344083e0083440894c0d3444d024f80204d022590344f020f8", + "0x25c0200d1d00d034f80200d0240d3280896c0d3e009334089540d334083e008", + "0x16a0340d3e008150081540d150c6024f8020ca022580340d3e008034090340d", + "0xd154083e008154080a40d154083e008308c602575034c234c093e00834c08", + "0x895c0d034f8020d3020550340d3e00803409034570225d034f8024550213f", + "0x83e008300085040d300083e008034a60340d3e0083500895c0d034f80204d", + "0x59020f802059021420344c020f80204c020b603436020f8020360208d03459", + "0x83e0083500894c0d034f802057021440340d3e00803409034591303623408", + "0xd3e00916c089540d16c083e008134d40265e0344d020f80204d02253034d4", + "0xd0240d036600200d1d00d034f8020d3020550340d3e00803409034640225f", + "0x834c5e025750340d3e008160081540d1605e024f802064022580340d3e008", + "0x803409034be02261034f8024610213f03461020f8020610202903461020f8", + "0x36020f8020360208d03466020f80203c021410343c020f80200d2980d034f8", + "0x803409034661303623408198083e008198085080d130083e008130082d80d", + "0xd33c083e0082ec085140d2ec083e008034a60340d3e0082f8085100d034f8", + "0x8d020cf020f8020cf021420344c020f80204c020b603436020f8020360208d", + "0x550340d3e008048081540d034f802034022570340d3e00803409034cf13036", + "0x83e008034a60340d3e00835c0895c0d034f802013020550340d3e00802408", + "0x8020f802008020b603436020f8020360208d034ae020f8020b602145034b6", + "0xf802013020550340d3e00803409034ae02036234082b8083e0082b8085080d", + "0xd2980d034f802009020550340d3e008048081540d034f802034022570340d", + "0x8020082d80d0e0083e0080e0082340d1b4083e0081ac085140d1ac083e008", + "0x81540d034f80200d0240d1b4080e08d0206d020f80206d0214203408020f8", + "0xac020f80200d2980d034f802012020550340d3e008024081540d034f802013", + "0xd020083e008020082d80d0c8083e0080c8082340d2ac083e0082b0085140d", + "0x120226323409024f802408034099880d2ac080c88d020ab020f8020ab02142", + "0x89940d024083e008024082340d04c083e008234089900d034f80200d0240d", + "0x84100d280083e008034a60340d3e00803409034130240902013020f802013", + "0x180480902018020f8020180226503412020f8020120208d03418020f8020a0", + "0xd3e008034090341202266034f80248d022550348d020093e008020089640d", + "0x902008020f802008022530340d020f80200d020b60340d3e008024081540d", + "0x129a00d04c083e008036670340d3e0080200895c0d034f80200d0240d0200d", + "0xa0020f8020a0020b603418020f8020180226903418280093e0080480904c0d", + "0xd074083e00806c089340d034f80200d0240d0366b06c083e009060089a80d", + "0xd3e008034090341d280090201d020f80201d02253034a0020f8020a0020b6", + "0x902016020f80201602253034a0020f8020a0020b603416020f80200d9b00d", + "0x8034090348d0226d034f8024090225503409034093e008034089640d058a0", + "0xf80200d0240d0200802008020f802008022530340d3e0080340895c0d034f8", + "0xd034f80208d0226f0340d3e00803409034120226e034f802408022550340d", + "0x2670340d3e0080340895c0d034f80200d0240d034080200d020f80200d02253", + "0x99c00d280083e008280089a40d280083e008234130267003413020f80200d", + "0xd0367106c083e009060089a80d060083e008060089a40d060083e008048a0", + "0xd074080201d020f80201d022530341d020f80201b0224d0340d3e00803409", + "0x2590341602008058083e0080580894c0d058083e0080366c0340d3e00803409", + "0x2570340d3e008034090348d02272034f8024090225503409020093e00802008", + "0x89bc0d034f80200d0240d034080200d020f80200d022530340d3e00802008", + "0x80480894c0d034083e0080340894c0d048083e008020089cc0d034f80208d", + "0x9a22c0d0481d2688b0341211c130200804c083e0080480d0265a03412020f8", + "0x9a22c0d04938234090200d2649a22c0d0481d2688b034120348d0240803499", + "0x992688b2acaa034a00749a22cab2a80d281d9234090200d2649a22c0d0481d", + "0xd278082046b02675024080348f22c0d2341d22c0d2367404c12234090200d", + "0x99e008034a4020811ac099dc8d02408034a122c0d234181248b034129d808", + "0x161ac129ec0d2981d0241d0227a034a507409074089e408034130600906016", + "0xd2b09a2ac8b2a80d280741ac9a2ac8b2a80d0627c234090200d29c081d016", + "0xd04a7e0488d024080348f22c0d234162041d22c0d04e7d280130488d02408", + "0xaa03418a0008034bb2688b2349a22c099fc8d02408034a122c0d234182d88b", + "0x90481b0348da04a004c12234090200d2f89a2ac8b2a80d280740f09a2ac8b", + "0x99020cd02284034be020ca022830200d3080d0241603409a08090200d3000d", + "0x287234090200d2848b0348d0601d22c0d04a860200d3440d0241d03409a140d", + "0xab22c0d04a8902408034d703409048120348da2008034d62688b2349a22c09", + "0x742a80d04e8b0200d3689a22c8d2688b0268a234090200d29cab22c0d0481d", + "0x1d03409a3408034d50740d2341d03409a3012234090200d364aa0348d07416", + "0xd3580830408a3c8d02408034a122c0d234180748b03412a3808034d003409", + "0x8d02408034b72ac8b03412074ba270ab22c0d282910200d35c08058bd02690", + "0x90580d0269304c12234090200d0c8aa0348d05816058162a80d2829204c12", + "0x9a5808034090200902409a54090200d024aa02416024aa236940200d2800d", + "0x2970200d0240802409" + ], + "sierra_program_debug_info": { + "type_names": [ + [0, "RangeCheck"], + [1, "EcState"], + [2, "EcPoint"], + [3, "NonZero"], + [4, "u32"], + [5, "Unit"], + [6, "core::option::Option::"], + [7, "Array"], + [8, "Snapshot>"], + [9, "core::array::Span::"], + [10, "felt252"], + [11, "Tuple, felt252>"], + [12, "core::panics::Panic"], + [13, "Tuple>"], + [ + 14, + "core::panics::PanicResult::<(core::array::Span::, core::felt252)>" + ], + [15, "Tuple"], + [16, "core::result::Result::"], + [17, "Box"], + [ + 18, + "core::result::Result::, core::array::Array::>" + ], + [19, "core::option::Option::>"], + [ + 20, + "Tuple, core::option::Option::>>" + ], + [ + 21, + "core::panics::PanicResult::<(core::array::Span::, core::option::Option::>)>" + ], + [22, "ContractAddress"], + [ + 23, + "core::option::Option::" + ], + [24, "core::bool"], + [25, "Tuple"], + [26, "core::panics::PanicResult::<(core::bool,)>"], + [27, "Tuple"], + [ + 28, + "core::panics::PanicResult::<(core::starknet::contract_address::ContractAddress,)>" + ], + [29, "Tuple"], + [30, "core::panics::PanicResult::<(core::integer::u32,)>"], + [31, "Uninitialized"], + [32, "Box"], + [33, "Box"], + [34, "core::starknet::info::v2::ExecutionInfo"], + [35, "u64"], + [36, "core::starknet::info::BlockInfo"], + [37, "Tuple>"], + [ + 38, + "core::panics::PanicResult::<(core::box::Box::,)>" + ], + [39, "Box>"], + [ + 40, + "core::option::Option::>>" + ], + [41, "Array>"], + [42, "Snapshot>>"], + [ + 43, + "Uninitialized>>>" + ], + [44, "core::starknet::account::Call"], + [45, "core::option::Option::"], + [ + 46, + "Tuple, core::option::Option::>" + ], + [ + 47, + "core::panics::PanicResult::<(core::array::Span::, core::option::Option::)>" + ], + [ + 48, + "core::result::Result::, core::array::Array::>" + ], + [49, "core::result::Result::<(), core::array::Array::>"], + [50, "NonZero"], + [51, "ClassHash"], + [52, "core::option::Option::"], + [53, "Box"], + [54, "Tuple>"], + [55, "core::panics::PanicResult::<(core::box::Box::<@core::felt252>,)>"], + [56, "Array"], + [57, "Snapshot>"], + [58, "core::array::Span::"], + [59, "u128"], + [60, "core::starknet::info::v2::ResourceBounds"], + [61, "Tuple"], + [62, "core::panics::PanicResult::<((),)>"], + [63, "core::starknet::info::v2::TxInfo"], + [64, "Tuple>"], + [ + 65, + "core::panics::PanicResult::<(core::box::Box::,)>" + ], + [66, "Uninitialized"], + [67, "core::array::Span::>"], + [68, "core::option::Option::>"], + [ + 69, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::ContractState" + ], + [ + 70, + "Tuple" + ], + [ + 71, + "core::panics::PanicResult::<(braavos_account::presets::braavos_base_account::BraavosBaseAccount::ContractState, ())>" + ], + [72, "Poseidon"], + [73, "EcOp"], + [74, "Tuple"], + [75, "core::panics::PanicResult::<(core::felt252,)>"], + [76, "braavos_account::signers::signers::StarkPubKey"], + [ + 77, + "core::option::Option::" + ], + [78, "core::option::Option::"], + [ + 79, + "Tuple" + ], + [ + 80, + "core::panics::PanicResult::<(braavos_account::presets::braavos_base_account::BraavosBaseAccount::ContractState, core::felt252)>" + ], + [81, "Tuple>"], + [82, "Tuple, Unit>"], + [ + 83, + "core::panics::PanicResult::<(core::array::Array::, ())>" + ], + [ + 84, + "Tuple>>" + ], + [ + 85, + "core::panics::PanicResult::<(braavos_account::presets::braavos_base_account::BraavosBaseAccount::ContractState, core::array::Array::>)>" + ], + [86, "BuiltinCosts"], + [87, "System"], + [ + 88, + "core::panics::PanicResult::<(core::array::Span::,)>" + ], + [89, "Array"], + [ + 90, + "core::option::Option::>" + ], + [ + 91, + "Tuple, core::option::Option::>>" + ], + [ + 92, + "core::panics::PanicResult::<(core::array::Span::, core::option::Option::>)>" + ], + [93, "GasBuiltin"] + ], + "libfunc_names": [ + [0, "revoke_ap_tracking"], + [1, "withdraw_gas"], + [2, "branch_align"], + [3, "store_temp"], + [4, "store_temp"], + [5, "store_temp>"], + [ + 6, + "function_call::deserialize>" + ], + [ + 7, + "enum_match, core::option::Option::>)>>" + ], + [ + 8, + "struct_deconstruct, core::option::Option::>>>" + ], + [ + 9, + "enum_match>>" + ], + [10, "struct_deconstruct>"], + [11, "array_snapshot_pop_front"], + [12, "drop>>"], + [13, "drop>"], + [14, "drop>"], + [15, "array_new"], + [ + 16, + "felt252_const<7733229381460288120802334208475838166080759535023995805565484692595>" + ], + [17, "store_temp"], + [18, "array_append"], + [19, "struct_construct"], + [20, "struct_construct>>"], + [ + 21, + "enum_init,)>, 1>" + ], + [22, "store_temp"], + [ + 23, + "store_temp,)>>" + ], + [24, "get_builtin_costs"], + [25, "store_temp"], + [26, "withdraw_gas_all"], + [ + 27, + "struct_construct" + ], + [28, "store_temp>"], + [ + 29, + "function_call" + ], + [ + 30, + "enum_match>)>>" + ], + [ + 31, + "struct_deconstruct>>>" + ], + [ + 32, + "drop" + ], + [33, "snapshot_take>>"], + [34, "drop>>"], + [35, "store_temp>>>"], + [36, "store_temp>"], + [ + 37, + "function_call, core::array::SpanFelt252Serde, core::array::SpanDrop::>::serialize>" + ], + [ + 38, + "enum_match, ())>>" + ], + [39, "struct_deconstruct, Unit>>"], + [40, "drop"], + [41, "snapshot_take>"], + [42, "drop>"], + [43, "struct_construct>"], + [44, "struct_construct>>"], + [ + 45, + "enum_init,)>, 0>" + ], + [46, "felt252_const<375233589013918064796019>"], + [47, "drop>"], + [ + 48, + "felt252_const<485748461484230571791265682659113160264223489397539653310998840191492913>" + ], + [ + 49, + "function_call" + ], + [ + 50, + "enum_match>" + ], + [ + 51, + "struct_deconstruct>" + ], + [52, "snapshot_take"], + [53, "drop"], + [54, "function_call"], + [55, "function_call"], + [56, "enum_match>"], + [ + 57, + "function_call" + ], + [ + 58, + "enum_match>" + ], + [59, "drop"], + [ + 60, + "snapshot_take" + ], + [61, "store_temp"], + [ + 62, + "function_call" + ], + [63, "enum_match>"], + [64, "struct_deconstruct>"], + [ + 65, + "felt252_const<485748461484230571791265682659113160264223489397539653310998840191492915>" + ], + [ + 66, + "felt252_const<485748461484230571791265682659113160264223489397539653310998840191492914>" + ], + [67, "store_temp"], + [68, "store_temp"], + [ + 69, + "function_call" + ], + [ + 70, + "enum_match>" + ], + [ + 71, + "drop>" + ], + [72, "disable_ap_tracking"], + [ + 73, + "enum_init>, 0>" + ], + [74, "store_temp>>"], + [ + 75, + "store_temp>>" + ], + [76, "jump"], + [77, "struct_construct"], + [ + 78, + "enum_init>, 1>" + ], + [ + 79, + "enum_match>>" + ], + [80, "unbox"], + [81, "array_new"], + [82, "rename"], + [ + 83, + "function_call>" + ], + [ + 84, + "enum_init>, 1>" + ], + [ + 85, + "struct_construct, core::option::Option::>>>" + ], + [ + 86, + "enum_init, core::option::Option::>)>, 0>" + ], + [ + 87, + "store_temp, core::option::Option::>)>>" + ], + [88, "felt252_const<406608149979748856507468602613712196>"], + [ + 89, + "enum_init>)>, 1>" + ], + [ + 90, + "store_temp>)>>" + ], + [91, "dup>>>"], + [92, "array_len>"], + [93, "u32_to_felt252"], + [ + 94, + "struct_construct>>" + ], + [ + 95, + "store_temp>>" + ], + [ + 96, + "function_call, core::array::SpanFelt252Serde, core::array::SpanDrop::>>" + ], + [ + 97, + "enum_init, 1>" + ], + [ + 98, + "store_temp>" + ], + [99, "enum_init, 0>"], + [100, "store_temp>"], + [101, "enum_init, 1>"], + [102, "struct_construct"], + [ + 103, + "enum_init, 0>" + ], + [ + 104, + "store_temp>" + ], + [ + 105, + "enum_init, 1>" + ], + [106, "enum_init, 1>"], + [107, "store_temp>"], + [108, "alloc_local"], + [109, "finalize_locals"], + [110, "function_call"], + [ + 111, + "enum_match,)>>" + ], + [112, "struct_deconstruct>>"], + [113, "unbox"], + [114, "store_local"], + [115, "dup"], + [116, "store_temp"], + [117, "dup"], + [ + 118, + "function_call" + ], + [119, "enum_match>"], + [120, "drop>"], + [121, "struct_deconstruct"], + [122, "drop"], + [123, "drop"], + [ + 124, + "drop>" + ], + [125, "drop"], + [126, "u32_const<2>"], + [127, "store_temp"], + [128, "function_call>"], + [ + 129, + "enum_match,)>>" + ], + [130, "struct_deconstruct>>"], + [ + 131, + "function_call" + ], + [ + 132, + "enum_match>" + ], + [133, "dup"], + [134, "class_hash_to_felt252"], + [135, "enable_ap_tracking"], + [136, "felt252_is_zero"], + [137, "enum_init"], + [138, "store_temp"], + [139, "drop>"], + [140, "enum_init"], + [141, "snapshot_take"], + [142, "drop"], + [143, "enum_match"], + [144, "bool_not_impl"], + [145, "drop"], + [146, "felt252_const<97440392307930487957165078600906527809>"], + [ + 147, + "enum_init, 1>" + ], + [ + 148, + "store_temp>" + ], + [149, "replace_class_syscall"], + [ + 150, + "enum_init>, 0>" + ], + [ + 151, + "store_temp>>" + ], + [ + 152, + "enum_init>, 1>" + ], + [ + 153, + "function_call::unwrap_syscall>" + ], + [ + 154, + "struct_deconstruct" + ], + [ + 155, + "felt252_const<1295919550572838631247819983596733806859788957403169325509326258146877103642>" + ], + [156, "library_call_syscall"], + [ + 157, + "enum_init, core::array::Array::>, 0>" + ], + [ + 158, + "store_temp, core::array::Array::>>" + ], + [ + 159, + "enum_init, core::array::Array::>, 1>" + ], + [ + 160, + "function_call>::unwrap_syscall>" + ], + [ + 161, + "enum_match,)>>" + ], + [162, "drop>>"], + [ + 163, + "struct_construct>" + ], + [ + 164, + "enum_init, 0>" + ], + [ + 165, + "felt252_const<29721761890975875353235833581453094220424382983267374>" + ], + [166, "drop"], + [167, "drop>"], + [168, "dup"], + [ + 169, + "enum_init>, 0>" + ], + [ + 170, + "function_call" + ], + [ + 171, + "enum_match, core::option::Option::)>>" + ], + [ + 172, + "struct_deconstruct, core::option::Option::>>" + ], + [ + 173, + "enum_match>" + ], + [174, "array_append"], + [175, "felt252_const<1>"], + [176, "felt252_sub"], + [ + 177, + "enum_init, core::option::Option::>)>, 1>" + ], + [178, "alloc_local>>>"], + [ + 179, + "struct_deconstruct>>" + ], + [180, "array_snapshot_pop_front>"], + [ + 181, + "enum_init>>, 0>" + ], + [ + 182, + "store_temp>>>" + ], + [ + 183, + "enum_init>>, 1>" + ], + [184, "store_local>>>"], + [ + 185, + "enum_match>>>" + ], + [186, "unbox>"], + [187, "function_call"], + [188, "drop>>>"], + [ + 189, + "enum_init, ())>, 1>" + ], + [ + 190, + "store_temp, ())>>" + ], + [191, "struct_construct, Unit>>"], + [ + 192, + "enum_init, ())>, 0>" + ], + [ + 193, + "drop>>>>" + ], + [194, "drop>>"], + [195, "function_call"], + [ + 196, + "enum_match,)>>" + ], + [ + 197, + "struct_deconstruct>>" + ], + [198, "unbox"], + [199, "struct_deconstruct"], + [200, "drop>"], + [201, "struct_construct>>"], + [ + 202, + "enum_init,)>, 0>" + ], + [ + 203, + "store_temp,)>>" + ], + [ + 204, + "enum_init,)>, 1>" + ], + [205, "alloc_local"], + [206, "dup>"], + [207, "array_len"], + [208, "u32_const<3>"], + [209, "store_local"], + [210, "dup"], + [211, "function_call"], + [212, "enum_match>"], + [213, "struct_deconstruct>"], + [214, "u32_const<4>"], + [215, "array_slice"], + [216, "function_call"], + [217, "u32_const<1>"], + [218, "function_call"], + [ + 219, + "enum_match>" + ], + [220, "struct_deconstruct>"], + [221, "contract_address_to_felt252"], + [222, "snapshot_take"], + [ + 223, + "function_call" + ], + [224, "enum_match>"], + [225, "struct_deconstruct>"], + [226, "felt252_const<380626532452853468588027368428489031>"], + [227, "enum_init, 1>"], + [228, "store_temp>"], + [229, "felt252_const<380626532452853468582676088285776199>"], + [230, "struct_construct>"], + [231, "enum_init, 0>"], + [232, "drop>"], + [233, "felt252_const<1637570914057682275393755530660268060279989363>"], + [234, "array_get"], + [235, "struct_construct>>"], + [ + 236, + "enum_init,)>, 0>" + ], + [ + 237, + "store_temp,)>>" + ], + [ + 238, + "enum_init,)>, 1>" + ], + [239, "class_hash_try_from_felt252"], + [ + 240, + "enum_init, 0>" + ], + [ + 241, + "store_temp>" + ], + [ + 242, + "enum_init, 1>" + ], + [ + 243, + "enum_match>>" + ], + [ + 244, + "enum_match, core::array::Array::>>" + ], + [ + 245, + "function_call" + ], + [ + 246, + "enum_match>" + ], + [247, "function_call"], + [ + 248, + "enum_match, core::option::Option::>)>>" + ], + [ + 249, + "struct_deconstruct, core::option::Option::>>>" + ], + [ + 250, + "enum_match>>" + ], + [251, "struct_construct"], + [ + 252, + "enum_init, 0>" + ], + [ + 253, + "struct_construct, core::option::Option::>>" + ], + [ + 254, + "enum_init, core::option::Option::)>, 0>" + ], + [ + 255, + "store_temp, core::option::Option::)>>" + ], + [ + 256, + "enum_init, 1>" + ], + [ + 257, + "enum_init, core::option::Option::)>, 1>" + ], + [258, "rename>"], + [ + 259, + "function_call>" + ], + [260, "get_execution_info_v2_syscall"], + [ + 261, + "enum_init, core::array::Array::>, 0>" + ], + [ + 262, + "store_temp, core::array::Array::>>" + ], + [ + 263, + "enum_init, core::array::Array::>, 1>" + ], + [ + 264, + "function_call>::unwrap_syscall>" + ], + [ + 265, + "store_temp,)>>" + ], + [266, "u32_overflowing_sub"], + [ + 267, + "enum_init, 0>" + ], + [ + 268, + "store_temp>" + ], + [ + 269, + "enum_init, 1>" + ], + [270, "felt252_const<155785504329508738615720351733824384887>"], + [ + 271, + "function_call::expect::>" + ], + [272, "store_temp>"], + [273, "felt252_const<0>"], + [274, "struct_construct>"], + [275, "store_temp>"], + [276, "function_call"], + [ + 277, + "enum_match, core::felt252)>>" + ], + [ + 278, + "struct_deconstruct, felt252>>" + ], + [279, "struct_construct>"], + [280, "enum_init, 0>"], + [281, "drop>"], + [282, "struct_construct>"], + [ + 283, + "enum_init, 0>" + ], + [ + 284, + "store_temp>" + ], + [ + 285, + "enum_init, 1>" + ], + [286, "u32_const<0>"], + [287, "function_call"], + [288, "struct_construct>"], + [289, "enum_init, 0>"], + [290, "store_temp>"], + [291, "enum_init, 1>"], + [292, "contract_address_try_from_felt252"], + [ + 293, + "enum_init, 0>" + ], + [ + 294, + "store_temp>" + ], + [ + 295, + "enum_init, 1>" + ], + [296, "dup>>"], + [297, "function_call"], + [298, "enum_match>"], + [ + 299, + "enum_init>, 0>" + ], + [ + 300, + "struct_construct, core::option::Option::>>>" + ], + [ + 301, + "enum_init, core::option::Option::>)>, 0>" + ], + [ + 302, + "store_temp, core::option::Option::>)>>" + ], + [ + 303, + "enum_init, core::option::Option::>)>, 1>" + ], + [ + 304, + "enum_init>, 1>" + ], + [ + 305, + "enum_match, core::array::Array::>>" + ], + [ + 306, + "struct_construct>>" + ], + [ + 307, + "enum_init,)>, 0>" + ], + [ + 308, + "enum_init,)>, 1>" + ], + [ + 309, + "enum_match>" + ], + [310, "struct_construct>"], + [311, "enum_init, 0>"], + [312, "enum_init, 1>"], + [313, "struct_deconstruct>"], + [314, "felt252_add"], + [315, "hades_permutation"], + [316, "dup"], + [317, "drop"], + [ + 318, + "enum_init, core::felt252)>, 1>" + ], + [ + 319, + "store_temp, core::felt252)>>" + ], + [ + 320, + "struct_construct, felt252>>" + ], + [ + 321, + "enum_init, core::felt252)>, 0>" + ], + [322, "drop>"], + [ + 323, + "felt252_const<3618502788666131213697322783095070105526743751716087489154079457884512865583>" + ], + [324, "ec_point_from_x_nz"], + [325, "store_temp>"], + [326, "unwrap_non_zero"], + [ + 327, + "felt252_const<874739451078007766457464989774322083649278607533249481151382481072868806602>" + ], + [ + 328, + "felt252_const<152666792071518830868575557812948353041420400780739481342941381225525861407>" + ], + [329, "ec_point_try_new_nz"], + [330, "store_temp"], + [331, "function_call"], + [332, "ec_point_is_zero"], + [333, "drop"], + [334, "ec_point_unwrap"], + [335, "dup"], + [336, "function_call"], + [337, "function_call"], + [338, "u32_try_from_felt252"], + [339, "enum_init, 0>"], + [340, "store_temp>"], + [341, "enum_init, 1>"], + [342, "ec_state_init"], + [343, "ec_state_add_mul"], + [344, "store_temp"], + [345, "ec_state_try_finalize_nz"], + [346, "ec_point_zero"], + [347, "drop>"], + [348, "ec_state_add"], + [349, "ec_neg"] + ], + "user_func_names": [ + [ + 0, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::__wrapper__ExternalMethods____execute__" + ], + [ + 1, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::__wrapper__ExternalMethods____validate__" + ], + [ + 2, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::__wrapper__ExternalMethods____validate_deploy__" + ], + [ + 3, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::__wrapper__constructor" + ], + [ + 4, + "core::array::ArraySerde::::deserialize" + ], + [ + 5, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::ExternalMethods::__execute__" + ], + [ + 6, + "core::array::ArraySerde::, core::array::SpanFelt252Serde, core::array::SpanDrop::>::serialize" + ], + [ + 7, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::ExternalMethods::__validate__" + ], + [8, "core::Felt252Serde::serialize"], + [9, "core::Felt252Serde::deserialize"], + [10, "braavos_account::signers::signers::StarkPubKeySerde::deserialize"], + [ + 11, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::ExternalMethods::__validate_deploy__" + ], + [ + 12, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::constructor" + ], + [ + 13, + "core::array::deserialize_array_helper::" + ], + [ + 14, + "core::array::serialize_array_helper::, core::array::SpanFelt252Serde, core::array::SpanDrop::>" + ], + [15, "core::starknet::info::get_tx_info"], + [ + 16, + "braavos_account::presets::braavos_base_account::BraavosBaseAccount::assert_valid_deploy_base" + ], + [17, "core::array::array_at::"], + [18, "core::starknet::class_hash::Felt252TryIntoClassHash::try_into"], + [19, "core::starknet::SyscallResultTraitImpl::<()>::unwrap_syscall"], + [ + 20, + "core::starknet::SyscallResultTraitImpl::>::unwrap_syscall" + ], + [21, "core::starknet::account::CallSerde::deserialize"], + [22, "core::array::SpanFelt252Serde::serialize"], + [23, "core::starknet::info::get_execution_info"], + [24, "core::integer::U32Sub::sub"], + [25, "core::poseidon::poseidon_hash_span"], + [26, "core::starknet::info::get_caller_address"], + [ + 27, + "braavos_account::signers::signers::StarkSignerMethods::validate_signature" + ], + [ + 28, + "core::starknet::contract_address::ContractAddressSerde::deserialize" + ], + [29, "core::array::SpanFelt252Serde::deserialize"], + [ + 30, + "core::array::serialize_array_helper::" + ], + [ + 31, + "core::starknet::SyscallResultTraitImpl::>::unwrap_syscall" + ], + [ + 32, + "core::result::ResultTraitImpl::::expect::" + ], + [33, "core::poseidon::_poseidon_hash_span_inner"], + [34, "core::ecdsa::check_ecdsa_signature"], + [35, "core::integer::Felt252TryIntoU32::try_into"], + [36, "core::ec::EcPointImpl::mul"], + [37, "core::ec::EcPointAdd::add"], + [38, "core::ec::EcPointSub::sub"] + ] + }, + "contract_class_version": "0.1.0", + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "function_idx": 0 + }, + { + "selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "function_idx": 1 + }, + { + "selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "function_idx": 2 + } + ], + "L1_HANDLER": [], + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "function_idx": 3 + } + ] + }, + "abi": [ + { + "type": "impl", + "name": "ExternalMethods", + "interface_name": "braavos_account::presets::braavos_base_account::IBraavosBaseAccount" + }, + { + "type": "struct", + "name": "core::array::Span::", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "struct", + "name": "core::starknet::account::Call", + "members": [ + { + "name": "to", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "selector", + "type": "core::felt252" + }, + { + "name": "calldata", + "type": "core::array::Span::" + } + ] + }, + { + "type": "struct", + "name": "braavos_account::signers::signers::StarkPubKey", + "members": [ + { + "name": "pub_key", + "type": "core::felt252" + } + ] + }, + { + "type": "interface", + "name": "braavos_account::presets::braavos_base_account::IBraavosBaseAccount", + "items": [ + { + "type": "function", + "name": "__validate__", + "inputs": [ + { + "name": "calls", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "__execute__", + "inputs": [ + { + "name": "calls", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::array::Array::>" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "__validate_deploy__", + "inputs": [ + { + "name": "class_hash", + "type": "core::felt252" + }, + { + "name": "salt", + "type": "core::felt252" + }, + { + "name": "stark_pub_key", + "type": "braavos_account::signers::signers::StarkPubKey" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "constructor", + "name": "constructor", + "inputs": [ + { + "name": "stark_pub_key", + "type": "braavos_account::signers::signers::StarkPubKey" + } + ] + }, + { + "type": "event", + "name": "braavos_account::presets::braavos_base_account::BraavosBaseAccount::Event", + "kind": "enum", + "variants": [] + } + ] +} diff --git a/src/contracts/BraavosCallAggregator.json b/src/contracts/BraavosCallAggregator.json new file mode 100644 index 0000000..53136f3 --- /dev/null +++ b/src/contracts/BraavosCallAggregator.json @@ -0,0 +1,6663 @@ +{ + "abi": [ + { + "members": [ + { + "name": "to", + "offset": 0, + "type": "felt" + }, + { + "name": "selector", + "offset": 1, + "type": "felt" + }, + { + "name": "data_offset", + "offset": 2, + "type": "felt" + }, + { + "name": "data_len", + "offset": 3, + "type": "felt" + } + ], + "name": "AccountCallArray", + "size": 4, + "type": "struct" + }, + { + "inputs": [ + { + "name": "call_array_len", + "type": "felt" + }, + { + "name": "call_array", + "type": "AccountCallArray*" + }, + { + "name": "calldata_len", + "type": "felt" + }, + { + "name": "calldata", + "type": "felt*" + } + ], + "name": "multi_call_contract", + "outputs": [ + { + "name": "response_len", + "type": "felt" + }, + { + "name": "response", + "type": "felt*" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "entry_points_by_type": { + "CONSTRUCTOR": [], + "EXTERNAL": [ + { + "offset": "0x90", + "selector": "0x24c7ee658acc0eb4da5d128b6f216a0156f1bcd4e92f63e949b495a3be3772f" + } + ], + "L1_HANDLER": [] + }, + "program": { + "attributes": [], + "builtins": ["pedersen", "range_check"], + "compiler_version": "0.10.3", + "data": [ + "0x40780017fff7fff", + "0x1", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x3", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480080007fff8000", + "0x400080007ffd7fff", + "0x482480017ffd8001", + "0x1", + "0x482480017ffd8001", + "0x1", + "0xa0680017fff7ffe", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffb", + "0x402a7ffc7ffd7fff", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ff97fff", + "0x400380017ff97ffa", + "0x400380027ff97ffb", + "0x400380037ff97ffc", + "0x400380047ff97ffd", + "0x482680017ff98000", + "0x7", + "0x480280057ff98000", + "0x480280067ff98000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe1", + "0x40137fff7fff8000", + "0x480a7ff77fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x480a80007fff8000", + "0x1104800180018000", + "0x33", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd7", + "0x40137fff7fff8001", + "0x48127ffc7fff8000", + "0x480a7ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x1104800180018000", + "0x8", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ffc7fff8000", + "0x480a80017fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x20780017fff7ffb", + "0x6", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480280007ffc8000", + "0x480280017ffc8000", + "0x480280027ffc8000", + "0x480280037ffc8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffcd", + "0x40137ffe7fff8000", + "0x40137fff7fff8001", + "0x40137ffd7fff8002", + "0x480a7ffd7fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb6", + "0x480a80027fff8000", + "0x482680017ffb8000", + "0x800000000000011000000000000000000000000000000000000000000000000", + "0x482680017ffc8000", + "0x4", + "0x482a80007ffd8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe4", + "0x48127ffe7fff8000", + "0x482880007ffe8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffa", + "0x4", + "0x480a7ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480280007ffb8000", + "0x400280007ffd7fff", + "0x480280017ffb8000", + "0x400280017ffd7fff", + "0x480280037ffb8000", + "0x400280027ffd7fff", + "0x480280027ffb8000", + "0x48327fff7ffc8000", + "0x400280037ffd7fff", + "0x480a7ff97fff8000", + "0x482680017ffa8000", + "0x800000000000011000000000000000000000000000000000000000000000000", + "0x482680017ffb8000", + "0x4", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x4", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffec", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa5", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x4003800080007ffb", + "0x400380007ffd7ffb", + "0x402780017ffd8001", + "0x1", + "0x4826800180008000", + "0x1", + "0x40297ffb7fff8002", + "0x4826800180008000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff7a", + "0x480a80017fff8000", + "0x4829800080008002", + "0x480a80007fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x484480017fff8000", + "0x4", + "0x48307fff7ffd8000", + "0x480280027ffb8000", + "0x480080007ffe8000", + "0x400080017ffe7fff", + "0x482480017ffd8000", + "0x1", + "0x480080007ffc8000", + "0x48307fff7ffe8000", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x2", + "0x480280007ffd8000", + "0x482680017ffd8000", + "0x1", + "0x480080007ff48000", + "0x482480017ff38000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc6", + "0x40137ffb7fff8000", + "0x40137ffc7fff8001", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffcb", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe" + ], + "debug_info": { + "file_contents": { + "autogen/starknet/arg_processor/01cba52f8515996bb9d7070bde81ff39281d096d7024a558efcba6e1fd2402cf.cairo": "assert [cast(fp + (-4), felt*)] = __calldata_actual_size;\n", + "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo": "// Check that the length is non-negative.\nassert [range_check_ptr] = __calldata_arg_call_array_len;\nlet range_check_ptr = range_check_ptr + 1;\n// Create the reference.\nlet __calldata_arg_call_array = cast(__calldata_ptr, lib.openzeppelin.account.library.AccountCallArray*);\n// Use 'tempvar' instead of 'let' to avoid repeating this computation for the\n// following arguments.\ntempvar __calldata_ptr = __calldata_ptr + __calldata_arg_call_array_len * 4;\n", + "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo": "// Check that the length is non-negative.\nassert [range_check_ptr] = __calldata_arg_calldata_len;\nlet range_check_ptr = range_check_ptr + 1;\n// Create the reference.\nlet __calldata_arg_calldata = cast(__calldata_ptr, felt*);\n// Use 'tempvar' instead of 'let' to avoid repeating this computation for the\n// following arguments.\ntempvar __calldata_ptr = __calldata_ptr + __calldata_arg_calldata_len * 1;\n", + "autogen/starknet/arg_processor/7dc21e5febb3934461e79e32b9e043909f57ea5d5d88047175f79be259d9fdd5.cairo": "let __calldata_arg_call_array_len = [__calldata_ptr];\nlet __calldata_ptr = __calldata_ptr + 1;\n", + "autogen/starknet/arg_processor/b3680ca562908399dc897f0a23ed55686e0fba9ab4a18330c139e561aa7b41d8.cairo": "let __calldata_arg_calldata_len = [__calldata_ptr];\nlet __calldata_ptr = __calldata_ptr + 1;\n", + "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo": "// Check that the length is non-negative.\nassert [range_check_ptr] = ret_value.response_len;\n// Store the updated range_check_ptr as a local variable to keep it available after\n// the memcpy.\nlocal range_check_ptr = range_check_ptr + 1;\n// Keep a reference to __return_value_ptr.\nlet __return_value_ptr_copy = __return_value_ptr;\n// Store the updated __return_value_ptr as a local variable to keep it available after\n// the memcpy.\nlocal __return_value_ptr: felt* = __return_value_ptr + ret_value.response_len * 1;\nmemcpy(\n dst=__return_value_ptr_copy,\n src=ret_value.response,\n len=ret_value.response_len * 1);\n", + "autogen/starknet/arg_processor/c2f1fff90123af1ac991a5f7ea9000b626c118903b694b399e02806d44fb5def.cairo": "assert [__return_value_ptr] = ret_value.response_len;\nlet __return_value_ptr = __return_value_ptr + 1;\n", + "autogen/starknet/external/multi_call_contract/741ea357d6336b0bed7bf0472425acd0311d543883b803388880e60a232040c7.cairo": "let range_check_ptr = [cast([cast(fp + (-5), felt**)] + 2, felt*)];\n", + "autogen/starknet/external/multi_call_contract/9684a85e93c782014ca14293edea4eb2502039a5a7b6538ecd39c56faaf12529.cairo": "let pedersen_ptr = [cast([cast(fp + (-5), felt**)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)];\n", + "autogen/starknet/external/multi_call_contract/b2c52ca2d2a8fc8791a983086d8716c5eacd0c3d62934914d2286f84b98ff4cb.cairo": "let syscall_ptr = [cast([cast(fp + (-5), felt**)] + 0, felt**)];\n", + "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo": "let ret_value = __wrapped_func{syscall_ptr=syscall_ptr, pedersen_ptr=pedersen_ptr, range_check_ptr=range_check_ptr}(call_array_len=__calldata_arg_call_array_len, call_array=__calldata_arg_call_array, calldata_len=__calldata_arg_calldata_len, calldata=__calldata_arg_calldata,);\nlet (range_check_ptr, retdata_size, retdata) = multi_call_contract_encode_return(ret_value, range_check_ptr);\n", + "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo": "return (syscall_ptr,pedersen_ptr,range_check_ptr,retdata_size,retdata);\n", + "autogen/starknet/external/multi_call_contract/fa78deb99bc8a63648d8bc4697cc4911799a3548607bcd99d806a28a571675b6.cairo": "func multi_call_contract() -> (syscall_ptr: felt*, pedersen_ptr: starkware.cairo.common.cairo_builtins.HashBuiltin*, range_check_ptr: felt, size: felt, retdata: felt*) {\n alloc_locals;\n}\n", + "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo": "func multi_call_contract_encode_return(ret_value: (response_len: felt, response: felt*), range_check_ptr) -> (\n range_check_ptr: felt, data_len: felt, data: felt*) {\n %{ memory[ap] = segments.add() %}\n alloc_locals;\n local __return_value_ptr_start: felt*;\n let __return_value_ptr = __return_value_ptr_start;\n with range_check_ptr {\n }\n return (\n range_check_ptr=range_check_ptr,\n data_len=__return_value_ptr - __return_value_ptr_start,\n data=__return_value_ptr_start);\n}\n" + }, + "instruction_locations": { + "0": { + "accessible_scopes": [ + "starkware.cairo.common.alloc", + "starkware.cairo.common.alloc.alloc" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 38, + "end_line": 3, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/alloc.cairo" + }, + "start_col": 5, + "start_line": 3 + }, + "n_prefix_newlines": 0 + } + ], + "inst": { + "end_col": 12, + "end_line": 4, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/alloc.cairo" + }, + "start_col": 5, + "start_line": 4 + } + }, + "2": { + "accessible_scopes": [ + "starkware.cairo.common.alloc", + "starkware.cairo.common.alloc.alloc" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 5, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/alloc.cairo" + }, + "start_col": 5, + "start_line": 5 + } + }, + "3": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 8, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 8 + } + }, + "5": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 19, + "end_line": 9, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 9, + "start_line": 9 + } + }, + "6": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 41, + "end_line": 12, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 12 + }, + "n_prefix_newlines": 0 + } + ], + "inst": { + "end_col": 23, + "end_line": 2, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 13, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 35, + "start_line": 13 + }, + "While expanding the reference 'dst' in:" + ], + "start_col": 13, + "start_line": 2 + } + }, + "7": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 35, + "end_line": 2, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "parent_location": [ + { + "end_col": 47, + "end_line": 13, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 44, + "start_line": 13 + }, + "While expanding the reference 'src' in:" + ], + "start_col": 25, + "start_line": 2 + } + }, + "8": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 37, + "end_line": 17, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 26, + "start_line": 17 + } + }, + "9": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 17, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 17 + } + }, + "10": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 41, + "end_line": 22, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 22 + } + }, + "12": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 41, + "end_line": 23, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 23 + } + }, + "14": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 7, + "end_line": 27, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 24 + }, + "n_prefix_newlines": 1 + } + ], + "inst": { + "end_col": 44, + "end_line": 29, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 29 + } + }, + "16": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 55, + "end_line": 31, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 31 + } + }, + "17": { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 26, + "end_line": 33, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 33 + }, + "n_prefix_newlines": 0 + } + ], + "inst": { + "end_col": 15, + "end_line": 34, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/cairo/common/memcpy.cairo" + }, + "start_col": 5, + "start_line": 34 + } + }, + "18": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 47, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 18, + "start_line": 47 + } + }, + "20": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 46 + } + }, + "21": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 46 + } + }, + "22": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 46 + } + }, + "23": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 46 + } + }, + "24": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 46 + } + }, + "25": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 88, + "end_line": 53, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 53 + }, + "n_prefix_newlines": 0 + } + ], + "inst": { + "end_col": 54, + "end_line": 56, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 75, + "end_line": 57, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 57 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 23, + "start_line": 56 + } + }, + "27": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 47, + "end_line": 57, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 26, + "start_line": 57 + } + }, + "28": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 73, + "end_line": 57, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 57, + "start_line": 57 + } + }, + "29": { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 75, + "end_line": 57, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "start_col": 5, + "start_line": 57 + } + }, + "30": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 18, + "end_line": 41, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 41 + } + }, + "32": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 33, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 44 + } + }, + "34": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 10, + "start_line": 44 + }, + "While auto generating local variable for 'calls'." + ], + "start_col": 10, + "start_line": 44 + } + }, + "35": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 23, + "end_line": 35, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 74, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 45 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 35 + } + }, + "36": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 23, + "end_line": 38, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 44, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 30, + "start_line": 45 + }, + "While expanding the reference 'call_array_len' in:" + ], + "start_col": 3, + "start_line": 38 + } + }, + "37": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 54, + "end_line": 38, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 46, + "start_line": 45 + }, + "While expanding the reference 'call_array' in:" + ], + "start_col": 25, + "start_line": 38 + } + }, + "38": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 91, + "end_line": 38, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 66, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 58, + "start_line": 45 + }, + "While expanding the reference 'calldata' in:" + ], + "start_col": 76, + "start_line": 38 + } + }, + "39": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 73, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 68, + "start_line": 45 + }, + "While expanding the reference 'calls' in:" + ], + "start_col": 10, + "start_line": 44 + }, + "While auto generating local variable for 'calls'." + ], + "start_col": 10, + "start_line": 44 + } + }, + "40": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 74, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 45 + } + }, + "42": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 36, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 29, + "start_line": 49 + } + }, + "44": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 10, + "start_line": 49 + }, + "While auto generating local variable for 'response'." + ], + "start_col": 10, + "start_line": 49 + } + }, + "45": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 74, + "end_line": 45, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 67, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 50 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 45 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + } + }, + "46": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 23, + "end_line": 38, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 35, + "end_line": 46, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 40, + "start_line": 50 + }, + "While expanding the reference 'calls_len' in:" + ], + "start_col": 21, + "start_line": 46 + }, + "While expanding the reference 'call_array_len' in:" + ], + "start_col": 3, + "start_line": 38 + } + }, + "47": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 22, + "end_line": 44, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 51, + "start_line": 50 + }, + "While expanding the reference 'calls' in:" + ], + "start_col": 10, + "start_line": 44 + }, + "While auto generating local variable for 'calls'." + ], + "start_col": 10, + "start_line": 44 + } + }, + "48": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 66, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 58, + "start_line": 50 + }, + "While expanding the reference 'response' in:" + ], + "start_col": 10, + "start_line": 49 + }, + "While auto generating local variable for 'response'." + ], + "start_col": 10, + "start_line": 49 + } + }, + "49": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 67, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 50 + } + }, + "51": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 67, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 35, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 59, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 52 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 35 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 26, + "start_line": 50 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + } + }, + "52": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 31, + "end_line": 36, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 31, + "end_line": 36, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 59, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 52 + }, + "While trying to retrieve the implicit argument 'pedersen_ptr' in:" + ], + "start_col": 5, + "start_line": 36 + }, + "While expanding the reference 'pedersen_ptr' in:" + ], + "start_col": 5, + "start_line": 36 + } + }, + "53": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 20, + "end_line": 37, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 37, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 59, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 52 + }, + "While trying to retrieve the implicit argument 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 37 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 37 + } + }, + "54": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 50, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 52 + }, + "While expanding the reference 'response_len' in:" + ], + "start_col": 10, + "start_line": 50 + } + }, + "55": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 49, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 57, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 49, + "start_line": 52 + }, + "While expanding the reference 'response' in:" + ], + "start_col": 10, + "start_line": 49 + }, + "While auto generating local variable for 'response'." + ], + "start_col": 10, + "start_line": 49 + } + }, + "56": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library.execute" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 59, + "end_line": 52, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 52 + } + }, + "57": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 18, + "end_line": 58, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 58 + } + }, + "59": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 61, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 61 + } + }, + "61": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 33, + "end_line": 62, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 62 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + } + }, + "62": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 31, + "end_line": 62, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 30, + "start_line": 62 + } + }, + "64": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 33, + "end_line": 62, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 62 + } + }, + "65": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 15, + "start_line": 67 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + } + }, + "66": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 68, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 68 + } + }, + "67": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 45, + "end_line": 69, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 27, + "start_line": 69 + } + }, + "68": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 45, + "end_line": 70, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 23, + "start_line": 70 + } + }, + "69": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 36, + "end_line": 71, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 18, + "start_line": 71 + } + }, + "70": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 15, + "start_line": 67 + } + }, + "72": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 12, + "end_line": 67, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 12, + "end_line": 67, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 67 + }, + "While auto generating local variable for 'res'." + ], + "start_col": 9, + "start_line": 67 + } + }, + "73": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 12, + "end_line": 67, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 12, + "end_line": 67, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 67 + }, + "While auto generating local variable for 'res'." + ], + "start_col": 9, + "start_line": 67 + } + }, + "74": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 15, + "start_line": 67 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + }, + "While auto generating local variable for 'syscall_ptr'." + ], + "start_col": 15, + "start_line": 67 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + } + }, + "75": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 86, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 74, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 12, + "start_line": 74 + }, + "While expanding the reference 'response' in:" + ], + "start_col": 71, + "start_line": 55 + } + }, + "76": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 33, + "end_line": 74, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 22, + "start_line": 74 + } + }, + "77": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 51, + "end_line": 74, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 35, + "start_line": 74 + } + }, + "78": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 52, + "end_line": 74, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 74 + } + }, + "80": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 42, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/venv/lib/python3.9/site-packages/starkware/starknet/common/syscalls.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 72, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 78, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 76 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 15, + "start_line": 67 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + }, + "While auto generating local variable for 'syscall_ptr'." + ], + "start_col": 15, + "start_line": 67 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 42 + } + }, + "81": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 77, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 77 + } + }, + "83": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 41, + "end_line": 77, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 24, + "start_line": 77 + } + }, + "85": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 70, + "end_line": 77, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 43, + "start_line": 77 + } + }, + "86": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 6, + "end_line": 78, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 76 + } + }, + "88": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 78, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 55, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 59, + "end_line": 79, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 79 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 26, + "start_line": 76 + }, + "While trying to update the implicit return value 'syscall_ptr' in:" + ], + "start_col": 20, + "start_line": 55 + } + }, + "89": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 57, + "end_line": 79, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 26, + "start_line": 79 + } + }, + "90": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._execute_list" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 59, + "end_line": 79, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 79 + } + }, + "91": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 7, + "end_line": 86, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 86 + } + }, + "93": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 19, + "end_line": 87, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 87 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + } + }, + "94": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 19, + "end_line": 87, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 87 + } + }, + "95": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 27, + "end_line": 92, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 12, + "start_line": 92 + } + }, + "96": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 11, + "end_line": 96, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 91 + } + }, + "97": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 39, + "end_line": 93, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 18, + "start_line": 93 + } + }, + "98": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 11, + "end_line": 96, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 91 + } + }, + "99": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 43, + "end_line": 94, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 22, + "start_line": 94 + } + }, + "100": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 11, + "end_line": 96, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 91 + } + }, + "101": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 53, + "end_line": 95, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 29, + "start_line": 95 + } + }, + "102": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 53, + "end_line": 95, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 18, + "start_line": 95 + } + }, + "103": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 11, + "end_line": 96, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 91 + } + }, + "104": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 82, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 6, + "end_line": 100, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 98 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 31, + "start_line": 82 + } + }, + "105": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 27, + "end_line": 99, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 9, + "start_line": 99 + } + }, + "107": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 63, + "end_line": 99, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 29, + "start_line": 99 + } + }, + "109": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 73, + "end_line": 83, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 73, + "end_line": 99, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 65, + "start_line": 99 + }, + "While expanding the reference 'calldata' in:" + ], + "start_col": 58, + "start_line": 83 + } + }, + "110": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 92, + "end_line": 99, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 75, + "start_line": 99 + } + }, + "112": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 6, + "end_line": 100, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 98 + } + }, + "114": { + "accessible_scopes": [ + "lib.openzeppelin.account.library", + "lib.openzeppelin.account.library._from_call_array_to_call" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 15, + "end_line": 101, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "start_col": 5, + "start_line": 101 + } + }, + "115": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 23, + "end_line": 13, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 35, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 71, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 12, + "start_line": 22 + }, + "While trying to retrieve the implicit argument 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 35 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 13 + } + }, + "116": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 31, + "end_line": 14, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 31, + "end_line": 36, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 71, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 12, + "start_line": 22 + }, + "While trying to retrieve the implicit argument 'pedersen_ptr' in:" + ], + "start_col": 5, + "start_line": 36 + }, + "While expanding the reference 'pedersen_ptr' in:" + ], + "start_col": 5, + "start_line": 14 + } + }, + "117": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 20, + "end_line": 15, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 37, + "input_file": { + "filename": "/Users/yoavg/workspace/call-aggregator-cairo/lib/openzeppelin/account/library.cairo" + }, + "parent_location": [ + { + "end_col": 71, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 12, + "start_line": 22 + }, + "While trying to retrieve the implicit argument 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 37 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 15 + } + }, + "118": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 25, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 34, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 20, + "start_line": 22 + }, + "While expanding the reference 'call_array_len' in:" + ], + "start_col": 5, + "start_line": 17 + } + }, + "119": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 46, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 36, + "start_line": 22 + }, + "While expanding the reference 'call_array' in:" + ], + "start_col": 27, + "start_line": 17 + } + }, + "120": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 23, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 60, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 48, + "start_line": 22 + }, + "While expanding the reference 'calldata_len' in:" + ], + "start_col": 5, + "start_line": 18 + } + }, + "121": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 70, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 62, + "start_line": 22 + }, + "While expanding the reference 'calldata' in:" + ], + "start_col": 25, + "start_line": 18 + } + }, + "122": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 71, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 12, + "start_line": 22 + } + }, + "124": { + "accessible_scopes": [ + "__main__", + "__main__", + "__main__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 72, + "end_line": 22, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 5, + "start_line": 22 + } + }, + "125": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [ + { + "location": { + "end_col": 38, + "end_line": 3, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 5, + "start_line": 3 + }, + "n_prefix_newlines": 0 + } + ], + "inst": { + "end_col": 18, + "end_line": 4, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 5, + "start_line": 4 + } + }, + "127": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 54, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/c2f1fff90123af1ac991a5f7ea9000b626c118903b694b399e02806d44fb5def.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 5, + "start_line": 20 + }, + "While handling return value 'response_len'" + ], + "start_col": 1, + "start_line": 1 + } + }, + "128": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 51, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 1, + "start_line": 2 + } + }, + "129": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 45, + "end_line": 5, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 1, + "start_line": 5 + } + }, + "131": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 48, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/c2f1fff90123af1ac991a5f7ea9000b626c118903b694b399e02806d44fb5def.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 53, + "end_line": 10, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 35, + "start_line": 10 + }, + "While expanding the reference '__return_value_ptr' in:" + ], + "start_col": 5, + "start_line": 20 + }, + "While handling return value 'response_len'" + ], + "start_col": 26, + "start_line": 2 + } + }, + "133": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 83, + "end_line": 10, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 1, + "start_line": 10 + } + }, + "134": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 48, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/c2f1fff90123af1ac991a5f7ea9000b626c118903b694b399e02806d44fb5def.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 7, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 32, + "end_line": 12, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 9, + "start_line": 12 + }, + "While expanding the reference '__return_value_ptr_copy' in:" + ], + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 31, + "start_line": 7 + }, + "While expanding the reference '__return_value_ptr' in:" + ], + "start_col": 5, + "start_line": 20 + }, + "While handling return value 'response_len'" + ], + "start_col": 26, + "start_line": 2 + } + }, + "136": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 27, + "end_line": 13, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 9, + "start_line": 13 + } + }, + "137": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 31, + "end_line": 14, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 9, + "start_line": 14 + } + }, + "138": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 36, + "end_line": 14, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 1, + "start_line": 11 + } + }, + "140": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 22, + "end_line": 5, + "input_file": { + "filename": "autogen/starknet/arg_processor/b929869545548e90b3e0972d942496bfe6c38d7ef8c117fc5015fd8f5ae5ede3.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 20, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 10, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 25, + "start_line": 10 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 25, + "start_line": 20 + }, + "While handling return value 'response'" + ], + "start_col": 7, + "start_line": 5 + } + }, + "141": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 63, + "end_line": 11, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 18, + "start_line": 11 + } + }, + "142": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 35, + "end_line": 5, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 12, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 14, + "start_line": 12 + }, + "While expanding the reference '__return_value_ptr_start' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 11, + "start_line": 5 + } + }, + "143": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 12, + "input_file": { + "filename": "autogen/starknet/external/return/multi_call_contract/bf5b0892c7478dd069bb3f96bf1c9f58075df49007325240264c8b92078faefc.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling return value of" + ], + "start_col": 5, + "start_line": 9 + } + }, + "144": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 18, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/fa78deb99bc8a63648d8bc4697cc4911799a3548607bcd99d806a28a571675b6.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 5, + "start_line": 2 + } + }, + "146": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 67, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/741ea357d6336b0bed7bf0472425acd0311d543883b803388880e60a232040c7.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 15, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 24, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 9, + "start_line": 2 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 15 + }, + "While constructing the external wrapper for:" + ], + "start_col": 23, + "start_line": 1 + } + }, + "147": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 53, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/7dc21e5febb3934461e79e32b9e043909f57ea5d5d88047175f79be259d9fdd5.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 57, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 28, + "start_line": 2 + }, + "While expanding the reference '__calldata_arg_call_array_len' in:" + ], + "start_col": 5, + "start_line": 17 + }, + "While handling calldata argument 'call_array_len'" + ], + "start_col": 37, + "start_line": 1 + } + }, + "148": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 58, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 1, + "start_line": 2 + } + }, + "149": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/7dc21e5febb3934461e79e32b9e043909f57ea5d5d88047175f79be259d9fdd5.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 26, + "start_line": 8 + }, + "While expanding the reference '__calldata_ptr' in:" + ], + "start_col": 5, + "start_line": 17 + }, + "While handling calldata argument 'call_array_len'" + ], + "start_col": 22, + "start_line": 2 + } + }, + "151": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 53, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/7dc21e5febb3934461e79e32b9e043909f57ea5d5d88047175f79be259d9fdd5.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 72, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 43, + "start_line": 8 + }, + "While expanding the reference '__calldata_arg_call_array_len' in:" + ], + "start_col": 5, + "start_line": 17 + }, + "While handling calldata argument 'call_array_len'" + ], + "start_col": 37, + "start_line": 1 + } + }, + "152": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 76, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 43, + "start_line": 8 + } + }, + "154": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 76, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 26, + "start_line": 8 + } + }, + "155": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 67, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/741ea357d6336b0bed7bf0472425acd0311d543883b803388880e60a232040c7.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 15, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 3, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 24, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 9, + "start_line": 2 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 23, + "start_line": 3 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 15 + }, + "While constructing the external wrapper for:" + ], + "start_col": 23, + "start_line": 1 + } + }, + "156": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 51, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/b3680ca562908399dc897f0a23ed55686e0fba9ab4a18330c139e561aa7b41d8.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 55, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 28, + "start_line": 2 + }, + "While expanding the reference '__calldata_arg_calldata_len' in:" + ], + "start_col": 5, + "start_line": 18 + }, + "While handling calldata argument 'calldata_len'" + ], + "start_col": 35, + "start_line": 1 + } + }, + "157": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 56, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 1, + "start_line": 2 + } + }, + "158": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 40, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/arg_processor/b3680ca562908399dc897f0a23ed55686e0fba9ab4a18330c139e561aa7b41d8.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 26, + "start_line": 8 + }, + "While expanding the reference '__calldata_ptr' in:" + ], + "start_col": 5, + "start_line": 18 + }, + "While handling calldata argument 'calldata_len'" + ], + "start_col": 22, + "start_line": 2 + } + }, + "160": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 51, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/b3680ca562908399dc897f0a23ed55686e0fba9ab4a18330c139e561aa7b41d8.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 70, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 43, + "start_line": 8 + }, + "While expanding the reference '__calldata_arg_calldata_len' in:" + ], + "start_col": 5, + "start_line": 18 + }, + "While handling calldata argument 'calldata_len'" + ], + "start_col": 35, + "start_line": 1 + } + }, + "161": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 74, + "end_line": 8, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 26, + "start_line": 8 + } + }, + "162": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 58, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/01cba52f8515996bb9d7070bde81ff39281d096d7024a558efcba6e1fd2402cf.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While handling calldata of" + ], + "start_col": 1, + "start_line": 1 + } + }, + "163": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 67, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/741ea357d6336b0bed7bf0472425acd0311d543883b803388880e60a232040c7.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 15, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 3, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 38, + "end_line": 3, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 115, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 100, + "start_line": 1 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 23, + "start_line": 3 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 23, + "start_line": 3 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 5, + "start_line": 15 + }, + "While constructing the external wrapper for:" + ], + "start_col": 23, + "start_line": 1 + } + }, + "164": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 64, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/b2c52ca2d2a8fc8791a983086d8716c5eacd0c3d62934914d2286f84b98ff4cb.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 13, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 55, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 44, + "start_line": 1 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 5, + "start_line": 13 + }, + "While constructing the external wrapper for:" + ], + "start_col": 19, + "start_line": 1 + } + }, + "165": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 110, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/9684a85e93c782014ca14293edea4eb2502039a5a7b6538ecd39c56faaf12529.cairo" + }, + "parent_location": [ + { + "end_col": 31, + "end_line": 14, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 82, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 70, + "start_line": 1 + }, + "While expanding the reference 'pedersen_ptr' in:" + ], + "start_col": 5, + "start_line": 14 + }, + "While constructing the external wrapper for:" + ], + "start_col": 20, + "start_line": 1 + } + }, + "166": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 42, + "end_line": 3, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 115, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 100, + "start_line": 1 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 23, + "start_line": 3 + } + }, + "168": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 53, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/7dc21e5febb3934461e79e32b9e043909f57ea5d5d88047175f79be259d9fdd5.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 161, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 132, + "start_line": 1 + }, + "While expanding the reference '__calldata_arg_call_array_len' in:" + ], + "start_col": 5, + "start_line": 17 + }, + "While handling calldata argument 'call_array_len'" + ], + "start_col": 37, + "start_line": 1 + } + }, + "169": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 105, + "end_line": 5, + "input_file": { + "filename": "autogen/starknet/arg_processor/2754fdad120f6a7b0561a8b42b9812ffa2f3aa8f7d5edd8cc88cb7394f7bfecf.cairo" + }, + "parent_location": [ + { + "end_col": 56, + "end_line": 17, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 199, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 174, + "start_line": 1 + }, + "While expanding the reference '__calldata_arg_call_array' in:" + ], + "start_col": 27, + "start_line": 17 + }, + "While handling calldata argument 'call_array'" + ], + "start_col": 33, + "start_line": 5 + } + }, + "171": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 51, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/arg_processor/b3680ca562908399dc897f0a23ed55686e0fba9ab4a18330c139e561aa7b41d8.cairo" + }, + "parent_location": [ + { + "end_col": 23, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 241, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 214, + "start_line": 1 + }, + "While expanding the reference '__calldata_arg_calldata_len' in:" + ], + "start_col": 5, + "start_line": 18 + }, + "While handling calldata argument 'calldata_len'" + ], + "start_col": 35, + "start_line": 1 + } + }, + "172": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 58, + "end_line": 5, + "input_file": { + "filename": "autogen/starknet/arg_processor/60a1d0127411d0a1f9a364f5245ae52da8e752ea42edf6ddaf5217c8bdeb8bad.cairo" + }, + "parent_location": [ + { + "end_col": 40, + "end_line": 18, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 275, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 252, + "start_line": 1 + }, + "While expanding the reference '__calldata_arg_calldata' in:" + ], + "start_col": 25, + "start_line": 18 + }, + "While handling calldata argument 'calldata'" + ], + "start_col": 31, + "start_line": 5 + } + }, + "174": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + } + }, + "176": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 55, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 55, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 44, + "start_line": 1 + }, + "While auto generating local variable for 'syscall_ptr'." + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 44, + "start_line": 1 + } + }, + "177": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 82, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 82, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 70, + "start_line": 1 + }, + "While auto generating local variable for 'pedersen_ptr'." + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 70, + "start_line": 1 + } + }, + "178": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 115, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 108, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 93, + "start_line": 2 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 100, + "start_line": 1 + } + }, + "179": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 109, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 48, + "start_line": 2 + } + }, + "181": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 55, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 55, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 20, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 9, + "start_line": 1 + }, + "While expanding the reference 'syscall_ptr' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 44, + "start_line": 1 + }, + "While auto generating local variable for 'syscall_ptr'." + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 44, + "start_line": 1 + } + }, + "182": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 82, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 82, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 33, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 21, + "start_line": 1 + }, + "While expanding the reference 'pedersen_ptr' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 70, + "start_line": 1 + }, + "While auto generating local variable for 'pedersen_ptr'." + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 70, + "start_line": 1 + } + }, + "183": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 21, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 49, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 34, + "start_line": 1 + }, + "While expanding the reference 'range_check_ptr' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 6, + "start_line": 2 + } + }, + "184": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 35, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 62, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 50, + "start_line": 1 + }, + "While expanding the reference 'retdata_size' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 23, + "start_line": 2 + } + }, + "185": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 44, + "end_line": 2, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/c25212e9a2379eeafd4797b61fc51c79437f925a40741dd203cd446f869a171f.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "parent_location": [ + { + "end_col": 70, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 63, + "start_line": 1 + }, + "While expanding the reference 'retdata' in:" + ], + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 37, + "start_line": 2 + } + }, + "186": { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract" + ], + "flow_tracking_data": null, + "hints": [], + "inst": { + "end_col": 72, + "end_line": 1, + "input_file": { + "filename": "autogen/starknet/external/multi_call_contract/da17921a4e81c09e730800bbf23bfdbe5e9e6bfaedc59d80fbf62087fa43c27d.cairo" + }, + "parent_location": [ + { + "end_col": 25, + "end_line": 12, + "input_file": { + "filename": "src/CallAggregator.cairo" + }, + "start_col": 6, + "start_line": 12 + }, + "While constructing the external wrapper for:" + ], + "start_col": 1, + "start_line": 1 + } + } + } + }, + "hints": { + "0": [ + { + "accessible_scopes": [ + "starkware.cairo.common.alloc", + "starkware.cairo.common.alloc.alloc" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 0, + "offset": 0 + }, + "reference_ids": {} + } + } + ], + "6": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "vm_enter_scope({'n': ids.len})", + "flow_tracking_data": { + "ap_tracking": { + "group": 1, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.memcpy.memcpy.len": 0 + } + } + } + ], + "14": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "n -= 1\nids.continue_copying = 1 if n > 0 else 0", + "flow_tracking_data": { + "ap_tracking": { + "group": 1, + "offset": 5 + }, + "reference_ids": { + "starkware.cairo.common.memcpy.memcpy.continue_copying": 1 + } + } + } + ], + "17": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "vm_exit_scope()", + "flow_tracking_data": { + "ap_tracking": { + "group": 1, + "offset": 6 + }, + "reference_ids": {} + } + } + ], + "25": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.call_contract" + ], + "code": "syscall_handler.call_contract(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 2, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.call_contract.syscall_ptr": 2 + } + } + } + ], + "125": [ + { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.multi_call_contract_encode_return" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 13, + "offset": 0 + }, + "reference_ids": {} + } + } + ] + }, + "identifiers": { + "__main__.AccountCallArray": { + "destination": "lib.openzeppelin.account.library.AccountCallArray", + "type": "alias" + }, + "__main__.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "__main__.execute": { + "destination": "lib.openzeppelin.account.library.execute", + "type": "alias" + }, + "__main__.multi_call_contract": { + "decorators": ["view"], + "pc": 115, + "type": "function" + }, + "__main__.multi_call_contract.Args": { + "full_name": "__main__.multi_call_contract.Args", + "members": { + "call_array": { + "cairo_type": "lib.openzeppelin.account.library.AccountCallArray*", + "offset": 1 + }, + "call_array_len": { + "cairo_type": "felt", + "offset": 0 + }, + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 4, + "type": "struct" + }, + "__main__.multi_call_contract.ImplicitArgs": { + "full_name": "__main__.multi_call_contract.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.multi_call_contract.Return": { + "cairo_type": "(response_len: felt, response: felt*)", + "type": "type_definition" + }, + "__main__.multi_call_contract.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.multi_call_contract": { + "decorators": ["view"], + "pc": 144, + "type": "function" + }, + "__wrappers__.multi_call_contract.Args": { + "full_name": "__wrappers__.multi_call_contract.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.multi_call_contract.ImplicitArgs": { + "full_name": "__wrappers__.multi_call_contract.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.multi_call_contract.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__.multi_call_contract.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "__wrappers__.multi_call_contract.__wrapped_func": { + "destination": "__main__.multi_call_contract", + "type": "alias" + }, + "__wrappers__.multi_call_contract_encode_return": { + "decorators": [], + "pc": 125, + "type": "function" + }, + "__wrappers__.multi_call_contract_encode_return.Args": { + "full_name": "__wrappers__.multi_call_contract_encode_return.Args", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "ret_value": { + "cairo_type": "(response_len: felt, response: felt*)", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__wrappers__.multi_call_contract_encode_return.ImplicitArgs": { + "full_name": "__wrappers__.multi_call_contract_encode_return.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.multi_call_contract_encode_return.Return": { + "cairo_type": "(range_check_ptr: felt, data_len: felt, data: felt*)", + "type": "type_definition" + }, + "__wrappers__.multi_call_contract_encode_return.SIZEOF_LOCALS": { + "type": "const", + "value": 3 + }, + "__wrappers__.multi_call_contract_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "lib.openzeppelin.account.library.AccountCallArray": { + "full_name": "lib.openzeppelin.account.library.AccountCallArray", + "members": { + "data_len": { + "cairo_type": "felt", + "offset": 3 + }, + "data_offset": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 1 + }, + "to": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 4, + "type": "struct" + }, + "lib.openzeppelin.account.library.Call": { + "full_name": "lib.openzeppelin.account.library.Call", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_len": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 1 + }, + "to": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 4, + "type": "struct" + }, + "lib.openzeppelin.account.library.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "lib.openzeppelin.account.library._execute_list": { + "decorators": [], + "pc": 57, + "type": "function" + }, + "lib.openzeppelin.account.library._execute_list.Args": { + "full_name": "lib.openzeppelin.account.library._execute_list.Args", + "members": { + "calls": { + "cairo_type": "lib.openzeppelin.account.library.Call*", + "offset": 1 + }, + "calls_len": { + "cairo_type": "felt", + "offset": 0 + }, + "response": { + "cairo_type": "felt*", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "lib.openzeppelin.account.library._execute_list.ImplicitArgs": { + "full_name": "lib.openzeppelin.account.library._execute_list.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "lib.openzeppelin.account.library._execute_list.Return": { + "cairo_type": "(response_len: felt)", + "type": "type_definition" + }, + "lib.openzeppelin.account.library._execute_list.SIZEOF_LOCALS": { + "type": "const", + "value": 3 + }, + "lib.openzeppelin.account.library._from_call_array_to_call": { + "decorators": [], + "pc": 91, + "type": "function" + }, + "lib.openzeppelin.account.library._from_call_array_to_call.Args": { + "full_name": "lib.openzeppelin.account.library._from_call_array_to_call.Args", + "members": { + "call_array": { + "cairo_type": "lib.openzeppelin.account.library.AccountCallArray*", + "offset": 1 + }, + "call_array_len": { + "cairo_type": "felt", + "offset": 0 + }, + "calldata": { + "cairo_type": "felt*", + "offset": 2 + }, + "calls": { + "cairo_type": "lib.openzeppelin.account.library.Call*", + "offset": 3 + } + }, + "size": 4, + "type": "struct" + }, + "lib.openzeppelin.account.library._from_call_array_to_call.ImplicitArgs": { + "full_name": "lib.openzeppelin.account.library._from_call_array_to_call.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "lib.openzeppelin.account.library._from_call_array_to_call.Return": { + "cairo_type": "()", + "type": "type_definition" + }, + "lib.openzeppelin.account.library._from_call_array_to_call.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "lib.openzeppelin.account.library.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "lib.openzeppelin.account.library.call_contract": { + "destination": "starkware.starknet.common.syscalls.call_contract", + "type": "alias" + }, + "lib.openzeppelin.account.library.execute": { + "decorators": [], + "pc": 30, + "type": "function" + }, + "lib.openzeppelin.account.library.execute.Args": { + "full_name": "lib.openzeppelin.account.library.execute.Args", + "members": { + "call_array": { + "cairo_type": "lib.openzeppelin.account.library.AccountCallArray*", + "offset": 1 + }, + "call_array_len": { + "cairo_type": "felt", + "offset": 0 + }, + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 4, + "type": "struct" + }, + "lib.openzeppelin.account.library.execute.ImplicitArgs": { + "full_name": "lib.openzeppelin.account.library.execute.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "lib.openzeppelin.account.library.execute.Return": { + "cairo_type": "(response_len: felt, response: felt*)", + "type": "type_definition" + }, + "lib.openzeppelin.account.library.execute.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "lib.openzeppelin.account.library.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "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", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.alloc.alloc.ImplicitArgs": { + "full_name": "starkware.cairo.common.alloc.alloc.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.alloc.alloc.Return": { + "cairo_type": "(ptr: felt*)", + "type": "type_definition" + }, + "starkware.cairo.common.alloc.alloc.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.bool.FALSE": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.bool.TRUE": { + "type": "const", + "value": 1 + }, + "starkware.cairo.common.cairo_builtins.BitwiseBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.BitwiseBuiltin", + "members": { + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "x_and_y": { + "cairo_type": "felt", + "offset": 2 + }, + "x_or_y": { + "cairo_type": "felt", + "offset": 4 + }, + "x_xor_y": { + "cairo_type": "felt", + "offset": 3 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.EcOpBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.EcOpBuiltin", + "members": { + "m": { + "cairo_type": "felt", + "offset": 4 + }, + "p": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 0 + }, + "q": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 2 + }, + "r": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 5 + } + }, + "size": 7, + "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", + "members": { + "result": { + "cairo_type": "felt", + "offset": 2 + }, + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.KeccakBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.KeccakBuiltin", + "members": { + "input": { + "cairo_type": "starkware.cairo.common.keccak_state.KeccakBuiltinState", + "offset": 0 + }, + "output": { + "cairo_type": "starkware.cairo.common.keccak_state.KeccakBuiltinState", + "offset": 8 + } + }, + "size": 16, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.KeccakBuiltinState": { + "destination": "starkware.cairo.common.keccak_state.KeccakBuiltinState", + "type": "alias" + }, + "starkware.cairo.common.cairo_builtins.SignatureBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.SignatureBuiltin", + "members": { + "message": { + "cairo_type": "felt", + "offset": 1 + }, + "pub_key": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.dict_access.DictAccess": { + "full_name": "starkware.cairo.common.dict_access.DictAccess", + "members": { + "key": { + "cairo_type": "felt", + "offset": 0 + }, + "new_value": { + "cairo_type": "felt", + "offset": 2 + }, + "prev_value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.ec_point.EcPoint": { + "full_name": "starkware.cairo.common.ec_point.EcPoint", + "members": { + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.hash.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.cairo.common.keccak_state.KeccakBuiltinState": { + "full_name": "starkware.cairo.common.keccak_state.KeccakBuiltinState", + "members": { + "s0": { + "cairo_type": "felt", + "offset": 0 + }, + "s1": { + "cairo_type": "felt", + "offset": 1 + }, + "s2": { + "cairo_type": "felt", + "offset": 2 + }, + "s3": { + "cairo_type": "felt", + "offset": 3 + }, + "s4": { + "cairo_type": "felt", + "offset": 4 + }, + "s5": { + "cairo_type": "felt", + "offset": 5 + }, + "s6": { + "cairo_type": "felt", + "offset": 6 + }, + "s7": { + "cairo_type": "felt", + "offset": 7 + } + }, + "size": 8, + "type": "struct" + }, + "starkware.cairo.common.math.FALSE": { + "destination": "starkware.cairo.common.bool.FALSE", + "type": "alias" + }, + "starkware.cairo.common.math.TRUE": { + "destination": "starkware.cairo.common.bool.TRUE", + "type": "alias" + }, + "starkware.cairo.common.memcpy.memcpy": { + "decorators": [], + "pc": 3, + "type": "function" + }, + "starkware.cairo.common.memcpy.memcpy.Args": { + "full_name": "starkware.cairo.common.memcpy.memcpy.Args", + "members": { + "dst": { + "cairo_type": "felt*", + "offset": 0 + }, + "len": { + "cairo_type": "felt", + "offset": 2 + }, + "src": { + "cairo_type": "felt*", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.ImplicitArgs": { + "full_name": "starkware.cairo.common.memcpy.memcpy.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.LoopFrame": { + "full_name": "starkware.cairo.common.memcpy.memcpy.LoopFrame", + "members": { + "dst": { + "cairo_type": "felt*", + "offset": 0 + }, + "src": { + "cairo_type": "felt*", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.Return": { + "cairo_type": "()", + "type": "type_definition" + }, + "starkware.cairo.common.memcpy.memcpy.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.memcpy.memcpy.continue_copying": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.memcpy.memcpy.continue_copying", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 3 + }, + "pc": 10, + "value": "[cast(ap, felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.len": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.memcpy.memcpy.len", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.loop": { + "pc": 8, + "type": "label" + }, + "starkware.starknet.common.storage.ADDR_BOUND": { + "type": "const", + "value": -106710729501573572985208420194530329073740042555888586719489 + }, + "starkware.starknet.common.storage.MAX_STORAGE_ITEM_SIZE": { + "type": "const", + "value": 256 + }, + "starkware.starknet.common.storage.assert_250_bit": { + "destination": "starkware.cairo.common.math.assert_250_bit", + "type": "alias" + }, + "starkware.starknet.common.syscalls.CALL_CONTRACT_SELECTOR": { + "type": "const", + "value": 20853273475220472486191784820 + }, + "starkware.starknet.common.syscalls.CallContract": { + "full_name": "starkware.starknet.common.syscalls.CallContract", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse", + "offset": 5 + } + }, + "size": 7, + "type": "struct" + }, + "starkware.starknet.common.syscalls.CallContractRequest": { + "full_name": "starkware.starknet.common.syscalls.CallContractRequest", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 4 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 3 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 1 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.CallContractResponse": { + "full_name": "starkware.starknet.common.syscalls.CallContractResponse", + "members": { + "retdata": { + "cairo_type": "felt*", + "offset": 1 + }, + "retdata_size": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.DELEGATE_CALL_SELECTOR": { + "type": "const", + "value": 21167594061783206823196716140 + }, + "starkware.starknet.common.syscalls.DELEGATE_L1_HANDLER_SELECTOR": { + "type": "const", + "value": 23274015802972845247556842986379118667122 + }, + "starkware.starknet.common.syscalls.DEPLOY_SELECTOR": { + "type": "const", + "value": 75202468540281 + }, + "starkware.starknet.common.syscalls.Deploy": { + "full_name": "starkware.starknet.common.syscalls.Deploy", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.DeployRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.DeployResponse", + "offset": 6 + } + }, + "size": 9, + "type": "struct" + }, + "starkware.starknet.common.syscalls.DeployRequest": { + "full_name": "starkware.starknet.common.syscalls.DeployRequest", + "members": { + "class_hash": { + "cairo_type": "felt", + "offset": 1 + }, + "constructor_calldata": { + "cairo_type": "felt*", + "offset": 4 + }, + "constructor_calldata_size": { + "cairo_type": "felt", + "offset": 3 + }, + "contract_address_salt": { + "cairo_type": "felt", + "offset": 2 + }, + "deploy_from_zero": { + "cairo_type": "felt", + "offset": 5 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 6, + "type": "struct" + }, + "starkware.starknet.common.syscalls.DeployResponse": { + "full_name": "starkware.starknet.common.syscalls.DeployResponse", + "members": { + "constructor_retdata": { + "cairo_type": "felt*", + "offset": 2 + }, + "constructor_retdata_size": { + "cairo_type": "felt", + "offset": 1 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.DictAccess": { + "destination": "starkware.cairo.common.dict_access.DictAccess", + "type": "alias" + }, + "starkware.starknet.common.syscalls.EMIT_EVENT_SELECTOR": { + "type": "const", + "value": 1280709301550335749748 + }, + "starkware.starknet.common.syscalls.EmitEvent": { + "full_name": "starkware.starknet.common.syscalls.EmitEvent", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 4 + }, + "data_len": { + "cairo_type": "felt", + "offset": 3 + }, + "keys": { + "cairo_type": "felt*", + "offset": 2 + }, + "keys_len": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GET_BLOCK_NUMBER_SELECTOR": { + "type": "const", + "value": 1448089106835523001438702345020786 + }, + "starkware.starknet.common.syscalls.GET_BLOCK_TIMESTAMP_SELECTOR": { + "type": "const", + "value": 24294903732626645868215235778792757751152 + }, + "starkware.starknet.common.syscalls.GET_CALLER_ADDRESS_SELECTOR": { + "type": "const", + "value": 94901967781393078444254803017658102643 + }, + "starkware.starknet.common.syscalls.GET_CONTRACT_ADDRESS_SELECTOR": { + "type": "const", + "value": 6219495360805491471215297013070624192820083 + }, + "starkware.starknet.common.syscalls.GET_SEQUENCER_ADDRESS_SELECTOR": { + "type": "const", + "value": 1592190833581991703053805829594610833820054387 + }, + "starkware.starknet.common.syscalls.GET_TX_INFO_SELECTOR": { + "type": "const", + "value": 1317029390204112103023 + }, + "starkware.starknet.common.syscalls.GET_TX_SIGNATURE_SELECTOR": { + "type": "const", + "value": 1448089128652340074717162277007973 + }, + "starkware.starknet.common.syscalls.GetBlockNumber": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumber", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockNumberRequest": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumberRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockNumberResponse": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumberResponse", + "members": { + "block_number": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestamp": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestamp", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestampRequest": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestampRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestampResponse": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestampResponse", + "members": { + "block_timestamp": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddress": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddressResponse", + "members": { + "caller_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddress": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddressResponse", + "members": { + "contract_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddress": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddressResponse", + "members": { + "sequencer_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfo": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfo", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfoRequest": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfoRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfoResponse": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfoResponse", + "members": { + "tx_info": { + "cairo_type": "starkware.starknet.common.syscalls.TxInfo*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignature": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignature", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureResponse", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignatureRequest": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignatureRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignatureResponse": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignatureResponse", + "members": { + "signature": { + "cairo_type": "felt*", + "offset": 1 + }, + "signature_len": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.LIBRARY_CALL_L1_HANDLER_SELECTOR": { + "type": "const", + "value": 436233452754198157705746250789557519228244616562 + }, + "starkware.starknet.common.syscalls.LIBRARY_CALL_SELECTOR": { + "type": "const", + "value": 92376026794327011772951660 + }, + "starkware.starknet.common.syscalls.LibraryCall": { + "full_name": "starkware.starknet.common.syscalls.LibraryCall", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.LibraryCallRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse", + "offset": 5 + } + }, + "size": 7, + "type": "struct" + }, + "starkware.starknet.common.syscalls.LibraryCallRequest": { + "full_name": "starkware.starknet.common.syscalls.LibraryCallRequest", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 4 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 3 + }, + "class_hash": { + "cairo_type": "felt", + "offset": 1 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.SEND_MESSAGE_TO_L1_SELECTOR": { + "type": "const", + "value": 433017908768303439907196859243777073 + }, + "starkware.starknet.common.syscalls.STORAGE_READ_SELECTOR": { + "type": "const", + "value": 100890693370601760042082660 + }, + "starkware.starknet.common.syscalls.STORAGE_WRITE_SELECTOR": { + "type": "const", + "value": 25828017502874050592466629733 + }, + "starkware.starknet.common.syscalls.SendMessageToL1SysCall": { + "full_name": "starkware.starknet.common.syscalls.SendMessageToL1SysCall", + "members": { + "payload_ptr": { + "cairo_type": "felt*", + "offset": 3 + }, + "payload_size": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + }, + "to_address": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageRead": { + "full_name": "starkware.starknet.common.syscalls.StorageRead", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.StorageReadRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.StorageReadResponse", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageReadRequest": { + "full_name": "starkware.starknet.common.syscalls.StorageReadRequest", + "members": { + "address": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageReadResponse": { + "full_name": "starkware.starknet.common.syscalls.StorageReadResponse", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageWrite": { + "full_name": "starkware.starknet.common.syscalls.StorageWrite", + "members": { + "address": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.TxInfo": { + "full_name": "starkware.starknet.common.syscalls.TxInfo", + "members": { + "account_contract_address": { + "cairo_type": "felt", + "offset": 1 + }, + "chain_id": { + "cairo_type": "felt", + "offset": 6 + }, + "max_fee": { + "cairo_type": "felt", + "offset": 2 + }, + "nonce": { + "cairo_type": "felt", + "offset": 7 + }, + "signature": { + "cairo_type": "felt*", + "offset": 4 + }, + "signature_len": { + "cairo_type": "felt", + "offset": 3 + }, + "transaction_hash": { + "cairo_type": "felt", + "offset": 5 + }, + "version": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 8, + "type": "struct" + }, + "starkware.starknet.common.syscalls.call_contract": { + "decorators": [], + "pc": 18, + "type": "function" + }, + "starkware.starknet.common.syscalls.call_contract.Args": { + "full_name": "starkware.starknet.common.syscalls.call_contract.Args", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 2 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 0 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.call_contract.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.call_contract.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.call_contract.Return": { + "cairo_type": "(retdata_size: felt, retdata: felt*)", + "type": "type_definition" + }, + "starkware.starknet.common.syscalls.call_contract.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.call_contract.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.call_contract.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 18, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 1 + }, + "pc": 25, + "value": "cast([fp + (-7)] + 7, felt*)" + } + ], + "type": "reference" + } + }, + "main_scope": "__main__", + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "reference_manager": { + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 3 + }, + "pc": 10, + "value": "[cast(ap, felt*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 18, + "value": "[cast(fp + (-7), felt**)]" + } + ] + } + } +} diff --git a/src/main.rs b/src/main.rs index 86fa294..a32b63f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,8 +5,11 @@ mod setup_scripts; pub mod tests; pub mod utils; +use std::str::FromStr; + use clap::Parser; use dotenv::dotenv; +use ethers::abi::Address; use inline_colorization::*; use starknet_accounts::Account; use starknet_ff::FieldElement; @@ -52,6 +55,15 @@ pub struct CliArgs { fee_token_address: String, #[clap(long, env, default_value_t = 80)] cross_chain_wait_time: u64, + // Default test address value taken from anvil + #[clap(long, env, default_value = "0x70997970C51812dc3A010C7d01b50e0d17dc79C8")] + l1_multisig_address: String, + // Default test address value taken from starknet-devnet + #[clap(long, env, default_value = "0x556455b8ac8bc00e0ad061d7df5458fa3c372304877663fa21d492a8d5e9435")] + l2_multisig_address: String, + // Given as zero address by default + #[clap(long, env, default_value = "0x0000000000000000000000000000000000000000")] + verifier_address: String, } #[tokio::main] @@ -87,7 +99,28 @@ pub async fn bootstrap(config: &CliArgs) -> DeployBridgeOutput { log::info!("đŸ“Ļ Core address : {:?}", core_contract_client.address()); save_to_json("l1_core_contract_address", &JsonValueType::EthAddress(core_contract_client.address())).unwrap(); let (program_hash, config_hash) = get_bridge_init_configs(config); - core_contract_client.initialize_core_contract(0u64.into(), 0u64.into(), program_hash, config_hash).await; + core_contract_client + .add_implementation_core_contract( + 0u64.into(), + 0u64.into(), + program_hash, + config_hash, + core_contract_client.implementation_address(), + Address::from_str(&config.verifier_address.clone()).unwrap(), + false, + ) + .await; + core_contract_client + .upgrade_to_core_contract( + 0u64.into(), + 0u64.into(), + program_hash, + config_hash, + core_contract_client.implementation_address(), + Address::from_str(&config.verifier_address.clone()).unwrap(), + false, + ) + .await; log::info!("✅ Core setup init for L1 successful."); log::info!("âŗ L2 State and Initialisation Started"); let account = account_init(&clients, config).await; @@ -115,7 +148,7 @@ pub async fn bootstrap(config: &CliArgs) -> DeployBridgeOutput { log::info!("*ī¸âƒŖ Argent setup completed. [Argent account class hash : {:?}]", argent_setup_outputs.argent_class_hash); log::info!("✅ Argent Account declaration complete."); log::info!("âŗ Starting Braavos Account declaration"); - let braavos = BraavosSetup::new(account.clone()); + let braavos = BraavosSetup::new(account.clone(), config); let braavos_setup_outputs = braavos.setup().await; log::info!( "*ī¸âƒŖ Braavos setup completed. [Braavos account class hash : {:?}]", diff --git a/src/setup_scripts/argent.rs b/src/setup_scripts/argent.rs index 7b2db7a..09f01c0 100644 --- a/src/setup_scripts/argent.rs +++ b/src/setup_scripts/argent.rs @@ -27,7 +27,7 @@ impl<'a> ArgentSetup<'a> { self.account.clone(), )) .await; - log::debug!("Argent Hash Declared"); + log::debug!("đŸ“Ŗ Argent Hash Declared"); save_to_json("argent_class_hash", &JsonValueType::StringType(argent_class_hash.to_string())).unwrap(); sleep(Duration::from_secs(10)).await; diff --git a/src/setup_scripts/braavos.rs b/src/setup_scripts/braavos.rs index b479fe9..750139a 100644 --- a/src/setup_scripts/braavos.rs +++ b/src/setup_scripts/braavos.rs @@ -1,14 +1,21 @@ use std::time::Duration; +use starknet_accounts::{Account, ConnectedAccount}; use starknet_ff::FieldElement; use tokio::time::sleep; use crate::contract_clients::utils::{declare_contract, DeclarationInput, RpcAccount}; -use crate::utils::constants::{BRAAVOS_ACCOUNT_CASM_PATH, BRAAVOS_ACCOUNT_SIERRA_PATH}; -use crate::utils::{save_to_json, JsonValueType}; +use crate::helpers::account_actions::{get_contract_address_from_deploy_tx, AccountActions}; +use crate::utils::constants::{ + BRAAVOS_ACCOUNT_CASM_PATH, BRAAVOS_ACCOUNT_SIERRA_PATH, BRAAVOS_AGGREGATOR_PATH, BRAAVOS_BASE_ACCOUNT_CASM_PATH, + BRAAVOS_BASE_ACCOUNT_SIERRA_PATH, +}; +use crate::utils::{save_to_json, wait_for_transaction, JsonValueType}; +use crate::CliArgs; pub struct BraavosSetup<'a> { account: RpcAccount<'a>, + arg_config: &'a CliArgs, } pub struct BraavosSetupOutput { @@ -16,8 +23,8 @@ pub struct BraavosSetupOutput { } impl<'a> BraavosSetup<'a> { - pub fn new(account: RpcAccount<'a>) -> Self { - Self { account } + pub fn new(account: RpcAccount<'a>, arg_config: &'a CliArgs) -> Self { + Self { account, arg_config } } pub async fn setup(&self) -> BraavosSetupOutput { @@ -27,10 +34,55 @@ impl<'a> BraavosSetup<'a> { self.account.clone(), )) .await; - log::debug!("Braavos Hash Declared."); + log::debug!("đŸ“Ŗ Braavos Account class hash declared."); save_to_json("braavos_class_hash", &JsonValueType::StringType(braavos_class_hash.to_string())).unwrap(); sleep(Duration::from_secs(10)).await; + let braavos_base_account_class_hash = declare_contract(DeclarationInput::DeclarationInputs( + String::from(BRAAVOS_BASE_ACCOUNT_SIERRA_PATH), + String::from(BRAAVOS_BASE_ACCOUNT_CASM_PATH), + self.account.clone(), + )) + .await; + log::debug!("đŸ“Ŗ Braavos Base Account class hash declared."); + save_to_json( + "braavos_base_account_class_hash", + &JsonValueType::StringType(braavos_base_account_class_hash.to_string()), + ) + .unwrap(); + sleep(Duration::from_secs(10)).await; + + let braavos_aggregator_class_hash = declare_contract(DeclarationInput::LegacyDeclarationInputs( + String::from(BRAAVOS_AGGREGATOR_PATH), + self.arg_config.rollup_seq_url.clone(), + )) + .await; + log::debug!("đŸ“Ŗ Braavos Aggregator class hash declared."); + save_to_json( + "braavos_aggregator_class_hash", + &JsonValueType::StringType(braavos_aggregator_class_hash.to_string()), + ) + .unwrap(); + sleep(Duration::from_secs(10)).await; + + let deploy_tx = self + .account + .invoke_contract( + self.account.address(), + "deploy_contract", + vec![braavos_aggregator_class_hash, FieldElement::ZERO, FieldElement::ZERO, FieldElement::ZERO], + None, + ) + .send() + .await + .expect("Error deploying the contract proxy."); + wait_for_transaction(self.account.provider(), deploy_tx.transaction_hash, "deploy_eth_token_on_l2 : deploy") + .await + .unwrap(); + let contract_address = get_contract_address_from_deploy_tx(self.account.provider(), &deploy_tx).await.unwrap(); + + log::info!("*ī¸âƒŖ Braavos Aggregator deployed. [Braavos Aggregator : {:?}]", contract_address); + BraavosSetupOutput { braavos_class_hash } } } diff --git a/src/setup_scripts/erc20_bridge.rs b/src/setup_scripts/erc20_bridge.rs index 9f894fc..5441511 100644 --- a/src/setup_scripts/erc20_bridge.rs +++ b/src/setup_scripts/erc20_bridge.rs @@ -51,7 +51,7 @@ impl<'a> Erc20Bridge<'a> { self.account.clone(), )) .await; - log::debug!("ERC20 Class Hash declared : {:?}", erc20_cairo_one_class_hash); + log::debug!("🌗 ERC20 Class Hash declared : {:?}", erc20_cairo_one_class_hash); save_to_json("erc20_cairo_one_class_hash", &JsonValueType::StringType(erc20_cairo_one_class_hash.to_string())) .unwrap(); sleep(Duration::from_secs(10)).await; @@ -88,7 +88,8 @@ impl<'a> Erc20Bridge<'a> { ) .await; - token_bridge.initialize(self.core_contract.address()).await; + token_bridge.add_implementation_token_bridge(self.core_contract.address()).await; + token_bridge.upgrade_to_token_bridge(self.core_contract.address()).await; token_bridge .setup_l2_bridge( self.clients.provider_l2(), diff --git a/src/setup_scripts/eth_bridge.rs b/src/setup_scripts/eth_bridge.rs index 1bcf75a..8a4069b 100644 --- a/src/setup_scripts/eth_bridge.rs +++ b/src/setup_scripts/eth_bridge.rs @@ -54,7 +54,7 @@ impl<'a> EthBridge<'a> { self.arg_config.rollup_seq_url.clone(), )) .await; - log::debug!("Legacy proxy class hash declared."); + log::debug!("🎡 Legacy proxy class hash declared."); save_to_json("legacy_proxy_class_hash", &JsonValueType::StringType(legacy_proxy_class_hash.to_string())) .unwrap(); sleep(Duration::from_secs(10)).await; @@ -64,7 +64,7 @@ impl<'a> EthBridge<'a> { self.arg_config.rollup_seq_url.clone(), )) .await; - log::debug!("Starkgate proxy class hash declared."); + log::debug!("🎡 Starkgate proxy class hash declared."); save_to_json("starkgate_proxy_class_hash", &JsonValueType::StringType(starkgate_proxy_class_hash.to_string())) .unwrap(); sleep(Duration::from_secs(10)).await; @@ -74,7 +74,7 @@ impl<'a> EthBridge<'a> { self.arg_config.rollup_seq_url.clone(), )) .await; - log::debug!("ERC20 legacy class hash declared."); + log::debug!("🎡 ERC20 legacy class hash declared."); save_to_json("erc20_legacy_class_hash", &JsonValueType::StringType(erc20_legacy_class_hash.to_string())) .unwrap(); sleep(Duration::from_secs(10)).await; @@ -84,7 +84,7 @@ impl<'a> EthBridge<'a> { self.arg_config.rollup_seq_url.clone(), )) .await; - log::debug!("Legacy ETH Bridge class hash declared"); + log::debug!("🎡 Legacy ETH Bridge class hash declared"); save_to_json( "legacy_eth_bridge_class_hash", &JsonValueType::StringType(legacy_eth_bridge_class_hash.to_string()), @@ -164,7 +164,8 @@ impl<'a> EthBridge<'a> { log::info!("✴ī¸ L2 ETH token deployment successful."); // save_to_json("l2_eth_address", &JsonValueType::StringType(eth_address.to_string()))?; - eth_bridge.initialize(self.core_contract.address()).await; + eth_bridge.add_implementation_eth_bridge(self.core_contract.address()).await; + eth_bridge.upgrade_to_eth_bridge(self.core_contract.address()).await; log::info!("✴ī¸ ETH Bridge initialization on L1 completed"); sleep(Duration::from_secs(self.arg_config.l1_wait_time.parse().unwrap())).await; diff --git a/src/setup_scripts/udc.rs b/src/setup_scripts/udc.rs index 874e105..fefa296 100644 --- a/src/setup_scripts/udc.rs +++ b/src/setup_scripts/udc.rs @@ -32,7 +32,7 @@ impl<'a> UdcSetup<'a> { self.arg_config.rollup_seq_url.clone(), )) .await; - log::debug!("UDC Class Hash Declared."); + log::debug!("đŸ“Ŗ UDC Class Hash Declared."); save_to_json("udc_class_hash", &JsonValueType::StringType(udc_class_hash.to_string())).unwrap(); sleep(Duration::from_secs(10)).await; @@ -56,7 +56,7 @@ impl<'a> UdcSetup<'a> { .unwrap(); let udc_address = get_contract_address_from_deploy_tx(self.account.provider(), &txn).await.unwrap(); save_to_json("udc_address", &JsonValueType::StringType(udc_address.to_string())).unwrap(); - log::debug!("udc_address : {:?}", udc_address); + log::debug!("đŸ“Ŗ udc_address : {:?}", udc_address); UdcSetupOutput { udc_class_hash, udc_address } } diff --git a/src/tests/constants.rs b/src/tests/constants.rs index 67740d6..797df2e 100644 --- a/src/tests/constants.rs +++ b/src/tests/constants.rs @@ -10,3 +10,6 @@ pub const SN_OS_PROGRAM_HASH: &str = "0x41fc2a467ef8649580631912517edcab7674173f pub const SN_OS_CONFIG_HASH_VERSION: &str = "StarknetOsConfig1"; pub const APP_CHAIN_ID: &str = "MADARA"; pub const L2_DEPLOYER_ADDRESS: &str = "0x4fe5eea46caa0a1f344fafce82b39d66b552f00d3cd12e89073ef4b4ab37860"; +pub const L1_MULTISIG_ADDRESS: &str = "0x70997970C51812dc3A010C7d01b50e0d17dc79C8"; +pub const L2_MULTISIG_ADDRESS: &str = "0x556455b8ac8bc00e0ad061d7df5458fa3c372304877663fa21d492a8d5e9435"; +pub const VERIFIER_ADDRESS: &str = "0x0000000000000000000000000000000000000000"; diff --git a/src/tests/mod.rs b/src/tests/mod.rs index 07ab173..3c6d130 100644 --- a/src/tests/mod.rs +++ b/src/tests/mod.rs @@ -9,6 +9,7 @@ use constants::{ use rstest::rstest; use crate::contract_clients::config::Config; +use crate::tests::constants::{L1_MULTISIG_ADDRESS, L2_MULTISIG_ADDRESS, VERIFIER_ADDRESS}; use crate::tests::erc20_bridge::erc20_bridge_test_helper; use crate::tests::eth_bridge::eth_bridge_test_helper; use crate::{bootstrap, CliArgs}; @@ -78,5 +79,8 @@ fn get_config() -> CliArgs { app_chain_id: String::from(APP_CHAIN_ID), fee_token_address: String::from(FEE_TOKEN_ADDRESS), cross_chain_wait_time: 120, + l1_multisig_address: String::from(L1_MULTISIG_ADDRESS), + l2_multisig_address: String::from(L2_MULTISIG_ADDRESS), + verifier_address: String::from(VERIFIER_ADDRESS), } } diff --git a/src/utils/constants.rs b/src/utils/constants.rs index 5737770..9fc3965 100644 --- a/src/utils/constants.rs +++ b/src/utils/constants.rs @@ -15,4 +15,7 @@ pub const ARGENT_ACCOUNT_SIERRA_PATH: &str = "src/contracts/ArgentAccount.sierra pub const ARGENT_ACCOUNT_CASM_PATH: &str = "src/contracts/ArgentAccount.casm.json"; pub const BRAAVOS_ACCOUNT_SIERRA_PATH: &str = "src/contracts/BraavosAccount.sierra.json"; pub const BRAAVOS_ACCOUNT_CASM_PATH: &str = "src/contracts/BraavosAccount.casm.json"; +pub const BRAAVOS_BASE_ACCOUNT_SIERRA_PATH: &str = "src/contracts/BraavosBaseAccount.sierra.json"; +pub const BRAAVOS_BASE_ACCOUNT_CASM_PATH: &str = "src/contracts/BraavosBaseAccount.casm.json"; +pub const BRAAVOS_AGGREGATOR_PATH: &str = "src/contracts/BraavosCallAggregator.json"; pub const ERC20_L2_CLASS_HASH: &str = "0x5ffbcfeb50d200a0677c48a129a11245a3fc519d1d98d76882d1c9a1b19c6ed";