gitextract__f1r3mgr/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yaml │ │ └── feature_request.yaml │ ├── actions/ │ │ ├── compile-contracts/ │ │ │ └── action.yml │ │ └── dispatch-compatibility-tests/ │ │ └── action.yml │ ├── codecov.yml │ ├── dependabot.yml │ ├── pull_request_template.md │ └── workflows/ │ ├── checks.yml │ ├── compatibility-tests-dispatcher.yml │ ├── compatibility-tests.yml │ └── package.yml ├── .gitignore ├── .pylintrc ├── .python-version ├── .readthedocs.yml ├── .run/ │ ├── All tests.run.xml │ ├── E2E pytest.run.xml │ └── starkware-devnet.run.xml ├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── circular.py ├── docs/ │ ├── Makefile │ ├── _ext/ │ │ ├── autoclass_with_examples.py │ │ ├── codesnippet.py │ │ └── test_autoclass_with_examples.py │ ├── _static/ │ │ └── custom.css │ ├── _templates/ │ │ └── page.html │ ├── account_creation.rst │ ├── api/ │ │ ├── abi.rst │ │ ├── account.rst │ │ ├── cairo.rst │ │ ├── client.rst │ │ ├── client_errors.rst │ │ ├── client_models.rst │ │ ├── contract.rst │ │ ├── contract_utils.rst │ │ ├── data_types.rst │ │ ├── devnet_client.rst │ │ ├── executable_models.rst │ │ ├── full_node_client.rst │ │ ├── hash.rst │ │ ├── models.rst │ │ ├── proxy_resolvers.rst │ │ ├── serializers.rst │ │ ├── signer.rst │ │ ├── tip.rst │ │ ├── transaction_errors.rst │ │ ├── typed_data.rst │ │ ├── udc_deployer.rst │ │ └── websocket_client.rst │ ├── api.rst │ ├── conf.py │ ├── development.rst │ ├── devnet_utils/ │ │ └── mocking_interaction_with_l1.rst │ ├── devnet_utils.rst │ ├── guide/ │ │ ├── account_and_client.rst │ │ ├── deploying_contracts.rst │ │ ├── generating_key_pair.rst │ │ ├── resolving_proxy_contracts.rst │ │ ├── serialization.rst │ │ ├── signing.rst │ │ ├── using_existing_contracts.rst │ │ └── websockets.rst │ ├── guide.rst │ ├── index.rst │ ├── installation.rst │ ├── make.bat │ ├── migration_guide.rst │ └── quickstart.rst ├── pre-commit ├── pre-push ├── pylint_todo_checker.py ├── pyproject.toml └── starknet_py/ ├── __init__.py ├── abi/ │ ├── v0/ │ │ ├── __init__.py │ │ ├── model.py │ │ ├── parser.py │ │ ├── schemas.py │ │ └── shape.py │ ├── v1/ │ │ ├── __init__.py │ │ ├── core_structures.json │ │ ├── model.py │ │ ├── parser.py │ │ ├── parser_transformer.py │ │ ├── schemas.py │ │ └── shape.py │ └── v2/ │ ├── __init__.py │ ├── model.py │ ├── parser.py │ ├── parser_transformer.py │ ├── schemas.py │ └── shape.py ├── cairo/ │ ├── __init__.py │ ├── data_types.py │ ├── deprecated_parse/ │ │ ├── __init__.py │ │ ├── cairo_types.py │ │ ├── parser.py │ │ └── parser_transformer.py │ ├── felt.py │ ├── type_parser.py │ ├── v1/ │ │ ├── __init__.py │ │ └── type_parser.py │ └── v2/ │ ├── __init__.py │ └── type_parser.py ├── common.py ├── conftest.py ├── constants.py ├── contract.py ├── contract_utils.py ├── devnet_utils/ │ ├── __init__.py │ ├── devnet_client.py │ ├── devnet_client_models.py │ └── devnet_rpc_schema.py ├── hash/ │ ├── __init__.py │ ├── address.py │ ├── address_test.py │ ├── blake2s.py │ ├── casm_class_hash.py │ ├── class_hash.py │ ├── compiled_class_hash_objects.py │ ├── hash_method.py │ ├── outside_execution.py │ ├── selector.py │ ├── sierra_class_hash.py │ ├── storage.py │ ├── transaction.py │ └── utils.py ├── net/ │ ├── __init__.py │ ├── account/ │ │ ├── __init__.py │ │ ├── account.py │ │ ├── account_deployment_result.py │ │ └── base_account.py │ ├── client.py │ ├── client_errors.py │ ├── client_models.py │ ├── client_utils.py │ ├── executable_models.py │ ├── full_node_client.py │ ├── http_client.py │ ├── models/ │ │ ├── __init__.py │ │ ├── address.py │ │ ├── chains.py │ │ ├── transaction.py │ │ └── typed_data.py │ ├── networks.py │ ├── schemas/ │ │ ├── __init__.py │ │ ├── broadcasted_txn.py │ │ ├── common.py │ │ ├── contracts_storage_keys.py │ │ ├── rpc/ │ │ │ ├── block.py │ │ │ ├── contract.py │ │ │ ├── event.py │ │ │ ├── executables_api.py │ │ │ ├── general.py │ │ │ ├── storage_proof.py │ │ │ ├── trace_api.py │ │ │ ├── transactions.py │ │ │ └── websockets.py │ │ └── utils.py │ ├── signer/ │ │ ├── __init__.py │ │ ├── base_signer.py │ │ ├── eth_signer.py │ │ ├── key_pair.py │ │ ├── ledger_signer.py │ │ └── stark_curve_signer.py │ ├── tip/ │ │ └── __init__.py │ ├── udc_deployer/ │ │ ├── __init__.py │ │ └── deployer.py │ └── websockets/ │ ├── __init__.py │ ├── errors.py │ ├── models.py │ └── websocket_client.py ├── proxy/ │ ├── __init__.py │ ├── contract_abi_resolver.py │ └── proxy_check.py ├── py.typed ├── serialization/ │ ├── __init__.py │ ├── _calldata_reader.py │ ├── _context.py │ ├── data_serializers/ │ │ ├── __init__.py │ │ ├── _common.py │ │ ├── array_serializer.py │ │ ├── bool_serializer.py │ │ ├── byte_array_serializer.py │ │ ├── cairo_data_serializer.py │ │ ├── enum_serializer.py │ │ ├── felt_serializer.py │ │ ├── int_serializer.py │ │ ├── named_tuple_serializer.py │ │ ├── non_zero_serializer.py │ │ ├── option_serializer.py │ │ ├── output_serializer.py │ │ ├── payload_serializer.py │ │ ├── struct_serializer.py │ │ ├── tuple_serializer.py │ │ ├── uint256_serializer.py │ │ ├── uint_serializer.py │ │ └── unit_serializer.py │ ├── errors.py │ ├── factory.py │ ├── function_serialization_adapter.py │ └── tuple_dataclass.py ├── tests/ │ ├── __init__.py │ ├── e2e/ │ │ ├── __init__.py │ │ ├── account/ │ │ │ ├── __init__.py │ │ │ ├── account_test.py │ │ │ └── outside_execution_test.py │ │ ├── block_test.py │ │ ├── cairo1v2_test.py │ │ ├── client/ │ │ │ ├── __init__.py │ │ │ ├── client_test.py │ │ │ ├── fixtures/ │ │ │ │ ├── __init__.py │ │ │ │ ├── prepare_net_for_gateway_test.py │ │ │ │ ├── prepare_network.py │ │ │ │ └── transactions.py │ │ │ ├── full_node_test.py │ │ │ └── websocket_client_test.py │ │ ├── conftest.py │ │ ├── contract_interaction/ │ │ │ ├── __init__.py │ │ │ ├── declare_test.py │ │ │ ├── deploy_test.py │ │ │ ├── interaction_test.py │ │ │ └── v1_interaction_test.py │ │ ├── declare/ │ │ │ ├── __init__.py │ │ │ └── declare_test.py │ │ ├── deploy/ │ │ │ ├── __init__.py │ │ │ └── deployer_test.py │ │ ├── deploy_account/ │ │ │ ├── __init__.py │ │ │ └── deploy_account_test.py │ │ ├── devnet_client/ │ │ │ ├── __init__.py │ │ │ ├── account_impersonate_test.py │ │ │ ├── fixtures/ │ │ │ │ ├── __init__.py │ │ │ │ ├── accounts.py │ │ │ │ ├── clients.py │ │ │ │ └── contracts.py │ │ │ ├── general_test.py │ │ │ └── time_test.py │ │ ├── docs/ │ │ │ ├── __init__.py │ │ │ ├── account_creation/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_deploy_prefunded_account.py │ │ │ ├── code_examples/ │ │ │ │ ├── __init__.py │ │ │ │ ├── test_account.py │ │ │ │ ├── test_contract.py │ │ │ │ ├── test_contract_function.py │ │ │ │ ├── test_deployer.py │ │ │ │ ├── test_devnet_client.py │ │ │ │ ├── test_full_node_client.py │ │ │ │ ├── test_prepared_function_call.py │ │ │ │ ├── test_prepared_function_invoke_v3.py │ │ │ │ └── test_websocket_client.py │ │ │ ├── devnet_utils/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_l1_integration.py │ │ │ ├── guide/ │ │ │ │ ├── __init__.py │ │ │ │ ├── test_account_sign_outside_transaction.py │ │ │ │ ├── test_account_sign_without_execute.py │ │ │ │ ├── test_cairo1_contract.py │ │ │ │ ├── test_contract_account_compatibility.py │ │ │ │ ├── test_contract_client_compatibility.py │ │ │ │ ├── test_custom_nonce.py │ │ │ │ ├── test_custom_signer.py │ │ │ │ ├── test_declaring_contracts.py │ │ │ │ ├── test_deploying_in_multicall.py │ │ │ │ ├── test_deploying_with_udc.py │ │ │ │ ├── test_executing_transactions.py │ │ │ │ ├── test_full_node_client.py │ │ │ │ ├── test_handling_client_errors.py │ │ │ │ ├── test_key_pair.py │ │ │ │ ├── test_multicall.py │ │ │ │ ├── test_resolving_proxies.py │ │ │ │ ├── test_serializing.py │ │ │ │ ├── test_sign_for_fee_estimate.py │ │ │ │ ├── test_sign_offchain_message.py │ │ │ │ ├── test_simple_declare_and_deploy.py │ │ │ │ ├── test_simple_declare_and_deploy_cairo1.py │ │ │ │ ├── test_simple_deploy.py │ │ │ │ ├── test_simple_deploy_cairo1.py │ │ │ │ └── test_using_existing_contracts.py │ │ │ ├── migration_guide/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_account_comparison.py │ │ │ └── quickstart/ │ │ │ ├── __init__.py │ │ │ ├── test_creating_account.py │ │ │ ├── test_synchronous_api.py │ │ │ ├── test_synchronous_full_node_client.py │ │ │ ├── test_using_account.py │ │ │ ├── test_using_contract.py │ │ │ └── test_using_full_node_client.py │ │ ├── fixtures/ │ │ │ ├── __init__.py │ │ │ ├── abi_structures.py │ │ │ ├── abi_v1_structures.py │ │ │ ├── abi_v2_structures.py │ │ │ ├── accounts.py │ │ │ ├── clients.py │ │ │ ├── constants.py │ │ │ ├── contracts.py │ │ │ ├── contracts_v1.py │ │ │ ├── devnet.py │ │ │ ├── devnet_ws.py │ │ │ ├── environment_check.py │ │ │ ├── event_loop.py │ │ │ └── misc.py │ │ ├── mock/ │ │ │ ├── cairo_0_contracts_abi/ │ │ │ │ ├── balance_struct_event_abi.json │ │ │ │ └── complex_contract_abi.json │ │ │ ├── compile_contracts.sh │ │ │ ├── contracts_v1/ │ │ │ │ ├── .tool-versions │ │ │ │ ├── Scarb.toml │ │ │ │ └── src/ │ │ │ │ ├── account.cairo │ │ │ │ ├── balance.cairo │ │ │ │ ├── hello.cairo │ │ │ │ ├── hello_starknet.cairo │ │ │ │ ├── lib.cairo │ │ │ │ ├── map.cairo │ │ │ │ ├── minimal_contract.cairo │ │ │ │ ├── test_contract.cairo │ │ │ │ ├── test_contract_declare.cairo │ │ │ │ ├── test_enum.cairo │ │ │ │ └── test_option.cairo │ │ │ ├── contracts_v2/ │ │ │ │ ├── .tool-versions │ │ │ │ ├── Scarb.toml │ │ │ │ └── src/ │ │ │ │ ├── abi_types.cairo │ │ │ │ ├── account.cairo │ │ │ │ ├── account_copy_1.cairo │ │ │ │ ├── balance.cairo │ │ │ │ ├── constructor_with_arguments.cairo │ │ │ │ ├── erc20.cairo │ │ │ │ ├── hello2.cairo │ │ │ │ ├── hello_starknet.cairo │ │ │ │ ├── l1_l2.cairo │ │ │ │ ├── lib.cairo │ │ │ │ ├── map.cairo │ │ │ │ ├── map_copy_1.cairo │ │ │ │ ├── map_copy_2.cairo │ │ │ │ ├── minimal_contract.cairo │ │ │ │ ├── new_syntax_test_contract.cairo │ │ │ │ ├── simple_contract.cairo │ │ │ │ ├── simple_storage_with_event.cairo │ │ │ │ ├── string.cairo │ │ │ │ ├── test_contract.cairo │ │ │ │ ├── test_contract2.cairo │ │ │ │ ├── test_contract3.cairo │ │ │ │ ├── test_contract4.cairo │ │ │ │ ├── test_enum.cairo │ │ │ │ ├── test_option.cairo │ │ │ │ └── token_bridge.cairo │ │ │ ├── precompiled_contracts/ │ │ │ │ ├── argent-0.4.0/ │ │ │ │ │ ├── ArgentAccount.casm │ │ │ │ │ └── ArgentAccount.json │ │ │ │ ├── minimal_contract_compiled_v2_1.casm │ │ │ │ ├── minimal_contract_compiled_v2_5_4.casm │ │ │ │ └── starknet_contract_v2_6.casm │ │ │ └── typed_data/ │ │ │ ├── typed_data_rev_0_example.json │ │ │ ├── typed_data_rev_0_felt_array_example.json │ │ │ ├── typed_data_rev_0_long_string_example.json │ │ │ ├── typed_data_rev_0_struct_array_example.json │ │ │ ├── typed_data_rev_0_struct_merkletree_example.json │ │ │ ├── typed_data_rev_1_basic_types_example.json │ │ │ ├── typed_data_rev_1_enum_example.json │ │ │ ├── typed_data_rev_1_example.json │ │ │ ├── typed_data_rev_1_felt_merkletree_example.json │ │ │ └── typed_data_rev_1_preset_types_example.json │ │ ├── test-variables.env.template │ │ ├── tests_on_networks/ │ │ │ ├── __init__.py │ │ │ ├── account_test.py │ │ │ ├── client_integration_test.py │ │ │ ├── client_test.py │ │ │ ├── fixtures.py │ │ │ └── trace_api_test.py │ │ ├── utils.py │ │ └── utils_functions_test.py │ ├── install_devnet.sh │ └── unit/ │ ├── __init__.py │ ├── abi/ │ │ ├── __init__.py │ │ ├── v0/ │ │ │ ├── __init__.py │ │ │ ├── parser_test.py │ │ │ └── schemas_test.py │ │ ├── v1/ │ │ │ ├── __init__.py │ │ │ ├── parser_test.py │ │ │ ├── parser_transformer_test.py │ │ │ └── schemas_test.py │ │ └── v2/ │ │ ├── __init__.py │ │ ├── parser_test.py │ │ ├── parser_transformer_test.py │ │ └── schemas_test.py │ ├── cairo/ │ │ ├── __init__.py │ │ ├── felt_test.py │ │ ├── type_parser_test.py │ │ ├── v1/ │ │ │ ├── __init__.py │ │ │ └── type_parser_test.py │ │ └── v2/ │ │ ├── __init__.py │ │ └── type_parser_test.py │ ├── common/ │ │ ├── __init__.py │ │ └── test_common.py │ ├── contract/ │ │ ├── __init__.py │ │ └── contract_test.py │ ├── hash/ │ │ ├── __init__.py │ │ ├── blake2s_test.py │ │ ├── casm_class_hash_test.py │ │ ├── selector_test.py │ │ ├── sierra_class_hash_test.py │ │ ├── storage_test.py │ │ ├── transaction_test.py │ │ └── utils_test.py │ ├── net/ │ │ ├── __init__.py │ │ ├── account/ │ │ │ ├── __init__.py │ │ │ └── account_test.py │ │ ├── client_test.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── address_test.py │ │ │ └── chains_test.py │ │ ├── schemas/ │ │ │ ├── __init__.py │ │ │ └── common_test.py │ │ └── tip/ │ │ ├── __init__.py │ │ └── tip_test.py │ ├── serialization/ │ │ ├── __init__.py │ │ ├── _calldata_reader_test.py │ │ ├── _context_test.py │ │ ├── data_serializers/ │ │ │ ├── __init__.py │ │ │ ├── array_serializer_test.py │ │ │ ├── bool_serializer_test.py │ │ │ ├── byte_array_serializer_test.py │ │ │ ├── enum_serializer_test.py │ │ │ ├── felt_serializer_test.py │ │ │ ├── int_serializer_test.py │ │ │ ├── named_tuple_serializer_test.py │ │ │ ├── non_zero_serializer.py │ │ │ ├── option_serializer_test.py │ │ │ ├── output_serializer_test.py │ │ │ ├── payload_serializer_test.py │ │ │ ├── struct_serializer_test.py │ │ │ ├── tuple_serializer_test.py │ │ │ ├── uint256_serializer_test.py │ │ │ ├── uint_serializer_test.py │ │ │ └── unit_serializer_test.py │ │ ├── factory_test.py │ │ ├── function_serialization_adapter_test.py │ │ ├── serialization_test.py │ │ └── tuple_dataclass_test.py │ ├── signer/ │ │ ├── __init__.py │ │ ├── allow_ledger_blind_signing.sh │ │ ├── speculos_automation.json │ │ ├── test_eth_signer.py │ │ ├── test_key_pair.py │ │ ├── test_ledger_signer.py │ │ └── test_stark_curve_signer.py │ └── utils/ │ ├── __init__.py │ ├── merkle_tree_test.py │ ├── sync/ │ │ ├── __init__.py │ │ └── sync_test.py │ └── typed_data_test.py ├── transaction_errors.py └── utils/ ├── __init__.py ├── constructor_args_translator.py ├── iterable.py ├── merkle_tree.py ├── schema.py ├── sync/ │ ├── __init__.py │ └── sync.py └── typed_data.py