This repository was archived by the owner on Jul 22, 2024. It is now read-only.
Commit 9154239
Make contract caches shared. (#940)
* Unify deprecated and casm contract caches.
* Fix formatting and clippy.
* Remove unused code.
* Unify contract classes in the state traits too.
* Fix typos. Make cache shared.
* Minor fixes.
* Fix testing state generation to make it work with shared caches.
* Fix formatting.
* Add cache diff.
* Add suggestion.
* Fix stuff.
* Implement cache trait. Add a null and a permanent cache. Fix everything that breaks using the permanent cache (should mimic the previous behaviour).
* Add documentation.
* Convert the cache trait into immutable (aka. move the lock into them).
* Remove external cache lock (no longer needed).
* Fix stuff.
* Add LRU cache example.
* Run `cargo fmt`.
* Fix LRU example.
* Fix the other example.
* Fix after merge.
* Add private cache drain method.
* Temporarily disable `max_fee` checks.
* Add comment on `RefCell::get_mut()`.
* Remove `extend` from trait. Remove unused code.
* Fix duplicated `CachedState` issue.
* Add missing comments.
* Update `README.md`.
* Fix after merge.
* Remove obsolete comment.
* Fix test after merge.
* Fix borrows.
* Fix after merge.
* Fix erc20 test.
* Remove unused feature.
* Update `coverage-helper` to support `#[coverage(off)]`.
* Add `coverage` attribute feature on testing.
* Update `README.md` and example.
* Fix `README.md`.
* Improve `README.md`.
* Remove references to `StarknetState` in `README.md`.
* Remove debug print.
* Remove commented block of code.
* Fix after merging.
* Fix formatting.
* Update Pr: Make contract caches shared (#1071)
* Remove `serde_json_pythonic`. (#1047)
* Remove `serde_json_pythonic`.
* Fix JSON formatter on `deprecated_contract_class.rs`.
* Fix hash JSON formatter (non-ascii support).
* Add unwrap reasoning comment.
* Add debug logging. (#1018)
* Add `tracing` and update dependencies.
* Configure the example to use tracing logging (and make it work again).
* Add tracing logging.
* Add error logging.
* Fix error logging.
* Reduce the amount of spam logged.
* Update `README.md`.
* Fix `Makefile` dependencies.
* Remove `Debug` trait dependency.
* Update `Cargo.lock` after merge.
* Fix warnings.
* Fix formatting.
---------
Co-authored-by: Esteve Soler Arderiu <esteve.soler@lambdaclass.com>
* fmt and improvements
* Fix skip validate (#1053)
* update version
* fix skip validation for invoke txs
* run fmt
* fix clippy suggestion
* simplify a bit the execute_tx function variants
* Add documentation to transaction/fee module (#889)
* added comments to src/transaction/fee.rs
* added return and error comments
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Add comments to origin/Document-transactionl1_handler module (#888)
* added comments to origin/Document-transactionl1_handler-module
* modified comments
* Test multi syscall (#687)
* create multy syscall
* remove the replace syscall, it failed because the contract adress didn't match
* added library call_syscall
* wip
* wip
* wip
* wip
* work in progress
* remove .sjon files from starknet_programs
* finished implemented all the syscalls
* reorder code, create one call to syscall
* fix pull bug
* Update tests/multi_syscall_test.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update starknet_programs/cairo1/multi_syscall_test.cairo
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update starknet_programs/cairo1/contract_a.cairo
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update tests/multi_syscall_test.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* added test syscall for deploy
* make format changes
* corrected make clippy error
* get_caller_address and get_contract_address return a adress
* failed of get_contract_address
* failed of get_contract_address
* wip
* modify the selector entrypoint_selector to be function specific
* wip
* wip
* wip
* add input to cairo functions
* coorect format problem
* wip
* wip
* wip
* remove format problem
* Fix sierra class hash calculation (#886)
* reproduce bug
* use pythonic formatter
* rename test
* fix test
* cargo fmt
* Fail with an Err transactions whose calculated fee exceed `max_fee` (#892)
* Make tx fail when actual_fee exceeds max_fee
* Changed test
* Formatting
* Fix logic
* Leave fail only without charging
* Change test
* Fix test broken by better fee calc
* Fixed test fee
* Update fee on test_deploy_account
* Remove comment
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix test_get_nonce_at (#910)
* Fix test_get_nonce_at
* Rely on another contract
* fix get_sorted_events bug (#912)
* fix get_sorted_events bug
* fmt
* fix clippy
---------
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
* Added documentations to syscalls/deprecated_syscall_handler module (#883)
* added comments to file syscalls/deprecated_syscall_handler-module'
* Update src/syscalls/deprecated_syscall_handler.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update src/syscalls/deprecated_syscall_handler.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* wip
* Modify the tests
* fixed clippy errors
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
* Parse internal calls (#915)
* Added comments to core/contract_address module (#900)
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
* Add more transaction tests and fee investigation (#914)
* add function for getting tx and refactor tests
* improve imports
* separe tests into 2 groups
* fix test
* add comments
* format
* cargo clippy
* add details to every test
* add fee discrepancy to test doc
* cargo fmt
* improve imports
* added safety element
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
* remove transactionalstatereader as it is not needed as-is (#1054)
* Fix test (or try to)
* Revert "Fix test (or try to)"
This reverts commit 423052f.
* Implement Clone for CachedState
* Fix conflict in Makefile + run clippy-fix
* Remove empty line
* fmt
* Remove unwraps
* Add clone_for_testing
* Remove clones
* Add cairo native (#943)
* Added cairo native flag
* Added cairo_native as dependency
* Partial progress
* Progress
* Partial progress
* Point to newly created branch on cairo native
* Use updated version of cairo native and make test pass
* Run test with storage_write and storage_read with cairo native
* Tidy up code
* Start unhardcoding stuff
* Handle return values
* Tidy up code a little
* Added sierra programs cache
* Add impl for emit_event and send_l1_message
* Fix tests
* Install LLVM on CI
* Test
* Test CI
* Fix lint step
* Save work in progress
* Unhardcode calldata and entry point
* Unhardcode more stuff
* Fix test
* Add basic implementation for call_contract
* Add call to get_name to integration test
* Make call_contract impl compile
* Fix test
* Pass the correct amount of builtins for every function
* Improve test legibility
* Write call_contract test skeleton
* Finish writing test, still bugs to fix
* implement get_execution_info, make increase_allowance work
* More debugging
* Basic test for call_contract working
* More progress on testing ERC20
* More progress on test
* Add caller and callee contracts
* Fix call_contract test after merge
* Fix callee address in tests
* Polish some details
* Remove use_cairo_native from TransactionExecutionContext
* Write test skeleton
* Add test contracts
* Fix tests
* Readd deleted contracts
* Echo contract test passing
* Update cairo compiler to version 2.2.0
* Calling another contract with events test is passing
* Fix failing tests
* Remove internal_calls field TODO in CallInfo returned by native_execute
* Add event_emitter contract
* Add cairo vm execution to the erc20 test for comparison
* Add simple implementation for panics in native execution
* Add some documentation in code
* Assert equality between events, accessed_storage_keys and l1_l2 messages between native and vm runs
* Add event_emitter contract
* Remove print
* Remove comments
* Move native syscall handler to its own file
* Add felt decode to string when program panics
* Make cairo native an optional dependency behind a feature
* Move execution result to cairo native
* Add a README section explaining how to setup cairo native
* Fix some clippy issues
* Fix test compilation
* CI test
* Revert "CI test"
This reverts commit 4631e5e.
* CI test
* Test
* Test
* Address comment about multiple cfgs
* Remove unnecessary clone
* Test
* Test
* Switch to special workflow for native integration tests
* Fix workflow
* Fix stuff after merge.
* Fix clippy warnings.
* Fix after merge.
* Fix comments.
* Fix `Makefile`.
* Remove unused import.
* Use transactional state.
* update cairo native to llvm 17 and remove nightly requirement
* update ci
* upd ci
* try to fix ci
* use ubuntu on native
* try to fix ci
* not needed?
* fix ci
* update cairo native
* fix nightly usage
* try to fix ci
* dont need a transactional state reader, simply clone the state reader
* try to fix ci
* format
* fix again
* fix if
* values
* force rebuild
* make cache track cairo 2 version to trigger rebuilds
* try no restore key
* update readme
* fix tests on ci
* update cairo native commit
* fix more tests on ci
* fix cairo native interface
* try ci without cache
* setup rustup home
* make param passing to cairo native not obscure
* try
* try again
* remove large packages
* remove large dirs
* remove android too
* polly is needed
* needs sudo
* fix cov
* fix test for now
* format
* cleanup ci file
* use pyenv if available
* nightly not needed in readme
* add .sierra as generated to gitattributes
* fix gitattributes
* add casm too
---------
Co-authored-by: Javier Chatruc <jrchatruc@gmail.com>
Co-authored-by: Mariano Nicolini <mariano.nicolini.91@gmail.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@fratilia.com>
Co-authored-by: Edgar Luque <git@edgarluque.com>
* add test to check cairo 2 account contract deploy panic failing properly (#1045)
* add test for account contract execution with panic
* clippy
* update cairo native to latest revision, u128 gas, mut self (#1082)
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix `get_execution_info` syscall (#1081)
* Mark read-only segments
* Move call
* Remove debug prints
* Remove fn
* Add test case
* Add comment
* Restore newlines
* Add function comment
* Fix test values
* Undo changes to makefile
* Undo changes to makefile
* clippy
* cairo-native: implement testing syscalls (#1084)
* cleanup erc20 test (#1087)
* Fix `get_onchain_data_segment_length` (#1085)
* Fix get_onchain_data_segment_length
* Update test values
* Update test values
* fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Check that running a declare v1 yields a higher fee than simulating it without validation (#1076)
* Reorder DeployAccount::apply
* Revert "Reorder DeployAccount::apply"
This reverts commit 11b0c39.
* Add test
* Add test
* clippy + fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* implement display and debug trait for Address (#1080)
* implement display and debug trait for Address
* hexa fmt
* Add recursive calls tests using `library_call` & `call_contract` syscalls (#1072)
* Add recursive library call test
* Add test programs
* Change base changes
* Add recursive test for call_contract
* fmt + clippy
* Add test for 100 contract calls
* clippy + fmt
* Update test values
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix/Refactor State::count actual storage changes + Support `DeployAccount` in the RpcStateReader (#1096)
* Fix get_onchain_data_segment_length
* Update test values
* Update test values
* fmt
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* fmt
* Add test cases for `DeployAccount` with popular account contracts using RpcState (#1104)
* Execute `Declare` transactions using the `RpcState` + Various fixes related to `Declare` txs (#1094)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Fix get_onchain_data_segment_length
* Add StorageChangesCount struct
* Update test values
* Update test values
* fmt
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Add test case with declare
* Deserialize Declare transactions
* Create blockifier Declare transaction
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
* fetch class hash from the next block in declare tx
* Return an error if a class_hash is not declared + add tests for declare tx
* Fix error msg
* Add support for DeclareV0-1 in sir_tests
* Make Sierra class optional in declare v2 + other changes
* Add support for DeclareV2
* Uncomment test
* fix
* Use new_with_sierra_class_hash_and_tx_hash
* use CompiledClassHash instead of CompiledClass where applicatble
* Handle nonce in declare v2 + run fmt
* Set casm class before counting state changes in declare v2
* Changes
* Make sierra class hash non-optional
* fix + clippy
* Use state_reader instead of creating a state to fetch the next block s contract classes
* Add removed test
* Update test values
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Execute `L1Handler` transactions using the `RpcState` (#1103)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Fix get_onchain_data_segment_length
* Add StorageChangesCount struct
* Update test values
* Update test values
* fmt
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Add test case with declare
* Deserialize Declare transactions
* Create blockifier Declare transaction
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
* fetch class hash from the next block in declare tx
* Return an error if a class_hash is not declared + add tests for declare tx
* Fix error msg
* Add support for DeclareV0-1 in sir_tests
* Make Sierra class optional in declare v2 + other changes
* Add support for DeclareV2
* Uncomment test
* fix
* Use new_with_sierra_class_hash_and_tx_hash
* use CompiledClassHash instead of CompiledClass where applicatble
* Handle nonce in declare v2 + run fmt
* Set casm class before counting state changes in declare v2
* Changes
* Make sierra class hash non-optional
* fix + clippy
* Use state_reader instead of creating a state to fetch the next block s contract classes
* Add removed test
* Update test values
* Make validate_invocation and fee_transfer_info fields optional + add L1_HANDLER transaction RpcState
* Add L1Handler to blockifier_tests::execute_tx
* Add blockifier test case
* Add L1Handler to sir_tests::execute_tx
* Add one more test case
* fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Added a usage target to makefile (#1069)
* Added a usage target to makefile
* Fixed typo
* Implement `NativeSyscallHandler::deploy` (#1106)
* wip
* Minor improvements + add test
* Improve make clippy
* Clippy + fmt
* Update error messages
* Add failure flag test
* Fix typo
* Apply suggestions + run formatter
* Add llvm setup so we can run clippy with `cairo-native` feature
* Fix
* Remove todo
* Use a proper class_hash
* Fix test assertion
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* update cairo native to use gas consumed (#1102)
* update cairo native to use gas consumed
* gas consumed
* update native rev
* fix gas consumed
* remove comments
* fixes
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix cairo-native feature-gated code
* clippy
---------
Co-authored-by: MrAzteca <azteca1998@users.noreply.github.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@lambdaclass.com>
Co-authored-by: juanbono <juanbono94@gmail.com>
Co-authored-by: Fanny Guthmann <57538139+fguthmann@users.noreply.github.com>
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
Co-authored-by: Edgar <git@edgarluque.com>
Co-authored-by: ElFantasma <esteban.dimitroff@lambdaclass.com>
Co-authored-by: Javier Chatruc <jrchatruc@gmail.com>
Co-authored-by: Mariano Nicolini <mariano.nicolini.91@gmail.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@fratilia.com>
Co-authored-by: Antonio Calvín García <antonio.calvin@lambdaclass.com>
Co-authored-by: Iñaki Garay <igarai@gmail.com>
* Revert "Update Pr: Make contract caches shared (#1071)" (#1116)
This reverts commit 8a11259.
* Update contract caches (#1117)
* Remove `serde_json_pythonic`. (#1047)
* Remove `serde_json_pythonic`.
* Fix JSON formatter on `deprecated_contract_class.rs`.
* Fix hash JSON formatter (non-ascii support).
* Add unwrap reasoning comment.
* Add debug logging. (#1018)
* Add `tracing` and update dependencies.
* Configure the example to use tracing logging (and make it work again).
* Add tracing logging.
* Add error logging.
* Fix error logging.
* Reduce the amount of spam logged.
* Update `README.md`.
* Fix `Makefile` dependencies.
* Remove `Debug` trait dependency.
* Update `Cargo.lock` after merge.
* Fix warnings.
* Fix formatting.
---------
Co-authored-by: Esteve Soler Arderiu <esteve.soler@lambdaclass.com>
* fmt and improvements
* Fix skip validate (#1053)
* update version
* fix skip validation for invoke txs
* run fmt
* fix clippy suggestion
* simplify a bit the execute_tx function variants
* Add documentation to transaction/fee module (#889)
* added comments to src/transaction/fee.rs
* added return and error comments
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Add comments to origin/Document-transactionl1_handler module (#888)
* added comments to origin/Document-transactionl1_handler-module
* modified comments
* Test multi syscall (#687)
* create multy syscall
* remove the replace syscall, it failed because the contract adress didn't match
* added library call_syscall
* wip
* wip
* wip
* wip
* work in progress
* remove .sjon files from starknet_programs
* finished implemented all the syscalls
* reorder code, create one call to syscall
* fix pull bug
* Update tests/multi_syscall_test.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update starknet_programs/cairo1/multi_syscall_test.cairo
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update starknet_programs/cairo1/contract_a.cairo
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update tests/multi_syscall_test.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* added test syscall for deploy
* make format changes
* corrected make clippy error
* get_caller_address and get_contract_address return a adress
* failed of get_contract_address
* failed of get_contract_address
* wip
* modify the selector entrypoint_selector to be function specific
* wip
* wip
* wip
* add input to cairo functions
* coorect format problem
* wip
* wip
* wip
* remove format problem
* Fix sierra class hash calculation (#886)
* reproduce bug
* use pythonic formatter
* rename test
* fix test
* cargo fmt
* Fail with an Err transactions whose calculated fee exceed `max_fee` (#892)
* Make tx fail when actual_fee exceeds max_fee
* Changed test
* Formatting
* Fix logic
* Leave fail only without charging
* Change test
* Fix test broken by better fee calc
* Fixed test fee
* Update fee on test_deploy_account
* Remove comment
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix test_get_nonce_at (#910)
* Fix test_get_nonce_at
* Rely on another contract
* fix get_sorted_events bug (#912)
* fix get_sorted_events bug
* fmt
* fix clippy
---------
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
* Added documentations to syscalls/deprecated_syscall_handler module (#883)
* added comments to file syscalls/deprecated_syscall_handler-module'
* Update src/syscalls/deprecated_syscall_handler.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* Update src/syscalls/deprecated_syscall_handler.rs
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
* wip
* Modify the tests
* fixed clippy errors
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
* Parse internal calls (#915)
* Added comments to core/contract_address module (#900)
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
* Add more transaction tests and fee investigation (#914)
* add function for getting tx and refactor tests
* improve imports
* separe tests into 2 groups
* fix test
* add comments
* format
* cargo clippy
* add details to every test
* add fee discrepancy to test doc
* cargo fmt
* improve imports
* added safety element
---------
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Juan Bono <juanbono94@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
* remove transactionalstatereader as it is not needed as-is (#1054)
* Fix test (or try to)
* Revert "Fix test (or try to)"
This reverts commit 423052f.
* Implement Clone for CachedState
* Fix conflict in Makefile + run clippy-fix
* Remove empty line
* fmt
* Remove unwraps
* Add clone_for_testing
* Remove clones
* Add cairo native (#943)
* Added cairo native flag
* Added cairo_native as dependency
* Partial progress
* Progress
* Partial progress
* Point to newly created branch on cairo native
* Use updated version of cairo native and make test pass
* Run test with storage_write and storage_read with cairo native
* Tidy up code
* Start unhardcoding stuff
* Handle return values
* Tidy up code a little
* Added sierra programs cache
* Add impl for emit_event and send_l1_message
* Fix tests
* Install LLVM on CI
* Test
* Test CI
* Fix lint step
* Save work in progress
* Unhardcode calldata and entry point
* Unhardcode more stuff
* Fix test
* Add basic implementation for call_contract
* Add call to get_name to integration test
* Make call_contract impl compile
* Fix test
* Pass the correct amount of builtins for every function
* Improve test legibility
* Write call_contract test skeleton
* Finish writing test, still bugs to fix
* implement get_execution_info, make increase_allowance work
* More debugging
* Basic test for call_contract working
* More progress on testing ERC20
* More progress on test
* Add caller and callee contracts
* Fix call_contract test after merge
* Fix callee address in tests
* Polish some details
* Remove use_cairo_native from TransactionExecutionContext
* Write test skeleton
* Add test contracts
* Fix tests
* Readd deleted contracts
* Echo contract test passing
* Update cairo compiler to version 2.2.0
* Calling another contract with events test is passing
* Fix failing tests
* Remove internal_calls field TODO in CallInfo returned by native_execute
* Add event_emitter contract
* Add cairo vm execution to the erc20 test for comparison
* Add simple implementation for panics in native execution
* Add some documentation in code
* Assert equality between events, accessed_storage_keys and l1_l2 messages between native and vm runs
* Add event_emitter contract
* Remove print
* Remove comments
* Move native syscall handler to its own file
* Add felt decode to string when program panics
* Make cairo native an optional dependency behind a feature
* Move execution result to cairo native
* Add a README section explaining how to setup cairo native
* Fix some clippy issues
* Fix test compilation
* CI test
* Revert "CI test"
This reverts commit 4631e5e.
* CI test
* Test
* Test
* Address comment about multiple cfgs
* Remove unnecessary clone
* Test
* Test
* Switch to special workflow for native integration tests
* Fix workflow
* Fix stuff after merge.
* Fix clippy warnings.
* Fix after merge.
* Fix comments.
* Fix `Makefile`.
* Remove unused import.
* Use transactional state.
* update cairo native to llvm 17 and remove nightly requirement
* update ci
* upd ci
* try to fix ci
* use ubuntu on native
* try to fix ci
* not needed?
* fix ci
* update cairo native
* fix nightly usage
* try to fix ci
* dont need a transactional state reader, simply clone the state reader
* try to fix ci
* format
* fix again
* fix if
* values
* force rebuild
* make cache track cairo 2 version to trigger rebuilds
* try no restore key
* update readme
* fix tests on ci
* update cairo native commit
* fix more tests on ci
* fix cairo native interface
* try ci without cache
* setup rustup home
* make param passing to cairo native not obscure
* try
* try again
* remove large packages
* remove large dirs
* remove android too
* polly is needed
* needs sudo
* fix cov
* fix test for now
* format
* cleanup ci file
* use pyenv if available
* nightly not needed in readme
* add .sierra as generated to gitattributes
* fix gitattributes
* add casm too
---------
Co-authored-by: Javier Chatruc <jrchatruc@gmail.com>
Co-authored-by: Mariano Nicolini <mariano.nicolini.91@gmail.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@fratilia.com>
Co-authored-by: Edgar Luque <git@edgarluque.com>
* add test to check cairo 2 account contract deploy panic failing properly (#1045)
* add test for account contract execution with panic
* clippy
* update cairo native to latest revision, u128 gas, mut self (#1082)
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix `get_execution_info` syscall (#1081)
* Mark read-only segments
* Move call
* Remove debug prints
* Remove fn
* Add test case
* Add comment
* Restore newlines
* Add function comment
* Fix test values
* Undo changes to makefile
* Undo changes to makefile
* clippy
* cairo-native: implement testing syscalls (#1084)
* cleanup erc20 test (#1087)
* Fix `get_onchain_data_segment_length` (#1085)
* Fix get_onchain_data_segment_length
* Update test values
* Update test values
* fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Check that running a declare v1 yields a higher fee than simulating it without validation (#1076)
* Reorder DeployAccount::apply
* Revert "Reorder DeployAccount::apply"
This reverts commit 11b0c39.
* Add test
* Add test
* clippy + fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* implement display and debug trait for Address (#1080)
* implement display and debug trait for Address
* hexa fmt
* Add recursive calls tests using `library_call` & `call_contract` syscalls (#1072)
* Add recursive library call test
* Add test programs
* Change base changes
* Add recursive test for call_contract
* fmt + clippy
* Add test for 100 contract calls
* clippy + fmt
* Update test values
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix/Refactor State::count actual storage changes + Support `DeployAccount` in the RpcStateReader (#1096)
* Fix get_onchain_data_segment_length
* Update test values
* Update test values
* fmt
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* fmt
* Add test cases for `DeployAccount` with popular account contracts using RpcState (#1104)
* Execute `Declare` transactions using the `RpcState` + Various fixes related to `Declare` txs (#1094)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Fix get_onchain_data_segment_length
* Add StorageChangesCount struct
* Update test values
* Update test values
* fmt
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Add test case with declare
* Deserialize Declare transactions
* Create blockifier Declare transaction
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
* fetch class hash from the next block in declare tx
* Return an error if a class_hash is not declared + add tests for declare tx
* Fix error msg
* Add support for DeclareV0-1 in sir_tests
* Make Sierra class optional in declare v2 + other changes
* Add support for DeclareV2
* Uncomment test
* fix
* Use new_with_sierra_class_hash_and_tx_hash
* use CompiledClassHash instead of CompiledClass where applicatble
* Handle nonce in declare v2 + run fmt
* Set casm class before counting state changes in declare v2
* Changes
* Make sierra class hash non-optional
* fix + clippy
* Use state_reader instead of creating a state to fetch the next block s contract classes
* Add removed test
* Update test values
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Execute `L1Handler` transactions using the `RpcState` (#1103)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Fix get_onchain_data_segment_length
* Add StorageChangesCount struct
* Update test values
* Update test values
* fmt
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Add test case with declare
* Deserialize Declare transactions
* Create blockifier Declare transaction
* Fix/Refactor `State::count actual storage changes` (#1086)
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add the ability to execute `DeployAccount` transactions using the `RpcState` (#1089)
* Add test case
* Fix get_onchain_data_segment_length
* Debug setup
* Add StorageChangesCount struct
* Use StorageChangesCount struct in state method
* Fix implicated code
* Update doc
* Update test values
* Rename method for consistency
* Add note comment
* Remove hardcoded contract address
* Remove txt files
* Remove dbg prints
* Remove dbg prints
* Format
* Restore blockifier version
* Restore tests
* Restore newlines
* Restore newlines
* Remove txt file
* fmt
* Fix bug in `From<StarknetRsContractClass> for CompiledClass` implementation (#1090)
* Fix bug in CompiledClass
* Add tests
* fetch class hash from the next block in declare tx
* Return an error if a class_hash is not declared + add tests for declare tx
* Fix error msg
* Add support for DeclareV0-1 in sir_tests
* Make Sierra class optional in declare v2 + other changes
* Add support for DeclareV2
* Uncomment test
* fix
* Use new_with_sierra_class_hash_and_tx_hash
* use CompiledClassHash instead of CompiledClass where applicatble
* Handle nonce in declare v2 + run fmt
* Set casm class before counting state changes in declare v2
* Changes
* Make sierra class hash non-optional
* fix + clippy
* Use state_reader instead of creating a state to fetch the next block s contract classes
* Add removed test
* Update test values
* Make validate_invocation and fee_transfer_info fields optional + add L1_HANDLER transaction RpcState
* Add L1Handler to blockifier_tests::execute_tx
* Add blockifier test case
* Add L1Handler to sir_tests::execute_tx
* Add one more test case
* fmt
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Added a usage target to makefile (#1069)
* Added a usage target to makefile
* Fixed typo
* Implement `NativeSyscallHandler::deploy` (#1106)
* wip
* Minor improvements + add test
* Improve make clippy
* Clippy + fmt
* Update error messages
* Add failure flag test
* Fix typo
* Apply suggestions + run formatter
* Add llvm setup so we can run clippy with `cairo-native` feature
* Fix
* Remove todo
* Use a proper class_hash
* Fix test assertion
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* update cairo native to use gas consumed (#1102)
* update cairo native to use gas consumed
* gas consumed
* update native rev
* fix gas consumed
* remove comments
* fixes
---------
Co-authored-by: Juan Bono <juanbono94@gmail.com>
* Fix cairo-native feature-gated code
* clippy
---------
Co-authored-by: MrAzteca <azteca1998@users.noreply.github.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@lambdaclass.com>
Co-authored-by: juanbono <juanbono94@gmail.com>
Co-authored-by: Fanny Guthmann <57538139+fguthmann@users.noreply.github.com>
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
Co-authored-by: Edgar <git@edgarluque.com>
Co-authored-by: Federica <fedemoletta@hotmail.com>
Co-authored-by: ElFantasma <esteban.dimitroff@lambdaclass.com>
Co-authored-by: Javier Chatruc <jrchatruc@gmail.com>
Co-authored-by: Mariano Nicolini <mariano.nicolini.91@gmail.com>
Co-authored-by: Esteve Soler Arderiu <esteve.soler@fratilia.com>
Co-authored-by: fmoletta <99273364+fmoletta@users.noreply.github.com>
Co-authored-by: Iñaki Garay <igarai@gmail.com>
* Merge
* Fix code
* clippy
* Remove old file
* Remove old file
* Avoid cloning private cache
* Fix locks
* Uncomment metrics
---------
Co-authored-by: Mario Rugiero <mrugiero@gmail.com>
Co-authored-by: fmoletta <99273364+fmoletta@users.noreply.github.com>
Co-authored-by: juanbono <juanbono94@gmail.com>
Co-authored-by: Fanny Guthmann <57538139+fguthmann@users.noreply.github.com>
Co-authored-by: fannyguthmann <fanny.guthmann@post.idc.ac.il>
Co-authored-by: Santiago Pittella <87827390+SantiagoPittella@users.noreply.github.com>
Co-authored-by: Matías Ignacio González <maigonzalez@fi.uba.ar>
Co-authored-by: SantiagoPittella <pittellasantiago@gmail.com>
Co-authored-by: Estéfano Bargas <estefano.bargas@fing.edu.uy>
Co-authored-by: Edgar <git@edgarluque.com>
Co-authored-by: ElFantasma <esteban.dimitroff@lambdaclass.com>
Co-authored-by: Javier Chatruc <jrchatruc@gmail.com>
Co-authored-by: Mariano Nicolini <mariano.nicolini.91@gmail.com>
Co-authored-by: Antonio Calvín García <antonio.calvin@lambdaclass.com>
Co-authored-by: Iñaki Garay <igarai@gmail.com>
Co-authored-by: Federica <fedemoletta@hotmail.com>1 parent f4dfa02 commit 9154239
File tree
58 files changed
+1915
-1110
lines changed- bench
- cli/src
- examples
- contract_execution/src
- lru_cache
- fuzzer/src
- rpc_state_reader/tests
- src
- bin
- core/errors
- execution
- runner
- state
- syscalls
- transaction
- starknet_programs
- tests
- complex_contracts
- amm_contracts
- nft
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
58 files changed
+1915
-1110
lines changedSome generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
| 66 | + | |
66 | 67 | | |
67 | 68 | | |
68 | 69 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
117 | 117 | | |
118 | 118 | | |
119 | 119 | | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
120 | 168 | | |
121 | 169 | | |
122 | 170 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
19 | 18 | | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
20 | 23 | | |
21 | 24 | | |
22 | 25 | | |
23 | | - | |
| 26 | + | |
24 | 27 | | |
25 | 28 | | |
26 | 29 | | |
| |||
74 | 77 | | |
75 | 78 | | |
76 | 79 | | |
77 | | - | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
78 | 84 | | |
79 | 85 | | |
80 | 86 | | |
| |||
86 | 92 | | |
87 | 93 | | |
88 | 94 | | |
89 | | - | |
| 95 | + | |
90 | 96 | | |
91 | 97 | | |
92 | 98 | | |
| |||
118 | 124 | | |
119 | 125 | | |
120 | 126 | | |
121 | | - | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
122 | 131 | | |
123 | 132 | | |
124 | 133 | | |
125 | 134 | | |
126 | | - | |
| 135 | + | |
127 | 136 | | |
128 | 137 | | |
129 | 138 | | |
| |||
155 | 164 | | |
156 | 165 | | |
157 | 166 | | |
158 | | - | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
159 | 171 | | |
160 | 172 | | |
161 | 173 | | |
| |||
167 | 179 | | |
168 | 180 | | |
169 | 181 | | |
170 | | - | |
| 182 | + | |
171 | 183 | | |
172 | 184 | | |
173 | 185 | | |
| |||
198 | 210 | | |
199 | 211 | | |
200 | 212 | | |
201 | | - | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
202 | 217 | | |
203 | 218 | | |
204 | 219 | | |
| |||
231 | 246 | | |
232 | 247 | | |
233 | 248 | | |
234 | | - | |
| 249 | + | |
235 | 250 | | |
236 | 251 | | |
237 | 252 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
| 20 | + | |
19 | 21 | | |
20 | 22 | | |
21 | 23 | | |
| |||
32 | 34 | | |
33 | 35 | | |
34 | 36 | | |
35 | | - | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
62 | 63 | | |
63 | 64 | | |
64 | 65 | | |
65 | | - | |
| 66 | + | |
66 | 67 | | |
67 | 68 | | |
68 | 69 | | |
| |||
96 | 97 | | |
97 | 98 | | |
98 | 99 | | |
99 | | - | |
| 100 | + | |
100 | 101 | | |
101 | 102 | | |
102 | 103 | | |
| |||
109 | 110 | | |
110 | 111 | | |
111 | 112 | | |
112 | | - | |
| 113 | + | |
113 | 114 | | |
114 | 115 | | |
115 | 116 | | |
| |||
120 | 121 | | |
121 | 122 | | |
122 | 123 | | |
123 | | - | |
| 124 | + | |
124 | 125 | | |
125 | 126 | | |
126 | 127 | | |
| |||
136 | 137 | | |
137 | 138 | | |
138 | 139 | | |
139 | | - | |
| 140 | + | |
140 | 141 | | |
141 | 142 | | |
142 | 143 | | |
| |||
172 | 173 | | |
173 | 174 | | |
174 | 175 | | |
175 | | - | |
| 176 | + | |
176 | 177 | | |
177 | 178 | | |
178 | 179 | | |
| |||
185 | 186 | | |
186 | 187 | | |
187 | 188 | | |
188 | | - | |
| 189 | + | |
189 | 190 | | |
190 | 191 | | |
191 | 192 | | |
| |||
196 | 197 | | |
197 | 198 | | |
198 | 199 | | |
199 | | - | |
| 200 | + | |
200 | 201 | | |
201 | 202 | | |
202 | 203 | | |
| |||
213 | 214 | | |
214 | 215 | | |
215 | 216 | | |
216 | | - | |
| 217 | + | |
217 | 218 | | |
218 | 219 | | |
219 | 220 | | |
| |||
239 | 240 | | |
240 | 241 | | |
241 | 242 | | |
242 | | - | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
243 | 247 | | |
244 | 248 | | |
245 | 249 | | |
| |||
259 | 263 | | |
260 | 264 | | |
261 | 265 | | |
262 | | - | |
| 266 | + | |
263 | 267 | | |
264 | 268 | | |
265 | 269 | | |
266 | | - | |
| 270 | + | |
267 | 271 | | |
268 | 272 | | |
269 | 273 | | |
| |||
275 | 279 | | |
276 | 280 | | |
277 | 281 | | |
278 | | - | |
| 282 | + | |
| 283 | + | |
279 | 284 | | |
280 | 285 | | |
281 | 286 | | |
| |||
338 | 343 | | |
339 | 344 | | |
340 | 345 | | |
341 | | - | |
| 346 | + | |
342 | 347 | | |
343 | 348 | | |
344 | 349 | | |
345 | | - | |
| 350 | + | |
346 | 351 | | |
347 | 352 | | |
348 | 353 | | |
| |||
354 | 359 | | |
355 | 360 | | |
356 | 361 | | |
357 | | - | |
| 362 | + | |
| 363 | + | |
358 | 364 | | |
359 | 365 | | |
360 | 366 | | |
| |||
493 | 499 | | |
494 | 500 | | |
495 | 501 | | |
496 | | - | |
| 502 | + | |
497 | 503 | | |
498 | 504 | | |
499 | 505 | | |
| |||
510 | 516 | | |
511 | 517 | | |
512 | 518 | | |
513 | | - | |
| 519 | + | |
514 | 520 | | |
515 | 521 | | |
516 | 522 | | |
| |||
0 commit comments