From 50aab3aea4e1cd6ab7290e4d727198cfcaea8a64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lo=C3=AFs?= Date: Wed, 3 Jan 2024 14:25:38 +0100 Subject: [PATCH] Tracing runtime 2700 (#84) * add tracing runtime 2700 * build tracing runtime 2700 --- ...nbase-runtime-2700-substitute-tracing.json | 1 + ...nbeam-runtime-2700-substitute-tracing.json | 1 + ...river-runtime-2700-substitute-tracing.json | 1 + tracing/2700/Cargo.lock | 13544 ++++++++++++++++ tracing/2700/Cargo.toml | 430 + tracing/2700/runtime/common/Cargo.toml | 137 + tracing/2700/runtime/common/src/apis.rs | 816 + .../2700/runtime/common/src/benchmarking.rs | 30 + .../common/src/impl_moonbeam_xcm_call.rs | 51 + .../src/impl_moonbeam_xcm_call_tracing.rs | 112 + .../src/impl_on_charge_evm_transaction.rs | 68 + .../common/src/impl_self_contained_call.rs | 78 + .../runtime/common/src/impl_xcm_evm_runner.rs | 188 + tracing/2700/runtime/common/src/lib.rs | 29 + tracing/2700/runtime/common/src/migrations.rs | 281 + .../src/weights/cumulus_pallet_xcmp_queue.rs | 72 + .../2700/runtime/common/src/weights/mod.rs | 47 + ...moonbeam_xcm_benchmarks_weights_generic.rs | 447 + .../src/weights/pallet_asset_manager.rs | 168 + .../common/src/weights/pallet_assets.rs | 512 + .../src/weights/pallet_author_inherent.rs | 70 + .../src/weights/pallet_author_mapping.rs | 126 + .../src/weights/pallet_author_slot_filter.rs | 59 + .../common/src/weights/pallet_balances.rs | 148 + .../common/src/weights/pallet_collective.rs | 308 + .../src/weights/pallet_conviction_voting.rs | 190 + .../src/weights/pallet_crowdloan_rewards.rs | 168 + .../common/src/weights/pallet_democracy.rs | 523 + .../runtime/common/src/weights/pallet_evm.rs | 79 + .../common/src/weights/pallet_identity.rs | 354 + .../src/weights/pallet_moonbeam_orbiters.rs | 212 + .../common/src/weights/pallet_multisig.rs | 166 + .../src/weights/pallet_parachain_staking.rs | 903 ++ .../common/src/weights/pallet_preimage.rs | 262 + .../common/src/weights/pallet_proxy.rs | 226 + .../common/src/weights/pallet_randomness.rs | 168 + .../common/src/weights/pallet_referenda.rs | 496 + .../common/src/weights/pallet_scheduler.rs | 205 + .../runtime/common/src/weights/pallet_sudo.rs | 82 + .../common/src/weights/pallet_timestamp.rs | 68 + .../common/src/weights/pallet_treasury.rs | 208 + .../common/src/weights/pallet_utility.rs | 109 + .../common/src/weights/pallet_whitelist.rs | 113 + .../runtime/common/src/weights/pallet_xcm.rs | 282 + .../src/weights/pallet_xcm_transactor.rs | 196 + tracing/2700/runtime/moonbase/Cargo.toml | 369 + tracing/2700/runtime/moonbase/build.rs | 25 + .../2700/runtime/moonbase/src/asset_config.rs | 343 + .../moonbase/src/governance/councils.rs | 98 + .../moonbase/src/governance/democracy.rs | 76 + .../runtime/moonbase/src/governance/mod.rs | 30 + .../moonbase/src/governance/origins.rs | 80 + .../moonbase/src/governance/referenda.rs | 98 + .../runtime/moonbase/src/governance/tracks.rs | 179 + tracing/2700/runtime/moonbase/src/lib.rs | 1859 +++ .../2700/runtime/moonbase/src/precompiles.rs | 271 + .../2700/runtime/moonbase/src/timestamp.rs | 87 + .../2700/runtime/moonbase/src/xcm_config.rs | 705 + .../2700/runtime/moonbase/tests/common/mod.rs | 397 + .../runtime/moonbase/tests/evm_tracing.rs | 94 + .../moonbase/tests/integration_test.rs | 3060 ++++ .../runtime/moonbase/tests/runtime_apis.rs | 392 + .../runtime/moonbase/tests/xcm_mock/mod.rs | 274 + .../moonbase/tests/xcm_mock/parachain.rs | 1243 ++ .../moonbase/tests/xcm_mock/relay_chain.rs | 414 + .../moonbase/tests/xcm_mock/statemint_like.rs | 553 + .../2700/runtime/moonbase/tests/xcm_tests.rs | 4057 +++++ tracing/2700/runtime/moonbeam/Cargo.toml | 355 + tracing/2700/runtime/moonbeam/build.rs | 25 + .../2700/runtime/moonbeam/src/asset_config.rs | 342 + .../moonbeam/src/governance/councils.rs | 97 + .../moonbeam/src/governance/democracy.rs | 77 + .../runtime/moonbeam/src/governance/mod.rs | 30 + .../moonbeam/src/governance/origins.rs | 82 + .../moonbeam/src/governance/referenda.rs | 98 + .../runtime/moonbeam/src/governance/tracks.rs | 179 + tracing/2700/runtime/moonbeam/src/lib.rs | 1852 +++ .../2700/runtime/moonbeam/src/precompiles.rs | 274 + .../2700/runtime/moonbeam/src/xcm_config.rs | 694 + .../2700/runtime/moonbeam/tests/common/mod.rs | 387 + .../runtime/moonbeam/tests/evm_tracing.rs | 94 + .../moonbeam/tests/integration_test.rs | 2823 ++++ .../runtime/moonbeam/tests/runtime_apis.rs | 393 + .../runtime/moonbeam/tests/xcm_mock/mod.rs | 272 + .../moonbeam/tests/xcm_mock/parachain.rs | 1224 ++ .../moonbeam/tests/xcm_mock/relay_chain.rs | 415 + .../moonbeam/tests/xcm_mock/statemint_like.rs | 552 + .../2700/runtime/moonbeam/tests/xcm_tests.rs | 3789 +++++ tracing/2700/runtime/moonriver/Cargo.toml | 359 + tracing/2700/runtime/moonriver/build.rs | 25 + .../runtime/moonriver/src/asset_config.rs | 343 + .../moonriver/src/governance/councils.rs | 97 + .../moonriver/src/governance/democracy.rs | 77 + .../runtime/moonriver/src/governance/mod.rs | 30 + .../moonriver/src/governance/origins.rs | 82 + .../moonriver/src/governance/referenda.rs | 98 + .../moonriver/src/governance/tracks.rs | 179 + tracing/2700/runtime/moonriver/src/lib.rs | 1853 +++ .../2700/runtime/moonriver/src/precompiles.rs | 273 + .../2700/runtime/moonriver/src/xcm_config.rs | 707 + .../runtime/moonriver/tests/common/mod.rs | 394 + .../runtime/moonriver/tests/evm_tracing.rs | 94 + .../moonriver/tests/integration_test.rs | 2726 ++++ .../runtime/moonriver/tests/runtime_apis.rs | 396 + .../runtime/moonriver/tests/xcm_mock/mod.rs | 275 + .../moonriver/tests/xcm_mock/parachain.rs | 1234 ++ .../moonriver/tests/xcm_mock/relay_chain.rs | 415 + .../tests/xcm_mock/statemine_like.rs | 553 + .../2700/runtime/moonriver/tests/xcm_tests.rs | 4095 +++++ tracing/2700/rust-toolchain | 5 + ...nbase-runtime-2700-substitute-tracing.wasm | Bin 0 -> 1883721 bytes ...nbeam-runtime-2700-substitute-tracing.wasm | Bin 0 -> 1865773 bytes ...river-runtime-2700-substitute-tracing.wasm | Bin 0 -> 1867198 bytes 113 files changed, 65802 insertions(+) create mode 100644 srtool-digest/moonbase-runtime-2700-substitute-tracing.json create mode 100644 srtool-digest/moonbeam-runtime-2700-substitute-tracing.json create mode 100644 srtool-digest/moonriver-runtime-2700-substitute-tracing.json create mode 100644 tracing/2700/Cargo.lock create mode 100644 tracing/2700/Cargo.toml create mode 100644 tracing/2700/runtime/common/Cargo.toml create mode 100644 tracing/2700/runtime/common/src/apis.rs create mode 100644 tracing/2700/runtime/common/src/benchmarking.rs create mode 100644 tracing/2700/runtime/common/src/impl_moonbeam_xcm_call.rs create mode 100644 tracing/2700/runtime/common/src/impl_moonbeam_xcm_call_tracing.rs create mode 100644 tracing/2700/runtime/common/src/impl_on_charge_evm_transaction.rs create mode 100644 tracing/2700/runtime/common/src/impl_self_contained_call.rs create mode 100644 tracing/2700/runtime/common/src/impl_xcm_evm_runner.rs create mode 100644 tracing/2700/runtime/common/src/lib.rs create mode 100644 tracing/2700/runtime/common/src/migrations.rs create mode 100644 tracing/2700/runtime/common/src/weights/cumulus_pallet_xcmp_queue.rs create mode 100644 tracing/2700/runtime/common/src/weights/mod.rs create mode 100644 tracing/2700/runtime/common/src/weights/moonbeam_xcm_benchmarks_weights_generic.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_asset_manager.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_assets.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_author_inherent.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_author_mapping.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_author_slot_filter.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_balances.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_collective.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_conviction_voting.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_crowdloan_rewards.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_democracy.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_evm.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_identity.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_moonbeam_orbiters.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_multisig.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_parachain_staking.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_preimage.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_proxy.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_randomness.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_referenda.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_scheduler.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_sudo.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_timestamp.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_treasury.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_utility.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_whitelist.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_xcm.rs create mode 100644 tracing/2700/runtime/common/src/weights/pallet_xcm_transactor.rs create mode 100644 tracing/2700/runtime/moonbase/Cargo.toml create mode 100644 tracing/2700/runtime/moonbase/build.rs create mode 100644 tracing/2700/runtime/moonbase/src/asset_config.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/councils.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/democracy.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/mod.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/origins.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/referenda.rs create mode 100644 tracing/2700/runtime/moonbase/src/governance/tracks.rs create mode 100644 tracing/2700/runtime/moonbase/src/lib.rs create mode 100644 tracing/2700/runtime/moonbase/src/precompiles.rs create mode 100644 tracing/2700/runtime/moonbase/src/timestamp.rs create mode 100644 tracing/2700/runtime/moonbase/src/xcm_config.rs create mode 100644 tracing/2700/runtime/moonbase/tests/common/mod.rs create mode 100644 tracing/2700/runtime/moonbase/tests/evm_tracing.rs create mode 100644 tracing/2700/runtime/moonbase/tests/integration_test.rs create mode 100644 tracing/2700/runtime/moonbase/tests/runtime_apis.rs create mode 100644 tracing/2700/runtime/moonbase/tests/xcm_mock/mod.rs create mode 100644 tracing/2700/runtime/moonbase/tests/xcm_mock/parachain.rs create mode 100644 tracing/2700/runtime/moonbase/tests/xcm_mock/relay_chain.rs create mode 100644 tracing/2700/runtime/moonbase/tests/xcm_mock/statemint_like.rs create mode 100644 tracing/2700/runtime/moonbase/tests/xcm_tests.rs create mode 100644 tracing/2700/runtime/moonbeam/Cargo.toml create mode 100644 tracing/2700/runtime/moonbeam/build.rs create mode 100644 tracing/2700/runtime/moonbeam/src/asset_config.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/councils.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/democracy.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/mod.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/origins.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/referenda.rs create mode 100644 tracing/2700/runtime/moonbeam/src/governance/tracks.rs create mode 100644 tracing/2700/runtime/moonbeam/src/lib.rs create mode 100644 tracing/2700/runtime/moonbeam/src/precompiles.rs create mode 100644 tracing/2700/runtime/moonbeam/src/xcm_config.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/common/mod.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/evm_tracing.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/integration_test.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/runtime_apis.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/xcm_mock/mod.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/xcm_mock/parachain.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/xcm_mock/relay_chain.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/xcm_mock/statemint_like.rs create mode 100644 tracing/2700/runtime/moonbeam/tests/xcm_tests.rs create mode 100644 tracing/2700/runtime/moonriver/Cargo.toml create mode 100644 tracing/2700/runtime/moonriver/build.rs create mode 100644 tracing/2700/runtime/moonriver/src/asset_config.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/councils.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/democracy.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/mod.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/origins.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/referenda.rs create mode 100644 tracing/2700/runtime/moonriver/src/governance/tracks.rs create mode 100644 tracing/2700/runtime/moonriver/src/lib.rs create mode 100644 tracing/2700/runtime/moonriver/src/precompiles.rs create mode 100644 tracing/2700/runtime/moonriver/src/xcm_config.rs create mode 100644 tracing/2700/runtime/moonriver/tests/common/mod.rs create mode 100644 tracing/2700/runtime/moonriver/tests/evm_tracing.rs create mode 100644 tracing/2700/runtime/moonriver/tests/integration_test.rs create mode 100644 tracing/2700/runtime/moonriver/tests/runtime_apis.rs create mode 100644 tracing/2700/runtime/moonriver/tests/xcm_mock/mod.rs create mode 100644 tracing/2700/runtime/moonriver/tests/xcm_mock/parachain.rs create mode 100644 tracing/2700/runtime/moonriver/tests/xcm_mock/relay_chain.rs create mode 100644 tracing/2700/runtime/moonriver/tests/xcm_mock/statemine_like.rs create mode 100644 tracing/2700/runtime/moonriver/tests/xcm_tests.rs create mode 100644 tracing/2700/rust-toolchain create mode 100644 wasm/moonbase-runtime-2700-substitute-tracing.wasm create mode 100644 wasm/moonbeam-runtime-2700-substitute-tracing.wasm create mode 100644 wasm/moonriver-runtime-2700-substitute-tracing.wasm diff --git a/srtool-digest/moonbase-runtime-2700-substitute-tracing.json b/srtool-digest/moonbase-runtime-2700-substitute-tracing.json new file mode 100644 index 00000000..81ac41c6 --- /dev/null +++ b/srtool-digest/moonbase-runtime-2700-substitute-tracing.json @@ -0,0 +1 @@ +{"gen":"srtool v0.11.1","src":"zip","version":"0.8.4","commit":"","tag":"","branch":"","rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonbase-runtime","tmsp":"2024-01-03T12:13:01Z","size":"1883721","prop":"0xa6c6d29672a0ee1a2319f100684edd67e34d84cf6a0f5c44117d95409916c1b7","authorize_upgrade_prop":"0x12f4f6ed03338ba31d43eeec12aa6d91cb4b787ba3662c662b83b856a44bc492","ipfs":"QmXsVMeJSP5JcjhBx6qieLXoKLSrp1guk6icjdGzDK91KS","sha256":"0xfe5ece55aa53e4303c65f6edabfcf6cdbb34ebd53d6a50fc54377fc3f28268ca","wasm":"runtime/moonbase/target/srtool/release/wbuild/moonbase-runtime/moonbase_runtime.compact.compressed.wasm","info":{"generator":{"name":"srtool","version":"0.11.1"},"src":"zip","version":"0.8.4","git":{"commit":"","tag":"","branch":""},"rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonbase-runtime","profile":"release"},"context":{"package":"moonbase-runtime","runtime_dir":"runtime/moonbase","docker":{"image":"paritytech/srtool","tag":"1.70.0"},"profile":"release"},"runtimes":{"compact":{"tmsp":"2024-01-03T12:12:32Z","size":"9233633","prop":"0x38e51b3c096561957a9ecd0ef8ecbaf168b14625aebf68fd0d1d0eafa1d84c12","authorize_upgrade_prop":"0xf55932ae6f21c522d169dc0dbce8892f15280d9d6c623d721035465f4930bc8b","blake2_256":"0x328b2ed48edc9be27de1b524ee77f5267d9112918849c4e1363aef3b2841a289","ipfs":"QmXpyX4m9rePZGdWqt933rK3ebGsiTdtwM62uDPRduvR55","sha256":"0x27935d486bd3bd618ce3a4aebd69aaffe79618193475089ddcce1614f025f944","wasm":"runtime/moonbase/target/srtool/release/wbuild/moonbase-runtime/moonbase_runtime.compact.wasm","subwasm":{"size":9233633,"compression":{"size_compressed":9233633,"size_decompressed":9233633,"compressed":false},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonbase","implName":"moonbase","authoringVersion":4,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0x38e51b3c096561957a9ecd0ef8ecbaf168b14625aebf68fd0d1d0eafa1d84c12","parachain_authorize_upgrade_hash":"0xf55932ae6f21c522d169dc0dbce8892f15280d9d6c623d721035465f4930bc8b","ipfs_hash":"QmXpyX4m9rePZGdWqt933rK3ebGsiTdtwM62uDPRduvR55","blake2_256":"0x328b2ed48edc9be27de1b524ee77f5267d9112918849c4e1363aef3b2841a289"}},"compressed":{"tmsp":"2024-01-03T12:11:02Z","size":"1883721","prop":"0xa6c6d29672a0ee1a2319f100684edd67e34d84cf6a0f5c44117d95409916c1b7","authorize_upgrade_prop":"0x12f4f6ed03338ba31d43eeec12aa6d91cb4b787ba3662c662b83b856a44bc492","blake2_256":"0xc512ea1bd943664e4e6407a53ba9429699b2d058f9522c7930ce29e58df89b1c","ipfs":"QmXsVMeJSP5JcjhBx6qieLXoKLSrp1guk6icjdGzDK91KS","sha256":"0xfe5ece55aa53e4303c65f6edabfcf6cdbb34ebd53d6a50fc54377fc3f28268ca","wasm":"runtime/moonbase/target/srtool/release/wbuild/moonbase-runtime/moonbase_runtime.compact.compressed.wasm","subwasm":{"size":1883721,"compression":{"size_compressed":1883721,"size_decompressed":9233633,"compressed":true},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonbase","implName":"moonbase","authoringVersion":4,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0xa6c6d29672a0ee1a2319f100684edd67e34d84cf6a0f5c44117d95409916c1b7","parachain_authorize_upgrade_hash":"0x12f4f6ed03338ba31d43eeec12aa6d91cb4b787ba3662c662b83b856a44bc492","ipfs_hash":"QmXsVMeJSP5JcjhBx6qieLXoKLSrp1guk6icjdGzDK91KS","blake2_256":"0xc512ea1bd943664e4e6407a53ba9429699b2d058f9522c7930ce29e58df89b1c"}}}} diff --git a/srtool-digest/moonbeam-runtime-2700-substitute-tracing.json b/srtool-digest/moonbeam-runtime-2700-substitute-tracing.json new file mode 100644 index 00000000..7484e641 --- /dev/null +++ b/srtool-digest/moonbeam-runtime-2700-substitute-tracing.json @@ -0,0 +1 @@ +{"gen":"srtool v0.11.1","src":"zip","version":"0.8.4","commit":"","tag":"","branch":"","rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonbeam-runtime","tmsp":"2024-01-03T12:25:38Z","size":"1865773","prop":"0x204e0f78b99c8902421c9ad9a2a9f9f52461ff819cb18a521db78a47edf0d69c","authorize_upgrade_prop":"0x45ecbcedbc8eebc0d9b11a00de66ce6da8e672f38e222ac77cc887bfc63302da","ipfs":"QmPJQz5WTrYqsckP3tRTVZRwm8ReR4DWK7y5RmzTbh73RG","sha256":"0x8fa9ee5595f186fb59404e2f428b384183013fc99b5d5f3e29716a488e759d6b","wasm":"runtime/moonbeam/target/srtool/release/wbuild/moonbeam-runtime/moonbeam_runtime.compact.compressed.wasm","info":{"generator":{"name":"srtool","version":"0.11.1"},"src":"zip","version":"0.8.4","git":{"commit":"","tag":"","branch":""},"rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonbeam-runtime","profile":"release"},"context":{"package":"moonbeam-runtime","runtime_dir":"runtime/moonbeam","docker":{"image":"paritytech/srtool","tag":"1.70.0"},"profile":"release"},"runtimes":{"compact":{"tmsp":"2024-01-03T12:25:11Z","size":"9098574","prop":"0x2d405084dd5c0e8204678e55a03a9b03fced2bb7e5235f6a26eec2fec751945f","authorize_upgrade_prop":"0x726edc6c4ab214200213153c344b3bebc403877bae418e5e7f854985d5365775","blake2_256":"0x943859821f87732d5de5fffdb8e39962bcde5a1990fbe3ed94436311f0ddf6a0","ipfs":"QmQaFYpMJKKeBxSCNxa2iukEMc4kQ7RbbqmSoaWEbc8XPt","sha256":"0x013c0d284e60c762fe5d7d12d7175b379bda0b03efe3a01e0b3b4075aa1c9e59","wasm":"runtime/moonbeam/target/srtool/release/wbuild/moonbeam-runtime/moonbeam_runtime.compact.wasm","subwasm":{"size":9098574,"compression":{"size_compressed":9098574,"size_decompressed":9098574,"compressed":false},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonbeam","implName":"moonbeam","authoringVersion":3,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0x2d405084dd5c0e8204678e55a03a9b03fced2bb7e5235f6a26eec2fec751945f","parachain_authorize_upgrade_hash":"0x726edc6c4ab214200213153c344b3bebc403877bae418e5e7f854985d5365775","ipfs_hash":"QmQaFYpMJKKeBxSCNxa2iukEMc4kQ7RbbqmSoaWEbc8XPt","blake2_256":"0x943859821f87732d5de5fffdb8e39962bcde5a1990fbe3ed94436311f0ddf6a0"}},"compressed":{"tmsp":"2024-01-03T12:23:41Z","size":"1865773","prop":"0x204e0f78b99c8902421c9ad9a2a9f9f52461ff819cb18a521db78a47edf0d69c","authorize_upgrade_prop":"0x45ecbcedbc8eebc0d9b11a00de66ce6da8e672f38e222ac77cc887bfc63302da","blake2_256":"0x545bbf2b954b2e2f88ccf808c14a7618574d4c1e95e6634a8dce3a62f714f438","ipfs":"QmPJQz5WTrYqsckP3tRTVZRwm8ReR4DWK7y5RmzTbh73RG","sha256":"0x8fa9ee5595f186fb59404e2f428b384183013fc99b5d5f3e29716a488e759d6b","wasm":"runtime/moonbeam/target/srtool/release/wbuild/moonbeam-runtime/moonbeam_runtime.compact.compressed.wasm","subwasm":{"size":1865773,"compression":{"size_compressed":1865773,"size_decompressed":9098574,"compressed":true},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonbeam","implName":"moonbeam","authoringVersion":3,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0x204e0f78b99c8902421c9ad9a2a9f9f52461ff819cb18a521db78a47edf0d69c","parachain_authorize_upgrade_hash":"0x45ecbcedbc8eebc0d9b11a00de66ce6da8e672f38e222ac77cc887bfc63302da","ipfs_hash":"QmPJQz5WTrYqsckP3tRTVZRwm8ReR4DWK7y5RmzTbh73RG","blake2_256":"0x545bbf2b954b2e2f88ccf808c14a7618574d4c1e95e6634a8dce3a62f714f438"}}}} diff --git a/srtool-digest/moonriver-runtime-2700-substitute-tracing.json b/srtool-digest/moonriver-runtime-2700-substitute-tracing.json new file mode 100644 index 00000000..3603eeae --- /dev/null +++ b/srtool-digest/moonriver-runtime-2700-substitute-tracing.json @@ -0,0 +1 @@ +{"gen":"srtool v0.11.1","src":"zip","version":"0.8.4","commit":"","tag":"","branch":"","rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonriver-runtime","tmsp":"2024-01-03T12:19:24Z","size":"1867198","prop":"0x33022f051ffc0f17ecf47e60984ef299d5245a1b83fb96ba0cccd26eae8ebe43","authorize_upgrade_prop":"0x91c8dedca93ddc20ecd5d1d9d2068279fb25fdeb24b7bee7944d468ced56c9c3","ipfs":"QmWQH6WZz4cYr8KnfSnJjJ7ALrWxujYwT2f6Wfm7RBfonQ","sha256":"0x1b723c536d15159f51999d093a173b8a4c74c8ccdb3e649a70c89ac2e267177d","wasm":"runtime/moonriver/target/srtool/release/wbuild/moonriver-runtime/moonriver_runtime.compact.compressed.wasm","info":{"generator":{"name":"srtool","version":"0.11.1"},"src":"zip","version":"0.8.4","git":{"commit":"","tag":"","branch":""},"rustc":"rustc 1.70.0 (90c541806 2023-05-31)","pkg":"moonriver-runtime","profile":"release"},"context":{"package":"moonriver-runtime","runtime_dir":"runtime/moonriver","docker":{"image":"paritytech/srtool","tag":"1.70.0"},"profile":"release"},"runtimes":{"compact":{"tmsp":"2024-01-03T12:18:57Z","size":"9132994","prop":"0xa0561695b41ab0c20a3b411e1879c4c27eac295d8e259b1aec61fb30cd96889c","authorize_upgrade_prop":"0x6065fd8e1aac0b55dff452e99609522053b5a87ce2a71241160029e2a1ea6d3e","blake2_256":"0x6190ca1343ed3b5d66f344fa94abe237c27cac4eb1d324e063b1c6178c0022f6","ipfs":"QmaMSZK2FSpyN3TNepwr2VJPh7Y82S63CRmyEAom1qBrXD","sha256":"0xd1cdb217b2b717814c8215dcd0f227031158a01191e92c83b65ef6e83786e94c","wasm":"runtime/moonriver/target/srtool/release/wbuild/moonriver-runtime/moonriver_runtime.compact.wasm","subwasm":{"size":9132994,"compression":{"size_compressed":9132994,"size_decompressed":9132994,"compressed":false},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonriver","implName":"moonriver","authoringVersion":3,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0xa0561695b41ab0c20a3b411e1879c4c27eac295d8e259b1aec61fb30cd96889c","parachain_authorize_upgrade_hash":"0x6065fd8e1aac0b55dff452e99609522053b5a87ce2a71241160029e2a1ea6d3e","ipfs_hash":"QmaMSZK2FSpyN3TNepwr2VJPh7Y82S63CRmyEAom1qBrXD","blake2_256":"0x6190ca1343ed3b5d66f344fa94abe237c27cac4eb1d324e063b1c6178c0022f6"}},"compressed":{"tmsp":"2024-01-03T12:17:27Z","size":"1867198","prop":"0x33022f051ffc0f17ecf47e60984ef299d5245a1b83fb96ba0cccd26eae8ebe43","authorize_upgrade_prop":"0x91c8dedca93ddc20ecd5d1d9d2068279fb25fdeb24b7bee7944d468ced56c9c3","blake2_256":"0xadd7896c62b5024383510e9c611287f90cef2bcd9fe57fe6dad0ee4dc0db6c43","ipfs":"QmWQH6WZz4cYr8KnfSnJjJ7ALrWxujYwT2f6Wfm7RBfonQ","sha256":"0x1b723c536d15159f51999d093a173b8a4c74c8ccdb3e649a70c89ac2e267177d","wasm":"runtime/moonriver/target/srtool/release/wbuild/moonriver-runtime/moonriver_runtime.compact.compressed.wasm","subwasm":{"size":1867198,"compression":{"size_compressed":1867198,"size_decompressed":9132994,"compressed":true},"reserved_meta":[109,101,116,97],"reserved_meta_valid":true,"metadata_version":14,"core_version":{"specName":"moonriver","implName":"moonriver","authoringVersion":3,"specVersion":2700,"implVersion":0,"apis":[["0xd2bc9897eed08f15",3],["0xd0399cd053adda2b",1],["0xdf6acb689907609b",4],["0x37e397fc7c91f5e4",2],["0x40fe3ad401f8959a",6],["0xf78b278be53f454c",2],["0xab3c0572291feb8b",1],["0xbc9d89904f5b923f",1],["0xbd78255d4feeea1f",4],["0xa33d43f58731ad84",2],["0x582211f65bb14b89",5],["0xe65b00e46cedd0aa",2],["0x37c8bb1350a9a2a8",4],["0x2aa62120049dd2d2",1],["0xea93e3f16f3d6962",2],["0xba8173bf23b2e6f8",1]],"transactionVersion":2,"stateVersion":0},"proposal_hash":"0x33022f051ffc0f17ecf47e60984ef299d5245a1b83fb96ba0cccd26eae8ebe43","parachain_authorize_upgrade_hash":"0x91c8dedca93ddc20ecd5d1d9d2068279fb25fdeb24b7bee7944d468ced56c9c3","ipfs_hash":"QmWQH6WZz4cYr8KnfSnJjJ7ALrWxujYwT2f6Wfm7RBfonQ","blake2_256":"0xadd7896c62b5024383510e9c611287f90cef2bcd9fe57fe6dad0ee4dc0db6c43"}}}} diff --git a/tracing/2700/Cargo.lock b/tracing/2700/Cargo.lock new file mode 100644 index 00000000..4f9025d2 --- /dev/null +++ b/tracing/2700/Cargo.lock @@ -0,0 +1,13544 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + +[[package]] +name = "account" +version = "0.1.1" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "blake2-rfc", + "impl-serde 0.3.2", + "libsecp256k1", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sha3", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", + "sp-std", +] + +[[package]] +name = "addr2line" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +dependencies = [ + "gimli 0.27.3", +] + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli 0.28.0", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aead" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "aead" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" +dependencies = [ + "generic-array 0.14.7", + "rand_core 0.6.4", +] + +[[package]] +name = "aead" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" +dependencies = [ + "crypto-common", + "generic-array 0.14.7", +] + +[[package]] +name = "aes" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" +dependencies = [ + "aes-soft", + "aesni", + "cipher 0.2.5", +] + +[[package]] +name = "aes" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" +dependencies = [ + "cfg-if", + "cipher 0.3.0", + "cpufeatures", + "opaque-debug 0.3.0", +] + +[[package]] +name = "aes" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" +dependencies = [ + "cfg-if", + "cipher 0.4.4", + "cpufeatures", +] + +[[package]] +name = "aes-gcm" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df5f85a83a7d8b0442b6aa7b504b8212c1733da07b98aae43d4bc21b2cb3cdf6" +dependencies = [ + "aead 0.4.3", + "aes 0.7.5", + "cipher 0.3.0", + "ctr 0.8.0", + "ghash 0.4.4", + "subtle 2.4.1", +] + +[[package]] +name = "aes-gcm" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" +dependencies = [ + "aead 0.5.2", + "aes 0.8.3", + "cipher 0.4.4", + "ctr 0.9.2", + "ghash 0.5.0", + "subtle 2.4.1", +] + +[[package]] +name = "aes-soft" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" +dependencies = [ + "cipher 0.2.5", + "opaque-debug 0.3.0", +] + +[[package]] +name = "aesni" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" +dependencies = [ + "cipher 0.2.5", + "opaque-debug 0.3.0", +] + +[[package]] +name = "affix" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50e7ea84d3fa2009f355f8429a0b418a96849135a4188fadf384f59127d5d4bc" +dependencies = [ + "convert_case 0.5.0", +] + +[[package]] +name = "ahash" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" +dependencies = [ + "getrandom 0.2.11", + "once_cell", + "version_check", +] + +[[package]] +name = "ahash" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" +dependencies = [ + "cfg-if", + "getrandom 0.2.11", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +dependencies = [ + "memchr", +] + +[[package]] +name = "allocator-api2" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "ansi_term" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +dependencies = [ + "winapi", +] + +[[package]] +name = "anstream" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + +[[package]] +name = "anstyle-parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] + +[[package]] +name = "anyhow" +version = "1.0.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" + +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + +[[package]] +name = "aquamarine" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df752953c49ce90719c7bf1fc587bc8227aed04732ea0c0f85e5397d7fdbd1a1" +dependencies = [ + "include_dir", + "itertools 0.10.5", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "arc-swap" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" + +[[package]] +name = "ark-bls12-377" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb00293ba84f51ce3bd026bd0de55899c4e68f0a39a5728cebae3a73ffdc0a4f" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-bls12-381" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", +] + +[[package]] +name = "ark-ed-on-bls12-381-bandersnatch" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9cde0f2aa063a2a5c28d39b47761aa102bda7c13c84fc118a61b87c7b2f785c" +dependencies = [ + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm", + "ark-ff-macros", + "ark-serialize", + "ark-std", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-scale" +version = "0.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51bd73bb6ddb72630987d37fa963e99196896c0d0ea81b7c894567e74a2f83af" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "ark-secret-scalar" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=4b09416#4b09416fd23383ec436ddac127d58c7b7cd392c6" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "ark-transcript", + "digest 0.10.7", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive", + "ark-std", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-serialize-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "ark-transcript" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=4b09416#4b09416fd23383ec436ddac127d58c7b7cd392c6" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "digest 0.10.7", + "rand_core 0.6.4", + "sha3", +] + +[[package]] +name = "array-bytes" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6" + +[[package]] +name = "array-bytes" +version = "6.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de17a919934ad8c5cc99a1a74de4e2dab95d6121a8f27f94755ff525b630382c" + +[[package]] +name = "arrayref" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" + +[[package]] +name = "arrayvec" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9" +dependencies = [ + "nodrop", +] + +[[package]] +name = "arrayvec" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + +[[package]] +name = "asn1-rs" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30ff05a702273012438132f449575dbc804e27b2f3cbe3069aa237d26c98fa33" +dependencies = [ + "asn1-rs-derive 0.1.0", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "asn1-rs" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" +dependencies = [ + "asn1-rs-derive 0.4.0", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "assert_matches" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" + +[[package]] +name = "async-backing-primitives" +version = "0.9.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "sp-api", + "sp-consensus-slots", +] + +[[package]] +name = "async-channel" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + +[[package]] +name = "async-io" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" +dependencies = [ + "async-lock", + "autocfg", + "cfg-if", + "concurrent-queue", + "futures-lite", + "log", + "parking", + "polling", + "rustix 0.37.27", + "slab", + "socket2 0.4.10", + "waker-fn", +] + +[[package]] +name = "async-lock" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" +dependencies = [ + "event-listener", +] + +[[package]] +name = "async-trait" +version = "0.1.74" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "asynchronous-codec" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4057f2c32adbb2fc158e22fb38433c8e9bbf76b75a4732c7c0cbaf695fb65568" +dependencies = [ + "bytes", + "futures-sink", + "futures-util", + "memchr", + "pin-project-lite 0.2.13", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi 0.1.19", + "libc", + "winapi", +] + +[[package]] +name = "auto_impl" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fee3da8ef1276b0bee5dd1c7258010d8fffd31801447323115a25560e1327b89" +dependencies = [ + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "backtrace" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line 0.21.0", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object 0.32.1", + "rustc-demangle", +] + +[[package]] +name = "bandersnatch_vrfs" +version = "0.0.1" +source = "git+https://github.com/w3f/ring-vrf?rev=4b09416#4b09416fd23383ec436ddac127d58c7b7cd392c6" +dependencies = [ + "ark-bls12-381", + "ark-ec", + "ark-ed-on-bls12-381-bandersnatch", + "ark-ff", + "ark-serialize", + "ark-std", + "dleq_vrf", + "fflonk", + "merlin 3.0.0", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "ring 0.1.0", + "sha2 0.10.8", + "zeroize", +] + +[[package]] +name = "base-x" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" + +[[package]] +name = "base16ct" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" +dependencies = [ + "serde", +] + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "bindgen" +version = "0.65.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5" +dependencies = [ + "bitflags 1.3.2", + "cexpr", + "clang-sys", + "lazy_static", + "lazycell", + "peeking_take_while", + "prettyplease 0.2.15", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 2.0.39", +] + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + +[[package]] +name = "blake2" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94cb07b0da6a73955f8fb85d24c466778e70cda767a568229b104f0264089330" +dependencies = [ + "byte-tools", + "crypto-mac 0.7.0", + "digest 0.8.1", + "opaque-debug 0.2.3", +] + +[[package]] +name = "blake2" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "blake2-rfc" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" +dependencies = [ + "arrayvec 0.4.12", + "constant_time_eq 0.1.5", +] + +[[package]] +name = "blake2b_simd" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" +dependencies = [ + "arrayref", + "arrayvec 0.7.4", + "constant_time_eq 0.3.0", +] + +[[package]] +name = "blake2s_simd" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94230421e395b9920d23df13ea5d77a20e1725331f90fbbf6df6040b33f756ae" +dependencies = [ + "arrayref", + "arrayvec 0.7.4", + "constant_time_eq 0.3.0", +] + +[[package]] +name = "blake3" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87" +dependencies = [ + "arrayref", + "arrayvec 0.7.4", + "cc", + "cfg-if", + "constant_time_eq 0.3.0", +] + +[[package]] +name = "block-buffer" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" +dependencies = [ + "block-padding 0.1.5", + "byte-tools", + "byteorder", + "generic-array 0.12.4", +] + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "block-modes" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57a0e8073e8baa88212fb5823574c02ebccb395136ba9a164ab89379ec6072f0" +dependencies = [ + "block-padding 0.2.1", + "cipher 0.2.5", +] + +[[package]] +name = "block-padding" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" +dependencies = [ + "byte-tools", +] + +[[package]] +name = "block-padding" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" + +[[package]] +name = "bounded-collections" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca548b6163b872067dc5eb82fd130c56881435e30367d2073594a3d9744120dd" +dependencies = [ + "log", + "parity-scale-codec", + "scale-info", + "serde", +] + +[[package]] +name = "bounded-vec" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68534a48cbf63a4b1323c433cf21238c9ec23711e0df13b08c33e5c2082663ce" +dependencies = [ + "thiserror", +] + +[[package]] +name = "bp-xcm-bridge-hub-router" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "bs58" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" + +[[package]] +name = "bs58" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "bstr" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "build-helper" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdce191bf3fa4995ce948c8c83b4640a1745457a149e73c6db75b4ffe36aad5f" +dependencies = [ + "semver 0.6.0", +] + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "byte-slice-cast" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" + +[[package]] +name = "byte-tools" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" + +[[package]] +name = "bytemuck" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" + +[[package]] +name = "bzip2-sys" +version = "0.1.11+1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + +[[package]] +name = "c2-chacha" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d27dae93fe7b1e0424dc57179ac396908c26b035a87234809f5c4dfd1b47dc80" +dependencies = [ + "cipher 0.2.5", + "ppv-lite86", +] + +[[package]] +name = "camino" +version = "1.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo-platform" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" +dependencies = [ + "camino", + "cargo-platform", + "semver 1.0.20", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "case" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd6c0e7b807d60291f42f33f58480c0bfafe28ed08286446f45e463728cf9c1c" + +[[package]] +name = "cc" +version = "1.0.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "jobserver", + "libc", +] + +[[package]] +name = "ccm" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aca1a8fbc20b50ac9673ff014abfb2b5f4085ee1a850d408f14a159c5853ac7" +dependencies = [ + "aead 0.3.2", + "cipher 0.2.5", + "subtle 2.4.1", +] + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-expr" +version = "0.15.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3" +dependencies = [ + "smallvec", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + +[[package]] +name = "chacha" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddf3c081b5fba1e5615640aae998e0fbd10c24cbd897ee39ed754a77601a4862" +dependencies = [ + "byteorder", + "keystream", +] + +[[package]] +name = "chacha20" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" +dependencies = [ + "cfg-if", + "cipher 0.4.4", + "cpufeatures", +] + +[[package]] +name = "chacha20poly1305" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" +dependencies = [ + "aead 0.5.2", + "chacha20", + "cipher 0.4.4", + "poly1305", + "zeroize", +] + +[[package]] +name = "chrono" +version = "0.4.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "wasm-bindgen", + "windows-targets 0.48.5", +] + +[[package]] +name = "cid" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9b68e3193982cd54187d71afdb2a271ad4cf8af157858e9cb911b91321de143" +dependencies = [ + "core2", + "multibase", + "multihash", + "serde", + "unsigned-varint", +] + +[[package]] +name = "cipher" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", + "zeroize", +] + +[[package]] +name = "clang-sys" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "clap" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "clap_lex" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + +[[package]] +name = "coarsetime" +version = "0.1.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71367d3385c716342014ad17e3d19f7788ae514885a1f4c24f500260fb365e1a" +dependencies = [ + "libc", + "once_cell", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "common" +version = "0.1.0" +source = "git+https://github.com/w3f/ring-proof#b273d33f9981e2bb3375ab45faeb537f7ee35224" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "fflonk", + "getrandom_or_panic", + "merlin 3.0.0", + "rand_chacha 0.3.1", +] + +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + +[[package]] +name = "concurrent-queue" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "const-oid" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f" + +[[package]] +name = "const-random" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a" +dependencies = [ + "const-random-macro", +] + +[[package]] +name = "const-random-macro" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" +dependencies = [ + "getrandom 0.2.11", + "once_cell", + "tiny-keccak", +] + +[[package]] +name = "constant_time_eq" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" + +[[package]] +name = "constant_time_eq" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" + +[[package]] +name = "constcat" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd7e35aee659887cbfb97aaf227ac12cad1a9d7c71e55ff3376839ed4e282d08" + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "convert_case" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb4a24b1aaf0fd0ce8b45161144d6f42cd91677fd5940fd431183eb023b3a2b8" + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "core2" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" +dependencies = [ + "memchr", +] + +[[package]] +name = "cpp_demangle" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "cpufeatures" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" +dependencies = [ + "libc", +] + +[[package]] +name = "cranelift-bforest" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" +dependencies = [ + "cranelift-entity", +] + +[[package]] +name = "cranelift-codegen" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6e8c31ad3b2270e9aeec38723888fe1b0ace3bea2b06b3f749ccf46661d3220" +dependencies = [ + "bumpalo", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", + "cranelift-entity", + "cranelift-isle", + "gimli 0.27.3", + "hashbrown 0.13.2", + "log", + "regalloc2", + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cranelift-codegen-meta" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8ac5ac30d62b2d66f12651f6b606dbdfd9c2cfd0908de6b387560a277c5c9da" +dependencies = [ + "cranelift-codegen-shared", +] + +[[package]] +name = "cranelift-codegen-shared" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" + +[[package]] +name = "cranelift-entity" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40099d38061b37e505e63f89bab52199037a72b931ad4868d9089ff7268660b0" +dependencies = [ + "serde", +] + +[[package]] +name = "cranelift-frontend" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" +dependencies = [ + "cranelift-codegen", + "log", + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cranelift-isle" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80de6a7d0486e4acbd5f9f87ec49912bf4c8fb6aea00087b989685460d4469ba" + +[[package]] +name = "cranelift-native" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb6b03e0e03801c4b3fd8ce0758a94750c07a44e7944cc0ffbf0d3f2e7c79b00" +dependencies = [ + "cranelift-codegen", + "libc", + "target-lexicon", +] + +[[package]] +name = "cranelift-wasm" +version = "0.95.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff3220489a3d928ad91e59dd7aeaa8b3de18afb554a6211213673a71c90737ac" +dependencies = [ + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", + "itertools 0.10.5", + "log", + "smallvec", + "wasmparser", + "wasmtime-types", +] + +[[package]] +name = "crc" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" +dependencies = [ + "cfg-if", + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" +dependencies = [ + "autocfg", + "cfg-if", + "crossbeam-utils", + "memoffset 0.9.0", + "scopeguard", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-bigint" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" +dependencies = [ + "generic-array 0.14.7", + "rand_core 0.6.4", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "crypto-bigint" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a" +dependencies = [ + "generic-array 0.14.7", + "rand_core 0.6.4", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array 0.14.7", + "rand_core 0.6.4", + "typenum", +] + +[[package]] +name = "crypto-mac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +dependencies = [ + "generic-array 0.12.4", + "subtle 1.0.0", +] + +[[package]] +name = "crypto-mac" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" +dependencies = [ + "generic-array 0.14.7", + "subtle 2.4.1", +] + +[[package]] +name = "crypto-mac" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" +dependencies = [ + "generic-array 0.14.7", + "subtle 2.4.1", +] + +[[package]] +name = "ctr" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" +dependencies = [ + "cipher 0.3.0", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher 0.4.4", +] + +[[package]] +name = "cumulus-pallet-dmp-queue" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", +] + +[[package]] +name = "cumulus-pallet-parachain-system" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bytes", + "cumulus-pallet-parachain-system-proc-macro", + "cumulus-primitives-core", + "cumulus-primitives-parachain-inherent", + "environmental", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "polkadot-parachain-primitives", + "polkadot-runtime-parachains", + "scale-info", + "sp-core", + "sp-externalities", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", + "sp-version", + "staging-xcm", + "trie-db", +] + +[[package]] +name = "cumulus-pallet-parachain-system-proc-macro" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "cumulus-pallet-xcm" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", +] + +[[package]] +name = "cumulus-pallet-xcmp-queue" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bp-xcm-bridge-hub-router", + "cumulus-primitives-core", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "polkadot-runtime-common", + "polkadot-runtime-parachains", + "rand_chacha 0.3.1", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "cumulus-primitives-core" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "polkadot-primitives", + "scale-info", + "sp-api", + "sp-runtime", + "sp-std", + "sp-trie", + "staging-xcm", +] + +[[package]] +name = "cumulus-primitives-parachain-inherent" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "cumulus-primitives-core", + "cumulus-relay-chain-interface", + "cumulus-test-relay-sproof-builder", + "parity-scale-codec", + "sc-client-api", + "scale-info", + "sp-api", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-storage", + "sp-trie", + "tracing", +] + +[[package]] +name = "cumulus-primitives-timestamp" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "futures", + "parity-scale-codec", + "sp-inherents", + "sp-std", + "sp-timestamp", +] + +[[package]] +name = "cumulus-primitives-utility" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "log", + "pallet-xcm-benchmarks", + "parity-scale-codec", + "polkadot-runtime-common", + "polkadot-runtime-parachains", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", +] + +[[package]] +name = "cumulus-relay-chain-interface" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "cumulus-primitives-core", + "futures", + "jsonrpsee-core", + "parity-scale-codec", + "polkadot-overseer", + "sc-client-api", + "sp-api", + "sp-blockchain", + "sp-state-machine", + "thiserror", +] + +[[package]] +name = "cumulus-test-relay-sproof-builder" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "parity-scale-codec", + "polkadot-primitives", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", +] + +[[package]] +name = "curve25519-dalek" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b85542f99a2dfa2a1b8e192662741c9859a846b296bef1c92ef9b58b5a216" +dependencies = [ + "byteorder", + "digest 0.8.1", + "rand_core 0.5.1", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "curve25519-dalek" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.5.1", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "curve25519-dalek" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c" +dependencies = [ + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "platforms", + "rustc_version", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "cxx" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7129e341034ecb940c9072817cd9007974ea696844fc4dd582dc1653a7fbe2e8" +dependencies = [ + "cc", + "cxxbridge-flags", + "cxxbridge-macro", + "link-cplusplus", +] + +[[package]] +name = "cxx-build" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2a24f3f5f8eed71936f21e570436f024f5c2e25628f7496aa7ccd03b90109d5" +dependencies = [ + "cc", + "codespan-reporting", + "once_cell", + "proc-macro2", + "quote", + "scratch", + "syn 2.0.39", +] + +[[package]] +name = "cxxbridge-flags" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06fdd177fc61050d63f67f5bd6351fac6ab5526694ea8e359cd9cd3b75857f44" + +[[package]] +name = "cxxbridge-macro" +version = "1.0.110" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "587663dd5fb3d10932c8aecfe7c844db1bcf0aee93eeab08fac13dc1212c2e7f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "darling" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +dependencies = [ + "darling_core", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "data-encoding" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" + +[[package]] +name = "data-encoding-macro" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c904b33cc60130e1aeea4956ab803d08a3f4a0ca82d64ed757afac3891f2bb99" +dependencies = [ + "data-encoding", + "data-encoding-macro-internal", +] + +[[package]] +name = "data-encoding-macro-internal" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fdf3fce3ce863539ec1d7fd1b6dcc3c645663376b43ed376bbf887733e4f772" +dependencies = [ + "data-encoding", + "syn 1.0.109", +] + +[[package]] +name = "der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" +dependencies = [ + "const-oid", + "pem-rfc7468", + "zeroize", +] + +[[package]] +name = "der" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] +name = "der-parser" +version = "7.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe398ac75057914d7d07307bf67dc7f3f574a26783b4fc7805a20ffa9f506e82" +dependencies = [ + "asn1-rs 0.3.1", + "displaydoc", + "nom", + "num-bigint", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "der-parser" +version = "8.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" +dependencies = [ + "asn1-rs 0.5.2", + "displaydoc", + "nom", + "num-bigint", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "deranged" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive-syn-parse" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79116f119dd1dba1abf1f3405f03b9b0e79a27a3883864bfebded8a3dc768cd" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3" +dependencies = [ + "derive_builder_macro", +] + +[[package]] +name = "derive_builder_core" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder_macro" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68" +dependencies = [ + "derive_builder_core", + "syn 1.0.109", +] + +[[package]] +name = "derive_more" +version = "0.99.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +dependencies = [ + "convert_case 0.4.0", + "proc-macro2", + "quote", + "rustc_version", + "syn 1.0.109", +] + +[[package]] +name = "difflib" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" + +[[package]] +name = "digest" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" +dependencies = [ + "generic-array 0.12.4", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer 0.10.4", + "const-oid", + "crypto-common", + "subtle 2.4.1", +] + +[[package]] +name = "directories" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "directories-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "displaydoc" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "dleq_vrf" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=4b09416#4b09416fd23383ec436ddac127d58c7b7cd392c6" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-scale", + "ark-secret-scalar", + "ark-serialize", + "ark-std", + "ark-transcript", + "arrayvec 0.7.4", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "docify" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4235e9b248e2ba4b92007fe9c646f3adf0ffde16dc74713eacc92b8bc58d8d2f" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47020e12d7c7505670d1363dd53d6c23724f71a90a3ae32ff8eba40de8404626" +dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.39", + "termcolor", + "toml 0.7.8", + "walkdir", +] + +[[package]] +name = "downcast" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" + +[[package]] +name = "dtoa" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" + +[[package]] +name = "dyn-clonable" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e9232f0e607a262ceb9bd5141a3dfb3e4db6994b31989bbfd845878cba59fd4" +dependencies = [ + "dyn-clonable-impl", + "dyn-clone", +] + +[[package]] +name = "dyn-clonable-impl" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "558e40ea573c374cf53507fd240b7ee2f5477df7cfebdb97323ec61c719399c5" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "dyn-clone" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d" + +[[package]] +name = "ecdsa" +version = "0.14.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" +dependencies = [ + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der 0.7.8", + "digest 0.10.7", + "elliptic-curve 0.13.7", + "rfc6979 0.4.0", + "signature 2.2.0", + "spki 0.7.2", +] + +[[package]] +name = "ed25519" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +dependencies = [ + "signature 1.6.4", +] + +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8 0.10.2", + "signature 2.2.0", +] + +[[package]] +name = "ed25519-dalek" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +dependencies = [ + "curve25519-dalek 3.2.0", + "ed25519 1.5.3", + "rand 0.7.3", + "sha2 0.9.9", + "zeroize", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" +dependencies = [ + "curve25519-dalek 4.1.1", + "ed25519 2.2.3", + "rand_core 0.6.4", + "serde", + "sha2 0.10.8", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "ed25519-zebra" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c24f403d068ad0b359e577a77f92392118be3f3c927538f2bb544a5ecd828c6" +dependencies = [ + "curve25519-dalek 3.2.0", + "hashbrown 0.12.3", + "hex", + "rand_core 0.6.4", + "sha2 0.9.9", + "zeroize", +] + +[[package]] +name = "either" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" + +[[package]] +name = "elliptic-curve" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" +dependencies = [ + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", + "digest 0.10.7", + "ff 0.12.1", + "generic-array 0.14.7", + "group 0.12.1", + "hkdf", + "pem-rfc7468", + "pkcs8 0.9.0", + "rand_core 0.6.4", + "sec1 0.3.0", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "elliptic-curve" +version = "0.13.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9775b22bc152ad86a0cf23f0f348b884b26add12bf741e7ffc4d4ab2ab4d205" +dependencies = [ + "base16ct 0.2.0", + "crypto-bigint 0.5.4", + "digest 0.10.7", + "ff 0.13.0", + "generic-array 0.14.7", + "group 0.13.0", + "pkcs8 0.10.2", + "rand_core 0.6.4", + "sec1 0.7.3", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "enum-as-inner" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "enumflags2" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939" +dependencies = [ + "enumflags2_derive", +] + +[[package]] +name = "enumflags2_derive" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "enumn" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "env_logger" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece" +dependencies = [ + "humantime", + "is-terminal", + "log", + "regex", + "termcolor", +] + +[[package]] +name = "environmental" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48c92028aaa870e83d51c64e5d4e0b6981b360c522198c23959f219a4e1b15b" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "ethbloom" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +dependencies = [ + "crunchy", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde 0.4.0", + "scale-info", + "tiny-keccak", +] + +[[package]] +name = "ethereum" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a89fb87a9e103f71b903b80b670200b54cc67a07578f070681f1fffb7396fb7" +dependencies = [ + "bytes", + "ethereum-types", + "hash-db 0.15.2", + "hash256-std-hasher", + "parity-scale-codec", + "rlp", + "scale-info", + "serde", + "sha3", + "triehash", +] + +[[package]] +name = "ethereum-types" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +dependencies = [ + "ethbloom", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde 0.4.0", + "primitive-types", + "scale-info", + "uint", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "evm" +version = "0.40.0" +source = "git+https://github.com/moonbeam-foundation/evm?branch=moonbeam-polkadot-v1.3.0#3b73337fe0495bc02259081a4004c74b5afbe52b" +dependencies = [ + "auto_impl", + "environmental", + "ethereum", + "evm-core", + "evm-gasometer", + "evm-runtime", + "log", + "parity-scale-codec", + "primitive-types", + "rlp", + "scale-info", + "serde", + "sha3", +] + +[[package]] +name = "evm-core" +version = "0.40.0" +source = "git+https://github.com/moonbeam-foundation/evm?branch=moonbeam-polkadot-v1.3.0#3b73337fe0495bc02259081a4004c74b5afbe52b" +dependencies = [ + "parity-scale-codec", + "primitive-types", + "scale-info", + "serde", +] + +[[package]] +name = "evm-gasometer" +version = "0.40.0" +source = "git+https://github.com/moonbeam-foundation/evm?branch=moonbeam-polkadot-v1.3.0#3b73337fe0495bc02259081a4004c74b5afbe52b" +dependencies = [ + "environmental", + "evm-core", + "evm-runtime", + "primitive-types", +] + +[[package]] +name = "evm-runtime" +version = "0.40.0" +source = "git+https://github.com/moonbeam-foundation/evm?branch=moonbeam-polkadot-v1.3.0#3b73337fe0495bc02259081a4004c74b5afbe52b" +dependencies = [ + "auto_impl", + "environmental", + "evm-core", + "primitive-types", + "sha3", +] + +[[package]] +name = "evm-tracing-events" +version = "0.1.0" +dependencies = [ + "environmental", + "ethereum", + "ethereum-types", + "evm", + "evm-gasometer", + "evm-runtime", + "parity-scale-codec", + "sp-runtime-interface", +] + +[[package]] +name = "exit-future" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5" +dependencies = [ + "futures", +] + +[[package]] +name = "expander" +version = "0.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a718c0675c555c5f976fff4ea9e2c150fa06cefa201cadef87cfbf9324075881" +dependencies = [ + "blake3", + "fs-err", + "proc-macro2", + "quote", +] + +[[package]] +name = "expander" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f86a749cf851891866c10515ef6c299b5c69661465e9c3bbe7e07a2b77fb0f7" +dependencies = [ + "blake2 0.10.6", + "fs-err", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "fake-simd" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" + +[[package]] +name = "fallible-iterator" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" + +[[package]] +name = "faster-hex" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51e2ce894d53b295cf97b05685aa077950ff3e8541af83217fc720a6437169f8" + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "fatality" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ad875162843b0d046276327afe0136e9ed3a23d5a754210fb6f1f33610d39ab" +dependencies = [ + "fatality-proc-macro", + "thiserror", +] + +[[package]] +name = "fatality-proc-macro" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5aa1e3ae159e592ad222dc90c5acbad632b527779ba88486abe92782ab268bd" +dependencies = [ + "expander 0.0.4", + "indexmap 1.9.3", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", + "thiserror", +] + +[[package]] +name = "fdlimit" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c4c9e43643f5a3be4ca5b67d26b98031ff9db6806c3440ae32e02e3ceac3f1b" +dependencies = [ + "libc", +] + +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "rand_core 0.6.4", + "subtle 2.4.1", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle 2.4.1", +] + +[[package]] +name = "fflonk" +version = "0.1.0" +source = "git+https://github.com/w3f/fflonk#1e854f35e9a65d08b11a86291405cdc95baa0a35" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "merlin 3.0.0", +] + +[[package]] +name = "fiat-crypto" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7" + +[[package]] +name = "file-per-thread-logger" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84f2e425d9790201ba4af4630191feac6dcc98765b118d4d18e91d23c2353866" +dependencies = [ + "env_logger", + "log", +] + +[[package]] +name = "filetime" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.3.5", + "windows-sys 0.48.0", +] + +[[package]] +name = "finality-grandpa" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36530797b9bf31cd4ff126dcfee8170f86b00cfdcea3269d73133cc0415945c3" +dependencies = [ + "either", + "futures", + "futures-timer", + "log", + "num-traits", + "parity-scale-codec", + "parking_lot 0.12.1", + "scale-info", +] + +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "byteorder", + "rand 0.8.5", + "rustc-hex", + "static_assertions", +] + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "flate2" +version = "1.0.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" +dependencies = [ + "crc32fast", + "libz-sys", + "miniz_oxide", +] + +[[package]] +name = "float-cmp" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" +dependencies = [ + "num-traits", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "fork-tree" +version = "3.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "form_urlencoded" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fp-account" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "hex", + "impl-serde 0.4.0", + "libsecp256k1", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", + "sp-std", +] + +[[package]] +name = "fp-consensus" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "ethereum", + "parity-scale-codec", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "fp-ethereum" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-evm", + "frame-support", + "parity-scale-codec", + "sp-std", +] + +[[package]] +name = "fp-evm" +version = "3.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "evm", + "frame-support", + "num_enum 0.7.1", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "fp-rpc" +version = "3.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-evm", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-core", + "sp-runtime", + "sp-state-machine", + "sp-std", +] + +[[package]] +name = "fp-self-contained" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "frame-support", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", +] + +[[package]] +name = "fp-storage" +version = "2.0.0" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "parity-scale-codec", + "serde", +] + +[[package]] +name = "fragile" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" + +[[package]] +name = "frame-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-support-procedural", + "frame-system", + "linregress", + "log", + "parity-scale-codec", + "paste", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", + "sp-std", + "sp-storage", + "static_assertions", +] + +[[package]] +name = "frame-election-provider-solution-type" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "frame-election-provider-support" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-election-provider-solution-type", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-npos-elections", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "frame-executive" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "frame-try-runtime", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-tracing", +] + +[[package]] +name = "frame-metadata" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cf1549fba25a6fcac22785b61698317d958e96cac72a59102ea45b9ae64692" +dependencies = [ + "cfg-if", + "parity-scale-codec", + "scale-info", + "serde", +] + +[[package]] +name = "frame-support" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "aquamarine", + "bitflags 1.3.2", + "docify", + "environmental", + "frame-metadata", + "frame-support-procedural", + "impl-trait-for-tuples", + "k256", + "log", + "macro_magic", + "parity-scale-codec", + "paste", + "scale-info", + "serde", + "serde_json", + "smallvec", + "sp-api", + "sp-arithmetic", + "sp-core", + "sp-core-hashing-proc-macro", + "sp-debug-derive", + "sp-genesis-builder", + "sp-inherents", + "sp-io", + "sp-metadata-ir", + "sp-runtime", + "sp-staking", + "sp-state-machine", + "sp-std", + "sp-tracing", + "sp-weights", + "static_assertions", + "tt-call", +] + +[[package]] +name = "frame-support-procedural" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "expander 2.0.0", + "frame-support-procedural-tools", + "itertools 0.10.5", + "macro_magic", + "proc-macro-warning", + "proc-macro2", + "quote", + "sp-core-hashing", + "syn 2.0.39", +] + +[[package]] +name = "frame-support-procedural-tools" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support-procedural-tools-derive", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "frame-support-procedural-tools-derive" +version = "3.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "frame-system" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cfg-if", + "frame-support", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-version", + "sp-weights", +] + +[[package]] +name = "frame-system-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "frame-system-rpc-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "sp-api", +] + +[[package]] +name = "frame-try-runtime" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "parity-scale-codec", + "sp-api", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "fs-err" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5fd9bcbe8b1087cbd395b51498c01bc997cef73e778a80b77a811af5e2d29f" +dependencies = [ + "autocfg", +] + +[[package]] +name = "fs2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" + +[[package]] +name = "futures-executor" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", + "num_cpus", +] + +[[package]] +name = "futures-io" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa" + +[[package]] +name = "futures-lite" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" +dependencies = [ + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite 0.2.13", + "waker-fn", +] + +[[package]] +name = "futures-macro" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "futures-rustls" +version = "0.22.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2411eed028cdf8c8034eaf21f9915f956b6c3abec4d4c7949ee67f0721127bd" +dependencies = [ + "futures-io", + "rustls 0.20.9", + "webpki 0.22.4", +] + +[[package]] +name = "futures-sink" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817" + +[[package]] +name = "futures-task" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" + +[[package]] +name = "futures-timer" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" + +[[package]] +name = "futures-util" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite 0.2.13", + "pin-utils", + "slab", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "generic-array" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" +dependencies = [ + "typenum", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom_or_panic" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9" +dependencies = [ + "rand_core 0.6.4", +] + +[[package]] +name = "ghash" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99" +dependencies = [ + "opaque-debug 0.3.0", + "polyval 0.5.3", +] + +[[package]] +name = "ghash" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d930750de5717d2dd0b8c0d42c076c0e884c81a73e6cab859bbd2339c71e3e40" +dependencies = [ + "opaque-debug 0.3.0", + "polyval 0.6.1", +] + +[[package]] +name = "gimli" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" +dependencies = [ + "fallible-iterator", + "indexmap 1.9.3", + "stable_deref_trait", +] + +[[package]] +name = "gimli" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "globset" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d" +dependencies = [ + "aho-corasick", + "bstr", + "fnv", + "log", + "regex", +] + +[[package]] +name = "group" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" +dependencies = [ + "ff 0.12.1", + "rand_core 0.6.4", + "subtle 2.4.1", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff 0.13.0", + "rand_core 0.6.4", + "subtle 2.4.1", +] + +[[package]] +name = "h2" +version = "0.3.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap 2.1.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hash-db" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" + +[[package]] +name = "hash-db" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e7d7786361d7425ae2fe4f9e407eb0efaa0840f5212d109cc018c40c35c6ab4" + +[[package]] +name = "hash256-std-hasher" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92c171d55b98633f4ed3860808f004099b36c1cc29c42cfc53aa8591b21efcf2" +dependencies = [ + "crunchy", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.7", +] + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +dependencies = [ + "ahash 0.8.6", +] + +[[package]] +name = "hashbrown" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" +dependencies = [ + "ahash 0.8.6", + "allocator-api2", +] + +[[package]] +name = "hashlink" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.2", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "hermit-abi" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] + +[[package]] +name = "hermit-abi" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hex-literal" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ebdb29d2ea9ed0083cd8cece49bbd968021bd99b0849edb4a9a7ee0fdf6a4e0" + +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + +[[package]] +name = "hkdf" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437" +dependencies = [ + "hmac 0.12.1", +] + +[[package]] +name = "hmac" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" +dependencies = [ + "crypto-mac 0.8.0", + "digest 0.9.0", +] + +[[package]] +name = "hmac" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" +dependencies = [ + "crypto-mac 0.11.1", + "digest 0.9.0", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "hmac-drbg" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" +dependencies = [ + "digest 0.9.0", + "generic-array 0.14.7", + "hmac 0.8.1", +] + +[[package]] +name = "home" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + +[[package]] +name = "http" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite 0.2.13", +] + +[[package]] +name = "http-range-header" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite 0.2.13", + "socket2 0.4.10", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +dependencies = [ + "matches", + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "if-addrs" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbc0fa01ffc752e9dbc72818cdb072cd028b86be5e09dd04c5a643704fe101a9" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "if-watch" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb892e5777fe09e16f3d44de7802f4daa7267ecbe8c466f19d94e25bb0c303e" +dependencies = [ + "async-io", + "core-foundation", + "fnv", + "futures", + "if-addrs", + "ipnet", + "log", + "rtnetlink", + "system-configuration", + "tokio", + "windows", +] + +[[package]] +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + +[[package]] +name = "impl-serde" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4551f042f3438e64dbd6226b20527fc84a6e1fe65688b58746a2f53623f25f5c" +dependencies = [ + "serde", +] + +[[package]] +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +dependencies = [ + "serde", +] + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "include_dir" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18762faeff7122e89e0857b02f7ce6fcc0d101d5e9ad2ad7846cc01d61b7f19e" +dependencies = [ + "include_dir_macros", +] + +[[package]] +name = "include_dir_macros" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" +dependencies = [ + "equivalent", + "hashbrown 0.14.2", +] + +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "integer-encoding" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bb03732005da905c88227371639bf1ad885cc712789c011c31c5fb3ab3ccf02" + +[[package]] +name = "integer-sqrt" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "276ec31bcb4a9ee45f58bec6f9ec700ae4cf4f4f8f2fa7e06cb406bd5ffdd770" +dependencies = [ + "num-traits", +] + +[[package]] +name = "interceptor" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e8a11ae2da61704edada656798b61c94b35ecac2c58eb955156987d5e6be90b" +dependencies = [ + "async-trait", + "bytes", + "log", + "rand 0.8.5", + "rtcp", + "rtp", + "thiserror", + "tokio", + "waitgroup", + "webrtc-srtp", + "webrtc-util", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" +dependencies = [ + "hermit-abi 0.3.3", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "ip_network" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2f047c0a98b2f299aa5d6d7088443570faae494e9ae1305e48be000c9e0eb1" + +[[package]] +name = "ipconfig" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2 0.5.5", + "widestring", + "windows-sys 0.48.0", + "winreg", +] + +[[package]] +name = "ipnet" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" + +[[package]] +name = "is-terminal" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" +dependencies = [ + "hermit-abi 0.3.3", + "rustix 0.38.24", + "windows-sys 0.48.0", +] + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" + +[[package]] +name = "jobserver" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" +dependencies = [ + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "jsonrpsee" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "367a292944c07385839818bb71c8d76611138e2dedb0677d035b8da21d29c78b" +dependencies = [ + "jsonrpsee-core", + "jsonrpsee-proc-macros", + "jsonrpsee-server", + "jsonrpsee-types", + "tracing", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b5dde66c53d6dcdc8caea1874a45632ec0fcf5b437789f1e45766a1512ce803" +dependencies = [ + "anyhow", + "arrayvec 0.7.4", + "async-trait", + "beef", + "futures-channel", + "futures-util", + "globset", + "hyper", + "jsonrpsee-types", + "parking_lot 0.12.1", + "rand 0.8.5", + "rustc-hash", + "serde", + "serde_json", + "soketto", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44e8ab85614a08792b9bff6c8feee23be78c98d0182d4c622c05256ab553892a" +dependencies = [ + "heck", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "jsonrpsee-server" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf4d945a6008c9b03db3354fb3c83ee02d2faa9f2e755ec1dfb69c3551b8f4ba" +dependencies = [ + "futures-channel", + "futures-util", + "http", + "hyper", + "jsonrpsee-core", + "jsonrpsee-types", + "serde", + "serde_json", + "soketto", + "tokio", + "tokio-stream", + "tokio-util", + "tower", + "tracing", +] + +[[package]] +name = "jsonrpsee-types" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245ba8e5aa633dd1c1e4fae72bce06e71f42d34c14a2767c6b4d173b57bee5e5" +dependencies = [ + "anyhow", + "beef", + "serde", + "serde_json", + "thiserror", + "tracing", +] + +[[package]] +name = "k256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b" +dependencies = [ + "cfg-if", + "ecdsa 0.16.9", + "elliptic-curve 0.13.7", + "once_cell", + "sha2 0.10.8", +] + +[[package]] +name = "keccak" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "keystream" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c33070833c9ee02266356de0c43f723152bd38bd96ddf52c82b3af10c9138b28" + +[[package]] +name = "kvdb" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d770dcb02bf6835887c3a979b5107a04ff4bbde97a5f0928d27404a155add9" +dependencies = [ + "smallvec", +] + +[[package]] +name = "kvdb-memorydb" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf7a85fe66f9ff9cd74e169fdd2c94c6e1e74c412c99a73b4df3200b5d3760b2" +dependencies = [ + "kvdb", + "parking_lot 0.12.1", +] + +[[package]] +name = "kvdb-rocksdb" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b644c70b92285f66bfc2032922a79000ea30af7bc2ab31902992a5dcb9b434f6" +dependencies = [ + "kvdb", + "num_cpus", + "parking_lot 0.12.1", + "regex", + "rocksdb", + "smallvec", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +dependencies = [ + "spin 0.5.2", +] + +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "libp2p" +version = "0.51.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f210d259724eae82005b5c48078619b7745edb7b76de370b03f8ba59ea103097" +dependencies = [ + "bytes", + "futures", + "futures-timer", + "getrandom 0.2.11", + "instant", + "libp2p-allow-block-list", + "libp2p-connection-limits", + "libp2p-core", + "libp2p-dns", + "libp2p-identify", + "libp2p-identity", + "libp2p-kad", + "libp2p-mdns", + "libp2p-metrics", + "libp2p-noise", + "libp2p-ping", + "libp2p-quic", + "libp2p-request-response", + "libp2p-swarm", + "libp2p-tcp", + "libp2p-wasm-ext", + "libp2p-webrtc", + "libp2p-websocket", + "libp2p-yamux", + "multiaddr", + "pin-project", +] + +[[package]] +name = "libp2p-allow-block-list" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "510daa05efbc25184458db837f6f9a5143888f1caa742426d92e1833ddd38a50" +dependencies = [ + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "void", +] + +[[package]] +name = "libp2p-connection-limits" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4caa33f1d26ed664c4fe2cca81a08c8e07d4c1c04f2f4ac7655c2dd85467fda0" +dependencies = [ + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "void", +] + +[[package]] +name = "libp2p-core" +version = "0.39.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c1df63c0b582aa434fb09b2d86897fa2b419ffeccf934b36f87fcedc8e835c2" +dependencies = [ + "either", + "fnv", + "futures", + "futures-timer", + "instant", + "libp2p-identity", + "log", + "multiaddr", + "multihash", + "multistream-select", + "once_cell", + "parking_lot 0.12.1", + "pin-project", + "quick-protobuf", + "rand 0.8.5", + "rw-stream-sink", + "smallvec", + "thiserror", + "unsigned-varint", + "void", +] + +[[package]] +name = "libp2p-dns" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "146ff7034daae62077c415c2376b8057368042df6ab95f5432ad5e88568b1554" +dependencies = [ + "futures", + "libp2p-core", + "log", + "parking_lot 0.12.1", + "smallvec", + "trust-dns-resolver", +] + +[[package]] +name = "libp2p-identify" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5455f472243e63b9c497ff320ded0314254a9eb751799a39c283c6f20b793f3c" +dependencies = [ + "asynchronous-codec", + "either", + "futures", + "futures-timer", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "log", + "lru", + "quick-protobuf", + "quick-protobuf-codec", + "smallvec", + "thiserror", + "void", +] + +[[package]] +name = "libp2p-identity" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "276bb57e7af15d8f100d3c11cbdd32c6752b7eef4ba7a18ecf464972c07abcce" +dependencies = [ + "bs58 0.4.0", + "ed25519-dalek 2.1.0", + "log", + "multiaddr", + "multihash", + "quick-protobuf", + "rand 0.8.5", + "sha2 0.10.8", + "thiserror", + "zeroize", +] + +[[package]] +name = "libp2p-kad" +version = "0.43.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39d5ef876a2b2323d63c258e63c2f8e36f205fe5a11f0b3095d59635650790ff" +dependencies = [ + "arrayvec 0.7.4", + "asynchronous-codec", + "bytes", + "either", + "fnv", + "futures", + "futures-timer", + "instant", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "log", + "quick-protobuf", + "rand 0.8.5", + "sha2 0.10.8", + "smallvec", + "thiserror", + "uint", + "unsigned-varint", + "void", +] + +[[package]] +name = "libp2p-mdns" +version = "0.43.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19983e1f949f979a928f2c603de1cf180cc0dc23e4ac93a62651ccb18341460b" +dependencies = [ + "data-encoding", + "futures", + "if-watch", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "log", + "rand 0.8.5", + "smallvec", + "socket2 0.4.10", + "tokio", + "trust-dns-proto", + "void", +] + +[[package]] +name = "libp2p-metrics" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a42ec91e227d7d0dafa4ce88b333cdf5f277253873ab087555c92798db2ddd46" +dependencies = [ + "libp2p-core", + "libp2p-identify", + "libp2p-kad", + "libp2p-ping", + "libp2p-swarm", + "prometheus-client", +] + +[[package]] +name = "libp2p-noise" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3673da89d29936bc6435bafc638e2f184180d554ce844db65915113f86ec5e" +dependencies = [ + "bytes", + "curve25519-dalek 3.2.0", + "futures", + "libp2p-core", + "libp2p-identity", + "log", + "once_cell", + "quick-protobuf", + "rand 0.8.5", + "sha2 0.10.8", + "snow", + "static_assertions", + "thiserror", + "x25519-dalek 1.1.1", + "zeroize", +] + +[[package]] +name = "libp2p-ping" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e57759c19c28a73ef1eb3585ca410cefb72c1a709fcf6de1612a378e4219202" +dependencies = [ + "either", + "futures", + "futures-timer", + "instant", + "libp2p-core", + "libp2p-swarm", + "log", + "rand 0.8.5", + "void", +] + +[[package]] +name = "libp2p-quic" +version = "0.7.0-alpha.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6b26abd81cd2398382a1edfe739b539775be8a90fa6914f39b2ab49571ec735" +dependencies = [ + "bytes", + "futures", + "futures-timer", + "if-watch", + "libp2p-core", + "libp2p-identity", + "libp2p-tls", + "log", + "parking_lot 0.12.1", + "quinn-proto", + "rand 0.8.5", + "rustls 0.20.9", + "thiserror", + "tokio", +] + +[[package]] +name = "libp2p-request-response" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffdb374267d42dc5ed5bc53f6e601d4a64ac5964779c6e40bb9e4f14c1e30d5" +dependencies = [ + "async-trait", + "futures", + "instant", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "rand 0.8.5", + "smallvec", +] + +[[package]] +name = "libp2p-swarm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "903b3d592d7694e56204d211f29d31bc004be99386644ba8731fc3e3ef27b296" +dependencies = [ + "either", + "fnv", + "futures", + "futures-timer", + "instant", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm-derive", + "log", + "rand 0.8.5", + "smallvec", + "tokio", + "void", +] + +[[package]] +name = "libp2p-swarm-derive" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fba456131824ab6acd4c7bf61e9c0f0a3014b5fc9868ccb8e10d344594cdc4f" +dependencies = [ + "heck", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "libp2p-tcp" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33d33698596d7722d85d3ab0c86c2c322254fce1241e91208e3679b4eb3026cf" +dependencies = [ + "futures", + "futures-timer", + "if-watch", + "libc", + "libp2p-core", + "log", + "socket2 0.4.10", + "tokio", +] + +[[package]] +name = "libp2p-tls" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff08d13d0dc66e5e9ba6279c1de417b84fa0d0adc3b03e5732928c180ec02781" +dependencies = [ + "futures", + "futures-rustls", + "libp2p-core", + "libp2p-identity", + "rcgen 0.10.0", + "ring 0.16.20", + "rustls 0.20.9", + "thiserror", + "webpki 0.22.4", + "x509-parser 0.14.0", + "yasna", +] + +[[package]] +name = "libp2p-wasm-ext" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77dff9d32353a5887adb86c8afc1de1a94d9e8c3bc6df8b2201d7cdf5c848f43" +dependencies = [ + "futures", + "js-sys", + "libp2p-core", + "parity-send-wrapper", + "wasm-bindgen", + "wasm-bindgen-futures", +] + +[[package]] +name = "libp2p-webrtc" +version = "0.4.0-alpha.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dba48592edbc2f60b4bc7c10d65445b0c3964c07df26fdf493b6880d33be36f8" +dependencies = [ + "async-trait", + "asynchronous-codec", + "bytes", + "futures", + "futures-timer", + "hex", + "if-watch", + "libp2p-core", + "libp2p-identity", + "libp2p-noise", + "log", + "multihash", + "quick-protobuf", + "quick-protobuf-codec", + "rand 0.8.5", + "rcgen 0.9.3", + "serde", + "stun", + "thiserror", + "tinytemplate", + "tokio", + "tokio-util", + "webrtc", +] + +[[package]] +name = "libp2p-websocket" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "111273f7b3d3510524c752e8b7a5314b7f7a1fee7e68161c01a7d72cbb06db9f" +dependencies = [ + "either", + "futures", + "futures-rustls", + "libp2p-core", + "log", + "parking_lot 0.12.1", + "quicksink", + "rw-stream-sink", + "soketto", + "url", + "webpki-roots", +] + +[[package]] +name = "libp2p-yamux" +version = "0.43.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dcd21d950662700a385d4c6d68e2f5f54d778e97068cdd718522222ef513bda" +dependencies = [ + "futures", + "libp2p-core", + "log", + "thiserror", + "yamux", +] + +[[package]] +name = "libredox" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall 0.4.1", +] + +[[package]] +name = "librocksdb-sys" +version = "0.11.0+8.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" +dependencies = [ + "bindgen", + "bzip2-sys", + "cc", + "glob", + "libc", + "libz-sys", + "tikv-jemalloc-sys", +] + +[[package]] +name = "libsecp256k1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" +dependencies = [ + "arrayref", + "base64 0.13.1", + "digest 0.9.0", + "hmac-drbg", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.8.5", + "serde", + "sha2 0.9.9", + "typenum", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle 2.4.1", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libz-sys" +version = "1.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "link-cplusplus" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d240c6f7e1ba3a28b0249f774e6a9dd0175054b52dfbb61b16eb8505c3785c9" +dependencies = [ + "cc", +] + +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linked_hash_set" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "linregress" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4de04dcecc58d366391f9920245b85ffa684558a5ef6e7736e754347c3aea9c2" +dependencies = [ + "nalgebra", +] + +[[package]] +name = "linux-raw-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" + +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" + +[[package]] +name = "lioness" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae926706ba42c425c9457121178330d75e273df2e82e28b758faf3de3a9acb9" +dependencies = [ + "arrayref", + "blake2 0.8.1", + "chacha", + "keystream", +] + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "lru" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "718e8fae447df0c7e1ba7f5189829e63fd536945c8988d61444c19039f16b670" +dependencies = [ + "hashbrown 0.13.2", +] + +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "lz4" +version = "1.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9e2dd86df36ce760a60f6ff6ad526f7ba1f14ba0356f8254fb6905e6494df1" +dependencies = [ + "libc", + "lz4-sys", +] + +[[package]] +name = "lz4-sys" +version = "1.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57d27b317e207b10f69f5e75494119e391a96f48861ae870d1da6edac98ca900" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "mach" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" +dependencies = [ + "libc", +] + +[[package]] +name = "macro_magic" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e03844fc635e92f3a0067e25fa4bf3e3dbf3f2927bf3aa01bb7bc8f1c428949d" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "macro_magic_core" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "468155613a44cfd825f1fb0ffa532b018253920d404e6fca1e8d43155198a46d" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ea73aa640dc01d62a590d48c0c3521ed739d53b27f919b25c3551e233481654" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "macro_magic_macros" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef9d79ae96aaba821963320eb2b6e34d17df1e5a83d8a1985c29cc5be59577b3" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "matchers" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + +[[package]] +name = "matrixmultiply" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2" +dependencies = [ + "autocfg", + "rawpointer", +] + +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + +[[package]] +name = "memchr" +version = "2.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" + +[[package]] +name = "memfd" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" +dependencies = [ + "rustix 0.38.24", +] + +[[package]] +name = "memmap2" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +dependencies = [ + "autocfg", +] + +[[package]] +name = "memoffset" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +dependencies = [ + "autocfg", +] + +[[package]] +name = "memoffset" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" +dependencies = [ + "autocfg", +] + +[[package]] +name = "memory-db" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "808b50db46293432a45e63bc15ea51e0ab4c0a1647b8eb114e31a3e698dd6fbe" +dependencies = [ + "hash-db 0.16.0", +] + +[[package]] +name = "merlin" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e261cf0f8b3c42ded9f7d2bb59dea03aa52bc8a1cbc7482f9fc3fd1229d3b42" +dependencies = [ + "byteorder", + "keccak", + "rand_core 0.5.1", + "zeroize", +] + +[[package]] +name = "merlin" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" +dependencies = [ + "byteorder", + "keccak", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "mick-jaeger" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532" +dependencies = [ + "futures", + "rand 0.8.5", + "thrift", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" +dependencies = [ + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.48.0", +] + +[[package]] +name = "mixnet" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daa3eb39495d8e2e2947a1d862852c90cc6a4a8845f8b41c8829cb9fcc047f4a" +dependencies = [ + "arrayref", + "arrayvec 0.7.4", + "bitflags 1.3.2", + "blake2 0.10.6", + "c2-chacha", + "curve25519-dalek 4.1.1", + "either", + "hashlink", + "lioness", + "log", + "parking_lot 0.12.1", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_distr", + "subtle 2.4.1", + "thiserror", + "zeroize", +] + +[[package]] +name = "mockall" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c84490118f2ee2d74570d114f3d0493cbf02790df303d2707606c3e14e07c96" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "lazy_static", + "mockall_derive", + "predicates", + "predicates-tree", +] + +[[package]] +name = "mockall_derive" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "moonbase-runtime" +version = "0.8.4" +dependencies = [ + "account", + "async-backing-primitives", + "cumulus-pallet-dmp-queue", + "cumulus-pallet-parachain-system", + "cumulus-pallet-xcm", + "cumulus-pallet-xcmp-queue", + "cumulus-primitives-core", + "cumulus-primitives-timestamp", + "cumulus-primitives-utility", + "evm-tracing-events", + "fp-evm", + "fp-rpc", + "fp-self-contained", + "frame-benchmarking", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "hex-literal 0.3.4", + "log", + "moonbeam-core-primitives", + "moonbeam-evm-tracer", + "moonbeam-relay-encoder", + "moonbeam-rpc-primitives-debug", + "moonbeam-rpc-primitives-txpool", + "moonbeam-runtime-common", + "moonbeam-xcm-benchmarks", + "nimbus-primitives", + "num_enum 0.5.11", + "orml-traits", + "orml-xcm-support", + "orml-xtokens", + "pallet-asset-manager", + "pallet-assets", + "pallet-async-backing", + "pallet-author-inherent", + "pallet-author-mapping", + "pallet-author-slot-filter", + "pallet-balances", + "pallet-base-fee", + "pallet-collective", + "pallet-conviction-voting", + "pallet-crowdloan-rewards", + "pallet-democracy", + "pallet-erc20-xcm-bridge", + "pallet-ethereum", + "pallet-ethereum-xcm", + "pallet-evm", + "pallet-evm-chain-id", + "pallet-evm-precompile-author-mapping", + "pallet-evm-precompile-balances-erc20", + "pallet-evm-precompile-batch", + "pallet-evm-precompile-blake2", + "pallet-evm-precompile-bn128", + "pallet-evm-precompile-call-permit", + "pallet-evm-precompile-collective", + "pallet-evm-precompile-conviction-voting", + "pallet-evm-precompile-crowdloan-rewards", + "pallet-evm-precompile-democracy", + "pallet-evm-precompile-dispatch", + "pallet-evm-precompile-gmp", + "pallet-evm-precompile-identity", + "pallet-evm-precompile-modexp", + "pallet-evm-precompile-parachain-staking", + "pallet-evm-precompile-preimage", + "pallet-evm-precompile-proxy", + "pallet-evm-precompile-randomness", + "pallet-evm-precompile-referenda", + "pallet-evm-precompile-registry", + "pallet-evm-precompile-relay-encoder", + "pallet-evm-precompile-sha3fips", + "pallet-evm-precompile-simple", + "pallet-evm-precompile-xcm-transactor", + "pallet-evm-precompile-xcm-utils", + "pallet-evm-precompile-xtokens", + "pallet-evm-precompileset-assets-erc20", + "pallet-identity", + "pallet-maintenance-mode", + "pallet-migrations", + "pallet-moonbeam-orbiters", + "pallet-multisig", + "pallet-parachain-staking", + "pallet-preimage", + "pallet-proxy", + "pallet-proxy-genesis-companion", + "pallet-randomness", + "pallet-referenda", + "pallet-root-testing", + "pallet-scheduler", + "pallet-society", + "pallet-sudo", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-treasury", + "pallet-utility", + "pallet-whitelist", + "pallet-xcm", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor", + "parachain-info", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "polkadot-runtime-common", + "precompile-utils", + "rlp", + "scale-info", + "serde", + "session-keys-primitives", + "sha3", + "smallvec", + "sp-api", + "sp-block-builder", + "sp-core", + "sp-debug-derive", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-std", + "sp-transaction-pool", + "sp-version", + "sp-weights", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "strum", + "strum_macros", + "substrate-wasm-builder", + "xcm-primitives 0.1.0", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "moonbeam-core-primitives" +version = "0.1.1" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "account", + "fp-self-contained", + "hex-literal 0.3.4", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "moonbeam-evm-tracer" +version = "0.1.0" +dependencies = [ + "ethereum-types", + "evm", + "evm-gasometer", + "evm-runtime", + "evm-tracing-events", + "fp-evm", + "moonbeam-primitives-ext", + "pallet-evm", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "moonbeam-primitives-ext" +version = "0.1.0" +dependencies = [ + "ethereum-types", + "evm-tracing-events", + "parity-scale-codec", + "sp-externalities", + "sp-runtime-interface", + "sp-std", +] + +[[package]] +name = "moonbeam-relay-encoder" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "frame-system", + "pallet-evm-precompile-relay-encoder", + "pallet-staking", + "pallet-xcm-transactor", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "moonbeam-rpc-primitives-debug" +version = "0.1.0" +dependencies = [ + "environmental", + "ethereum", + "ethereum-types", + "hex", + "parity-scale-codec", + "serde", + "sp-api", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "moonbeam-rpc-primitives-txpool" +version = "0.6.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "ethereum", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "moonbeam-runtime" +version = "0.8.4" +dependencies = [ + "account", + "async-backing-primitives", + "cumulus-pallet-dmp-queue", + "cumulus-pallet-parachain-system", + "cumulus-pallet-xcm", + "cumulus-pallet-xcmp-queue", + "cumulus-primitives-core", + "cumulus-primitives-timestamp", + "cumulus-primitives-utility", + "evm-tracing-events", + "fp-evm", + "fp-rpc", + "fp-self-contained", + "frame-benchmarking", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "hex-literal 0.3.4", + "log", + "moonbeam-core-primitives", + "moonbeam-evm-tracer", + "moonbeam-relay-encoder", + "moonbeam-rpc-primitives-debug", + "moonbeam-rpc-primitives-txpool", + "moonbeam-runtime-common", + "moonbeam-xcm-benchmarks", + "nimbus-primitives", + "num_enum 0.5.11", + "orml-traits", + "orml-xcm-support", + "orml-xtokens", + "pallet-asset-manager", + "pallet-assets", + "pallet-author-inherent", + "pallet-author-mapping", + "pallet-author-slot-filter", + "pallet-balances", + "pallet-base-fee", + "pallet-collective", + "pallet-conviction-voting", + "pallet-crowdloan-rewards", + "pallet-democracy", + "pallet-erc20-xcm-bridge", + "pallet-ethereum", + "pallet-ethereum-xcm", + "pallet-evm", + "pallet-evm-chain-id", + "pallet-evm-precompile-author-mapping", + "pallet-evm-precompile-balances-erc20", + "pallet-evm-precompile-batch", + "pallet-evm-precompile-blake2", + "pallet-evm-precompile-bn128", + "pallet-evm-precompile-call-permit", + "pallet-evm-precompile-collective", + "pallet-evm-precompile-conviction-voting", + "pallet-evm-precompile-crowdloan-rewards", + "pallet-evm-precompile-democracy", + "pallet-evm-precompile-dispatch", + "pallet-evm-precompile-gmp", + "pallet-evm-precompile-identity", + "pallet-evm-precompile-modexp", + "pallet-evm-precompile-parachain-staking", + "pallet-evm-precompile-preimage", + "pallet-evm-precompile-proxy", + "pallet-evm-precompile-randomness", + "pallet-evm-precompile-referenda", + "pallet-evm-precompile-registry", + "pallet-evm-precompile-relay-encoder", + "pallet-evm-precompile-sha3fips", + "pallet-evm-precompile-simple", + "pallet-evm-precompile-xcm-transactor", + "pallet-evm-precompile-xcm-utils", + "pallet-evm-precompile-xtokens", + "pallet-evm-precompileset-assets-erc20", + "pallet-identity", + "pallet-maintenance-mode", + "pallet-migrations", + "pallet-moonbeam-orbiters", + "pallet-multisig", + "pallet-parachain-staking", + "pallet-preimage", + "pallet-proxy", + "pallet-proxy-genesis-companion", + "pallet-randomness", + "pallet-referenda", + "pallet-root-testing", + "pallet-scheduler", + "pallet-society", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-treasury", + "pallet-utility", + "pallet-whitelist", + "pallet-xcm", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor", + "parachain-info", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "polkadot-runtime-common", + "precompile-utils", + "rlp", + "scale-info", + "serde", + "session-keys-primitives", + "sha3", + "smallvec", + "sp-api", + "sp-block-builder", + "sp-core", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-std", + "sp-transaction-pool", + "sp-version", + "sp-weights", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "strum", + "strum_macros", + "substrate-wasm-builder", + "xcm-primitives 0.1.0", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "moonbeam-runtime-common" +version = "0.8.0-dev" +dependencies = [ + "account", + "cumulus-pallet-xcmp-queue", + "fp-ethereum", + "fp-evm", + "frame-benchmarking", + "frame-support", + "frame-system", + "hex-literal 0.3.4", + "impl-trait-for-tuples", + "log", + "moonbeam-xcm-benchmarks", + "nimbus-primitives", + "pallet-asset-manager", + "pallet-assets", + "pallet-author-inherent", + "pallet-author-mapping", + "pallet-author-slot-filter", + "pallet-balances", + "pallet-base-fee", + "pallet-collective", + "pallet-conviction-voting", + "pallet-crowdloan-rewards", + "pallet-democracy", + "pallet-ethereum-xcm", + "pallet-evm", + "pallet-evm-chain-id", + "pallet-identity", + "pallet-migrations", + "pallet-moonbeam-orbiters", + "pallet-multisig", + "pallet-parachain-staking", + "pallet-preimage", + "pallet-proxy", + "pallet-randomness", + "pallet-referenda", + "pallet-scheduler", + "pallet-sudo", + "pallet-timestamp", + "pallet-treasury", + "pallet-utility", + "pallet-whitelist", + "pallet-xcm", + "pallet-xcm-transactor", + "precompile-utils", + "sp-api", + "sp-core", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "moonbeam-xcm-benchmarks" +version = "0.2.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-erc20-xcm-bridge", + "pallet-xcm-benchmarks", + "parity-scale-codec", + "scale-info", + "serde", + "sp-std", + "staging-xcm", + "staging-xcm-executor", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "moonriver-runtime" +version = "0.8.4" +dependencies = [ + "account", + "async-backing-primitives", + "cumulus-pallet-dmp-queue", + "cumulus-pallet-parachain-system", + "cumulus-pallet-xcm", + "cumulus-pallet-xcmp-queue", + "cumulus-primitives-core", + "cumulus-primitives-timestamp", + "cumulus-primitives-utility", + "evm-tracing-events", + "fp-evm", + "fp-rpc", + "fp-self-contained", + "frame-benchmarking", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "hex-literal 0.3.4", + "log", + "moonbeam-core-primitives", + "moonbeam-evm-tracer", + "moonbeam-relay-encoder", + "moonbeam-rpc-primitives-debug", + "moonbeam-rpc-primitives-txpool", + "moonbeam-runtime-common", + "moonbeam-xcm-benchmarks", + "nimbus-primitives", + "num_enum 0.5.11", + "orml-traits", + "orml-xcm-support", + "orml-xtokens", + "pallet-asset-manager", + "pallet-assets", + "pallet-author-inherent", + "pallet-author-mapping", + "pallet-author-slot-filter", + "pallet-balances", + "pallet-base-fee", + "pallet-collective", + "pallet-conviction-voting", + "pallet-crowdloan-rewards", + "pallet-democracy", + "pallet-erc20-xcm-bridge", + "pallet-ethereum", + "pallet-ethereum-xcm", + "pallet-evm", + "pallet-evm-chain-id", + "pallet-evm-precompile-author-mapping", + "pallet-evm-precompile-balances-erc20", + "pallet-evm-precompile-batch", + "pallet-evm-precompile-blake2", + "pallet-evm-precompile-bn128", + "pallet-evm-precompile-call-permit", + "pallet-evm-precompile-collective", + "pallet-evm-precompile-conviction-voting", + "pallet-evm-precompile-crowdloan-rewards", + "pallet-evm-precompile-democracy", + "pallet-evm-precompile-dispatch", + "pallet-evm-precompile-gmp", + "pallet-evm-precompile-identity", + "pallet-evm-precompile-modexp", + "pallet-evm-precompile-parachain-staking", + "pallet-evm-precompile-preimage", + "pallet-evm-precompile-proxy", + "pallet-evm-precompile-randomness", + "pallet-evm-precompile-referenda", + "pallet-evm-precompile-registry", + "pallet-evm-precompile-relay-encoder", + "pallet-evm-precompile-sha3fips", + "pallet-evm-precompile-simple", + "pallet-evm-precompile-xcm-transactor", + "pallet-evm-precompile-xcm-utils", + "pallet-evm-precompile-xtokens", + "pallet-evm-precompileset-assets-erc20", + "pallet-identity", + "pallet-maintenance-mode", + "pallet-migrations", + "pallet-moonbeam-orbiters", + "pallet-multisig", + "pallet-parachain-staking", + "pallet-preimage", + "pallet-proxy", + "pallet-proxy-genesis-companion", + "pallet-randomness", + "pallet-referenda", + "pallet-root-testing", + "pallet-scheduler", + "pallet-society", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-treasury", + "pallet-utility", + "pallet-whitelist", + "pallet-xcm", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor", + "parachain-info", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "polkadot-runtime-common", + "precompile-utils", + "rlp", + "scale-info", + "serde", + "session-keys-primitives", + "sha3", + "smallvec", + "sp-api", + "sp-block-builder", + "sp-core", + "sp-debug-derive", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-std", + "sp-transaction-pool", + "sp-version", + "sp-weights", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "strum", + "strum_macros", + "substrate-wasm-builder", + "xcm-primitives 0.1.0", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "multiaddr" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b36f567c7099511fa8612bbbb52dda2419ce0bdbacf31714e3a5ffdb766d3bd" +dependencies = [ + "arrayref", + "byteorder", + "data-encoding", + "log", + "multibase", + "multihash", + "percent-encoding", + "serde", + "static_assertions", + "unsigned-varint", + "url", +] + +[[package]] +name = "multibase" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404" +dependencies = [ + "base-x", + "data-encoding", + "data-encoding-macro", +] + +[[package]] +name = "multihash" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835d6ff01d610179fbce3de1694d007e500bf33a7f29689838941d6bf783ae40" +dependencies = [ + "blake2b_simd", + "blake2s_simd", + "blake3", + "core2", + "digest 0.10.7", + "multihash-derive", + "sha2 0.10.8", + "sha3", + "unsigned-varint", +] + +[[package]] +name = "multihash-derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" +dependencies = [ + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", +] + +[[package]] +name = "multimap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" + +[[package]] +name = "multistream-select" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8552ab875c1313b97b8d20cb857b9fd63e2d1d6a0a1b53ce9821e575405f27a" +dependencies = [ + "bytes", + "futures", + "log", + "pin-project", + "smallvec", + "unsigned-varint", +] + +[[package]] +name = "nalgebra" +version = "0.32.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "307ed9b18cc2423f29e83f84fd23a8e73628727990181f18641a8b5dc2ab1caa" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "names" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d66043b25d4a6cccb23619d10c19c25304b355a7dccd4a8e11423dd2382146" +dependencies = [ + "rand 0.8.5", +] + +[[package]] +name = "nanorand" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" + +[[package]] +name = "netlink-packet-core" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "345b8ab5bd4e71a2986663e88c56856699d060e78e152e6e9d7966fcd5491297" +dependencies = [ + "anyhow", + "byteorder", + "libc", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-route" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9ea4302b9759a7a88242299225ea3688e63c85ea136371bb6cf94fd674efaab" +dependencies = [ + "anyhow", + "bitflags 1.3.2", + "byteorder", + "libc", + "netlink-packet-core", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-utils" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ede8a08c71ad5a95cdd0e4e52facd37190977039a4704eb82a283f713747d34" +dependencies = [ + "anyhow", + "byteorder", + "paste", + "thiserror", +] + +[[package]] +name = "netlink-proto" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6" +dependencies = [ + "bytes", + "futures", + "log", + "netlink-packet-core", + "netlink-sys", + "thiserror", + "tokio", +] + +[[package]] +name = "netlink-sys" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6471bf08e7ac0135876a9581bf3217ef0333c191c128d34878079f42ee150411" +dependencies = [ + "bytes", + "futures", + "libc", + "log", + "tokio", +] + +[[package]] +name = "nimbus-primitives" +version = "0.9.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "async-trait", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-inherents", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "nix" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +dependencies = [ + "bitflags 1.3.2", + "cfg-if", + "libc", + "memoffset 0.6.5", +] + +[[package]] +name = "nodrop" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" + +[[package]] +name = "nohash-hasher" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "normalize-line-endings" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" + +[[package]] +name = "num" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" +dependencies = [ + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-complex" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-format" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" +dependencies = [ + "arrayvec 0.7.4", + "itoa", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-iter" +version = "0.1.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +dependencies = [ + "autocfg", + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi 0.3.3", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +dependencies = [ + "num_enum_derive 0.5.11", +] + +[[package]] +name = "num_enum" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683751d591e6d81200c39fb0d1032608b77724f34114db54f571ff1317b337c0" +dependencies = [ + "num_enum_derive 0.7.1", +] + +[[package]] +name = "num_enum_derive" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c11e44798ad209ccdd91fc192f0526a369a01234f7373e1b141c96d7cee4f0e" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "object" +version = "0.30.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" +dependencies = [ + "crc32fast", + "hashbrown 0.13.2", + "indexmap 1.9.3", + "memchr", +] + +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + +[[package]] +name = "oid-registry" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38e20717fa0541f39bd146692035c37bedfa532b3e5071b35761082407546b2a" +dependencies = [ + "asn1-rs 0.3.1", +] + +[[package]] +name = "oid-registry" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" +dependencies = [ + "asn1-rs 0.5.2", +] + +[[package]] +name = "once_cell" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" + +[[package]] +name = "opaque-debug" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" + +[[package]] +name = "opaque-debug" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "orchestra" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46d78e1deb2a8d54fc1f063a544130db4da31dfe4d5d3b493186424910222a76" +dependencies = [ + "async-trait", + "dyn-clonable", + "futures", + "futures-timer", + "orchestra-proc-macro", + "pin-project", + "prioritized-metered-channel", + "thiserror", + "tracing", +] + +[[package]] +name = "orchestra-proc-macro" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d035b1f968d91a826f2e34a9d6d02cb2af5aa7ca39ebd27922d850ab4b2dd2c6" +dependencies = [ + "expander 2.0.0", + "indexmap 2.1.0", + "itertools 0.11.0", + "petgraph", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ordered-float" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3305af35278dd29f46fcdd139e0b1fbfae2153f0e5928b39b035542dd31e37b7" +dependencies = [ + "num-traits", +] + +[[package]] +name = "orml-traits" +version = "0.6.1" +source = "git+https://github.com/moonbeam-foundation/open-runtime-module-library?branch=moonbeam-polkadot-v1.3.0#f5c743d972d4b94cdb2cd53c819adc002d1afafc" +dependencies = [ + "frame-support", + "impl-trait-for-tuples", + "num-traits", + "orml-utilities", + "parity-scale-codec", + "paste", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", +] + +[[package]] +name = "orml-utilities" +version = "0.6.1" +source = "git+https://github.com/moonbeam-foundation/open-runtime-module-library?branch=moonbeam-polkadot-v1.3.0#f5c743d972d4b94cdb2cd53c819adc002d1afafc" +dependencies = [ + "frame-support", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "orml-xcm-support" +version = "0.6.1" +source = "git+https://github.com/moonbeam-foundation/open-runtime-module-library?branch=moonbeam-polkadot-v1.3.0#f5c743d972d4b94cdb2cd53c819adc002d1afafc" +dependencies = [ + "frame-support", + "orml-traits", + "parity-scale-codec", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "orml-xtokens" +version = "0.6.1" +source = "git+https://github.com/moonbeam-foundation/open-runtime-module-library?branch=moonbeam-polkadot-v1.3.0#f5c743d972d4b94cdb2cd53c819adc002d1afafc" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "orml-traits", + "orml-xcm-support", + "pallet-xcm", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "p256" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" +dependencies = [ + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2 0.10.8", +] + +[[package]] +name = "p384" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" +dependencies = [ + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2 0.10.8", +] + +[[package]] +name = "pallet-asset-manager" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-asset-rate" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-assets" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-async-backing" +version = "0.9.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "cumulus-pallet-parachain-system", + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-consensus-slots", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-author-inherent" +version = "0.9.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-inherents", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-author-mapping" +version = "2.0.5" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "serde", + "session-keys-primitives", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-author-slot-filter" +version = "0.9.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-authority-discovery" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "pallet-session", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-authority-discovery", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-authorship" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-babe" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "pallet-session", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-consensus-babe", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-balances" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-base-fee" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "pallet-collective" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-conviction-voting" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "assert_matches", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-crowdloan-rewards" +version = "0.6.0" +source = "git+https://github.com/moonbeam-foundation/crowdloan-rewards?branch=moonbeam-polkadot-v1.3.0#b0b477f2d176f95ea5099ba797d7060d0f09d40b" +dependencies = [ + "ed25519-dalek 1.0.1", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-balances", + "pallet-utility", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-trie", +] + +[[package]] +name = "pallet-democracy" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-election-provider-multi-phase" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-election-provider-support-benchmarking", + "parity-scale-codec", + "rand 0.8.5", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-std", + "strum", +] + +[[package]] +name = "pallet-election-provider-support-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-system", + "parity-scale-codec", + "sp-npos-elections", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-erc20-xcm-bridge" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "environmental", + "ethereum-types", + "fp-evm", + "frame-support", + "frame-system", + "pallet-evm", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "pallet-ethereum" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "environmental", + "ethereum", + "ethereum-types", + "evm", + "fp-consensus", + "fp-ethereum", + "fp-evm", + "fp-rpc", + "fp-storage", + "frame-support", + "frame-system", + "pallet-evm", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-ethereum-xcm" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-ethereum", + "fp-evm", + "fp-rpc", + "fp-self-contained", + "frame-benchmarking", + "frame-support", + "frame-system", + "pallet-evm", + "pallet-timestamp", + "parity-scale-codec", + "rlp", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm" +version = "6.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "environmental", + "evm", + "fp-account", + "fp-evm", + "frame-benchmarking", + "frame-support", + "frame-system", + "hash-db 0.16.0", + "hex", + "hex-literal 0.4.1", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "rlp", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-chain-id" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "pallet-evm-precompile-author-mapping" +version = "0.2.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "num_enum 0.5.11", + "pallet-author-mapping", + "pallet-evm", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-balances-erc20" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-balances", + "pallet-evm", + "pallet-timestamp", + "parity-scale-codec", + "paste", + "precompile-utils", + "slices", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-batch" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "parity-scale-codec", + "paste", + "precompile-utils", + "slices", + "sp-core", + "sp-io", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-blake2" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", +] + +[[package]] +name = "pallet-evm-precompile-bn128" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "sp-core", + "substrate-bn", +] + +[[package]] +name = "pallet-evm-precompile-call-permit" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-timestamp", + "parity-scale-codec", + "paste", + "precompile-utils", + "slices", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-collective" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-collective", + "pallet-evm", + "parity-scale-codec", + "paste", + "precompile-utils", + "slices", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompile-conviction-voting" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-conviction-voting", + "pallet-evm", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-crowdloan-rewards" +version = "0.6.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-crowdloan-rewards", + "pallet-evm", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-democracy" +version = "0.2.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-democracy", + "pallet-evm", + "pallet-preimage", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-dispatch" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "frame-support", + "pallet-evm", + "parity-scale-codec", + "sp-runtime", +] + +[[package]] +name = "pallet-evm-precompile-gmp" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "orml-traits", + "orml-xtokens", + "pallet-evm", + "pallet-xcm", + "parity-scale-codec", + "paste", + "precompile-utils", + "slices", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompile-identity" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "enumflags2", + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "pallet-evm", + "pallet-identity", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-modexp" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "num", +] + +[[package]] +name = "pallet-evm-precompile-parachain-staking" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-parachain-staking", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-preimage" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-preimage", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-proxy" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-balances", + "pallet-evm", + "pallet-proxy", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-randomness" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "num_enum 0.5.11", + "pallet-base-fee", + "pallet-evm", + "pallet-randomness", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-referenda" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-referenda", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-registry" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "pallet-evm", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-io", + "sp-std", +] + +[[package]] +name = "pallet-evm-precompile-relay-encoder" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-staking", + "pallet-xcm-transactor", + "parity-scale-codec", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompile-sha3fips" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "tiny-keccak", +] + +[[package]] +name = "pallet-evm-precompile-simple" +version = "2.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/frontier?branch=moonbeam-polkadot-v1.3.0#00bd4a668658cfb0ea4c89373e7b168f11efbf69" +dependencies = [ + "fp-evm", + "ripemd", + "sp-io", +] + +[[package]] +name = "pallet-evm-precompile-xcm-transactor" +version = "0.2.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "evm", + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-evm", + "pallet-xcm-transactor", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompile-xcm-utils" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "num_enum 0.5.11", + "pallet-evm", + "pallet-xcm", + "parity-scale-codec", + "precompile-utils", + "sp-core", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", + "staging-xcm-executor", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompile-xtokens" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "orml-xtokens", + "pallet-evm", + "precompile-utils", + "rustc-hex", + "sp-core", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "pallet-evm-precompileset-assets-erc20" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "log", + "num_enum 0.5.11", + "pallet-assets", + "pallet-balances", + "pallet-evm", + "pallet-timestamp", + "parity-scale-codec", + "paste", + "precompile-utils", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-fast-unstake" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-identity" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "enumflags2", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-maintenance-mode" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", + "xcm-primitives 0.1.0", +] + +[[package]] +name = "pallet-message-queue" +version = "7.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", +] + +[[package]] +name = "pallet-migrations" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "xcm-primitives 0.1.0", +] + +[[package]] +name = "pallet-moonbeam-orbiters" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-multisig" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-parachain-staking" +version = "3.0.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", + "sp-std", + "substrate-fixed", +] + +[[package]] +name = "pallet-preimage" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-proxy" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-proxy-genesis-companion" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "frame-support", + "frame-system", + "pallet-proxy", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-randomness" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "environmental", + "frame-benchmarking", + "frame-support", + "frame-system", + "hex", + "log", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "schnorrkel", + "serde", + "session-keys-primitives", + "sp-consensus-babe", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-referenda" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "assert_matches", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-root-testing" +version = "1.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-scheduler" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", +] + +[[package]] +name = "pallet-session" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-state-machine", + "sp-std", + "sp-trie", +] + +[[package]] +name = "pallet-society" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "rand_chacha 0.2.2", + "scale-info", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-staking" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "pallet-session", + "parity-scale-codec", + "rand_chacha 0.2.2", + "scale-info", + "serde", + "sp-application-crypto", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-staking-reward-fn" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "log", + "sp-arithmetic", +] + +[[package]] +name = "pallet-sudo" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-timestamp" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-std", + "sp-storage", + "sp-timestamp", +] + +[[package]] +name = "pallet-transaction-payment" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-transaction-payment-rpc-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "pallet-transaction-payment", + "parity-scale-codec", + "sp-api", + "sp-runtime", + "sp-weights", +] + +[[package]] +name = "pallet-treasury" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-utility" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-vesting" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-whitelist" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-xcm" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bounded-collections", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "pallet-xcm-benchmarks" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", +] + +[[package]] +name = "pallet-xcm-transactor" +version = "0.2.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "orml-traits", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "xcm-primitives 0.1.1", +] + +[[package]] +name = "parachain-info" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "parity-db" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59e9ab494af9e6e813c72170f0d3c1de1500990d62c97cc05cc7576f91aa402f" +dependencies = [ + "blake2 0.10.6", + "crc32fast", + "fs2", + "hex", + "libc", + "log", + "lz4", + "memmap2", + "parking_lot 0.12.1", + "rand 0.8.5", + "siphasher", + "snap", +] + +[[package]] +name = "parity-scale-codec" +version = "3.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" +dependencies = [ + "arrayvec 0.7.4", + "bitvec", + "byte-slice-cast", + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "parity-send-wrapper" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f" + +[[package]] +name = "parity-wasm" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" + +[[package]] +name = "parking" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" + +[[package]] +name = "parking_lot" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +dependencies = [ + "instant", + "lock_api", + "parking_lot_core 0.8.6", +] + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core 0.9.9", +] + +[[package]] +name = "parking_lot_core" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +dependencies = [ + "cfg-if", + "instant", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "winapi", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.4.1", + "smallvec", + "windows-targets 0.48.5", +] + +[[package]] +name = "partial_sort" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7924d1d0ad836f665c9065e26d016c673ece3993f30d340068b16f282afc1156" + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "pbkdf2" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa" +dependencies = [ + "crypto-mac 0.11.1", +] + +[[package]] +name = "pbkdf2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "peeking_take_while" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" + +[[package]] +name = "pem" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" +dependencies = [ + "base64 0.13.1", +] + +[[package]] +name = "pem-rfc7468" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac" +dependencies = [ + "base64ct", +] + +[[package]] +name = "percent-encoding" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" + +[[package]] +name = "petgraph" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" +dependencies = [ + "fixedbitset", + "indexmap 2.1.0", +] + +[[package]] +name = "pin-project" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "pin-project-lite" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777" + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs8" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +dependencies = [ + "der 0.6.1", + "spki 0.6.0", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der 0.7.8", + "spki 0.7.2", +] + +[[package]] +name = "pkg-config" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" + +[[package]] +name = "platforms" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0" + +[[package]] +name = "polkadot-core-primitives" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "polkadot-node-jaeger" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "lazy_static", + "log", + "mick-jaeger", + "parity-scale-codec", + "parking_lot 0.12.1", + "polkadot-node-primitives", + "polkadot-primitives", + "sc-network", + "sp-core", + "thiserror", + "tokio", +] + +[[package]] +name = "polkadot-node-metrics" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bs58 0.5.0", + "futures", + "futures-timer", + "log", + "parity-scale-codec", + "polkadot-primitives", + "prioritized-metered-channel", + "sc-cli", + "sc-service", + "sc-tracing", + "substrate-prometheus-endpoint", + "tracing-gum", +] + +[[package]] +name = "polkadot-node-network-protocol" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-channel", + "async-trait", + "bitvec", + "derive_more", + "fatality", + "futures", + "hex", + "parity-scale-codec", + "polkadot-node-jaeger", + "polkadot-node-primitives", + "polkadot-primitives", + "rand 0.8.5", + "sc-authority-discovery", + "sc-network", + "strum", + "thiserror", + "tracing-gum", +] + +[[package]] +name = "polkadot-node-primitives" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bounded-vec", + "futures", + "parity-scale-codec", + "polkadot-parachain-primitives", + "polkadot-primitives", + "schnorrkel", + "serde", + "sp-application-crypto", + "sp-consensus-babe", + "sp-core", + "sp-keystore", + "sp-maybe-compressed-blob", + "sp-runtime", + "thiserror", + "zstd 0.12.4", +] + +[[package]] +name = "polkadot-node-subsystem-types" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "derive_more", + "futures", + "orchestra", + "polkadot-node-jaeger", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-primitives", + "polkadot-statement-table", + "sc-client-api", + "sc-network", + "sc-transaction-pool-api", + "smallvec", + "sp-api", + "sp-authority-discovery", + "sp-consensus-babe", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "polkadot-overseer" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "orchestra", + "parking_lot 0.12.1", + "polkadot-node-metrics", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-node-subsystem-types", + "polkadot-primitives", + "sc-client-api", + "sp-api", + "sp-core", + "tikv-jemalloc-ctl", + "tracing-gum", +] + +[[package]] +name = "polkadot-parachain-primitives" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bounded-collections", + "derive_more", + "frame-support", + "parity-scale-codec", + "polkadot-core-primitives", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "polkadot-primitives" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bitvec", + "hex-literal 0.4.1", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-authority-discovery", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "polkadot-runtime-common" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bitvec", + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "libsecp256k1", + "log", + "pallet-asset-rate", + "pallet-authorship", + "pallet-babe", + "pallet-balances", + "pallet-election-provider-multi-phase", + "pallet-fast-unstake", + "pallet-session", + "pallet-staking", + "pallet-staking-reward-fn", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-treasury", + "pallet-vesting", + "pallet-xcm-benchmarks", + "parity-scale-codec", + "polkadot-primitives", + "polkadot-runtime-parachains", + "rustc-hex", + "scale-info", + "serde", + "serde_derive", + "slot-range-helper", + "sp-api", + "sp-core", + "sp-inherents", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", + "static_assertions", +] + +[[package]] +name = "polkadot-runtime-metrics" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bs58 0.5.0", + "frame-benchmarking", + "parity-scale-codec", + "polkadot-primitives", + "sp-std", + "sp-tracing", +] + +[[package]] +name = "polkadot-runtime-parachains" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bitflags 1.3.2", + "bitvec", + "derive_more", + "frame-benchmarking", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "pallet-authority-discovery", + "pallet-authorship", + "pallet-babe", + "pallet-balances", + "pallet-message-queue", + "pallet-session", + "pallet-staking", + "pallet-timestamp", + "pallet-vesting", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain-primitives", + "polkadot-primitives", + "polkadot-runtime-metrics", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rustc-hex", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "staging-xcm", + "staging-xcm-executor", + "static_assertions", +] + +[[package]] +name = "polkadot-statement-table" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "polkadot-primitives", + "sp-core", +] + +[[package]] +name = "polling" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" +dependencies = [ + "autocfg", + "bitflags 1.3.2", + "cfg-if", + "concurrent-queue", + "libc", + "log", + "pin-project-lite 0.2.13", + "windows-sys 0.48.0", +] + +[[package]] +name = "poly1305" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" +dependencies = [ + "cpufeatures", + "opaque-debug 0.3.0", + "universal-hash 0.5.1", +] + +[[package]] +name = "polyval" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug 0.3.0", + "universal-hash 0.4.1", +] + +[[package]] +name = "polyval" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52cff9d1d4dee5fe6d03729099f4a310a41179e0a10dbf542039873f2e826fb" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug 0.3.0", + "universal-hash 0.5.1", +] + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "precompile-utils" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "affix", + "environmental", + "evm", + "fp-evm", + "frame-support", + "frame-system", + "hex", + "impl-trait-for-tuples", + "log", + "num_enum 0.5.11", + "pallet-evm", + "parity-scale-codec", + "paste", + "precompile-utils-macro", + "sha3", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", +] + +[[package]] +name = "precompile-utils-macro" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "case", + "num_enum 0.5.11", + "prettyplease 0.1.25", + "proc-macro2", + "quote", + "sha3", + "syn 1.0.109", +] + +[[package]] +name = "predicates" +version = "2.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" +dependencies = [ + "difflib", + "float-cmp", + "itertools 0.10.5", + "normalize-line-endings", + "predicates-core", + "regex", +] + +[[package]] +name = "predicates-core" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174" + +[[package]] +name = "predicates-tree" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf" +dependencies = [ + "predicates-core", + "termtree", +] + +[[package]] +name = "prettyplease" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86" +dependencies = [ + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "prettyplease" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" +dependencies = [ + "proc-macro2", + "syn 2.0.39", +] + +[[package]] +name = "primitive-types" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde 0.4.0", + "scale-info", + "uint", +] + +[[package]] +name = "prioritized-metered-channel" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e99f0c89bd88f393aab44a4ab949351f7bc7e7e1179d11ecbfe50cbe4c47e342" +dependencies = [ + "coarsetime", + "crossbeam-queue", + "derive_more", + "futures", + "futures-timer", + "nanorand", + "thiserror", + "tracing", +] + +[[package]] +name = "proc-macro-crate" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-warning" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b698b0b09d40e9b7c1a47b132d66a8b54bcd20583d9b6d06e4535e383b4405c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "proc-macro2" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "prometheus" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "449811d15fbdf5ceb5c1144416066429cf82316e2ec8ce0c1f6f8a02e7bbcf8c" +dependencies = [ + "cfg-if", + "fnv", + "lazy_static", + "memchr", + "parking_lot 0.12.1", + "thiserror", +] + +[[package]] +name = "prometheus-client" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d6fa99d535dd930d1249e6c79cb3c2915f9172a540fe2b02a4c8f9ca954721e" +dependencies = [ + "dtoa", + "itoa", + "parking_lot 0.12.1", + "prometheus-client-derive-encode", +] + +[[package]] +name = "prometheus-client-derive-encode" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "prost" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" +dependencies = [ + "bytes", + "prost-derive", +] + +[[package]] +name = "prost-build" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" +dependencies = [ + "bytes", + "heck", + "itertools 0.10.5", + "lazy_static", + "log", + "multimap", + "petgraph", + "prettyplease 0.1.25", + "prost", + "prost-types", + "regex", + "syn 1.0.109", + "tempfile", + "which", +] + +[[package]] +name = "prost-derive" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" +dependencies = [ + "anyhow", + "itertools 0.10.5", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "prost-types" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13" +dependencies = [ + "prost", +] + +[[package]] +name = "psm" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" +dependencies = [ + "cc", +] + +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quick-protobuf" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d6da84cc204722a989e01ba2f6e1e276e190f22263d0cb6ce8526fcdb0d2e1f" +dependencies = [ + "byteorder", +] + +[[package]] +name = "quick-protobuf-codec" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1693116345026436eb2f10b677806169c1a1260c1c60eaaffe3fb5a29ae23d8b" +dependencies = [ + "asynchronous-codec", + "bytes", + "quick-protobuf", + "thiserror", + "unsigned-varint", +] + +[[package]] +name = "quicksink" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77de3c815e5a160b1539c6592796801df2043ae35e123b46d73380cfa57af858" +dependencies = [ + "futures-core", + "futures-sink", + "pin-project-lite 0.1.12", +] + +[[package]] +name = "quinn-proto" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94b0b33c13a79f669c85defaf4c275dc86a0c0372807d0ca3d78e0bb87274863" +dependencies = [ + "bytes", + "rand 0.8.5", + "ring 0.16.20", + "rustc-hash", + "rustls 0.20.9", + "slab", + "thiserror", + "tinyvec", + "tracing", + "webpki 0.22.4", +] + +[[package]] +name = "quote" +version = "1.0.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.11", +] + +[[package]] +name = "rand_distr" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "rand_pcg" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e" +dependencies = [ + "rand_core 0.6.4", +] + +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "rcgen" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" +dependencies = [ + "pem", + "ring 0.16.20", + "time", + "x509-parser 0.13.2", + "yasna", +] + +[[package]] +name = "rcgen" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" +dependencies = [ + "pem", + "ring 0.16.20", + "time", + "yasna", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_users" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +dependencies = [ + "getrandom 0.2.11", + "libredox", + "thiserror", +] + +[[package]] +name = "ref-cast" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acde58d073e9c79da00f2b5b84eed919c8326832648a5b109b3fce1bb1175280" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "regalloc2" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80535183cae11b149d618fbd3c37e38d7cda589d82d7769e196ca9a9042d7621" +dependencies = [ + "fxhash", + "log", + "slice-group-by", + "smallvec", +] + +[[package]] +name = "regex" +version = "1.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.3", + "regex-syntax 0.8.2", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.2", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" + +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + +[[package]] +name = "rfc6979" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +dependencies = [ + "crypto-bigint 0.4.9", + "hmac 0.12.1", + "zeroize", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac 0.12.1", + "subtle 2.4.1", +] + +[[package]] +name = "ring" +version = "0.1.0" +source = "git+https://github.com/w3f/ring-proof#b273d33f9981e2bb3375ab45faeb537f7ee35224" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "blake2 0.10.6", + "common", + "fflonk", + "merlin 3.0.0", +] + +[[package]] +name = "ring" +version = "0.16.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +dependencies = [ + "cc", + "libc", + "once_cell", + "spin 0.5.2", + "untrusted 0.7.1", + "web-sys", + "winapi", +] + +[[package]] +name = "ring" +version = "0.17.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b" +dependencies = [ + "cc", + "getrandom 0.2.11", + "libc", + "spin 0.9.8", + "untrusted 0.9.0", + "windows-sys 0.48.0", +] + +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rlp-derive", + "rustc-hex", +] + +[[package]] +name = "rlp-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "rocksdb" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb6f170a4041d50a0ce04b0d2e14916d6ca863ea2e422689a5b694395d299ffe" +dependencies = [ + "libc", + "librocksdb-sys", +] + +[[package]] +name = "rpassword" +version = "7.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80472be3c897911d0137b2d2b9055faf6eeac5b14e324073d83bc17b191d7e3f" +dependencies = [ + "libc", + "rtoolbox", + "windows-sys 0.48.0", +] + +[[package]] +name = "rtcp" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1919efd6d4a6a85d13388f9487549bb8e359f17198cc03ffd72f79b553873691" +dependencies = [ + "bytes", + "thiserror", + "webrtc-util", +] + +[[package]] +name = "rtnetlink" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0" +dependencies = [ + "futures", + "log", + "netlink-packet-route", + "netlink-proto", + "nix", + "thiserror", + "tokio", +] + +[[package]] +name = "rtoolbox" +version = "0.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c247d24e63230cdb56463ae328478bd5eac8b8faa8c69461a77e8e323afac90e" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "rtp" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2a095411ff00eed7b12e4c6a118ba984d113e1079582570d56a5ee723f11f80" +dependencies = [ + "async-trait", + "bytes", + "rand 0.8.5", + "serde", + "thiserror", + "webrtc-util", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver 1.0.20", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + +[[package]] +name = "rustix" +version = "0.36.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "305efbd14fde4139eb501df5f136994bb520b033fa9fbdce287507dc23b8c7ed" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.1.4", + "windows-sys 0.45.0", +] + +[[package]] +name = "rustix" +version = "0.37.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustix" +version = "0.38.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ad981d6c340a49cdc40a1028d9c6084ec7e9fa33fcb839cab656a267071e234" +dependencies = [ + "bitflags 2.4.1", + "errno", + "libc", + "linux-raw-sys 0.4.11", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustls" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" +dependencies = [ + "base64 0.13.1", + "log", + "ring 0.16.20", + "sct 0.6.1", + "webpki 0.21.4", +] + +[[package]] +name = "rustls" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" +dependencies = [ + "log", + "ring 0.16.20", + "sct 0.7.1", + "webpki 0.22.4", +] + +[[package]] +name = "rustversion" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" + +[[package]] +name = "rw-stream-sink" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04" +dependencies = [ + "futures", + "pin-project", + "static_assertions", +] + +[[package]] +name = "ryu" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" + +[[package]] +name = "safe_arch" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "sc-allocator" +version = "4.1.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "log", + "sp-core", + "sp-wasm-interface", + "thiserror", +] + +[[package]] +name = "sc-authority-discovery" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "ip_network", + "libp2p", + "log", + "multihash", + "parity-scale-codec", + "prost", + "prost-build", + "rand 0.8.5", + "sc-client-api", + "sc-network", + "sp-api", + "sp-authority-discovery", + "sp-blockchain", + "sp-core", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-block-builder" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "sc-client-api", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-core", + "sp-inherents", + "sp-runtime", +] + +[[package]] +name = "sc-chain-spec" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "memmap2", + "sc-chain-spec-derive", + "sc-client-api", + "sc-executor", + "sc-network", + "sc-telemetry", + "serde", + "serde_json", + "sp-blockchain", + "sp-core", + "sp-runtime", + "sp-state-machine", +] + +[[package]] +name = "sc-chain-spec-derive" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sc-cli" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "chrono", + "clap", + "fdlimit", + "futures", + "libp2p-identity", + "log", + "names", + "parity-scale-codec", + "rand 0.8.5", + "regex", + "rpassword", + "sc-client-api", + "sc-client-db", + "sc-executor", + "sc-keystore", + "sc-mixnet", + "sc-network", + "sc-service", + "sc-telemetry", + "sc-tracing", + "sc-utils", + "serde", + "serde_json", + "sp-blockchain", + "sp-core", + "sp-keyring", + "sp-keystore", + "sp-panic-handler", + "sp-runtime", + "sp-state-machine", + "sp-storage", + "sp-version", + "thiserror", + "tiny-bip39", + "tokio", +] + +[[package]] +name = "sc-client-api" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "fnv", + "futures", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-executor", + "sc-transaction-pool-api", + "sc-utils", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-database", + "sp-externalities", + "sp-runtime", + "sp-state-machine", + "sp-statement-store", + "sp-storage", + "sp-trie", + "substrate-prometheus-endpoint", +] + +[[package]] +name = "sc-client-db" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "hash-db 0.16.0", + "kvdb", + "kvdb-memorydb", + "kvdb-rocksdb", + "linked-hash-map", + "log", + "parity-db", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-client-api", + "sc-state-db", + "schnellru", + "sp-arithmetic", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-runtime", + "sp-state-machine", + "sp-trie", +] + +[[package]] +name = "sc-consensus" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "libp2p-identity", + "log", + "mockall", + "parking_lot 0.12.1", + "sc-client-api", + "sc-utils", + "serde", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "sp-state-machine", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-executor" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-executor-common", + "sc-executor-wasmtime", + "schnellru", + "sp-api", + "sp-core", + "sp-externalities", + "sp-io", + "sp-panic-handler", + "sp-runtime-interface", + "sp-trie", + "sp-version", + "sp-wasm-interface", + "tracing", +] + +[[package]] +name = "sc-executor-common" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "sc-allocator", + "sp-maybe-compressed-blob", + "sp-wasm-interface", + "thiserror", + "wasm-instrument", +] + +[[package]] +name = "sc-executor-wasmtime" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "anyhow", + "cfg-if", + "libc", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "rustix 0.36.17", + "sc-allocator", + "sc-executor-common", + "sp-core", + "sp-runtime-interface", + "sp-wasm-interface", + "wasmtime", +] + +[[package]] +name = "sc-informant" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "ansi_term", + "futures", + "futures-timer", + "log", + "sc-client-api", + "sc-network", + "sc-network-common", + "sp-blockchain", + "sp-runtime", +] + +[[package]] +name = "sc-keystore" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "parking_lot 0.12.1", + "serde_json", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "thiserror", +] + +[[package]] +name = "sc-mixnet" +version = "0.1.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 4.2.0", + "arrayvec 0.7.4", + "blake2 0.10.6", + "futures", + "futures-timer", + "libp2p-identity", + "log", + "mixnet", + "multiaddr", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-client-api", + "sc-network", + "sc-transaction-pool-api", + "sp-api", + "sp-consensus", + "sp-core", + "sp-keystore", + "sp-mixnet", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "sc-network" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "async-channel", + "async-trait", + "asynchronous-codec", + "bytes", + "either", + "fnv", + "futures", + "futures-timer", + "ip_network", + "libp2p", + "linked_hash_set", + "log", + "mockall", + "parity-scale-codec", + "parking_lot 0.12.1", + "partial_sort", + "pin-project", + "rand 0.8.5", + "sc-client-api", + "sc-network-common", + "sc-utils", + "serde", + "serde_json", + "smallvec", + "sp-arithmetic", + "sp-blockchain", + "sp-core", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", + "unsigned-varint", + "wasm-timer", + "zeroize", +] + +[[package]] +name = "sc-network-bitswap" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-channel", + "cid", + "futures", + "libp2p-identity", + "log", + "prost", + "prost-build", + "sc-client-api", + "sc-network", + "sp-blockchain", + "sp-runtime", + "thiserror", + "unsigned-varint", +] + +[[package]] +name = "sc-network-common" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "bitflags 1.3.2", + "futures", + "libp2p-identity", + "parity-scale-codec", + "prost-build", + "sc-consensus", + "sp-consensus", + "sp-consensus-grandpa", + "sp-runtime", +] + +[[package]] +name = "sc-network-light" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "async-channel", + "futures", + "libp2p-identity", + "log", + "parity-scale-codec", + "prost", + "prost-build", + "sc-client-api", + "sc-network", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "sc-network-sync" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "async-channel", + "async-trait", + "fork-tree", + "futures", + "futures-timer", + "libp2p", + "log", + "mockall", + "parity-scale-codec", + "prost", + "prost-build", + "sc-client-api", + "sc-consensus", + "sc-network", + "sc-network-common", + "sc-utils", + "schnellru", + "smallvec", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-grandpa", + "sp-core", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", + "tokio-stream", +] + +[[package]] +name = "sc-network-transactions" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "futures", + "libp2p", + "log", + "parity-scale-codec", + "sc-network", + "sc-network-common", + "sc-utils", + "sp-consensus", + "sp-runtime", + "substrate-prometheus-endpoint", +] + +[[package]] +name = "sc-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "futures", + "jsonrpsee", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-mixnet", + "sc-rpc-api", + "sc-tracing", + "sc-transaction-pool-api", + "sc-utils", + "serde_json", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-keystore", + "sp-offchain", + "sp-rpc", + "sp-runtime", + "sp-session", + "sp-statement-store", + "sp-version", + "tokio", +] + +[[package]] +name = "sc-rpc-api" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "jsonrpsee", + "parity-scale-codec", + "sc-chain-spec", + "sc-mixnet", + "sc-transaction-pool-api", + "scale-info", + "serde", + "serde_json", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-version", + "thiserror", +] + +[[package]] +name = "sc-rpc-server" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "http", + "jsonrpsee", + "log", + "serde_json", + "substrate-prometheus-endpoint", + "tokio", + "tower", + "tower-http", +] + +[[package]] +name = "sc-rpc-spec-v2" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "futures", + "futures-util", + "hex", + "jsonrpsee", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-chain-spec", + "sc-client-api", + "sc-transaction-pool-api", + "sc-utils", + "serde", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-runtime", + "sp-version", + "thiserror", + "tokio", + "tokio-stream", +] + +[[package]] +name = "sc-service" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "directories", + "exit-future", + "futures", + "futures-timer", + "jsonrpsee", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "pin-project", + "rand 0.8.5", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-client-db", + "sc-consensus", + "sc-executor", + "sc-informant", + "sc-keystore", + "sc-network", + "sc-network-bitswap", + "sc-network-common", + "sc-network-light", + "sc-network-sync", + "sc-network-transactions", + "sc-rpc", + "sc-rpc-server", + "sc-rpc-spec-v2", + "sc-sysinfo", + "sc-telemetry", + "sc-tracing", + "sc-transaction-pool", + "sc-transaction-pool-api", + "sc-utils", + "serde", + "serde_json", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-externalities", + "sp-keystore", + "sp-runtime", + "sp-session", + "sp-state-machine", + "sp-storage", + "sp-transaction-pool", + "sp-transaction-storage-proof", + "sp-trie", + "sp-version", + "static_init", + "substrate-prometheus-endpoint", + "tempfile", + "thiserror", + "tokio", + "tracing", + "tracing-futures", +] + +[[package]] +name = "sc-state-db" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sp-core", +] + +[[package]] +name = "sc-sysinfo" +version = "6.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "futures", + "libc", + "log", + "rand 0.8.5", + "rand_pcg", + "regex", + "sc-telemetry", + "serde", + "serde_json", + "sp-core", + "sp-io", + "sp-std", +] + +[[package]] +name = "sc-telemetry" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "chrono", + "futures", + "libp2p", + "log", + "parking_lot 0.12.1", + "pin-project", + "rand 0.8.5", + "sc-utils", + "serde", + "serde_json", + "thiserror", + "wasm-timer", +] + +[[package]] +name = "sc-tracing" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "ansi_term", + "atty", + "chrono", + "lazy_static", + "libc", + "log", + "parking_lot 0.12.1", + "regex", + "rustc-hash", + "sc-client-api", + "sc-tracing-proc-macro", + "serde", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-tracing", + "thiserror", + "tracing", + "tracing-log", + "tracing-subscriber", +] + +[[package]] +name = "sc-tracing-proc-macro" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sc-transaction-pool" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "linked-hash-map", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-client-api", + "sc-transaction-pool-api", + "sc-utils", + "serde", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-runtime", + "sp-tracing", + "sp-transaction-pool", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-transaction-pool-api" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "log", + "parity-scale-codec", + "serde", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "sc-utils" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-channel", + "futures", + "futures-timer", + "lazy_static", + "log", + "parking_lot 0.12.1", + "prometheus", + "sp-arithmetic", +] + +[[package]] +name = "scale-info" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7d66a1128282b7ef025a8ead62a4a9fcf017382ec53b8ffbf4d7bf77bd3c60" +dependencies = [ + "bitvec", + "cfg-if", + "derive_more", + "parity-scale-codec", + "scale-info-derive", + "serde", +] + +[[package]] +name = "scale-info-derive" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abf2c68b89cafb3b8d918dd07b42be0da66ff202cf1155c5739a4e0c1ea0dc19" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "schnellru" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "772575a524feeb803e5b0fcbc6dd9f367e579488197c94c6e4023aad2305774d" +dependencies = [ + "ahash 0.8.6", + "cfg-if", + "hashbrown 0.13.2", +] + +[[package]] +name = "schnorrkel" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "021b403afe70d81eea68f6ea12f6b3c9588e5d536a94c3bf80f15e7faa267862" +dependencies = [ + "arrayref", + "arrayvec 0.5.2", + "curve25519-dalek 2.1.3", + "getrandom 0.1.16", + "merlin 2.0.1", + "rand 0.7.3", + "rand_core 0.5.1", + "sha2 0.8.2", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "scratch" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152" + +[[package]] +name = "sct" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" +dependencies = [ + "ring 0.16.20", + "untrusted 0.7.1", +] + +[[package]] +name = "sct" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring 0.17.5", + "untrusted 0.9.0", +] + +[[package]] +name = "sdp" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d22a5ef407871893fd72b4562ee15e4742269b173959db4b8df6f538c414e13" +dependencies = [ + "rand 0.8.5", + "substring", + "thiserror", + "url", +] + +[[package]] +name = "sec1" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +dependencies = [ + "base16ct 0.1.1", + "der 0.6.1", + "generic-array 0.14.7", + "pkcs8 0.9.0", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct 0.2.0", + "der 0.7.8", + "generic-array 0.14.7", + "pkcs8 0.10.2", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "secp256k1" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b1629c9c557ef9b293568b338dddfc8208c98a18c59d722a9d53f859d9c9b62" +dependencies = [ + "secp256k1-sys", +] + +[[package]] +name = "secp256k1-sys" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83080e2c2fc1006e625be82e5d1eb6a43b7fd9578b617fcc55814daf286bba4b" +dependencies = [ + "cc", +] + +[[package]] +name = "secrecy" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e" +dependencies = [ + "zeroize", +] + +[[package]] +name = "semver" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a3186ec9e65071a2095434b1f5bb24838d4e8e130f584c790f6033c79943537" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" +dependencies = [ + "serde", +] + +[[package]] +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" + +[[package]] +name = "serde" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_json" +version = "1.0.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80" +dependencies = [ + "serde", +] + +[[package]] +name = "session-keys-primitives" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "async-trait", + "frame-support", + "nimbus-primitives", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-consensus-babe", + "sp-core", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sha-1" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug 0.3.0", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha2" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" +dependencies = [ + "block-buffer 0.7.3", + "digest 0.8.1", + "fake-simd", + "opaque-debug 0.2.3", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug 0.3.0", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shlex" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380" + +[[package]] +name = "signal-hook-registry" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", +] + +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", +] + +[[package]] +name = "simba" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slice-group-by" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" + +[[package]] +name = "slices" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2086e458a369cdca838e9f6ed04b4cc2e3ce636d99abb80c9e2eada107749cf" +dependencies = [ + "faster-hex", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "slot-range-helper" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "enumn", + "parity-scale-codec", + "paste", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "smallvec" +version = "1.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" + +[[package]] +name = "snap" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e9f0ab6ef7eb7353d9119c170a436d1bf248eea575ac42d19d12f4e34130831" + +[[package]] +name = "snow" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58021967fd0a5eeeb23b08df6cc244a4d4a5b4aec1d27c9e02fad1a58b4cd74e" +dependencies = [ + "aes-gcm 0.10.3", + "blake2 0.10.6", + "chacha20poly1305", + "curve25519-dalek 4.1.1", + "rand_core 0.6.4", + "ring 0.17.5", + "rustc_version", + "sha2 0.10.8", + "subtle 2.4.1", +] + +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "soketto" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" +dependencies = [ + "base64 0.13.1", + "bytes", + "flate2", + "futures", + "http", + "httparse", + "log", + "rand 0.8.5", + "sha-1", +] + +[[package]] +name = "sp-api" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "hash-db 0.16.0", + "log", + "parity-scale-codec", + "scale-info", + "sp-api-proc-macro", + "sp-core", + "sp-externalities", + "sp-metadata-ir", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", + "sp-version", + "thiserror", +] + +[[package]] +name = "sp-api-proc-macro" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "Inflector", + "blake2 0.10.6", + "expander 2.0.0", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sp-application-crypto" +version = "23.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-std", +] + +[[package]] +name = "sp-arithmetic" +version = "16.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "integer-sqrt", + "num-traits", + "parity-scale-codec", + "scale-info", + "serde", + "sp-std", + "static_assertions", +] + +[[package]] +name = "sp-authority-discovery" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-block-builder" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "sp-api", + "sp-inherents", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-blockchain" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "futures", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "schnellru", + "sp-api", + "sp-consensus", + "sp-database", + "sp-runtime", + "sp-state-machine", + "thiserror", +] + +[[package]] +name = "sp-consensus" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "futures", + "log", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", + "thiserror", +] + +[[package]] +name = "sp-consensus-babe" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-std", + "sp-timestamp", +] + +[[package]] +name = "sp-consensus-grandpa" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "finality-grandpa", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-consensus-slots" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-std", + "sp-timestamp", +] + +[[package]] +name = "sp-core" +version = "21.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "array-bytes 6.2.0", + "bandersnatch_vrfs", + "bitflags 1.3.2", + "blake2 0.10.6", + "bounded-collections", + "bs58 0.5.0", + "dyn-clonable", + "ed25519-zebra", + "futures", + "hash-db 0.16.0", + "hash256-std-hasher", + "impl-serde 0.4.0", + "lazy_static", + "libsecp256k1", + "log", + "merlin 2.0.1", + "parity-scale-codec", + "parking_lot 0.12.1", + "paste", + "primitive-types", + "rand 0.8.5", + "regex", + "scale-info", + "schnorrkel", + "secp256k1", + "secrecy", + "serde", + "sp-core-hashing", + "sp-debug-derive", + "sp-externalities", + "sp-runtime-interface", + "sp-std", + "sp-storage", + "ss58-registry", + "substrate-bip39", + "thiserror", + "tiny-bip39", + "tracing", + "w3f-bls", + "zeroize", +] + +[[package]] +name = "sp-core-hashing" +version = "9.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", +] + +[[package]] +name = "sp-core-hashing-proc-macro" +version = "9.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "quote", + "sp-core-hashing", + "syn 2.0.39", +] + +[[package]] +name = "sp-database" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "kvdb", + "parking_lot 0.12.1", +] + +[[package]] +name = "sp-debug-derive" +version = "8.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sp-externalities" +version = "0.19.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "environmental", + "parity-scale-codec", + "sp-std", + "sp-storage", +] + +[[package]] +name = "sp-genesis-builder" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "serde_json", + "sp-api", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-inherents" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", + "thiserror", +] + +[[package]] +name = "sp-io" +version = "23.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bytes", + "ed25519-dalek 2.1.0", + "libsecp256k1", + "log", + "parity-scale-codec", + "rustversion", + "secp256k1", + "sp-core", + "sp-externalities", + "sp-keystore", + "sp-runtime-interface", + "sp-state-machine", + "sp-std", + "sp-tracing", + "sp-trie", + "tracing", + "tracing-core", +] + +[[package]] +name = "sp-keyring" +version = "24.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "lazy_static", + "sp-core", + "sp-runtime", + "strum", +] + +[[package]] +name = "sp-keystore" +version = "0.27.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "parking_lot 0.12.1", + "sp-core", + "sp-externalities", + "thiserror", +] + +[[package]] +name = "sp-maybe-compressed-blob" +version = "4.1.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "thiserror", + "zstd 0.12.4", +] + +[[package]] +name = "sp-metadata-ir" +version = "0.1.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-metadata", + "parity-scale-codec", + "scale-info", + "sp-std", +] + +[[package]] +name = "sp-mixnet" +version = "0.1.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-std", +] + +[[package]] +name = "sp-npos-elections" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-offchain" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "sp-api", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "sp-panic-handler" +version = "8.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "backtrace", + "lazy_static", + "regex", +] + +[[package]] +name = "sp-rpc" +version = "6.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "rustc-hash", + "serde", + "sp-core", +] + +[[package]] +name = "sp-runtime" +version = "24.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "either", + "hash256-std-hasher", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "paste", + "rand 0.8.5", + "scale-info", + "serde", + "sp-application-crypto", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-std", + "sp-weights", +] + +[[package]] +name = "sp-runtime-interface" +version = "17.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec", + "primitive-types", + "sp-externalities", + "sp-runtime-interface-proc-macro", + "sp-std", + "sp-storage", + "sp-tracing", + "sp-wasm-interface", + "static_assertions", +] + +[[package]] +name = "sp-runtime-interface-proc-macro" +version = "11.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "Inflector", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sp-session" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-core", + "sp-keystore", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "sp-staking" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-state-machine" +version = "0.28.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "hash-db 0.16.0", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "smallvec", + "sp-core", + "sp-externalities", + "sp-panic-handler", + "sp-std", + "sp-trie", + "thiserror", + "tracing", + "trie-db", +] + +[[package]] +name = "sp-statement-store" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "aes-gcm 0.10.3", + "curve25519-dalek 4.1.1", + "ed25519-dalek 2.1.0", + "hkdf", + "parity-scale-codec", + "rand 0.8.5", + "scale-info", + "sha2 0.10.8", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-externalities", + "sp-runtime", + "sp-runtime-interface", + "sp-std", + "thiserror", + "x25519-dalek 2.0.0", +] + +[[package]] +name = "sp-std" +version = "8.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" + +[[package]] +name = "sp-storage" +version = "13.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "impl-serde 0.4.0", + "parity-scale-codec", + "ref-cast", + "serde", + "sp-debug-derive", + "sp-std", +] + +[[package]] +name = "sp-timestamp" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "parity-scale-codec", + "sp-inherents", + "sp-runtime", + "sp-std", + "thiserror", +] + +[[package]] +name = "sp-tracing" +version = "10.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "sp-std", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "sp-transaction-pool" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "sp-api", + "sp-runtime", +] + +[[package]] +name = "sp-transaction-storage-proof" +version = "4.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-std", + "sp-trie", +] + +[[package]] +name = "sp-trie" +version = "22.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "ahash 0.8.6", + "hash-db 0.16.0", + "hashbrown 0.13.2", + "lazy_static", + "memory-db", + "nohash-hasher", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "scale-info", + "schnellru", + "sp-core", + "sp-std", + "thiserror", + "tracing", + "trie-db", + "trie-root", +] + +[[package]] +name = "sp-version" +version = "22.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "impl-serde 0.4.0", + "parity-scale-codec", + "parity-wasm", + "scale-info", + "serde", + "sp-core-hashing-proc-macro", + "sp-runtime", + "sp-std", + "sp-version-proc-macro", + "thiserror", +] + +[[package]] +name = "sp-version-proc-macro" +version = "8.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "sp-wasm-interface" +version = "14.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "anyhow", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "sp-std", + "wasmtime", +] + +[[package]] +name = "sp-weights" +version = "20.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "smallvec", + "sp-arithmetic", + "sp-core", + "sp-debug-derive", + "sp-std", +] + +[[package]] +name = "spin" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + +[[package]] +name = "spki" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +dependencies = [ + "base64ct", + "der 0.6.1", +] + +[[package]] +name = "spki" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" +dependencies = [ + "base64ct", + "der 0.7.8", +] + +[[package]] +name = "ss58-registry" +version = "1.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35935738370302d5e33963665b77541e4b990a3e919ec904c837a56cfc891de1" +dependencies = [ + "Inflector", + "num-format", + "proc-macro2", + "quote", + "serde", + "serde_json", + "unicode-xid", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "staging-xcm" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "bounded-collections", + "derivative", + "environmental", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-weights", + "xcm-procedural", +] + +[[package]] +name = "staging-xcm-builder" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "pallet-transaction-payment", + "parity-scale-codec", + "polkadot-parachain-primitives", + "scale-info", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", + "staging-xcm-executor", +] + +[[package]] +name = "staging-xcm-executor" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "environmental", + "frame-benchmarking", + "frame-support", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", + "staging-xcm", +] + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "static_init" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a2a1c578e98c1c16fc3b8ec1328f7659a500737d7a0c6d625e73e830ff9c1f6" +dependencies = [ + "bitflags 1.3.2", + "cfg_aliases", + "libc", + "parking_lot 0.11.2", + "parking_lot_core 0.8.6", + "static_init_macro", + "winapi", +] + +[[package]] +name = "static_init_macro" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf" +dependencies = [ + "cfg_aliases", + "memchr", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.109", +] + +[[package]] +name = "stun" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" +dependencies = [ + "base64 0.13.1", + "crc", + "lazy_static", + "md-5", + "rand 0.8.5", + "ring 0.16.20", + "subtle 2.4.1", + "thiserror", + "tokio", + "url", + "webrtc-util", +] + +[[package]] +name = "substrate-bip39" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e620c7098893ba667438b47169c00aacdd9e7c10e042250ce2b60b087ec97328" +dependencies = [ + "hmac 0.11.0", + "pbkdf2 0.8.0", + "schnorrkel", + "sha2 0.9.9", + "zeroize", +] + +[[package]] +name = "substrate-bn" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b5bbfa79abbae15dd642ea8176a21a635ff3c00059961d1ea27ad04e5b441c" +dependencies = [ + "byteorder", + "crunchy", + "lazy_static", + "rand 0.8.5", + "rustc-hex", +] + +[[package]] +name = "substrate-fixed" +version = "0.5.9" +source = "git+https://github.com/encointer/substrate-fixed#a75f3ba3f7c7893fb420500639cc055f964b1b88" +dependencies = [ + "parity-scale-codec", + "scale-info", + "substrate-typenum", +] + +[[package]] +name = "substrate-prometheus-endpoint" +version = "0.10.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "hyper", + "log", + "prometheus", + "thiserror", + "tokio", +] + +[[package]] +name = "substrate-typenum" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f0091e93c2c75b233ae39424c52cb8a662c0811fb68add149e20e5d7e8a788" +dependencies = [ + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "substrate-wasm-builder" +version = "5.0.0-dev" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "ansi_term", + "build-helper", + "cargo_metadata", + "filetime", + "parity-wasm", + "sp-maybe-compressed-blob", + "strum", + "tempfile", + "toml 0.7.8", + "walkdir", + "wasm-opt", +] + +[[package]] +name = "substring" +version = "1.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86" +dependencies = [ + "autocfg", +] + +[[package]] +name = "subtle" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" + +[[package]] +name = "subtle" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "synstructure" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", + "unicode-xid", +] + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "target-lexicon" +version = "0.12.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a" + +[[package]] +name = "tempfile" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" +dependencies = [ + "cfg-if", + "fastrand 2.0.1", + "redox_syscall 0.4.1", + "rustix 0.38.24", + "windows-sys 0.48.0", +] + +[[package]] +name = "termcolor" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "termtree" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" + +[[package]] +name = "thiserror" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "thread_local" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "threadpool" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +dependencies = [ + "num_cpus", +] + +[[package]] +name = "thrift" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b82ca8f46f95b3ce96081fe3dd89160fdea970c254bb72925255d1b62aae692e" +dependencies = [ + "byteorder", + "integer-encoding", + "log", + "ordered-float", + "threadpool", +] + +[[package]] +name = "tikv-jemalloc-ctl" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "619bfed27d807b54f7f776b9430d4f8060e66ee138a28632ca898584d462c31c" +dependencies = [ + "libc", + "paste", + "tikv-jemalloc-sys", +] + +[[package]] +name = "tikv-jemalloc-sys" +version = "0.5.4+5.3.0-patched" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "time" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" +dependencies = [ + "deranged", + "itoa", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" +dependencies = [ + "time-core", +] + +[[package]] +name = "tiny-bip39" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62cc94d358b5a1e84a5cb9109f559aa3c4d634d2b1b4de3d0fa4adc7c78e2861" +dependencies = [ + "anyhow", + "hmac 0.12.1", + "once_cell", + "pbkdf2 0.11.0", + "rand 0.8.5", + "rustc-hash", + "sha2 0.10.8", + "thiserror", + "unicode-normalization", + "wasm-bindgen", + "zeroize", +] + +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] + +[[package]] +name = "tinytemplate" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "parking_lot 0.12.1", + "pin-project-lite 0.2.13", + "signal-hook-registry", + "socket2 0.5.5", + "tokio-macros", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-macros" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tokio-stream" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" +dependencies = [ + "futures-core", + "pin-project-lite 0.2.13", + "tokio", + "tokio-util", +] + +[[package]] +name = "tokio-util" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +dependencies = [ + "bytes", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite 0.2.13", + "tokio", + "tracing", +] + +[[package]] +name = "toml" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.1.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-http" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" +dependencies = [ + "bitflags 2.4.1", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-range-header", + "pin-project-lite 0.2.13", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-layer" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "log", + "pin-project-lite 0.2.13", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-futures" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" +dependencies = [ + "pin-project", + "tracing", +] + +[[package]] +name = "tracing-gum" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "coarsetime", + "polkadot-node-jaeger", + "polkadot-primitives", + "tracing", + "tracing-gum-proc-macro", +] + +[[package]] +name = "tracing-gum-proc-macro" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "expander 2.0.0", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tracing-log" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +dependencies = [ + "ansi_term", + "chrono", + "lazy_static", + "matchers", + "parking_lot 0.11.2", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", +] + +[[package]] +name = "trie-db" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642" +dependencies = [ + "hash-db 0.16.0", + "hashbrown 0.13.2", + "log", + "rustc-hex", + "smallvec", +] + +[[package]] +name = "trie-root" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4ed310ef5ab98f5fa467900ed906cb9232dd5376597e00fd4cba2a449d06c0b" +dependencies = [ + "hash-db 0.16.0", +] + +[[package]] +name = "triehash" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" +dependencies = [ + "hash-db 0.15.2", + "rlp", +] + +[[package]] +name = "trust-dns-proto" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f7f83d1e4a0e4358ac54c5c3681e5d7da5efc5a7a632c90bb6d6669ddd9bc26" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.2.3", + "ipnet", + "lazy_static", + "rand 0.8.5", + "smallvec", + "socket2 0.4.10", + "thiserror", + "tinyvec", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aff21aa4dcefb0a1afbfac26deb0adc93888c7d295fb63ab273ef276ba2b7cfe" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lazy_static", + "lru-cache", + "parking_lot 0.12.1", + "resolv-conf", + "smallvec", + "thiserror", + "tokio", + "tracing", + "trust-dns-proto", +] + +[[package]] +name = "try-lock" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" + +[[package]] +name = "tt-call" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df" + +[[package]] +name = "turn" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" +dependencies = [ + "async-trait", + "base64 0.13.1", + "futures", + "log", + "md-5", + "rand 0.8.5", + "ring 0.16.20", + "stun", + "thiserror", + "tokio", + "webrtc-util", +] + +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "digest 0.10.7", + "rand 0.8.5", + "static_assertions", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "uint" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" +dependencies = [ + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + +[[package]] +name = "unicode-bidi" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-width" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" + +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + +[[package]] +name = "universal-hash" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" +dependencies = [ + "generic-array 0.14.7", + "subtle 2.4.1", +] + +[[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle 2.4.1", +] + +[[package]] +name = "unsigned-varint" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6889a77d49f1f013504cec6bf97a2c730394adedaeb1deb5ea08949a50541105" +dependencies = [ + "asynchronous-codec", + "bytes", + "futures-io", + "futures-util", +] + +[[package]] +name = "untrusted" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" +dependencies = [ + "form_urlencoded", + "idna 0.4.0", + "percent-encoding", +] + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "uuid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc" +dependencies = [ + "getrandom 0.2.11", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" + +[[package]] +name = "w3f-bls" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7335e4c132c28cc43caef6adb339789e599e39adbe78da0c4d547fad48cbc331" +dependencies = [ + "ark-bls12-377", + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-serialize-derive", + "arrayref", + "constcat", + "digest 0.10.7", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "sha2 0.10.8", + "sha3", + "thiserror", + "zeroize", +] + +[[package]] +name = "waitgroup" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1f50000a783467e6c0200f9d10642f4bc424e39efc1b770203e88b488f79292" +dependencies = [ + "atomic-waker", +] + +[[package]] +name = "waker-fn" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" + +[[package]] +name = "walkdir" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b" + +[[package]] +name = "wasm-instrument" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa1dafb3e60065305741e83db35c6c2584bb3725b692b5b66148a38d72ace6cd" +dependencies = [ + "parity-wasm", +] + +[[package]] +name = "wasm-opt" +version = "0.116.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc942673e7684671f0c5708fc18993569d184265fd5223bb51fc8e5b9b6cfd52" +dependencies = [ + "anyhow", + "libc", + "strum", + "strum_macros", + "tempfile", + "thiserror", + "wasm-opt-cxx-sys", + "wasm-opt-sys", +] + +[[package]] +name = "wasm-opt-cxx-sys" +version = "0.116.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c57b28207aa724318fcec6575fe74803c23f6f266fce10cbc9f3f116762f12e" +dependencies = [ + "anyhow", + "cxx", + "cxx-build", + "wasm-opt-sys", +] + +[[package]] +name = "wasm-opt-sys" +version = "0.116.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a1cce564dc768dacbdb718fc29df2dba80bd21cb47d8f77ae7e3d95ceb98cbe" +dependencies = [ + "anyhow", + "cc", + "cxx", + "cxx-build", +] + +[[package]] +name = "wasm-timer" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f" +dependencies = [ + "futures", + "js-sys", + "parking_lot 0.11.2", + "pin-utils", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wasmparser" +version = "0.102.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48134de3d7598219ab9eaf6b91b15d8e50d31da76b8519fe4ecfcec2cf35104b" +dependencies = [ + "indexmap 1.9.3", + "url", +] + +[[package]] +name = "wasmtime" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f907fdead3153cb9bfb7a93bbd5b62629472dc06dee83605358c64c52ed3dda9" +dependencies = [ + "anyhow", + "bincode", + "cfg-if", + "indexmap 1.9.3", + "libc", + "log", + "object 0.30.4", + "once_cell", + "paste", + "psm", + "rayon", + "serde", + "target-lexicon", + "wasmparser", + "wasmtime-cache", + "wasmtime-cranelift", + "wasmtime-environ", + "wasmtime-jit", + "wasmtime-runtime", + "windows-sys 0.45.0", +] + +[[package]] +name = "wasmtime-asm-macros" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3b9daa7c14cd4fa3edbf69de994408d5f4b7b0959ac13fa69d465f6597f810d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "wasmtime-cache" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c86437fa68626fe896e5afc69234bb2b5894949083586535f200385adfd71213" +dependencies = [ + "anyhow", + "base64 0.21.5", + "bincode", + "directories-next", + "file-per-thread-logger", + "log", + "rustix 0.36.17", + "serde", + "sha2 0.10.8", + "toml 0.5.11", + "windows-sys 0.45.0", + "zstd 0.11.2+zstd.1.5.2", +] + +[[package]] +name = "wasmtime-cranelift" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1cefde0cce8cb700b1b21b6298a3837dba46521affd7b8c38a9ee2c869eee04" +dependencies = [ + "anyhow", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", + "cranelift-native", + "cranelift-wasm", + "gimli 0.27.3", + "log", + "object 0.30.4", + "target-lexicon", + "thiserror", + "wasmparser", + "wasmtime-cranelift-shared", + "wasmtime-environ", +] + +[[package]] +name = "wasmtime-cranelift-shared" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd041e382ef5aea1b9fc78442394f1a4f6d676ce457e7076ca4cb3f397882f8b" +dependencies = [ + "anyhow", + "cranelift-codegen", + "cranelift-native", + "gimli 0.27.3", + "object 0.30.4", + "target-lexicon", + "wasmtime-environ", +] + +[[package]] +name = "wasmtime-environ" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a990198cee4197423045235bf89d3359e69bd2ea031005f4c2d901125955c949" +dependencies = [ + "anyhow", + "cranelift-entity", + "gimli 0.27.3", + "indexmap 1.9.3", + "log", + "object 0.30.4", + "serde", + "target-lexicon", + "thiserror", + "wasmparser", + "wasmtime-types", +] + +[[package]] +name = "wasmtime-jit" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0de48df552cfca1c9b750002d3e07b45772dd033b0b206d5c0968496abf31244" +dependencies = [ + "addr2line 0.19.0", + "anyhow", + "bincode", + "cfg-if", + "cpp_demangle", + "gimli 0.27.3", + "log", + "object 0.30.4", + "rustc-demangle", + "serde", + "target-lexicon", + "wasmtime-environ", + "wasmtime-jit-debug", + "wasmtime-jit-icache-coherence", + "wasmtime-runtime", + "windows-sys 0.45.0", +] + +[[package]] +name = "wasmtime-jit-debug" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e0554b84c15a27d76281d06838aed94e13a77d7bf604bbbaf548aa20eb93846" +dependencies = [ + "object 0.30.4", + "once_cell", + "rustix 0.36.17", +] + +[[package]] +name = "wasmtime-jit-icache-coherence" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aecae978b13f7f67efb23bd827373ace4578f2137ec110bbf6a4a7cde4121bbd" +dependencies = [ + "cfg-if", + "libc", + "windows-sys 0.45.0", +] + +[[package]] +name = "wasmtime-runtime" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "658cf6f325232b6760e202e5255d823da5e348fdea827eff0a2a22319000b441" +dependencies = [ + "anyhow", + "cc", + "cfg-if", + "indexmap 1.9.3", + "libc", + "log", + "mach", + "memfd", + "memoffset 0.8.0", + "paste", + "rand 0.8.5", + "rustix 0.36.17", + "wasmtime-asm-macros", + "wasmtime-environ", + "wasmtime-jit-debug", + "windows-sys 0.45.0", +] + +[[package]] +name = "wasmtime-types" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" +dependencies = [ + "cranelift-entity", + "serde", + "thiserror", + "wasmparser", +] + +[[package]] +name = "web-sys" +version = "0.3.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki" +version = "0.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" +dependencies = [ + "ring 0.16.20", + "untrusted 0.7.1", +] + +[[package]] +name = "webpki" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed63aea5ce73d0ff405984102c42de94fc55a6b75765d621c65262469b3c9b53" +dependencies = [ + "ring 0.17.5", + "untrusted 0.9.0", +] + +[[package]] +name = "webpki-roots" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" +dependencies = [ + "webpki 0.22.4", +] + +[[package]] +name = "webrtc" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d3bc9049bdb2cea52f5fd4f6f728184225bdb867ed0dc2410eab6df5bdd67bb" +dependencies = [ + "arc-swap", + "async-trait", + "bytes", + "hex", + "interceptor", + "lazy_static", + "log", + "rand 0.8.5", + "rcgen 0.9.3", + "regex", + "ring 0.16.20", + "rtcp", + "rtp", + "rustls 0.19.1", + "sdp", + "serde", + "serde_json", + "sha2 0.10.8", + "stun", + "thiserror", + "time", + "tokio", + "turn", + "url", + "waitgroup", + "webrtc-data", + "webrtc-dtls", + "webrtc-ice", + "webrtc-mdns", + "webrtc-media", + "webrtc-sctp", + "webrtc-srtp", + "webrtc-util", +] + +[[package]] +name = "webrtc-data" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ef36a4d12baa6e842582fe9ec16a57184ba35e1a09308307b67d43ec8883100" +dependencies = [ + "bytes", + "derive_builder", + "log", + "thiserror", + "tokio", + "webrtc-sctp", + "webrtc-util", +] + +[[package]] +name = "webrtc-dtls" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a00f4242f2db33307347bd5be53263c52a0331c96c14292118c9a6bb48d267" +dependencies = [ + "aes 0.6.0", + "aes-gcm 0.10.3", + "async-trait", + "bincode", + "block-modes", + "byteorder", + "ccm", + "curve25519-dalek 3.2.0", + "der-parser 8.2.0", + "elliptic-curve 0.12.3", + "hkdf", + "hmac 0.12.1", + "log", + "p256", + "p384", + "rand 0.8.5", + "rand_core 0.6.4", + "rcgen 0.10.0", + "ring 0.16.20", + "rustls 0.19.1", + "sec1 0.3.0", + "serde", + "sha1", + "sha2 0.10.8", + "signature 1.6.4", + "subtle 2.4.1", + "thiserror", + "tokio", + "webpki 0.21.4", + "webrtc-util", + "x25519-dalek 2.0.0", + "x509-parser 0.13.2", +] + +[[package]] +name = "webrtc-ice" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "465a03cc11e9a7d7b4f9f99870558fe37a102b65b93f8045392fef7c67b39e80" +dependencies = [ + "arc-swap", + "async-trait", + "crc", + "log", + "rand 0.8.5", + "serde", + "serde_json", + "stun", + "thiserror", + "tokio", + "turn", + "url", + "uuid", + "waitgroup", + "webrtc-mdns", + "webrtc-util", +] + +[[package]] +name = "webrtc-mdns" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f08dfd7a6e3987e255c4dbe710dde5d94d0f0574f8a21afa95d171376c143106" +dependencies = [ + "log", + "socket2 0.4.10", + "thiserror", + "tokio", + "webrtc-util", +] + +[[package]] +name = "webrtc-media" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f72e1650a8ae006017d1a5280efb49e2610c19ccc3c0905b03b648aee9554991" +dependencies = [ + "byteorder", + "bytes", + "rand 0.8.5", + "rtp", + "thiserror", +] + +[[package]] +name = "webrtc-sctp" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d47adcd9427eb3ede33d5a7f3424038f63c965491beafcc20bc650a2f6679c0" +dependencies = [ + "arc-swap", + "async-trait", + "bytes", + "crc", + "log", + "rand 0.8.5", + "thiserror", + "tokio", + "webrtc-util", +] + +[[package]] +name = "webrtc-srtp" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6183edc4c1c6c0175f8812eefdce84dfa0aea9c3ece71c2bf6ddd3c964de3da5" +dependencies = [ + "aead 0.4.3", + "aes 0.7.5", + "aes-gcm 0.9.4", + "async-trait", + "byteorder", + "bytes", + "ctr 0.8.0", + "hmac 0.11.0", + "log", + "rtcp", + "rtp", + "sha-1", + "subtle 2.4.1", + "thiserror", + "tokio", + "webrtc-util", +] + +[[package]] +name = "webrtc-util" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93f1db1727772c05cf7a2cfece52c3aca8045ca1e176cd517d323489aa3c6d87" +dependencies = [ + "async-trait", + "bitflags 1.3.2", + "bytes", + "cc", + "ipnet", + "lazy_static", + "libc", + "log", + "nix", + "rand 0.8.5", + "thiserror", + "tokio", + "winapi", +] + +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix 0.38.24", +] + +[[package]] +name = "wide" +version = "0.7.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c68938b57b33da363195412cfc5fc37c9ed49aa9cfe2156fde64b8d2c9498242" +dependencies = [ + "bytemuck", + "safe_arch", +] + +[[package]] +name = "widestring" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" +dependencies = [ + "windows-core", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "winnow" +version = "0.5.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "x25519-dalek" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a0c105152107e3b96f6a00a65e86ce82d9b125230e1c4302940eca58ff71f4f" +dependencies = [ + "curve25519-dalek 3.2.0", + "rand_core 0.5.1", + "zeroize", +] + +[[package]] +name = "x25519-dalek" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96" +dependencies = [ + "curve25519-dalek 4.1.1", + "rand_core 0.6.4", + "serde", + "zeroize", +] + +[[package]] +name = "x509-parser" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb9bace5b5589ffead1afb76e43e34cff39cd0f3ce7e170ae0c29e53b88eb1c" +dependencies = [ + "asn1-rs 0.3.1", + "base64 0.13.1", + "data-encoding", + "der-parser 7.0.0", + "lazy_static", + "nom", + "oid-registry 0.4.0", + "ring 0.16.20", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "x509-parser" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" +dependencies = [ + "asn1-rs 0.5.2", + "base64 0.13.1", + "data-encoding", + "der-parser 8.2.0", + "lazy_static", + "nom", + "oid-registry 0.6.1", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "xcm-primitives" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/moonkit?branch=moonbeam-polkadot-v1.3.0#4ef527e1e708bb635637c343194277e24aa4c477" +dependencies = [ + "sp-runtime", +] + +[[package]] +name = "xcm-primitives" +version = "0.1.1" +source = "git+https://github.com/moonbeam-foundation/moonbeam?rev=runtime-2700#ef76ba7b98dab867c17579be68e8bca5bdf6e688" +dependencies = [ + "cumulus-primitives-core", + "ethereum", + "ethereum-types", + "frame-benchmarking", + "frame-support", + "frame-system", + "hex", + "impl-trait-for-tuples", + "log", + "orml-traits", + "pallet-staking", + "parity-scale-codec", + "polkadot-runtime-common", + "scale-info", + "serde", + "sha3", + "sp-io", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", +] + +[[package]] +name = "xcm-procedural" +version = "1.0.0" +source = "git+https://github.com/moonbeam-foundation/polkadot-sdk?branch=moonbeam-polkadot-v1.3.0#542721dd4ab6b8119a8479a8830e57e101249594" +dependencies = [ + "Inflector", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "yamux" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d9ba232399af1783a58d8eb26f6b5006fbefe2dc9ef36bd283324792d03ea5" +dependencies = [ + "futures", + "log", + "nohash-hasher", + "parking_lot 0.12.1", + "rand 0.8.5", + "static_assertions", +] + +[[package]] +name = "yasna" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd" +dependencies = [ + "time", +] + +[[package]] +name = "zerocopy" +version = "0.7.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e97e415490559a91254a2979b4829267a57d2fcd741a98eee8b722fb57289aa0" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd7e48ccf166952882ca8bd778a43502c64f33bf94c12ebe2a7f08e5a0f6689f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "zeroize" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "zstd" +version = "0.11.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +dependencies = [ + "zstd-safe 5.0.2+zstd.1.5.2", +] + +[[package]] +name = "zstd" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" +dependencies = [ + "zstd-safe 6.0.6", +] + +[[package]] +name = "zstd-safe" +version = "5.0.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +dependencies = [ + "libc", + "zstd-sys", +] + +[[package]] +name = "zstd-safe" +version = "6.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" +dependencies = [ + "libc", + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.9+zstd.1.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/tracing/2700/Cargo.toml b/tracing/2700/Cargo.toml new file mode 100644 index 00000000..cb07a91c --- /dev/null +++ b/tracing/2700/Cargo.toml @@ -0,0 +1,430 @@ +[workspace] +members = [ + "runtime/moonbase", + "runtime/moonbeam", + "runtime/moonriver", +] +resolver = "2" + +[workspace.package] +authors = ["PureStake"] +repository = "https://github.com/PureStake/moonbeam" + +[workspace.dependencies] +# Dependencies are split into 2 groups: wasm and client. +# - "wasm" dependencies requires to be no_std compatible, which often requires +# `default-features = false`. When used in a client-side crate the "std" feature should be enabled +# there if it exists. +# - "client" dependencies are only used in the client, and thus don't need to be no_std compatible. + +# Moonbeam (wasm) +account = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +evm-tracing-events = { path = "shared/primitives/rpc/evm-tracing-events", default-features = false , features = ["runtime-1600"] } +moonbeam-core-primitives = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-primitives-ext = { path = "shared/primitives/ext", default-features = false } +moonbeam-rpc-primitives-debug = { path = "shared/primitives/rpc/debug", default-features = false } +moonbeam-rpc-primitives-txpool = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } + +moonbeam-evm-tracer = { path = "shared/runtime/evm_tracer", default-features = false } +moonbeam-relay-encoder = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-runtime-common = { path = "runtime/common", default-features = false } + +moonbeam-xcm-benchmarks = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-asset-manager = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-erc20-xcm-bridge = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-ethereum-xcm = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } + +pallet-evm-precompile-author-mapping = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-balances-erc20 = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-batch = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-call-permit = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-collective = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-conviction-voting = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-crowdloan-rewards = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-democracy = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-gmp = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-identity = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-parachain-staking = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-preimage = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-proxy = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-randomness = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-referenda = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-registry = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-relay-encoder = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-xcm-transactor = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-xcm-utils = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompile-xtokens = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-evm-precompileset-assets-erc20 = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-moonbeam-orbiters = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-parachain-staking = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-proxy-genesis-companion = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +pallet-xcm-transactor = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +precompile-utils = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +xcm-primitives = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } + +pallet-crowdloan-rewards = { git = "https://github.com/moonbeam-foundation/crowdloan-rewards", branch = "moonbeam-polkadot-v1.3.0", default-features = false } + +# Moonbeam (client) +moonbeam-cli = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-cli-opt = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-service = { default-features = false , git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } + +manual-xcm-rpc = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-client-evm-tracing = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-finality-rpc = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-core-debug = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-core-trace = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-core-txpool = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-core-types = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-debug = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-trace = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-rpc-txpool = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } +moonbeam-vrf = { git = "https://github.com/moonbeam-foundation/moonbeam", rev = "runtime-2700" } + +moonbase-runtime = { path = "runtime/moonbase" } +moonbeam-runtime = { path = "runtime/moonbeam" } +moonriver-runtime = { path = "runtime/moonriver" } + +# Substrate (wasm) +frame-benchmarking = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-executive = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-support = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-system = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-system-benchmarking = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +frame-try-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-assets = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-balances = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-collective = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-conviction-voting = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-democracy = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-identity = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-message-queue = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +pallet-multisig = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-preimage = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-proxy = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-referenda = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-root-testing = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-scheduler = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-society = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-staking = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-sudo = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-timestamp = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-transaction-payment = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-treasury = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-utility = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-whitelist = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +parity-scale-codec = { version = "3.2.2", default-features = false, features = [ + "derive", +] } +scale-info = { version = "2.0", default-features = false, features = [ + "derive", +] } +sp-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-application-crypto = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-block-builder = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-consensus-babe = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-consensus-slots = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-core = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-debug-derive = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-externalities = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-inherents = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-io = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-keystore = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-offchain = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-runtime-interface = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-session = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-std = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-transaction-pool = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-version = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +sp-weights = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +substrate-fixed = { git = "https://github.com/encointer/substrate-fixed", default-features = false } + +# Substrate (client) +frame-benchmarking-cli = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +pallet-transaction-payment-rpc = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-basic-authorship = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-block-builder = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-chain-spec = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-cli = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-client-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-client-db = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-consensus = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-consensus-grandpa = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-consensus-manual-seal = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-executor = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-informant = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-network = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-network-common = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-network-sync = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-offchain = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-rpc = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-rpc-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-service = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-sysinfo = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-telemetry = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-tracing = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-transaction-pool = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-transaction-pool-api = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sc-utils = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-blockchain = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-consensus = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-storage = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-timestamp = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-trie = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +sp-wasm-interface = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-build-script-utils = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-frame-rpc-system = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-prometheus-endpoint = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-test-client = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-test-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-test-runtime-client = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +substrate-wasm-builder = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +try-runtime-cli = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } + +# Frontier (wasm) +ethereum = { version = "0.14.0", default-features = false, features = [ + "with-codec", +] } +ethereum-types = { version = "0.14", default-features = false } +evm = { git = "https://github.com/moonbeam-foundation/evm", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +evm-gasometer = { git = "https://github.com/moonbeam-foundation/evm", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +evm-runtime = { git = "https://github.com/moonbeam-foundation/evm", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +fp-ethereum = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +fp-evm = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +fp-rpc = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +fp-self-contained = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-base-fee = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-ethereum = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false, features = [ + "forbid-evm-reentrancy", +] } +pallet-evm = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false, features = [ + "forbid-evm-reentrancy", +] } +pallet-evm-chain-id = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-blake2 = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-bn128 = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-dispatch = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", default-features = false } + +# Frontier (client) +fc-consensus = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fc-db = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fc-api = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fc-mapping-sync = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fc-rpc = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0", features = [ + "rpc-binary-search-estimate", +] } +fc-rpc-core = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fc-storage = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fp-consensus = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } +fp-storage = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-v1.3.0" } + +# Cumulus (wasm) +cumulus-pallet-dmp-queue = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false, features = [ + "parameterized-consensus-hook", +] } +cumulus-pallet-xcm = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-pallet-xcmp-queue = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-primitives-core = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +parachain-info = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } + +# Cumulus (client) +cumulus-client-cli = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-collator = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-consensus-common = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-consensus-proposer = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-consensus-relay-chain = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-network = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-client-service = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-relay-chain-interface = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-relay-chain-minimal-node = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } + +# Polkadot / XCM (wasm) +orml-traits = { git = "https://github.com/moonbeam-foundation/open-runtime-module-library", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +orml-xcm-support = { git = "https://github.com/moonbeam-foundation/open-runtime-module-library", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +orml-xtokens = { git = "https://github.com/moonbeam-foundation/open-runtime-module-library", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-xcm = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-xcm-benchmarks = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +polkadot-core-primitives = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +polkadot-runtime-common = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +polkadot-runtime-parachains = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +xcm = { package = "staging-xcm", git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0", default-features = false } + +# Polkadot / XCM (client) +#kusama-runtime = { package = "staging-kusama-runtime", git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +polkadot-cli = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +polkadot-primitives = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +#polkadot-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +polkadot-service = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +rococo-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +westend-runtime = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } +xcm-simulator = { git = "https://github.com/moonbeam-foundation/polkadot-sdk", branch = "moonbeam-polkadot-v1.3.0" } + +# Moonkit (wasm) +async-backing-primitives = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +moonkit-xcm-primitives = { package = "xcm-primitives", git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +nimbus-primitives = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-async-backing = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-author-inherent = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-author-mapping = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-author-slot-filter = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-maintenance-mode = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-migrations = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +pallet-randomness = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } +session-keys-primitives = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0", default-features = false } + +# Moonkit (client) +nimbus-consensus = { git = "https://github.com/Moonsong-Labs/moonkit", branch = "moonbeam-polkadot-v1.3.0" } + +# Other (wasm) +affix = "0.1.2" +async-trait = { version = "0.1.42" } +blake2-rfc = { version = "0.2.18", default-features = false } +derive_more = "0.99" +environmental = { version = "1.1.2", default-features = false } +frame-metadata = { version = "16.0.0", default-features = false, features = [ + "current", +] } +hex = { version = "0.4.3", default-features = false } +hex-literal = { version = "0.3.4" } +impl-serde = { version = "0.3.1", default-features = false } +impl-trait-for-tuples = "0.2.1" +libsecp256k1 = { version = "0.7", default-features = false } +log = { version = "0.4", default-features = false } +num_enum = { version = "0.5.3", default-features = false } +paste = "1.0.6" +rlp = { version = "0.5", default-features = false } +rustc-hex = { version = "2.0.1", default-features = false } +serde = { version = "1.0.101", default-features = false } +sha3 = { version = "0.10", default-features = false } +slices = "0.2.0" +smallvec = "1.8.0" +strum = { version = "0.24", default-features = false, features = ["derive"] } +strum_macros = "0.24" + +# Other (client) +ansi_term = "0.12.1" +assert_cmd = "2.0.10" +async-io = "1.3" +bip32 = { version = "0.5.1", default-features = false, features = ["bip39"] } +clap = { version = "4.0.9", features = ["derive"] } +exit-future = "0.2" +flume = "0.10.9" +futures = { version = "0.3.21" } +jsonrpsee = { version = "0.16.2", default-features = false } +maplit = "1.0.2" +nix = "0.23" +parking_lot = "0.12.0" +primitive-types = "0.12.0" +prometheus = { version = "0.13.0", default-features = false } +rand = "0.7.3" +schnorrkel = { version = "0.9.1", default-features = false, features = [ + "preaudit_deprecated", + "u64_backend", +] } +serde_json = { version = "1.0" } +similar-asserts = "1.1.0" +tempfile = "3.2.0" +tiny-bip39 = { version = "0.8", default-features = false } +tokio = { version = "1.13" } +tracing = "0.1.34" +tracing-core = "0.1.29" +trie-root = "0.15.2" +url = "2.2.2" + +# The list of dependencies below (which can be both direct and indirect dependencies) are crates +# that are suspected to be CPU-intensive, and that are unlikely to require debugging (as some of +# their debug info might be missing) or to require to be frequently recompiled. We compile these +# dependencies with `opt-level=3` even in "dev" mode in order to make "dev" mode more usable. +# The majority of these crates are cryptographic libraries. +# +# Note that this does **not** affect crates that depend on Moonbeam. In other words, if you add +# a dependency on Moonbeam, you have to copy-paste this list in your own `Cargo.toml` (assuming +# that you want the same list). This list is only relevant when running `cargo build` from within +# the Moonbeam workspace. +# +# If you see an error mentioning "profile package spec ... did not match any packages", it +# probably concerns this list. +# +# This list is ordered alphabetically. +[profile.dev.package] +blake2 = { opt-level = 3 } +blake2b_simd = { opt-level = 3 } +chacha20poly1305 = { opt-level = 3 } +cranelift-codegen = { opt-level = 3 } +cranelift-wasm = { opt-level = 3 } +crc32fast = { opt-level = 3 } +crossbeam-deque = { opt-level = 3 } +crypto-mac = { opt-level = 3 } +curve25519-dalek = { opt-level = 3 } +ed25519-zebra = { opt-level = 3 } +flate2 = { opt-level = 3 } +futures-channel = { opt-level = 3 } +hash-db = { opt-level = 3 } +hashbrown = { opt-level = 3 } +hmac = { opt-level = 3 } +httparse = { opt-level = 3 } +integer-sqrt = { opt-level = 3 } +k256 = { opt-level = 3 } +keccak = { opt-level = 3 } +libm = { opt-level = 3 } +librocksdb-sys = { opt-level = 3 } +libsecp256k1 = { opt-level = 3 } +libz-sys = { opt-level = 3 } +mio = { opt-level = 3 } +nalgebra = { opt-level = 3 } +num-bigint = { opt-level = 3 } +parking_lot = { opt-level = 3 } +parking_lot_core = { opt-level = 3 } +percent-encoding = { opt-level = 3 } +primitive-types = { opt-level = 3 } +ring = { opt-level = 3 } +rustls = { opt-level = 3 } +secp256k1 = { opt-level = 3 } +sha2 = { opt-level = 3 } +sha3 = { opt-level = 3 } +smallvec = { opt-level = 3 } +snow = { opt-level = 3 } +twox-hash = { opt-level = 3 } +uint = { opt-level = 3 } +wasmi = { opt-level = 3 } +x25519-dalek = { opt-level = 3 } +yamux = { opt-level = 3 } +zeroize = { opt-level = 3 } + +# make sure dev builds with backtrace do +# not slow us down +[profile.dev.package.backtrace] +inherits = "release" + +[profile.production] +codegen-units = 1 +incremental = false +inherits = "release" +lto = true + +[profile.release] +# Moonbeam runtime requires unwinding. +opt-level = 3 +panic = "unwind" + +[profile.testnet] +debug = 1 # debug symbols are useful for profilers +debug-assertions = true +inherits = "release" +overflow-checks = true diff --git a/tracing/2700/runtime/common/Cargo.toml b/tracing/2700/runtime/common/Cargo.toml new file mode 100644 index 00000000..c3ee7772 --- /dev/null +++ b/tracing/2700/runtime/common/Cargo.toml @@ -0,0 +1,137 @@ +[package] +name = "moonbeam-runtime-common" +authors = { workspace = true } +description = "Common code shared between runtimes" +edition = "2021" +homepage = "https://moonbeam.network" +license = "GPL-3.0-only" +version = "0.8.0-dev" + +[dependencies] +hex-literal = "0.3.4" +impl-trait-for-tuples = "0.2.1" +log = "0.4" + +# Moonbeam +moonbeam-xcm-benchmarks = { workspace = true } +pallet-asset-manager = { workspace = true } +pallet-author-mapping = { workspace = true } +pallet-conviction-voting = { workspace = true } +pallet-ethereum-xcm = { workspace = true } +pallet-migrations = { workspace = true } +pallet-parachain-staking = { workspace = true } +pallet-randomness = { workspace = true } +pallet-xcm-transactor = { workspace = true } +precompile-utils = { workspace = true } +xcm-primitives = { workspace = true } + +# Substrate +cumulus-pallet-xcmp-queue = { workspace = true } +frame-benchmarking = { workspace = true } +frame-support = { workspace = true } +frame-system = { workspace = true } +pallet-assets = { workspace = true } +pallet-balances = { workspace = true } +pallet-collective = { workspace = true } +pallet-crowdloan-rewards = { workspace = true } +pallet-democracy = { workspace = true } +pallet-identity = { workspace = true } +pallet-moonbeam-orbiters = { workspace = true } +pallet-multisig = { workspace = true } +pallet-preimage = { workspace = true } +pallet-proxy = { workspace = true } +pallet-referenda = { workspace = true } +pallet-scheduler = { workspace = true } +pallet-sudo = { workspace = true } +pallet-timestamp = { workspace = true } +pallet-treasury = { workspace = true } +pallet-utility = { workspace = true } +pallet-whitelist = { workspace = true } +pallet-xcm = { workspace = true } +sp-api = { workspace = true } +sp-core = { workspace = true } +sp-runtime = { workspace = true } +sp-std = { workspace = true } + + +# Frontier +fp-ethereum = { workspace = true } +fp-evm = { workspace = true } +pallet-base-fee = { workspace = true } +pallet-evm = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm-chain-id = { workspace = true } + +# Nimbus +nimbus-primitives = { workspace = true } +pallet-author-inherent = { workspace = true } +pallet-author-slot-filter = { workspace = true } + +# Polkadot +xcm = { workspace = true } +xcm-builder = { workspace = true } +xcm-executor = { workspace = true } + +account = { workspace = true } + +[features] +std = [ + "fp-ethereum/std", + "fp-evm/std", + "frame-support/std", + "pallet-asset-manager/std", + "pallet-author-inherent/std", + "pallet-author-mapping/std", + "pallet-base-fee/std", + "pallet-ethereum-xcm/std", + "pallet-evm/std", + "pallet-migrations/std", + "pallet-parachain-staking/std", + "pallet-randomness/std", + "pallet-referenda/std", + "pallet-scheduler/std", + "pallet-xcm-transactor/std", + "precompile-utils/std", + "sp-core/std", + "sp-runtime/std", + "sp-std/std", + "xcm-executor/std", + "xcm/std", + "account/std" +] +runtime-benchmarks = [ + "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "frame-benchmarking/runtime-benchmarks", + "pallet-asset-manager/runtime-benchmarks", + "pallet-assets/runtime-benchmarks", + "pallet-author-inherent/runtime-benchmarks", + "pallet-author-mapping/runtime-benchmarks", + "pallet-author-slot-filter/runtime-benchmarks", + "pallet-balances/runtime-benchmarks", + "pallet-conviction-voting/runtime-benchmarks", + "pallet-crowdloan-rewards/runtime-benchmarks", + "pallet-democracy/runtime-benchmarks", + "pallet-ethereum-xcm/runtime-benchmarks", + "pallet-evm/runtime-benchmarks", + "pallet-identity/runtime-benchmarks", + "pallet-moonbeam-orbiters/runtime-benchmarks", + "pallet-multisig/runtime-benchmarks", + "pallet-parachain-staking/runtime-benchmarks", + "pallet-preimage/runtime-benchmarks", + "pallet-proxy/runtime-benchmarks", + "pallet-randomness/runtime-benchmarks", + "pallet-referenda/runtime-benchmarks", + "pallet-referenda/runtime-benchmarks", + "pallet-scheduler/runtime-benchmarks", + "pallet-sudo/runtime-benchmarks", + "pallet-timestamp/runtime-benchmarks", + "pallet-treasury/runtime-benchmarks", + "pallet-utility/runtime-benchmarks", + "pallet-whitelist/runtime-benchmarks", + "pallet-xcm-transactor/runtime-benchmarks", + "pallet-xcm/runtime-benchmarks", + "moonbeam-xcm-benchmarks/runtime-benchmarks", +] +try-runtime = [ + "frame-support/try-runtime", + "pallet-migrations/try-runtime", +] diff --git a/tracing/2700/runtime/common/src/apis.rs b/tracing/2700/runtime/common/src/apis.rs new file mode 100644 index 00000000..082d58de --- /dev/null +++ b/tracing/2700/runtime/common/src/apis.rs @@ -0,0 +1,816 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_runtime_apis_plus_common { + {$($custom:tt)*} => { + impl_runtime_apis! { + $($custom)* + + impl sp_api::Core for Runtime { + fn version() -> RuntimeVersion { + VERSION + } + + fn execute_block(block: Block) { + Executive::execute_block(block) + } + + fn initialize_block(header: &::Header) { + Executive::initialize_block(header) + } + } + + impl sp_api::Metadata for Runtime { + fn metadata() -> OpaqueMetadata { + OpaqueMetadata::new(Runtime::metadata().into()) + } + + fn metadata_at_version(version: u32) -> Option { + Runtime::metadata_at_version(version) + } + + fn metadata_versions() -> Vec { + Runtime::metadata_versions() + } + } + + impl sp_block_builder::BlockBuilder for Runtime { + fn apply_extrinsic(extrinsic: ::Extrinsic) -> ApplyExtrinsicResult { + Executive::apply_extrinsic(extrinsic) + } + + fn finalize_block() -> ::Header { + Executive::finalize_block() + } + + fn inherent_extrinsics( + data: sp_inherents::InherentData, + ) -> Vec<::Extrinsic> { + data.create_extrinsics() + } + + fn check_inherents( + block: Block, + data: sp_inherents::InherentData, + ) -> sp_inherents::CheckInherentsResult { + data.check_extrinsics(&block) + } + } + + impl sp_offchain::OffchainWorkerApi for Runtime { + fn offchain_worker(header: &::Header) { + Executive::offchain_worker(header) + } + } + + impl sp_session::SessionKeys for Runtime { + fn decode_session_keys( + encoded: Vec, + ) -> Option, sp_core::crypto::KeyTypeId)>> { + opaque::SessionKeys::decode_into_raw_public_keys(&encoded) + } + + fn generate_session_keys(seed: Option>) -> Vec { + opaque::SessionKeys::generate(seed) + } + } + + impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { + fn account_nonce(account: AccountId) -> Index { + System::account_nonce(account) + } + } + + impl moonbeam_rpc_primitives_debug::DebugRuntimeApi for Runtime { + fn trace_transaction( + extrinsics: Vec<::Extrinsic>, + traced_transaction: &EthereumTransaction, + ) -> Result< + (), + sp_runtime::DispatchError, + > { + #[cfg(feature = "evm-tracing")] + { + use moonbeam_evm_tracer::tracer::EvmTracer; + use xcm_primitives::{ + ETHEREUM_XCM_TRACING_STORAGE_KEY, + EthereumXcmTracingStatus + }; + use frame_support::storage::unhashed; + + // Tell the CallDispatcher we are tracing a specific Transaction. + unhashed::put::( + ETHEREUM_XCM_TRACING_STORAGE_KEY, + &EthereumXcmTracingStatus::Transaction(traced_transaction.hash()), + ); + + // Apply the a subset of extrinsics: all the substrate-specific or ethereum + // transactions that preceded the requested transaction. + for ext in extrinsics.into_iter() { + let _ = match &ext.0.function { + RuntimeCall::Ethereum(transact { transaction }) => { + if transaction == traced_transaction { + EvmTracer::new().trace(|| Executive::apply_extrinsic(ext)); + return Ok(()); + } else { + Executive::apply_extrinsic(ext) + } + } + _ => Executive::apply_extrinsic(ext), + }; + if let Some(EthereumXcmTracingStatus::TransactionExited) = unhashed::get( + ETHEREUM_XCM_TRACING_STORAGE_KEY + ) { + return Ok(()); + } + } + Err(sp_runtime::DispatchError::Other( + "Failed to find Ethereum transaction among the extrinsics.", + )) + } + #[cfg(not(feature = "evm-tracing"))] + Err(sp_runtime::DispatchError::Other( + "Missing `evm-tracing` compile time feature flag.", + )) + } + + fn trace_block( + extrinsics: Vec<::Extrinsic>, + known_transactions: Vec, + ) -> Result< + (), + sp_runtime::DispatchError, + > { + #[cfg(feature = "evm-tracing")] + { + use moonbeam_evm_tracer::tracer::EvmTracer; + use xcm_primitives::EthereumXcmTracingStatus; + + // Tell the CallDispatcher we are tracing a full Block. + frame_support::storage::unhashed::put::( + xcm_primitives::ETHEREUM_XCM_TRACING_STORAGE_KEY, + &EthereumXcmTracingStatus::Block, + ); + + let mut config = ::config().clone(); + config.estimate = true; + + // Apply all extrinsics. Ethereum extrinsics are traced. + for ext in extrinsics.into_iter() { + match &ext.0.function { + RuntimeCall::Ethereum(transact { transaction }) => { + if known_transactions.contains(&transaction.hash()) { + // Each known extrinsic is a new call stack. + EvmTracer::emit_new(); + EvmTracer::new().trace(|| Executive::apply_extrinsic(ext)); + } else { + let _ = Executive::apply_extrinsic(ext); + } + } + _ => { + let _ = Executive::apply_extrinsic(ext); + } + }; + } + + Ok(()) + } + #[cfg(not(feature = "evm-tracing"))] + Err(sp_runtime::DispatchError::Other( + "Missing `evm-tracing` compile time feature flag.", + )) + } + } + + impl moonbeam_rpc_primitives_txpool::TxPoolRuntimeApi for Runtime { + fn extrinsic_filter( + xts_ready: Vec<::Extrinsic>, + xts_future: Vec<::Extrinsic>, + ) -> TxPoolResponse { + TxPoolResponse { + ready: xts_ready + .into_iter() + .filter_map(|xt| match xt.0.function { + RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), + _ => None, + }) + .collect(), + future: xts_future + .into_iter() + .filter_map(|xt| match xt.0.function { + RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), + _ => None, + }) + .collect(), + } + } + } + + impl fp_rpc::EthereumRuntimeRPCApi for Runtime { + fn chain_id() -> u64 { + ::ChainId::get() + } + + fn account_basic(address: H160) -> EVMAccount { + let (account, _) = EVM::account_basic(&address); + account + } + + fn gas_price() -> U256 { + let (gas_price, _) = ::FeeCalculator::min_gas_price(); + gas_price + } + + fn account_code_at(address: H160) -> Vec { + pallet_evm::AccountCodes::::get(address) + } + + fn author() -> H160 { + >::find_author() + } + + fn storage_at(address: H160, index: U256) -> H256 { + let mut tmp = [0u8; 32]; + index.to_big_endian(&mut tmp); + pallet_evm::AccountStorages::::get(address, H256::from_slice(&tmp[..])) + } + + fn call( + from: H160, + to: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + let is_transactional = false; + let validate = true; + + // Estimated encoded transaction size must be based on the heaviest transaction + // type (EIP1559Transaction) to be compatible with all transaction types. + let mut estimated_transaction_len = data.len() + + // pallet ethereum index: 1 + // transact call index: 1 + // Transaction enum variant: 1 + // chain_id 8 bytes + // nonce: 32 + // max_priority_fee_per_gas: 32 + // max_fee_per_gas: 32 + // gas_limit: 32 + // action: 21 (enum varianrt + call address) + // value: 32 + // access_list: 1 (empty vec size) + // 65 bytes signature + 258; + + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + let gas_limit = gas_limit.min(u64::MAX.into()).low_u64(); + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + ::Runner::call( + from, + to, + data, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + is_transactional, + validate, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn create( + from: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + let is_transactional = false; + let validate = true; + + let mut estimated_transaction_len = data.len() + + // from: 20 + // value: 32 + // gas_limit: 32 + // nonce: 32 + // 1 byte transaction action variant + // chain id 8 bytes + // 65 bytes signature + 190; + + if max_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if max_priority_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + let gas_limit = if gas_limit > U256::from(u64::MAX) { + u64::MAX + } else { + gas_limit.low_u64() + }; + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + #[allow(clippy::or_fun_call)] // suggestion not helpful here + ::Runner::create( + from, + data, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + is_transactional, + validate, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn current_transaction_statuses() -> Option> { + pallet_ethereum::CurrentTransactionStatuses::::get() + } + + fn current_block() -> Option { + pallet_ethereum::CurrentBlock::::get() + } + + fn current_receipts() -> Option> { + pallet_ethereum::CurrentReceipts::::get() + } + + fn current_all() -> ( + Option, + Option>, + Option>, + ) { + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentReceipts::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get(), + ) + } + + fn extrinsic_filter( + xts: Vec<::Extrinsic>, + ) -> Vec { + xts.into_iter().filter_map(|xt| match xt.0.function { + RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), + _ => None + }).collect::>() + } + + fn elasticity() -> Option { + None + } + + fn gas_limit_multiplier_support() {} + + fn pending_block( + xts: Vec<::Extrinsic> + ) -> ( + Option, Option> + ) { + for ext in xts.into_iter() { + let _ = Executive::apply_extrinsic(ext); + } + + Ethereum::on_finalize(System::block_number() + 1); + + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get() + ) + } + + fn initialize_pending_block(header: &::Header) { + pallet_randomness::vrf::using_fake_vrf(|| Executive::initialize_block(header)) + } + } + + impl fp_rpc::ConvertTransactionRuntimeApi for Runtime { + fn convert_transaction( + transaction: pallet_ethereum::Transaction + ) -> ::Extrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } + } + + impl pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi + for Runtime { + fn query_info( + uxt: ::Extrinsic, + len: u32, + ) -> pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo { + TransactionPayment::query_info(uxt, len) + } + + fn query_fee_details( + uxt: ::Extrinsic, + len: u32, + ) -> pallet_transaction_payment::FeeDetails { + TransactionPayment::query_fee_details(uxt, len) + } + + fn query_weight_to_fee(weight: Weight) -> Balance { + TransactionPayment::weight_to_fee(weight) + } + + fn query_length_to_fee(length: u32) -> Balance { + TransactionPayment::length_to_fee(length) + } + } + + impl nimbus_primitives::NimbusApi for Runtime { + fn can_author( + author: nimbus_primitives::NimbusId, + slot: u32, + parent_header: &::Header + ) -> bool { + let block_number = parent_header.number + 1; + + // The Moonbeam runtimes use an entropy source that needs to do some accounting + // work during block initialization. Therefore we initialize it here to match + // the state it will be in when the next block is being executed. + use frame_support::traits::OnInitialize; + System::initialize( + &block_number, + &parent_header.hash(), + &parent_header.digest, + ); + + // Because the staking solution calculates the next staking set at the beginning + // of the first block in the new round, the only way to accurately predict the + // authors is to compute the selection during prediction. + if pallet_parachain_staking::Pallet::::round().should_update(block_number) { + // get author account id + use nimbus_primitives::AccountLookup; + let author_account_id = if let Some(account) = + pallet_author_mapping::Pallet::::lookup_account(&author) { + account + } else { + // return false if author mapping not registered like in can_author impl + return false + }; + let candidates = pallet_parachain_staking::Pallet::::compute_top_candidates(); + if candidates.is_empty() { + // If there are zero selected candidates, we use the same eligibility + // as the previous round + return AuthorInherent::can_author(&author, &slot); + } + + // predict eligibility post-selection by computing selection results now + let (eligible, _) = + pallet_author_slot_filter::compute_pseudo_random_subset::( + candidates, + &slot + ); + eligible.contains(&author_account_id) + } else { + AuthorInherent::can_author(&author, &slot) + } + } + } + + impl cumulus_primitives_core::CollectCollationInfo for Runtime { + fn collect_collation_info( + header: &::Header + ) -> cumulus_primitives_core::CollationInfo { + ParachainSystem::collect_collation_info(header) + } + } + + impl session_keys_primitives::VrfApi for Runtime { + fn get_last_vrf_output() -> Option<::Hash> { + // TODO: remove in future runtime upgrade along with storage item + if pallet_randomness::Pallet::::not_first_block().is_none() { + return None; + } + pallet_randomness::Pallet::::local_vrf_output() + } + fn vrf_key_lookup( + nimbus_id: nimbus_primitives::NimbusId + ) -> Option { + use session_keys_primitives::KeysLookup; + AuthorMapping::lookup_keys(&nimbus_id) + } + } + + #[cfg(feature = "runtime-benchmarks")] + impl frame_benchmarking::Benchmark for Runtime { + + fn benchmark_metadata(extra: bool) -> ( + Vec, + Vec, + ) { + use frame_benchmarking::{list_benchmark, Benchmarking, BenchmarkList}; + use moonbeam_xcm_benchmarks::generic::benchmarking as MoonbeamXcmBenchmarks; + use frame_support::traits::StorageInfoTrait; + use MoonbeamXcmBenchmarks::XcmGenericBenchmarks as MoonbeamXcmGenericBench; + + let mut list = Vec::::new(); + list_benchmarks!(list, extra); + + let storage_info = AllPalletsWithSystem::storage_info(); + + return (list, storage_info) + } + + fn dispatch_benchmark( + config: frame_benchmarking::BenchmarkConfig, + ) -> Result, sp_runtime::RuntimeString> { + use frame_benchmarking::{add_benchmark, BenchmarkBatch, Benchmarking}; + use frame_support::traits::TrackedStorageKey; + + use xcm::latest::prelude::*; + use frame_benchmarking::BenchmarkError; + + use frame_system_benchmarking::Pallet as SystemBench; + impl frame_system_benchmarking::Config for Runtime {} + + impl moonbeam_xcm_benchmarks::Config for Runtime {} + impl moonbeam_xcm_benchmarks::generic::Config for Runtime {} + + use pallet_asset_manager::Config as PalletAssetManagerConfig; + impl pallet_xcm_benchmarks::Config for Runtime { + type XcmConfig = xcm_config::XcmExecutorConfig; + type AccountIdConverter = xcm_config::LocationToAccountId; + type DeliveryHelper = (); + fn valid_destination() -> Result { + Ok(MultiLocation::parent()) + } + fn worst_case_holding(_depositable_count: u32) -> MultiAssets { + // 100 fungibles + const HOLDING_FUNGIBLES: u32 = 100; + let fungibles_amount: u128 = 100; + let assets = (0..HOLDING_FUNGIBLES).map(|i| { + let location: MultiLocation = GeneralIndex(i as u128).into(); + MultiAsset { + id: Concrete(location), + fun: Fungible(fungibles_amount * i as u128), + } + .into() + }) + .chain( + core::iter::once( + MultiAsset { + id: Concrete(MultiLocation::parent()), + fun: Fungible(u128::MAX) + } + ) + ) + .collect::>(); + + + for (i, asset) in assets.iter().enumerate() { + if let MultiAsset { + id: Concrete(location), + fun: Fungible(_) + } = asset { + ::AssetId, + ::ForeignAssetType> + >::set_asset_type_asset_id( + location.clone().into(), + i as u128 + ); + // set 1-1 + ::ForeignAssetType> + >::set_units_per_second( + location.clone().into(), + 1_000_000_000_000u128 + ); + } + } + assets.into() + } + } + + impl pallet_xcm_benchmarks::generic::Config for Runtime { + type RuntimeCall = RuntimeCall; + type TransactAsset = Balances; + + fn worst_case_response() -> (u64, Response) { + (0u64, Response::Version(Default::default())) + } + + fn worst_case_asset_exchange() + -> Result<(MultiAssets, MultiAssets), BenchmarkError> { + Err(BenchmarkError::Skip) + } + + fn universal_alias() -> Result<(MultiLocation, Junction), BenchmarkError> { + Err(BenchmarkError::Skip) + } + + fn export_message_origin_and_destination() + -> Result<(MultiLocation, NetworkId, Junctions), BenchmarkError> { + Err(BenchmarkError::Skip) + } + + fn transact_origin_and_runtime_call() + -> Result<(MultiLocation, RuntimeCall), BenchmarkError> { + Ok((MultiLocation::parent(), frame_system::Call::remark_with_event { + remark: vec![] + }.into())) + } + + fn subscribe_origin() -> Result { + Ok(MultiLocation::parent()) + } + + fn claimable_asset() + -> Result<(MultiLocation, MultiLocation, MultiAssets), BenchmarkError> { + let origin = MultiLocation::parent(); + let assets: MultiAssets = (Concrete(MultiLocation::parent()), 1_000u128) + .into(); + let ticket = MultiLocation { parents: 0, interior: Here }; + Ok((origin, ticket, assets)) + } + + fn unlockable_asset() + -> Result<(MultiLocation, MultiLocation, MultiAsset), BenchmarkError> { + Err(BenchmarkError::Skip) + } + + fn alias_origin() -> Result<(MultiLocation, MultiLocation), BenchmarkError> { + Err(BenchmarkError::Skip) + } + } + + let whitelist: Vec = vec![ + // Block Number + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "02a5c1b19ab7a04f536c519aca4983ac") + .to_vec().into(), + // Total Issuance + hex_literal::hex!( "c2261276cc9d1f8598ea4b6a74b15c2f" + "57c875e4cff74148e4628f264b974c80") + .to_vec().into(), + // Execution Phase + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "ff553b5a9862a516939d82b3d3d8661a") + .to_vec().into(), + // Event Count + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "0a98fdbe9ce6c55837576c60c7af3850") + .to_vec().into(), + // System Events + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "80d41e5e16056765bc8461851072c9d7") + .to_vec().into(), + // System BlockWeight + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "34abf5cb34d6244378cddbf18e849d96") + .to_vec().into(), + // ParachainStaking Round + hex_literal::hex!( "a686a3043d0adcf2fa655e57bc595a78" + "13792e785168f725b60e2969c7fc2552") + .to_vec().into(), + // Treasury Account (py/trsry) + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "b99d880ec681799c0cf30e8886371da9" + "7be2919ac397ba499ea5e57132180ec6" + "6d6f646c70792f747273727900000000" + "00000000" + ).to_vec().into(), + // Treasury Account (pc/trsry) + hex_literal::hex!( "26aa394eea5630e07c48ae0c9558cef7" + "b99d880ec681799c0cf30e8886371da9" + "7be2919ac397ba499ea5e57132180ec6" + "6d6f646c70632f747273727900000000" + "00000000" + ).to_vec().into(), + // ParachainInfo ParachainId + hex_literal::hex!( "0d715f2646c8f85767b5d2764bb27826" + "04a74d81251e398fd8a0a4d55023bb3f") + .to_vec().into(), + + ]; + + let mut batches = Vec::::new(); + let params = (&config, &whitelist); + + add_benchmarks!(params, batches); + + if batches.is_empty() { + return Err("Benchmark not found for this pallet.".into()); + } + Ok(batches) + } + } + + #[cfg(feature = "try-runtime")] + impl frame_try_runtime::TryRuntime for Runtime { + fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { + log::info!("try-runtime::on_runtime_upgrade()"); + // NOTE: intentional expect: we don't want to propagate the error backwards, + // and want to have a backtrace here. If any of the pre/post migration checks + // fail, we shall stop right here and right now. + let weight = Executive::try_runtime_upgrade(checks) + .expect("runtime upgrade logic *must* be infallible"); + (weight, RuntimeBlockWeights::get().max_block) + } + + fn execute_block( + block: Block, + state_root_check: bool, + signature_check: bool, + select: frame_try_runtime::TryStateSelect + ) -> Weight { + log::info!( + "try-runtime: executing block {:?} / root checks: {:?} / try-state-select: {:?}", + block.header.hash(), + state_root_check, + select, + ); + // NOTE: intentional unwrap: we don't want to propagate the error backwards, + // and want to have a backtrace here. + Executive::try_execute_block( + block, + state_root_check, + signature_check, + select, + ).expect("execute-block failed") + } + } + } + }; +} diff --git a/tracing/2700/runtime/common/src/benchmarking.rs b/tracing/2700/runtime/common/src/benchmarking.rs new file mode 100644 index 00000000..b6985b5b --- /dev/null +++ b/tracing/2700/runtime/common/src/benchmarking.rs @@ -0,0 +1,30 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use account::AccountId20; +use pallet_treasury::ArgumentsFactory; + +pub struct BenchmarkHelper; + +impl ArgumentsFactory<(), AccountId20> for BenchmarkHelper { + fn create_asset_kind(_seed: u32) -> () { + () + } + + fn create_beneficiary(seed: [u8; 32]) -> AccountId20 { + AccountId20::from(seed) + } +} diff --git a/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call.rs b/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call.rs new file mode 100644 index 00000000..112c457c --- /dev/null +++ b/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call.rs @@ -0,0 +1,51 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_moonbeam_xcm_call { + {} => { + + pub struct MoonbeamCall; + impl CallDispatcher for MoonbeamCall { + fn dispatch( + call: RuntimeCall, + origin: RuntimeOrigin, + ) -> Result< + PostDispatchInfoOf, + DispatchErrorWithPostInfo> + > { + if let Ok(raw_origin) = TryInto::>::try_into(origin.clone().caller) { + match (call.clone(), raw_origin) { + ( + RuntimeCall::EthereumXcm(pallet_ethereum_xcm::Call::transact { .. }) | + RuntimeCall::EthereumXcm(pallet_ethereum_xcm::Call::transact_through_proxy { .. }), + RawOrigin::Signed(account_id) + ) => { + return RuntimeCall::dispatch( + call, + pallet_ethereum_xcm::Origin::XcmEthereumTransaction( + account_id.into() + ).into() + ); + }, + _ => {} + } + } + RuntimeCall::dispatch(call, origin) + } + } + } +} diff --git a/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call_tracing.rs b/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call_tracing.rs new file mode 100644 index 00000000..87b1c94e --- /dev/null +++ b/tracing/2700/runtime/common/src/impl_moonbeam_xcm_call_tracing.rs @@ -0,0 +1,112 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_moonbeam_xcm_call_tracing { + {} => { + + type CallResult = + Result< + PostDispatchInfoOf, + DispatchErrorWithPostInfo> + >; + + pub struct MoonbeamCall; + impl CallDispatcher for MoonbeamCall { + fn dispatch( + call: RuntimeCall, + origin: RuntimeOrigin, + ) -> CallResult { + if let Ok(raw_origin) = TryInto::>::try_into(origin.clone().caller) { + match (call.clone(), raw_origin) { + ( + RuntimeCall::EthereumXcm(pallet_ethereum_xcm::Call::transact { xcm_transaction }) | + RuntimeCall::EthereumXcm(pallet_ethereum_xcm::Call::transact_through_proxy { + xcm_transaction, .. + }), + RawOrigin::Signed(account_id) + ) => { + use crate::EthereumXcm; + use moonbeam_evm_tracer::tracer::EvmTracer; + use xcm_primitives::{ + XcmToEthereum, + EthereumXcmTracingStatus, + ETHEREUM_XCM_TRACING_STORAGE_KEY + }; + use frame_support::storage::unhashed; + use frame_support::traits::Get; + + let dispatch_call = || { + RuntimeCall::dispatch( + call, + pallet_ethereum_xcm::Origin::XcmEthereumTransaction( + account_id.into() + ).into() + ) + }; + + return match unhashed::get( + ETHEREUM_XCM_TRACING_STORAGE_KEY + ) { + // This runtime instance is used for tracing. + Some(transaction) => match transaction { + // Tracing a block, all calls are done using environmental. + EthereumXcmTracingStatus::Block => { + // Each known extrinsic is a new call stack. + EvmTracer::emit_new(); + let mut res: Option = None; + EvmTracer::new().trace(|| { + res = Some(dispatch_call()); + }); + res.expect("Invalid dispatch result") + }, + // Tracing a transaction, the one matching the trace request + // is done using environmental, the rest dispatched normally. + EthereumXcmTracingStatus::Transaction(traced_transaction_hash) => { + let transaction_hash = xcm_transaction.into_transaction_v2( + EthereumXcm::nonce(), + ::ChainId::get() + ) + .expect("Invalid transaction conversion") + .hash(); + if transaction_hash == traced_transaction_hash { + let mut res: Option = None; + EvmTracer::new().trace(|| { + res = Some(dispatch_call()); + }); + // Tracing runtime work is done, just signal instance exit. + unhashed::put::( + xcm_primitives::ETHEREUM_XCM_TRACING_STORAGE_KEY, + &EthereumXcmTracingStatus::TransactionExited, + ); + return res.expect("Invalid dispatch result"); + } + dispatch_call() + }, + _ => unreachable!() + }, + // This runtime instance is importing a block. + None => dispatch_call() + }; + }, + _ => {} + } + } + RuntimeCall::dispatch(call, origin) + } + } + } +} diff --git a/tracing/2700/runtime/common/src/impl_on_charge_evm_transaction.rs b/tracing/2700/runtime/common/src/impl_on_charge_evm_transaction.rs new file mode 100644 index 00000000..122d5afc --- /dev/null +++ b/tracing/2700/runtime/common/src/impl_on_charge_evm_transaction.rs @@ -0,0 +1,68 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_on_charge_evm_transaction { + {} => { + type CurrencyAccountId = ::AccountId; + + type BalanceFor = + <::Currency as CurrencyT>>::Balance; + + type PositiveImbalanceFor = + <::Currency as CurrencyT>>::PositiveImbalance; + + type NegativeImbalanceFor = + <::Currency as CurrencyT>>::NegativeImbalance; + + pub struct OnChargeEVMTransaction(sp_std::marker::PhantomData); + impl OnChargeEVMTransactionT for OnChargeEVMTransaction + where + T: pallet_evm::Config, + PositiveImbalanceFor: Imbalance, Opposite = NegativeImbalanceFor>, + NegativeImbalanceFor: Imbalance, Opposite = PositiveImbalanceFor>, + OU: OnUnbalanced>, + U256: UniqueSaturatedInto> + { + type LiquidityInfo = Option>; + + fn withdraw_fee(who: &H160, fee: U256) -> Result> { + EVMCurrencyAdapter::<::Currency, ()>::withdraw_fee(who, fee) + } + + fn can_withdraw(who: &H160, amount: U256) -> Result<(), pallet_evm::Error> { + EVMCurrencyAdapter::<::Currency, ()>::can_withdraw(who, amount) + } + + fn correct_and_deposit_fee( + who: &H160, + corrected_fee: U256, + base_fee: U256, + already_withdrawn: Self::LiquidityInfo, + ) -> Self::LiquidityInfo { + ::Currency, OU> as OnChargeEVMTransactionT< + T, + >>::correct_and_deposit_fee(who, corrected_fee, base_fee, already_withdrawn) + } + + fn pay_priority_fee(tip: Self::LiquidityInfo) { + if let Some(tip) = tip { + OU::on_unbalanced(tip); + } + } + } + } +} diff --git a/tracing/2700/runtime/common/src/impl_self_contained_call.rs b/tracing/2700/runtime/common/src/impl_self_contained_call.rs new file mode 100644 index 00000000..0dbce052 --- /dev/null +++ b/tracing/2700/runtime/common/src/impl_self_contained_call.rs @@ -0,0 +1,78 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_self_contained_call { + {} => { + impl fp_self_contained::SelfContainedCall for RuntimeCall { + type SignedInfo = H160; + + fn is_self_contained(&self) -> bool { + match self { + RuntimeCall::Ethereum(call) => call.is_self_contained(), + _ => false, + } + } + + fn check_self_contained( + &self + ) -> Option> { + match self { + RuntimeCall::Ethereum(call) => call.check_self_contained(), + _ => None, + } + } + + fn validate_self_contained( + &self, + signed_info: &Self::SignedInfo, + dispatch_info: &DispatchInfoOf, + len: usize, + ) -> Option { + match self { + RuntimeCall::Ethereum(call) => call.validate_self_contained(signed_info, dispatch_info, len), + _ => None, + } + } + + fn pre_dispatch_self_contained( + &self, + info: &Self::SignedInfo, + dispatch_info: &DispatchInfoOf, + len: usize, + ) -> Option> { + match self { + RuntimeCall::Ethereum(call) => call.pre_dispatch_self_contained(info, dispatch_info, len), + _ => None, + } + } + + fn apply_self_contained( + self, + info: Self::SignedInfo, + ) -> Option>> { + match self { + call @ RuntimeCall::Ethereum(pallet_ethereum::Call::transact { .. }) => Some( + call.dispatch(RuntimeOrigin::from( + pallet_ethereum::RawOrigin::EthereumTransaction(info) + )) + ), + _ => None, + } + } + } + } +} diff --git a/tracing/2700/runtime/common/src/impl_xcm_evm_runner.rs b/tracing/2700/runtime/common/src/impl_xcm_evm_runner.rs new file mode 100644 index 00000000..7eebe42d --- /dev/null +++ b/tracing/2700/runtime/common/src/impl_xcm_evm_runner.rs @@ -0,0 +1,188 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#[macro_export] +macro_rules! impl_evm_runner_precompile_or_eth_xcm { + {} => { + use fp_evm::{CallInfo, CallOrCreateInfo, Context, Transfer}; + use frame_support::dispatch::CallableCallFor; + use pallet_evm::{Runner, RunnerError}; + use precompile_utils::{prelude::*, evm::handle::with_precompile_handle}; + use sp_core::U256; + use sp_runtime::DispatchError; + use sp_std::vec::Vec; + use xcm_primitives::{EthereumXcmTransaction, EthereumXcmTransactionV2}; + + pub struct EvmRunnerPrecompileOrEthXcm( + core::marker::PhantomData<(CallDispatcher, Runtime)>, + ); + + impl Runner + for EvmRunnerPrecompileOrEthXcm + where + CallDispatcher: xcm_executor::traits::CallDispatcher, + Runtime: pallet_evm::Config + pallet_ethereum_xcm::Config, + Runtime::RuntimeOrigin: From, + { + type Error = DispatchError; + + fn call( + source: H160, + target: H160, + input: Vec, + value: U256, + gas_limit: u64, + _max_fee_per_gas: Option, + _max_priority_fee_per_gas: Option, + _nonce: Option, + access_list: Vec<(H160, Vec)>, + _is_transactional: bool, + _validate: bool, + _weight_limit: Option, + _transaction_len: Option, + _config: &fp_evm::Config, + ) -> Result> { + // The `with_precompile_handle` function will execute the closure (and return the + // result in a Some) if and only if there is an available EVM context. Otherwise, + // it will return None. + if let Some((exit_reason, value)) = with_precompile_handle(|precompile_handle| { + let transfer = if value.is_zero() { + None + } else { + Some(Transfer { + source, + target, + value, + }) + }; + + precompile_handle.call( + target, + transfer, + input.clone(), + Some(gas_limit), + false, + &Context { + address: target, + caller: source, + apparent_value: value, + }, + ) + }) { + Ok(CallInfo { + exit_reason, + value, + used_gas: fp_evm::UsedGas { + standard: U256::default(), + effective: U256::default(), + }, + logs: Default::default(), + weight_info: None, + }) + } else { + let xcm_transaction = EthereumXcmTransaction::V2(EthereumXcmTransactionV2 { + gas_limit: gas_limit.into(), + action: pallet_ethereum_xcm::TransactionAction::Call(target), + value, + input: input.try_into().map_err(|_| RunnerError { + error: DispatchError::Exhausted, + weight: Default::default(), + })?, + access_list: Some(access_list), + }); + + let mut execution_info: Option = None; + pallet_ethereum::catch_exec_info(&mut execution_info, || { + CallDispatcher::dispatch( + RuntimeCall::EthereumXcm(pallet_ethereum_xcm::Call::transact { xcm_transaction }), + RawOrigin::Signed(source.into()).into(), + ) + .map_err(|DispatchErrorWithPostInfo { error, .. }| RunnerError { + error, + weight: Default::default(), + }) + })?; + + if let Some(CallOrCreateInfo::Call(call_info))= execution_info { + Ok(call_info) + } else { + // `execution_info` must have been filled in + Err(RunnerError { + error: DispatchError::Unavailable, + weight: Default::default(), + }) + } + } + } + + fn create( + _source: H160, + _init: Vec, + _value: U256, + _gas_limit: u64, + _max_fee_per_gas: Option, + _max_priority_fee_per_gas: Option, + _nonce: Option, + _access_list: Vec<(H160, Vec)>, + _is_transactional: bool, + _validate: bool, + _weight_limit: Option, + _transaction_len: Option, + _config: &fp_evm::Config, + ) -> Result> { + unimplemented!() + } + + fn create2( + _source: H160, + _init: Vec, + _salt: H256, + _value: U256, + _gas_limit: u64, + _max_fee_per_gas: Option, + _max_priority_fee_per_gas: Option, + _nonce: Option, + _access_list: Vec<(H160, Vec)>, + _is_transactional: bool, + _validate: bool, + _weight_limit: Option, + _transaction_len: Option, + _config: &fp_evm::Config, + ) -> Result> { + unimplemented!() + } + + fn validate( + _source: H160, + _target: Option, + _input: Vec, + _value: U256, + _gas_limit: u64, + _max_fee_per_gas: Option, + _max_priority_fee_per_gas: Option, + _nonce: Option, + _access_list: Vec<(H160, Vec)>, + _is_transactional: bool, + _weight_limit: Option, + _transaction_len: Option, + _evm_config: &fp_evm::Config, + ) -> Result<(), RunnerError> { + unimplemented!() + } + } + + } +} diff --git a/tracing/2700/runtime/common/src/lib.rs b/tracing/2700/runtime/common/src/lib.rs new file mode 100644 index 00000000..a905eb57 --- /dev/null +++ b/tracing/2700/runtime/common/src/lib.rs @@ -0,0 +1,29 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#![cfg_attr(not(feature = "std"), no_std)] + +mod apis; +mod impl_moonbeam_xcm_call; +mod impl_moonbeam_xcm_call_tracing; +mod impl_on_charge_evm_transaction; +mod impl_self_contained_call; +mod impl_xcm_evm_runner; +pub mod migrations; +pub mod weights; + +#[cfg(feature = "runtime-benchmarks")] +pub mod benchmarking; diff --git a/tracing/2700/runtime/common/src/migrations.rs b/tracing/2700/runtime/common/src/migrations.rs new file mode 100644 index 00000000..8608865d --- /dev/null +++ b/tracing/2700/runtime/common/src/migrations.rs @@ -0,0 +1,281 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! # Migrations +//! +//! This module acts as a registry where each migration is defined. Each migration should implement +//! the "Migration" trait declared in the pallet-migrations crate. + +#[cfg(feature = "try-runtime")] +use frame_support::ensure; +use frame_support::{ + pallet_prelude::GetStorageVersion, + traits::{OnRuntimeUpgrade, PalletInfoAccess, StorageVersion}, + weights::Weight, +}; +use pallet_author_slot_filter::Config as AuthorSlotFilterConfig; +use pallet_migrations::{GetMigrations, Migration}; +use sp_core::Get; +#[cfg(feature = "try-runtime")] +use sp_runtime::traits::Zero; +use sp_std::{marker::PhantomData, prelude::*}; + +pub struct PalletReferendaMigrateV0ToV1(pub PhantomData); +impl Migration for PalletReferendaMigrateV0ToV1 +where + T: pallet_referenda::Config + frame_system::Config, +{ + fn friendly_name(&self) -> &str { + "MM_PalletReferendaMigrateV0ToV1" + } + + fn migrate(&self, _available_weight: Weight) -> Weight { + pallet_referenda::migration::v1::MigrateV0ToV1::::on_runtime_upgrade() + } + + /// Run a standard pre-runtime test. This works the same way as in a normal runtime upgrade. + #[cfg(feature = "try-runtime")] + fn pre_upgrade(&self) -> Result, sp_runtime::DispatchError> { + pallet_referenda::migration::v1::MigrateV0ToV1::::pre_upgrade() + } + + /// Run a standard post-runtime test. This works the same way as in a normal runtime upgrade. + #[cfg(feature = "try-runtime")] + fn post_upgrade(&self, state: Vec) -> Result<(), sp_runtime::DispatchError> { + pallet_referenda::migration::v1::MigrateV0ToV1::::post_upgrade(state) + } +} + +pub struct MissingBalancesMigrations(PhantomData); +impl Migration for MissingBalancesMigrations +where + T: pallet_balances::Config, + ::AccountId: Default, +{ + fn friendly_name(&self) -> &str { + "MM_MissingBalancesMigrations" + } + + fn migrate(&self, _available_weight: Weight) -> Weight { + pallet_balances::migration::MigrateToTrackInactive::::on_runtime_upgrade(); + pallet_balances::migration::ResetInactive::::on_runtime_upgrade(); + pallet_balances::migration::MigrateToTrackInactive::::on_runtime_upgrade() + } +} + +pub struct FixIncorrectPalletVersions( + pub PhantomData<(Runtime, Treasury, OpenTech)>, +); +impl Migration + for FixIncorrectPalletVersions +where + Treasury: GetStorageVersion + PalletInfoAccess, + OpenTech: GetStorageVersion + PalletInfoAccess, + Runtime: frame_system::Config, + Runtime: pallet_referenda::Config, +{ + fn friendly_name(&self) -> &str { + "MM_FixIncorrectPalletVersions" + } + + fn migrate(&self, _available_weight: Weight) -> Weight { + log::info!("Setting collectives pallet versions to 4"); + StorageVersion::new(4).put::(); + StorageVersion::new(4).put::(); + Runtime::DbWeight::get().writes(2) + } + + #[cfg(feature = "try-runtime")] + fn pre_upgrade(&self) -> Result, sp_runtime::DispatchError> { + ensure!( + ::on_chain_storage_version() == 0, + "TreasuryCouncilCollective storage version should be 0" + ); + ensure!( + ::on_chain_storage_version() == 0, + "OpenTechCommitteeCollective storage version should be 0" + ); + + Ok(vec![]) + } + + #[cfg(feature = "try-runtime")] + fn post_upgrade(&self, _state: Vec) -> Result<(), sp_runtime::DispatchError> { + ensure!( + ::on_chain_storage_version() == 4, + "Treasury storage version should be 4" + ); + ensure!( + ::on_chain_storage_version() == 4, + "OpenTech storage version should be 4" + ); + Ok(()) + } +} + +pub struct CommonMigrations( + PhantomData<(Runtime, Council, Tech, Treasury, OpenTech)>, +); + +impl GetMigrations + for CommonMigrations +where + Runtime: pallet_author_mapping::Config, + Runtime: pallet_parachain_staking::Config, + Runtime: pallet_scheduler::Config, + Runtime: AuthorSlotFilterConfig, + Council: GetStorageVersion + PalletInfoAccess + 'static, + Tech: GetStorageVersion + PalletInfoAccess + 'static, + Treasury: GetStorageVersion + PalletInfoAccess + 'static, + OpenTech: GetStorageVersion + PalletInfoAccess + 'static, + Runtime: pallet_democracy::Config, + Runtime: pallet_preimage::Config, + Runtime: pallet_asset_manager::Config, + ::ForeignAssetType: From, + Runtime: pallet_xcm_transactor::Config, + Runtime: pallet_moonbeam_orbiters::Config, + Runtime: pallet_balances::Config, + Runtime: pallet_referenda::Config, + Runtime::AccountId: Default, +{ + fn get_migrations() -> Vec> { + // let migration_author_mapping_twox_to_blake = AuthorMappingTwoXToBlake:: { + // 0: Default::default(), + // }; + + // let migration_parachain_staking_purge_stale_storage = + // ParachainStakingPurgeStaleStorage::(Default::default()); + // let migration_parachain_staking_manual_exits = + // ParachainStakingManualExits::(Default::default()); + // let migration_parachain_staking_increase_max_delegations_per_candidate = + // ParachainStakingIncreaseMaxDelegationsPerCandidate::(Default::default()); + // let migration_parachain_staking_split_candidate_state = + // ParachainStakingSplitCandidateState::(Default::default()); + // let migration_parachain_staking_patch_incorrect_delegation_sums = + // ParachainStakingPatchIncorrectDelegationSums::(Default::default()); + + // let migration_scheduler_v3 = SchedulerMigrationV3::(Default::default()); + + // let migration_base_fee = MigrateBaseFeePerGas::(Default::default()); + + // TODO: this is a lot of allocation to do upon every get() call. this *should* be avoided + // except when pallet_migrations undergoes a runtime upgrade -- but TODO: review + + // let migration_author_slot_filter_eligible_ratio_to_eligibility_count = + // AuthorSlotFilterEligibleRatioToEligiblityCount::(Default::default()); + // let migration_author_mapping_add_keys_to_registration_info = + // AuthorMappingAddKeysToRegistrationInfo::(Default::default()); + // let staking_delegator_state_requests = + // ParachainStakingSplitDelegatorStateIntoDelegationScheduledRequests::( + // Default::default(), + // ); + // let migration_author_mapping_add_account_id_to_nimbus_lookup = + // AuthorMappingAddAccountIdToNimbusLookup::(Default::default()); + + // let xcm_transactor_max_weight = + // XcmTransactorMaxTransactWeight::(Default::default()); + + // let asset_manager_units_with_asset_type = + // AssetManagerUnitsWithAssetType::(Default::default()); + + // let asset_manager_populate_asset_type_id_storage = + // AssetManagerPopulateAssetTypeIdStorage::(Default::default()); + + // let asset_manager_change_statemine_prefixes = AssetManagerChangeStateminePrefixes::< + // Runtime, + // StatemineParaIdInfo, + // StatemineAssetsInstanceInfo, + // >(Default::default()); + + // let xcm_supported_assets = XcmPaymentSupportedAssets::(Default::default()); + + // let migration_elasticity = MigrateBaseFeeElasticity::(Default::default()); + //let staking_at_stake_auto_compound = + // ParachainStakingMigrateAtStakeAutoCompound::(Default::default()); + + //let scheduler_to_v4 = SchedulerMigrationV4::(Default::default()); + //let democracy_migration_hash_to_bounded_call = + // DemocracryMigrationHashToBoundedCall::(Default::default()); + //let preimage_migration_hash_to_bounded_call = + // PreimageMigrationHashToBoundedCall::(Default::default()); + //let asset_manager_to_xcm_v3 = + // PalletAssetManagerMigrateXcmV2ToV3::(Default::default()); + //let xcm_transactor_to_xcm_v3 = + // PalletXcmTransactorMigrateXcmV2ToV3::(Default::default()); + //let remove_min_bond_for_old_orbiter_collators = + // RemoveMinBondForOrbiterCollators::(Default::default()); + + // RT2700 + let missing_balances_migrations = MissingBalancesMigrations::(Default::default()); + let fix_pallet_versions = + FixIncorrectPalletVersions::(Default::default()); + let pallet_referenda_migrate_v0_to_v1 = + PalletReferendaMigrateV0ToV1::(Default::default()); + + vec![ + // completed in runtime 800 + // Box::new(migration_author_mapping_twox_to_blake), + // completed in runtime 900 + // completed in runtime 1000 + // Box::new(migration_parachain_staking_purge_stale_storage), + // completed in runtime 1000 + // Box::new(migration_parachain_staking_manual_exits), + // completed in runtime 1101 + // Box::new(migration_parachain_staking_increase_max_delegations_per_candidate), + // completed in runtime 1201 + // Box::new(migration_parachain_staking_split_candidate_state), + // completed in runtime 1201 + // Box::new(xcm_transactor_max_weight), + // completed in runtime 1201 + // Box::new(asset_manager_units_with_asset_type), + // completed in runtime 1201 + // Box::new(asset_manager_change_statemine_prefixes), + // completed in runtime 1201 + // Box::new(asset_manager_populate_asset_type_id_storage), + // completed in runtime 1300 + // Box::new(migration_scheduler_v3), + // completed in runtime 1300 + // Box::new(migration_parachain_staking_patch_incorrect_delegation_sums), + // completed in runtime 1300 + // Box::new(migration_base_fee), + // completed in runtime 1300 + // Box::new(xcm_supported_assets), + // completed in runtime 1500 + // Box::new(migration_author_slot_filter_eligible_ratio_to_eligibility_count), + // Box::new(migration_author_mapping_add_keys_to_registration_info), + // Box::new(staking_delegator_state_requests), + // completed in runtime 1600 + // Box::new(migration_author_mapping_add_account_id_to_nimbus_lookup), + // completed in runtime 1600 + // Box::new(xcm_transactor_transact_signed), + // completed in runtime 1700 + //Box::new(migration_elasticity), + // completed in runtime 1900 + //Box::new(staking_at_stake_auto_compound), + // completed in runtime 2000 + //Box::new(scheduler_to_v4), + //Box::new(democracy_migration_hash_to_bounded_call), + //Box::new(preimage_migration_hash_to_bounded_call), + //Box::new(asset_manager_to_xcm_v3), + //Box::new(xcm_transactor_to_xcm_v3), + // completed in runtime 2600 + //Box::new(remove_min_bond_for_old_orbiter_collators), + Box::new(missing_balances_migrations), + Box::new(fix_pallet_versions), + Box::new(pallet_referenda_migrate_v0_to_v1), + ] + } +} diff --git a/tracing/2700/runtime/common/src/weights/cumulus_pallet_xcmp_queue.rs b/tracing/2700/runtime/common/src/weights/cumulus_pallet_xcmp_queue.rs new file mode 100644 index 00000000..92782d48 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/cumulus_pallet_xcmp_queue.rs @@ -0,0 +1,72 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `cumulus_pallet_xcmp_queue` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=cumulus_pallet_xcmp_queue +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `cumulus_pallet_xcmp_queue`. +pub struct WeightInfo(PhantomData); +impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) + fn set_config_with_u32() -> Weight { + // Proof Size summary in bytes: + // Measured: `142` + // Estimated: `1627` + // Minimum execution time: 3_683_000 picoseconds. + Weight::from_parts(3_779_000, 0) + .saturating_add(Weight::from_parts(0, 1627)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) + fn set_config_with_weight() -> Weight { + // Proof Size summary in bytes: + // Measured: `142` + // Estimated: `1627` + // Minimum execution time: 3_832_000 picoseconds. + Weight::from_parts(3_976_000, 0) + .saturating_add(Weight::from_parts(0, 1627)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/mod.rs b/tracing/2700/runtime/common/src/weights/mod.rs new file mode 100644 index 00000000..98507489 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/mod.rs @@ -0,0 +1,47 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbeam common weights. + +pub mod cumulus_pallet_xcmp_queue; +pub mod moonbeam_xcm_benchmarks_weights_generic; +pub mod pallet_asset_manager; +pub mod pallet_assets; +pub mod pallet_author_inherent; +pub mod pallet_author_mapping; +pub mod pallet_author_slot_filter; +pub mod pallet_balances; +pub mod pallet_collective; +pub mod pallet_conviction_voting; +pub mod pallet_crowdloan_rewards; +pub mod pallet_democracy; +pub mod pallet_evm; +pub mod pallet_identity; +pub mod pallet_moonbeam_orbiters; +pub mod pallet_multisig; +pub mod pallet_parachain_staking; +pub mod pallet_preimage; +pub mod pallet_proxy; +pub mod pallet_randomness; +pub mod pallet_referenda; +pub mod pallet_scheduler; +pub mod pallet_sudo; +pub mod pallet_timestamp; +pub mod pallet_treasury; +pub mod pallet_utility; +pub mod pallet_whitelist; +pub mod pallet_xcm; +pub mod pallet_xcm_transactor; diff --git a/tracing/2700/runtime/common/src/weights/moonbeam_xcm_benchmarks_weights_generic.rs b/tracing/2700/runtime/common/src/weights/moonbeam_xcm_benchmarks_weights_generic.rs new file mode 100644 index 00000000..f3831441 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/moonbeam_xcm_benchmarks_weights_generic.rs @@ -0,0 +1,447 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `moonbeam_xcm_benchmarks::weights::generic` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=moonbeam_xcm_benchmarks::weights::generic +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/moonbeam_xcm_benchmarks_weights_generic.rs + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `moonbeam_xcm_benchmarks::weights::generic`. +pub struct WeightInfo(PhantomData); +impl moonbeam_xcm_benchmarks::weights::generic::WeightInfo for WeightInfo { + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn report_holding() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 128_733_000 picoseconds. + Weight::from_parts(130_596_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:0) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn buy_execution() -> Weight { + // Proof Size summary in bytes: + // Measured: `2334` + // Estimated: `5799` + // Minimum execution time: 52_670_000 picoseconds. + Weight::from_parts(54_209_000, 0) + .saturating_add(Weight::from_parts(0, 5799)) + .saturating_add(T::DbWeight::get().reads(4)) + } + /// Storage: PolkadotXcm Queries (r:1 w:0) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) + fn query_response() -> Weight { + // Proof Size summary in bytes: + // Measured: `69` + // Estimated: `3534` + // Minimum execution time: 6_292_000 picoseconds. + Weight::from_parts(6_546_000, 0) + .saturating_add(Weight::from_parts(0, 3534)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + fn transact() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 8_026_000 picoseconds. + Weight::from_parts(8_174_000, 0) + .saturating_add(Weight::from_parts(0, 1527)) + .saturating_add(T::DbWeight::get().reads(1)) + } + fn refund_surplus() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_860_000 picoseconds. + Weight::from_parts(4_143_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_error_handler() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_034_000 picoseconds. + Weight::from_parts(1_070_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_appendix() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_012_000 picoseconds. + Weight::from_parts(1_108_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 989_000 picoseconds. + Weight::from_parts(1_042_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn descend_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_119_000 picoseconds. + Weight::from_parts(1_197_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 982_000 picoseconds. + Weight::from_parts(1_032_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn report_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 13_075_000 picoseconds. + Weight::from_parts(13_413_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PolkadotXcm AssetTraps (r:1 w:1) + /// Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) + fn claim_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `126` + // Estimated: `3591` + // Minimum execution time: 8_585_000 picoseconds. + Weight::from_parts(8_854_000, 0) + .saturating_add(Weight::from_parts(0, 3591)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn trap() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 997_000 picoseconds. + Weight::from_parts(1_047_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn subscribe_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 15_051_000 picoseconds. + Weight::from_parts(15_510_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + fn unsubscribe_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_920_000 picoseconds. + Weight::from_parts(1_964_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn initiate_reserve_withdraw() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 132_023_000 picoseconds. + Weight::from_parts(132_983_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + fn burn_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 45_907_000 picoseconds. + Weight::from_parts(46_696_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_259_000 picoseconds. + Weight::from_parts(12_690_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_028_000 picoseconds. + Weight::from_parts(1_078_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_032_000 picoseconds. + Weight::from_parts(1_065_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_055_000 picoseconds. + Weight::from_parts(1_099_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn query_pallet() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 14_911_000 picoseconds. + Weight::from_parts(15_426_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + fn expect_pallet() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_060_000 picoseconds. + Weight::from_parts(2_184_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn report_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 12_907_000 picoseconds. + Weight::from_parts(13_306_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + fn clear_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 955_000 picoseconds. + Weight::from_parts(1_018_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_topic() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 962_000 picoseconds. + Weight::from_parts(1_007_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_topic() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 965_000 picoseconds. + Weight::from_parts(1_014_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn exchange_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn universal_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 1000]`. + fn export_message() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_fees_mode() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 971_000 picoseconds. + Weight::from_parts(1_025_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn lock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn unlock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn note_unlockable() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn request_unlock() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn unpaid_execution() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 976_000 picoseconds. + Weight::from_parts(1_025_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_asset_manager.rs b/tracing/2700/runtime/common/src/weights/pallet_asset_manager.rs new file mode 100644 index 00000000..8d822dfa --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_asset_manager.rs @@ -0,0 +1,168 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_asset_manager` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_asset_manager +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_asset_manager`. +pub struct WeightInfo(PhantomData); +impl pallet_asset_manager::WeightInfo for WeightInfo { + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + fn register_foreign_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `3639` + // Minimum execution time: 18_671_000 picoseconds. + Weight::from_parts(19_426_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. + fn set_asset_units_per_second(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `611 + x * (9 ±0)` + // Estimated: `4000 + x * (10 ±0)` + // Minimum execution time: 13_680_000 picoseconds. + Weight::from_parts(15_643_701, 0) + .saturating_add(Weight::from_parts(0, 4000)) + // Standard Error: 2_622 + .saturating_add(Weight::from_parts(274_621, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 10).saturating_mul(x.into())) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:2) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:2) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. + fn change_existing_asset_type(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `926 + x * (13 ±0)` + // Estimated: `4309 + x * (15 ±0)` + // Minimum execution time: 19_784_000 picoseconds. + Weight::from_parts(23_095_890, 0) + .saturating_add(Weight::from_parts(0, 4309)) + // Standard Error: 4_344 + .saturating_add(Weight::from_parts(320_669, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(6)) + .saturating_add(Weight::from_parts(0, 15).saturating_mul(x.into())) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. + fn remove_supported_asset(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `196 + x * (5 ±0)` + // Estimated: `1678 + x * (5 ±0)` + // Minimum execution time: 10_369_000 picoseconds. + Weight::from_parts(11_485_853, 0) + .saturating_add(Weight::from_parts(0, 1678)) + // Standard Error: 2_255 + .saturating_add(Weight::from_parts(259_454, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 5).saturating_mul(x.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AssetManager LocalAssetCounter (r:1 w:1) + /// Proof Skipped: AssetManager LocalAssetCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: LocalAssets Asset (r:1 w:1) + /// Proof: LocalAssets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: EVM AccountCodes (r:0 w:1) + /// Proof Skipped: EVM AccountCodes (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager LocalAssetDeposit (r:0 w:1) + /// Proof Skipped: AssetManager LocalAssetDeposit (max_values: None, max_size: None, mode: Measured) + fn register_local_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `310` + // Estimated: `3639` + // Minimum execution time: 24_699_000 picoseconds. + Weight::from_parts(25_397_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. + fn remove_existing_asset_type(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `482 + x * (10 ±0)` + // Estimated: `3955 + x * (10 ±0)` + // Minimum execution time: 15_040_000 picoseconds. + Weight::from_parts(17_158_622, 0) + .saturating_add(Weight::from_parts(0, 3955)) + // Standard Error: 2_614 + .saturating_add(Weight::from_parts(275_195, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_parts(0, 10).saturating_mul(x.into())) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_assets.rs b/tracing/2700/runtime/common/src/weights/pallet_assets.rs new file mode 100644 index 00000000..2da2a800 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_assets.rs @@ -0,0 +1,512 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_assets` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_assets +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_assets`. +pub struct WeightInfo(PhantomData); +impl pallet_assets::WeightInfo for WeightInfo { + fn create() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 0_000 picoseconds. + Weight::from_parts(0, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn force_create() -> Weight { + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `3639` + // Minimum execution time: 6_235_000 picoseconds. + Weight::from_parts(6_496_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn start_destroy() -> Weight { + // Proof Size summary in bytes: + // Measured: `241` + // Estimated: `3639` + // Minimum execution time: 8_286_000 picoseconds. + Weight::from_parts(8_499_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:657 w:656) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: System Account (r:656 w:656) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `c` is `[0, 656]`. + fn destroy_accounts(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `846 + c * (183 ±0)` + // Estimated: `3639 + c * (2597 ±0)` + // Minimum execution time: 10_964_000 picoseconds. + Weight::from_parts(11_134_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + // Standard Error: 5_191 + .saturating_add(Weight::from_parts(9_291_791, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_parts(0, 2597).saturating_mul(c.into())) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:657 w:656) + /// Proof: Assets Approvals (max_values: None, max_size: Some(136), added: 2611, mode: MaxEncodedLen) + /// The range of component `a` is `[0, 656]`. + fn destroy_approvals(a: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `313 + a * (74 ±0)` + // Estimated: `3639 + a * (2611 ±0)` + // Minimum execution time: 11_340_000 picoseconds. + Weight::from_parts(11_551_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + // Standard Error: 3_544 + .saturating_add(Weight::from_parts(4_459_183, 0).saturating_mul(a.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_parts(0, 2611).saturating_mul(a.into())) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + fn finish_destroy() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 8_953_000 picoseconds. + Weight::from_parts(9_199_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + fn mint() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 13_790_000 picoseconds. + Weight::from_parts(14_331_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + fn burn() -> Weight { + // Proof Size summary in bytes: + // Measured: `315` + // Estimated: `3639` + // Minimum execution time: 18_592_000 picoseconds. + Weight::from_parts(18_971_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer() -> Weight { + // Proof Size summary in bytes: + // Measured: `387` + // Estimated: `6184` + // Minimum execution time: 24_652_000 picoseconds. + Weight::from_parts(25_198_000, 0) + .saturating_add(Weight::from_parts(0, 6184)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer_keep_alive() -> Weight { + // Proof Size summary in bytes: + // Measured: `387` + // Estimated: `6184` + // Minimum execution time: 22_205_000 picoseconds. + Weight::from_parts(22_720_000, 0) + .saturating_add(Weight::from_parts(0, 6184)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn force_transfer() -> Weight { + // Proof Size summary in bytes: + // Measured: `387` + // Estimated: `6184` + // Minimum execution time: 24_933_000 picoseconds. + Weight::from_parts(25_469_000, 0) + .saturating_add(Weight::from_parts(0, 6184)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + fn freeze() -> Weight { + // Proof Size summary in bytes: + // Measured: `315` + // Estimated: `3639` + // Minimum execution time: 10_913_000 picoseconds. + Weight::from_parts(11_393_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + fn thaw() -> Weight { + // Proof Size summary in bytes: + // Measured: `315` + // Estimated: `3639` + // Minimum execution time: 11_231_000 picoseconds. + Weight::from_parts(11_560_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn freeze_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `241` + // Estimated: `3639` + // Minimum execution time: 7_966_000 picoseconds. + Weight::from_parts(8_288_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn thaw_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `241` + // Estimated: `3639` + // Minimum execution time: 7_960_000 picoseconds. + Weight::from_parts(8_167_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + fn transfer_ownership() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 9_052_000 picoseconds. + Weight::from_parts(9_269_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn set_team() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 7_815_000 picoseconds. + Weight::from_parts(8_092_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + /// The range of component `n` is `[0, 50]`. + /// The range of component `s` is `[0, 50]`. + fn set_metadata(_n: u32, _s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 15_555_000 picoseconds. + Weight::from_parts(16_251_020, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + fn clear_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `3639` + // Minimum execution time: 16_736_000 picoseconds. + Weight::from_parts(17_244_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + /// The range of component `n` is `[0, 50]`. + /// The range of component `s` is `[0, 50]`. + fn force_set_metadata(n: u32, s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `94` + // Estimated: `3639` + // Minimum execution time: 7_857_000 picoseconds. + Weight::from_parts(8_300_312, 0) + .saturating_add(Weight::from_parts(0, 3639)) + // Standard Error: 253 + .saturating_add(Weight::from_parts(126, 0).saturating_mul(n.into())) + // Standard Error: 253 + .saturating_add(Weight::from_parts(154, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + fn force_clear_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `3639` + // Minimum execution time: 16_497_000 picoseconds. + Weight::from_parts(17_111_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn force_asset_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 7_656_000 picoseconds. + Weight::from_parts(7_773_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(136), added: 2611, mode: MaxEncodedLen) + fn approve_transfer() -> Weight { + // Proof Size summary in bytes: + // Measured: `241` + // Estimated: `3639` + // Minimum execution time: 11_014_000 picoseconds. + Weight::from_parts(11_360_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(136), added: 2611, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer_approved() -> Weight { + // Proof Size summary in bytes: + // Measured: `513` + // Estimated: `6184` + // Minimum execution time: 29_960_000 picoseconds. + Weight::from_parts(30_884_000, 0) + .saturating_add(Weight::from_parts(0, 6184)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(136), added: 2611, mode: MaxEncodedLen) + fn cancel_approval() -> Weight { + // Proof Size summary in bytes: + // Measured: `399` + // Estimated: `3639` + // Minimum execution time: 13_267_000 picoseconds. + Weight::from_parts(13_605_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(136), added: 2611, mode: MaxEncodedLen) + fn force_cancel_approval() -> Weight { + // Proof Size summary in bytes: + // Measured: `399` + // Estimated: `3639` + // Minimum execution time: 13_425_000 picoseconds. + Weight::from_parts(14_001_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn set_min_balance() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 7_958_000 picoseconds. + Weight::from_parts(8_381_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn touch() -> Weight { + // Proof Size summary in bytes: + // Measured: `402` + // Estimated: `3639` + // Minimum execution time: 19_028_000 picoseconds. + Weight::from_parts(19_576_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn touch_other() -> Weight { + // Proof Size summary in bytes: + // Measured: `207` + // Estimated: `3639` + // Minimum execution time: 16_799_000 picoseconds. + Weight::from_parts(17_268_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn refund() -> Weight { + // Proof Size summary in bytes: + // Measured: `528` + // Estimated: `3639` + // Minimum execution time: 19_465_000 picoseconds. + Weight::from_parts(20_018_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn refund_other() -> Weight { + // Proof Size summary in bytes: + // Measured: `353` + // Estimated: `3639` + // Minimum execution time: 17_017_000 picoseconds. + Weight::from_parts(17_603_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + fn block() -> Weight { + // Proof Size summary in bytes: + // Measured: `315` + // Estimated: `3639` + // Minimum execution time: 11_215_000 picoseconds. + Weight::from_parts(11_486_000, 0) + .saturating_add(Weight::from_parts(0, 3639)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_author_inherent.rs b/tracing/2700/runtime/common/src/weights/pallet_author_inherent.rs new file mode 100644 index 00000000..844d00a3 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_author_inherent.rs @@ -0,0 +1,70 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_author_inherent` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_author_inherent +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_author_inherent`. +pub struct WeightInfo(PhantomData); +impl pallet_author_inherent::WeightInfo for WeightInfo { + /// Storage: ParachainSystem ValidationData (r:1 w:0) + /// Proof Skipped: ParachainSystem ValidationData (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AuthorInherent HighestSlotSeen (r:1 w:1) + /// Proof: AuthorInherent HighestSlotSeen (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: AuthorInherent Author (r:1 w:0) + /// Proof: AuthorInherent Author (max_values: Some(1), max_size: Some(20), added: 515, mode: MaxEncodedLen) + /// Storage: ParachainStaking SelectedCandidates (r:1 w:0) + /// Proof Skipped: ParachainStaking SelectedCandidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AuthorFilter EligibleCount (r:1 w:0) + /// Proof Skipped: AuthorFilter EligibleCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness PreviousLocalVrfOutput (r:1 w:0) + /// Proof Skipped: Randomness PreviousLocalVrfOutput (max_values: Some(1), max_size: None, mode: Measured) + fn kick_off_authorship_validation() -> Weight { + // Proof Size summary in bytes: + // Measured: `371` + // Estimated: `1856` + // Minimum execution time: 14_675_000 picoseconds. + Weight::from_parts(15_236_000, 0) + .saturating_add(Weight::from_parts(0, 1856)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_author_mapping.rs b/tracing/2700/runtime/common/src/weights/pallet_author_mapping.rs new file mode 100644 index 00000000..096abdae --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_author_mapping.rs @@ -0,0 +1,126 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_author_mapping` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_author_mapping +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_author_mapping`. +pub struct WeightInfo(PhantomData); +impl pallet_author_mapping::WeightInfo for WeightInfo { + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + fn add_association() -> Weight { + // Proof Size summary in bytes: + // Measured: `376` + // Estimated: `3841` + // Minimum execution time: 17_903_000 picoseconds. + Weight::from_parts(18_427_000, 0) + .saturating_add(Weight::from_parts(0, 3841)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: AuthorMapping MappingWithDeposit (r:2 w:2) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + fn update_association() -> Weight { + // Proof Size summary in bytes: + // Measured: `325` + // Estimated: `6265` + // Minimum execution time: 12_636_000 picoseconds. + Weight::from_parts(12_893_000, 0) + .saturating_add(Weight::from_parts(0, 6265)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + fn clear_association() -> Weight { + // Proof Size summary in bytes: + // Measured: `453` + // Estimated: `3918` + // Minimum execution time: 19_255_000 picoseconds. + Weight::from_parts(19_892_000, 0) + .saturating_add(Weight::from_parts(0, 3918)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn remove_keys() -> Weight { + // Proof Size summary in bytes: + // Measured: `547` + // Estimated: `4012` + // Minimum execution time: 22_108_000 picoseconds. + Weight::from_parts(22_636_000, 0) + .saturating_add(Weight::from_parts(0, 4012)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn set_keys() -> Weight { + // Proof Size summary in bytes: + // Measured: `432` + // Estimated: `3897` + // Minimum execution time: 19_904_000 picoseconds. + Weight::from_parts(20_421_000, 0) + .saturating_add(Weight::from_parts(0, 3897)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_author_slot_filter.rs b/tracing/2700/runtime/common/src/weights/pallet_author_slot_filter.rs new file mode 100644 index 00000000..4047b4ca --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_author_slot_filter.rs @@ -0,0 +1,59 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_author_slot_filter` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_author_slot_filter +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_author_slot_filter`. +pub struct WeightInfo(PhantomData); +impl pallet_author_slot_filter::WeightInfo for WeightInfo { + /// Storage: AuthorFilter EligibleCount (r:0 w:1) + /// Proof Skipped: AuthorFilter EligibleCount (max_values: Some(1), max_size: None, mode: Measured) + fn set_eligible() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_628_000 picoseconds. + Weight::from_parts(3_777_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_balances.rs b/tracing/2700/runtime/common/src/weights/pallet_balances.rs new file mode 100644 index 00000000..f6ac64c5 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_balances.rs @@ -0,0 +1,148 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_balances` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_balances +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_balances`. +pub struct WeightInfo(PhantomData); +impl pallet_balances::WeightInfo for WeightInfo { + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer_allow_death() -> Weight { + // Proof Size summary in bytes: + // Measured: `72` + // Estimated: `3581` + // Minimum execution time: 20_916_000 picoseconds. + Weight::from_parts(21_458_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer_keep_alive() -> Weight { + // Proof Size summary in bytes: + // Measured: `72` + // Estimated: `3581` + // Minimum execution time: 20_547_000 picoseconds. + Weight::from_parts(21_033_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn force_set_balance_creating() -> Weight { + // Proof Size summary in bytes: + // Measured: `195` + // Estimated: `3581` + // Minimum execution time: 9_298_000 picoseconds. + Weight::from_parts(9_738_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn force_set_balance_killing() -> Weight { + // Proof Size summary in bytes: + // Measured: `195` + // Estimated: `3581` + // Minimum execution time: 10_243_000 picoseconds. + Weight::from_parts(10_523_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn force_transfer() -> Weight { + // Proof Size summary in bytes: + // Measured: `267` + // Estimated: `6172` + // Minimum execution time: 23_572_000 picoseconds. + Weight::from_parts(24_097_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn transfer_all() -> Weight { + // Proof Size summary in bytes: + // Measured: `72` + // Estimated: `3581` + // Minimum execution time: 22_177_000 picoseconds. + Weight::from_parts(22_556_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn force_unreserve() -> Weight { + // Proof Size summary in bytes: + // Measured: `195` + // Estimated: `3581` + // Minimum execution time: 10_680_000 picoseconds. + Weight::from_parts(10_979_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:999 w:999) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `u` is `[1, 1000]`. + fn upgrade_accounts(u: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `585 + u * (123 ±0)` + // Estimated: `990 + u * (2591 ±0)` + // Minimum execution time: 9_772_000 picoseconds. + Weight::from_parts(9_938_000, 0) + .saturating_add(Weight::from_parts(0, 990)) + // Standard Error: 9_375 + .saturating_add(Weight::from_parts(8_373_767, 0).saturating_mul(u.into())) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(u.into()))) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(u.into()))) + .saturating_add(Weight::from_parts(0, 2591).saturating_mul(u.into())) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_collective.rs b/tracing/2700/runtime/common/src/weights/pallet_collective.rs new file mode 100644 index 00000000..5c70e97f --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_collective.rs @@ -0,0 +1,308 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_collective` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_collective +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_collective`. +pub struct WeightInfo(PhantomData); +impl pallet_collective::WeightInfo for WeightInfo { + /// Storage: CouncilCollective Members (r:1 w:1) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:0) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Voting (r:100 w:100) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Prime (r:0 w:1) + /// Proof Skipped: CouncilCollective Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[0, 100]`. + /// The range of component `n` is `[0, 100]`. + /// The range of component `p` is `[0, 100]`. + fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (2021 ±0) + p * (2026 ±0)` + // Estimated: `12238 + m * (1231 ±14) + p * (3660 ±14)` + // Minimum execution time: 13_785_000 picoseconds. + Weight::from_parts(14_085_000, 0) + .saturating_add(Weight::from_parts(0, 12238)) + // Standard Error: 34_315 + .saturating_add(Weight::from_parts(2_414_144, 0).saturating_mul(m.into())) + // Standard Error: 34_315 + .saturating_add(Weight::from_parts(5_345_562, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_parts(0, 1231).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 3660).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `149 + m * (20 ±0)` + // Estimated: `1634 + m * (20 ±0)` + // Minimum execution time: 12_726_000 picoseconds. + Weight::from_parts(12_294_605, 0) + .saturating_add(Weight::from_parts(0, 1634)) + // Standard Error: 18 + .saturating_add(Weight::from_parts(910, 0).saturating_mul(b.into())) + // Standard Error: 192 + .saturating_add(Weight::from_parts(13_235, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(Weight::from_parts(0, 20).saturating_mul(m.into())) + } + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:1 w:0) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn propose_execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `149 + m * (20 ±0)` + // Estimated: `3614 + m * (20 ±0)` + // Minimum execution time: 14_722_000 picoseconds. + Weight::from_parts(14_487_427, 0) + .saturating_add(Weight::from_parts(0, 3614)) + // Standard Error: 20 + .saturating_add(Weight::from_parts(944, 0).saturating_mul(b.into())) + // Standard Error: 215 + .saturating_add(Weight::from_parts(25_619, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(Weight::from_parts(0, 20).saturating_mul(m.into())) + } + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:1 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalCount (r:1 w:1) + /// Proof Skipped: CouncilCollective ProposalCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Voting (r:0 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[2, 100]`. + /// The range of component `p` is `[1, 100]`. + fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `395 + m * (20 ±0) + p * (36 ±0)` + // Estimated: `3789 + m * (21 ±0) + p * (36 ±0)` + // Minimum execution time: 17_107_000 picoseconds. + Weight::from_parts(15_172_014, 0) + .saturating_add(Weight::from_parts(0, 3789)) + // Standard Error: 104 + .saturating_add(Weight::from_parts(3_191, 0).saturating_mul(b.into())) + // Standard Error: 1_090 + .saturating_add(Weight::from_parts(31_145, 0).saturating_mul(m.into())) + // Standard Error: 1_077 + .saturating_add(Weight::from_parts(131_855, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_parts(0, 21).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Voting (r:1 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[5, 100]`. + fn vote(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `870 + m * (40 ±0)` + // Estimated: `4334 + m * (40 ±0)` + // Minimum execution time: 21_423_000 picoseconds. + Weight::from_parts(22_311_906, 0) + .saturating_add(Weight::from_parts(0, 4334)) + // Standard Error: 415 + .saturating_add(Weight::from_parts(32_990, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 40).saturating_mul(m.into())) + } + /// Storage: CouncilCollective Voting (r:1 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:0 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `447 + m * (40 ±0) + p * (36 ±0)` + // Estimated: `3892 + m * (41 ±0) + p * (36 ±0)` + // Minimum execution time: 20_010_000 picoseconds. + Weight::from_parts(20_008_777, 0) + .saturating_add(Weight::from_parts(0, 3892)) + // Standard Error: 1_391 + .saturating_add(Weight::from_parts(39_960, 0).saturating_mul(m.into())) + // Standard Error: 1_356 + .saturating_add(Weight::from_parts(126_447, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 41).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Voting (r:1 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:1 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `791 + b * (1 ±0) + m * (40 ±0) + p * (40 ±0)` + // Estimated: `4108 + b * (1 ±0) + m * (42 ±0) + p * (40 ±0)` + // Minimum execution time: 30_647_000 picoseconds. + Weight::from_parts(30_084_699, 0) + .saturating_add(Weight::from_parts(0, 4108)) + // Standard Error: 123 + .saturating_add(Weight::from_parts(2_876, 0).saturating_mul(b.into())) + // Standard Error: 1_307 + .saturating_add(Weight::from_parts(31_661, 0).saturating_mul(m.into())) + // Standard Error: 1_274 + .saturating_add(Weight::from_parts(154_567, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 42).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 40).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Voting (r:1 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Prime (r:1 w:0) + /// Proof Skipped: CouncilCollective Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:0 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `516 + m * (30 ±0) + p * (36 ±0)` + // Estimated: `3958 + m * (31 ±0) + p * (36 ±0)` + // Minimum execution time: 20_735_000 picoseconds. + Weight::from_parts(22_649_363, 0) + .saturating_add(Weight::from_parts(0, 3958)) + // Standard Error: 1_082 + .saturating_add(Weight::from_parts(32_331, 0).saturating_mul(m.into())) + // Standard Error: 1_055 + .saturating_add(Weight::from_parts(122_034, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 31).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Voting (r:1 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective Members (r:1 w:0) + /// Proof Skipped: CouncilCollective Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Prime (r:1 w:0) + /// Proof Skipped: CouncilCollective Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:1 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `811 + b * (1 ±0) + m * (40 ±0) + p * (40 ±0)` + // Estimated: `4128 + b * (1 ±0) + m * (42 ±0) + p * (40 ±0)` + // Minimum execution time: 32_927_000 picoseconds. + Weight::from_parts(32_086_367, 0) + .saturating_add(Weight::from_parts(0, 4128)) + // Standard Error: 122 + .saturating_add(Weight::from_parts(2_962, 0).saturating_mul(b.into())) + // Standard Error: 1_299 + .saturating_add(Weight::from_parts(32_167, 0).saturating_mul(m.into())) + // Standard Error: 1_266 + .saturating_add(Weight::from_parts(154_131, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 42).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 40).saturating_mul(p.into())) + } + /// Storage: CouncilCollective Proposals (r:1 w:1) + /// Proof Skipped: CouncilCollective Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CouncilCollective Voting (r:0 w:1) + /// Proof Skipped: CouncilCollective Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: CouncilCollective ProposalOf (r:0 w:1) + /// Proof Skipped: CouncilCollective ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `p` is `[1, 100]`. + fn disapprove_proposal(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `264 + p * (32 ±0)` + // Estimated: `1749 + p * (32 ±0)` + // Minimum execution time: 10_334_000 picoseconds. + Weight::from_parts(11_413_201, 0) + .saturating_add(Weight::from_parts(0, 1749)) + // Standard Error: 1_033 + .saturating_add(Weight::from_parts(95_458, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(p.into())) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_conviction_voting.rs b/tracing/2700/runtime/common/src/weights/pallet_conviction_voting.rs new file mode 100644 index 00000000..459fa565 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_conviction_voting.rs @@ -0,0 +1,190 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_conviction_voting` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_conviction_voting +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_conviction_voting`. +pub struct WeightInfo(PhantomData); +impl pallet_conviction_voting::WeightInfo for WeightInfo { + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: ConvictionVoting VotingFor (r:1 w:1) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: ConvictionVoting ClassLocksFor (r:1 w:1) + /// Proof: ConvictionVoting ClassLocksFor (max_values: None, max_size: Some(119), added: 2594, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn vote_new() -> Weight { + // Proof Size summary in bytes: + // Measured: `1862` + // Estimated: `42428` + // Minimum execution time: 49_713_000 picoseconds. + Weight::from_parts(51_247_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: ConvictionVoting VotingFor (r:1 w:1) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: ConvictionVoting ClassLocksFor (r:1 w:1) + /// Proof: ConvictionVoting ClassLocksFor (max_values: None, max_size: Some(119), added: 2594, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn vote_existing() -> Weight { + // Proof Size summary in bytes: + // Measured: `2163` + // Estimated: `83866` + // Minimum execution time: 66_644_000 picoseconds. + Weight::from_parts(68_298_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(6)) + } + /// Storage: ConvictionVoting VotingFor (r:1 w:1) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn remove_vote() -> Weight { + // Proof Size summary in bytes: + // Measured: `1807` + // Estimated: `83866` + // Minimum execution time: 46_630_000 picoseconds. + Weight::from_parts(48_124_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: ConvictionVoting VotingFor (r:1 w:1) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:1 w:0) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + fn remove_other_vote() -> Weight { + // Proof Size summary in bytes: + // Measured: `1351` + // Estimated: `4617` + // Minimum execution time: 17_086_000 picoseconds. + Weight::from_parts(17_574_000, 0) + .saturating_add(Weight::from_parts(0, 4617)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ConvictionVoting VotingFor (r:2 w:2) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:20 w:20) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// Storage: ConvictionVoting ClassLocksFor (r:1 w:1) + /// Proof: ConvictionVoting ClassLocksFor (max_values: None, max_size: Some(119), added: 2594, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 20]`. + fn delegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1505 + r * (235 ±0)` + // Estimated: `83866 + r * (3387 ±0)` + // Minimum execution time: 31_288_000 picoseconds. + Weight::from_parts(26_953_858, 0) + .saturating_add(Weight::from_parts(0, 83866)) + // Standard Error: 86_677 + .saturating_add(Weight::from_parts(18_262_342, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(6)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 3387).saturating_mul(r.into())) + } + /// Storage: ConvictionVoting VotingFor (r:2 w:2) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:20 w:20) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 20]`. + fn undelegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1290 + r * (235 ±0)` + // Estimated: `83866 + r * (3387 ±0)` + // Minimum execution time: 17_054_000 picoseconds. + Weight::from_parts(8_013_322, 0) + .saturating_add(Weight::from_parts(0, 83866)) + // Standard Error: 92_600 + .saturating_add(Weight::from_parts(17_999_181, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 3387).saturating_mul(r.into())) + } + /// Storage: ConvictionVoting VotingFor (r:1 w:1) + /// Proof: ConvictionVoting VotingFor (max_values: None, max_size: Some(1152), added: 3627, mode: MaxEncodedLen) + /// Storage: ConvictionVoting ClassLocksFor (r:1 w:1) + /// Proof: ConvictionVoting ClassLocksFor (max_values: None, max_size: Some(119), added: 2594, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + fn unlock() -> Weight { + // Proof Size summary in bytes: + // Measured: `1111` + // Estimated: `4752` + // Minimum execution time: 36_667_000 picoseconds. + Weight::from_parts(37_471_000, 0) + .saturating_add(Weight::from_parts(0, 4752)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_crowdloan_rewards.rs b/tracing/2700/runtime/common/src/weights/pallet_crowdloan_rewards.rs new file mode 100644 index 00000000..f0691f66 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_crowdloan_rewards.rs @@ -0,0 +1,168 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_crowdloan_rewards` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_crowdloan_rewards +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_crowdloan_rewards`. +pub struct WeightInfo(PhantomData); +impl pallet_crowdloan_rewards::WeightInfo for WeightInfo { + /// Storage: CrowdloanRewards Initialized (r:1 w:0) + /// Proof Skipped: CrowdloanRewards Initialized (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards InitializedRewardAmount (r:1 w:1) + /// Proof Skipped: CrowdloanRewards InitializedRewardAmount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards TotalContributors (r:1 w:1) + /// Proof Skipped: CrowdloanRewards TotalContributors (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:501 w:501) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: CrowdloanRewards ClaimedRelayChainIds (r:500 w:500) + /// Proof Skipped: CrowdloanRewards ClaimedRelayChainIds (max_values: None, max_size: None, mode: Measured) + /// Storage: CrowdloanRewards UnassociatedContributions (r:500 w:0) + /// Proof Skipped: CrowdloanRewards UnassociatedContributions (max_values: None, max_size: None, mode: Measured) + /// Storage: CrowdloanRewards AccountsPayable (r:500 w:500) + /// Proof Skipped: CrowdloanRewards AccountsPayable (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 500]`. + fn initialize_reward_vec(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `75944 + x * (659 ±0)` + // Estimated: `66066 + x * (3161 ±5)` + // Minimum execution time: 87_730_000 picoseconds. + Weight::from_parts(54_129_335, 0) + .saturating_add(Weight::from_parts(0, 66066)) + // Standard Error: 24_625 + .saturating_add(Weight::from_parts(32_916_886, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 3161).saturating_mul(x.into())) + } + /// Storage: CrowdloanRewards Initialized (r:1 w:1) + /// Proof Skipped: CrowdloanRewards Initialized (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards InitRelayBlock (r:1 w:0) + /// Proof Skipped: CrowdloanRewards InitRelayBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards InitializedRewardAmount (r:1 w:0) + /// Proof Skipped: CrowdloanRewards InitializedRewardAmount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:0) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: CrowdloanRewards TotalContributors (r:1 w:0) + /// Proof Skipped: CrowdloanRewards TotalContributors (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards EndRelayBlock (r:0 w:1) + /// Proof Skipped: CrowdloanRewards EndRelayBlock (max_values: Some(1), max_size: None, mode: Measured) + fn complete_initialization() -> Weight { + // Proof Size summary in bytes: + // Measured: `513` + // Estimated: `3581` + // Minimum execution time: 13_253_000 picoseconds. + Weight::from_parts(13_416_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: CrowdloanRewards Initialized (r:1 w:0) + /// Proof Skipped: CrowdloanRewards Initialized (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards AccountsPayable (r:1 w:1) + /// Proof Skipped: CrowdloanRewards AccountsPayable (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainSystem ValidationData (r:1 w:0) + /// Proof Skipped: ParachainSystem ValidationData (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards InitRelayBlock (r:1 w:0) + /// Proof Skipped: CrowdloanRewards InitRelayBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: CrowdloanRewards EndRelayBlock (r:1 w:0) + /// Proof Skipped: CrowdloanRewards EndRelayBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn claim() -> Weight { + // Proof Size summary in bytes: + // Measured: `968` + // Estimated: `6172` + // Minimum execution time: 40_516_000 picoseconds. + Weight::from_parts(41_450_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: CrowdloanRewards AccountsPayable (r:2 w:2) + /// Proof Skipped: CrowdloanRewards AccountsPayable (max_values: None, max_size: None, mode: Measured) + fn update_reward_address() -> Weight { + // Proof Size summary in bytes: + // Measured: `397` + // Estimated: `6337` + // Minimum execution time: 13_569_000 picoseconds. + Weight::from_parts(13_940_000, 0) + .saturating_add(Weight::from_parts(0, 6337)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: CrowdloanRewards UnassociatedContributions (r:1 w:1) + /// Proof Skipped: CrowdloanRewards UnassociatedContributions (max_values: None, max_size: None, mode: Measured) + /// Storage: CrowdloanRewards ClaimedRelayChainIds (r:1 w:1) + /// Proof Skipped: CrowdloanRewards ClaimedRelayChainIds (max_values: None, max_size: None, mode: Measured) + /// Storage: CrowdloanRewards AccountsPayable (r:1 w:1) + /// Proof Skipped: CrowdloanRewards AccountsPayable (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn associate_native_identity() -> Weight { + // Proof Size summary in bytes: + // Measured: `802` + // Estimated: `6172` + // Minimum execution time: 90_788_000 picoseconds. + Weight::from_parts(91_822_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: CrowdloanRewards AccountsPayable (r:2 w:2) + /// Proof Skipped: CrowdloanRewards AccountsPayable (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 500]`. + fn change_association_with_relay_keys(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `366 + x * (32 ±0)` + // Estimated: `6306 + x * (32 ±0)` + // Minimum execution time: 68_841_000 picoseconds. + Weight::from_parts(6_018_178, 0) + .saturating_add(Weight::from_parts(0, 6306)) + // Standard Error: 2_074 + .saturating_add(Weight::from_parts(53_552_923, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(x.into())) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_democracy.rs b/tracing/2700/runtime/common/src/weights/pallet_democracy.rs new file mode 100644 index 00000000..5ec69608 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_democracy.rs @@ -0,0 +1,523 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_democracy` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_democracy +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_democracy`. +pub struct WeightInfo(PhantomData); +impl pallet_democracy::WeightInfo for WeightInfo { + /// Storage: Democracy PublicPropCount (r:1 w:1) + /// Proof: Democracy PublicPropCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:0) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(2038), added: 4513, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:0 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + fn propose() -> Weight { + // Proof Size summary in bytes: + // Measured: `3843` + // Estimated: `16987` + // Minimum execution time: 32_118_000 picoseconds. + Weight::from_parts(33_567_000, 0) + .saturating_add(Weight::from_parts(0, 16987)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + fn second() -> Weight { + // Proof Size summary in bytes: + // Measured: `2559` + // Estimated: `5495` + // Minimum execution time: 26_988_000 picoseconds. + Weight::from_parts(28_730_000, 0) + .saturating_add(Weight::from_parts(0, 5495)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + fn vote_new() -> Weight { + // Proof Size summary in bytes: + // Measured: `3511` + // Estimated: `7248` + // Minimum execution time: 47_295_000 picoseconds. + Weight::from_parts(48_622_000, 0) + .saturating_add(Weight::from_parts(0, 7248)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + fn vote_existing() -> Weight { + // Proof Size summary in bytes: + // Measured: `3533` + // Estimated: `7248` + // Minimum execution time: 49_540_000 picoseconds. + Weight::from_parts(50_795_000, 0) + .saturating_add(Weight::from_parts(0, 7248)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy Cancellations (r:1 w:1) + /// Proof: Democracy Cancellations (max_values: None, max_size: Some(33), added: 2508, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn emergency_cancel() -> Weight { + // Proof Size summary in bytes: + // Measured: `299` + // Estimated: `3666` + // Minimum execution time: 16_745_000 picoseconds. + Weight::from_parts(17_100_000, 0) + .saturating_add(Weight::from_parts(0, 3666)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:3 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:0 w:1) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(2038), added: 4513, mode: MaxEncodedLen) + fn blacklist() -> Weight { + // Proof Size summary in bytes: + // Measured: `4659` + // Estimated: `16987` + // Minimum execution time: 66_727_000 picoseconds. + Weight::from_parts(68_348_000, 0) + .saturating_add(Weight::from_parts(0, 16987)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(7)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:0) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(2038), added: 4513, mode: MaxEncodedLen) + fn external_propose() -> Weight { + // Proof Size summary in bytes: + // Measured: `2161` + // Estimated: `5503` + // Minimum execution time: 10_276_000 picoseconds. + Weight::from_parts(10_506_000, 0) + .saturating_add(Weight::from_parts(0, 5503)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:0 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + fn external_propose_majority() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_767_000 picoseconds. + Weight::from_parts(1_851_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:0 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + fn external_propose_default() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_707_000 picoseconds. + Weight::from_parts(1_800_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:1) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:2) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:0 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + fn fast_track() -> Weight { + // Proof Size summary in bytes: + // Measured: `219` + // Estimated: `3518` + // Minimum execution time: 16_619_000 picoseconds. + Weight::from_parts(17_116_000, 0) + .saturating_add(Weight::from_parts(0, 3518)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:1) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(2038), added: 4513, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn veto_external() -> Weight { + // Proof Size summary in bytes: + // Measured: `2264` + // Estimated: `5503` + // Minimum execution time: 19_585_000 picoseconds. + Weight::from_parts(20_128_000, 0) + .saturating_add(Weight::from_parts(0, 5503)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn cancel_proposal() -> Weight { + // Proof Size summary in bytes: + // Measured: `4558` + // Estimated: `16987` + // Minimum execution time: 51_975_000 picoseconds. + Weight::from_parts(53_193_000, 0) + .saturating_add(Weight::from_parts(0, 16987)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:0 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + fn cancel_referendum() -> Weight { + // Proof Size summary in bytes: + // Measured: `204` + // Estimated: `3518` + // Minimum execution time: 11_895_000 picoseconds. + Weight::from_parts(12_155_000, 0) + .saturating_add(Weight::from_parts(0, 3518)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy LowestUnbaked (r:1 w:1) + /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:0) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn on_initialize_base(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `177 + r * (86 ±0)` + // Estimated: `1489 + r * (2676 ±0)` + // Minimum execution time: 5_817_000 picoseconds. + Weight::from_parts(6_694_982, 0) + .saturating_add(Weight::from_parts(0, 1489)) + // Standard Error: 5_229 + .saturating_add(Weight::from_parts(2_542_238, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy LowestUnbaked (r:1 w:1) + /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:0) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy LastTabledWasExternal (r:1 w:0) + /// Proof: Democracy LastTabledWasExternal (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn on_initialize_base_with_launch_period(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `177 + r * (86 ±0)` + // Estimated: `16987 + r * (2676 ±0)` + // Minimum execution time: 7_465_000 picoseconds. + Weight::from_parts(9_080_556, 0) + .saturating_add(Weight::from_parts(0, 16987)) + // Standard Error: 6_001 + .saturating_add(Weight::from_parts(2_525_995, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy VotingOf (r:3 w:3) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:99) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn delegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `832 + r * (108 ±0)` + // Estimated: `19764 + r * (2676 ±0)` + // Minimum execution time: 30_152_000 picoseconds. + Weight::from_parts(34_644_994, 0) + .saturating_add(Weight::from_parts(0, 19764)) + // Standard Error: 7_028 + .saturating_add(Weight::from_parts(3_219_569, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy VotingOf (r:2 w:2) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:99) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn undelegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `388 + r * (108 ±0)` + // Estimated: `13506 + r * (2676 ±0)` + // Minimum execution time: 14_558_000 picoseconds. + Weight::from_parts(16_381_184, 0) + .saturating_add(Weight::from_parts(0, 13506)) + // Standard Error: 6_251 + .saturating_add(Weight::from_parts(3_163_594, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy PublicProps (r:0 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + fn clear_public_proposals() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_768_000 picoseconds. + Weight::from_parts(1_852_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn unlock_remove(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `421` + // Estimated: `7248` + // Minimum execution time: 15_205_000 picoseconds. + Weight::from_parts(24_689_085, 0) + .saturating_add(Weight::from_parts(0, 7248)) + // Standard Error: 2_518 + .saturating_add(Weight::from_parts(94_640, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn unlock_set(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `422 + r * (22 ±0)` + // Estimated: `7248` + // Minimum execution time: 22_237_000 picoseconds. + Weight::from_parts(24_475_537, 0) + .saturating_add(Weight::from_parts(0, 7248)) + // Standard Error: 1_587 + .saturating_add(Weight::from_parts(132_155, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 100]`. + fn remove_vote(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `649 + r * (26 ±0)` + // Estimated: `7248` + // Minimum execution time: 11_279_000 picoseconds. + Weight::from_parts(13_755_338, 0) + .saturating_add(Weight::from_parts(0, 7248)) + // Standard Error: 2_321 + .saturating_add(Weight::from_parts(145_498, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3783), added: 6258, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 100]`. + fn remove_other_vote(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `649 + r * (26 ±0)` + // Estimated: `7248` + // Minimum execution time: 11_403_000 picoseconds. + Weight::from_parts(13_824_312, 0) + .saturating_add(Weight::from_parts(0, 7248)) + // Standard Error: 2_302 + .saturating_add(Weight::from_parts(145_629, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_external_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `289` + // Estimated: `3544` + // Minimum execution time: 13_135_000 picoseconds. + Weight::from_parts(13_601_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_external_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `219` + // Estimated: `3518` + // Minimum execution time: 11_822_000 picoseconds. + Weight::from_parts(12_140_000, 0) + .saturating_add(Weight::from_parts(0, 3518)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_proposal_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `3621` + // Estimated: `16987` + // Minimum execution time: 33_453_000 picoseconds. + Weight::from_parts(34_665_000, 0) + .saturating_add(Weight::from_parts(0, 16987)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(15502), added: 15997, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_proposal_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `3555` + // Estimated: `16987` + // Minimum execution time: 27_619_000 picoseconds. + Weight::from_parts(29_080_000, 0) + .saturating_add(Weight::from_parts(0, 16987)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_referendum_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `144` + // Estimated: `3544` + // Minimum execution time: 8_981_000 picoseconds. + Weight::from_parts(9_243_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_referendum_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `235` + // Estimated: `3666` + // Minimum execution time: 13_020_000 picoseconds. + Weight::from_parts(13_684_000, 0) + .saturating_add(Weight::from_parts(0, 3666)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_evm.rs b/tracing/2700/runtime/common/src/weights/pallet_evm.rs new file mode 100644 index 00000000..e478c380 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_evm.rs @@ -0,0 +1,79 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_evm` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_evm +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_evm`. +pub struct WeightInfo(PhantomData); +impl pallet_evm::WeightInfo for WeightInfo { + /// Storage: TransactionPayment NextFeeMultiplier (r:1 w:0) + /// Proof: TransactionPayment NextFeeMultiplier (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: EthereumChainId ChainId (r:1 w:0) + /// Proof: EthereumChainId ChainId (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: EVM AccountCodes (r:2 w:0) + /// Proof Skipped: EVM AccountCodes (max_values: None, max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:0) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: EVM AccountStorages (r:1 w:0) + /// Proof Skipped: EVM AccountStorages (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 10000000]`. + fn runner_execute(_x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1501` + // Estimated: `7441` + // Minimum execution time: 8_971_188_000 picoseconds. + Weight::from_parts(9_104_793_824, 0) + .saturating_add(Weight::from_parts(0, 7441)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(2)) + } + fn withdraw() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 817_000 picoseconds. + Weight::from_parts(878_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_identity.rs b/tracing/2700/runtime/common/src/weights/pallet_identity.rs new file mode 100644 index 00000000..5d532b89 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_identity.rs @@ -0,0 +1,354 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_identity` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_identity +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_identity`. +pub struct WeightInfo(PhantomData); +impl pallet_identity::WeightInfo for WeightInfo { + /// Storage: Identity Registrars (r:1 w:1) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 19]`. + fn add_registrar(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `32 + r * (45 ±0)` + // Estimated: `2386` + // Minimum execution time: 7_157_000 picoseconds. + Weight::from_parts(7_518_611, 0) + .saturating_add(Weight::from_parts(0, 2386)) + // Standard Error: 991 + .saturating_add(Weight::from_parts(100_030, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 20]`. + /// The range of component `x` is `[0, 100]`. + fn set_identity(r: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `430 + r * (5 ±0)` + // Estimated: `10991` + // Minimum execution time: 18_174_000 picoseconds. + Weight::from_parts(15_674_240, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 2_987 + .saturating_add(Weight::from_parts(138_510, 0).saturating_mul(r.into())) + // Standard Error: 582 + .saturating_add(Weight::from_parts(130_131, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity IdentityOf (r:1 w:0) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:100 w:100) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 100]`. + fn set_subs_new(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `89` + // Estimated: `10991 + s * (2565 ±0)` + // Minimum execution time: 6_059_000 picoseconds. + Weight::from_parts(12_820_827, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 1_998 + .saturating_add(Weight::from_parts(1_521_486, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(s.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(s.into()))) + .saturating_add(Weight::from_parts(0, 2565).saturating_mul(s.into())) + } + /// Storage: Identity IdentityOf (r:1 w:0) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:0 w:100) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// The range of component `p` is `[0, 100]`. + fn set_subs_old(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `169 + p * (20 ±0)` + // Estimated: `10991` + // Minimum execution time: 6_030_000 picoseconds. + Weight::from_parts(13_394_171, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 1_864 + .saturating_add(Weight::from_parts(718_549, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + } + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:0 w:100) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 20]`. + /// The range of component `s` is `[0, 100]`. + /// The range of component `x` is `[0, 100]`. + fn clear_identity(r: u32, s: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `445 + r * (5 ±0) + s * (20 ±0) + x * (66 ±0)` + // Estimated: `10991` + // Minimum execution time: 30_009_000 picoseconds. + Weight::from_parts(19_908_009, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 9_160 + .saturating_add(Weight::from_parts(116_985, 0).saturating_mul(r.into())) + // Standard Error: 1_788 + .saturating_add(Weight::from_parts(728_921, 0).saturating_mul(s.into())) + // Standard Error: 1_788 + .saturating_add(Weight::from_parts(122_488, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(s.into()))) + } + /// Storage: Identity Registrars (r:1 w:0) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 20]`. + /// The range of component `x` is `[0, 100]`. + fn request_judgement(r: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `355 + r * (45 ±0) + x * (66 ±0)` + // Estimated: `10991` + // Minimum execution time: 19_215_000 picoseconds. + Weight::from_parts(17_566_122, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 3_387 + .saturating_add(Weight::from_parts(103_336, 0).saturating_mul(r.into())) + // Standard Error: 660 + .saturating_add(Weight::from_parts(148_440, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 20]`. + /// The range of component `x` is `[0, 100]`. + fn cancel_request(r: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `386 + x * (66 ±0)` + // Estimated: `10991` + // Minimum execution time: 16_100_000 picoseconds. + Weight::from_parts(15_271_614, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 2_865 + .saturating_add(Weight::from_parts(64_053, 0).saturating_mul(r.into())) + // Standard Error: 559 + .saturating_add(Weight::from_parts(144_144, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity Registrars (r:1 w:1) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 19]`. + fn set_fee(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `77 + r * (45 ±0)` + // Estimated: `2386` + // Minimum execution time: 4_963_000 picoseconds. + Weight::from_parts(5_207_820, 0) + .saturating_add(Weight::from_parts(0, 2386)) + // Standard Error: 817 + .saturating_add(Weight::from_parts(82_469, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity Registrars (r:1 w:1) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 19]`. + fn set_account_id(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `77 + r * (45 ±0)` + // Estimated: `2386` + // Minimum execution time: 4_912_000 picoseconds. + Weight::from_parts(5_187_188, 0) + .saturating_add(Weight::from_parts(0, 2386)) + // Standard Error: 807 + .saturating_add(Weight::from_parts(81_365, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity Registrars (r:1 w:1) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 19]`. + fn set_fields(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `77 + r * (45 ±0)` + // Estimated: `2386` + // Minimum execution time: 4_889_000 picoseconds. + Weight::from_parts(5_229_571, 0) + .saturating_add(Weight::from_parts(0, 2386)) + // Standard Error: 758 + .saturating_add(Weight::from_parts(76_901, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity Registrars (r:1 w:0) + /// Proof: Identity Registrars (max_values: Some(1), max_size: Some(901), added: 1396, mode: MaxEncodedLen) + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 19]`. + /// The range of component `x` is `[0, 100]`. + fn provide_judgement(r: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `421 + r * (45 ±0) + x * (66 ±0)` + // Estimated: `10991` + // Minimum execution time: 14_325_000 picoseconds. + Weight::from_parts(11_759_619, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 3_780 + .saturating_add(Weight::from_parts(131_885, 0).saturating_mul(r.into())) + // Standard Error: 699 + .saturating_add(Weight::from_parts(231_319, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// Storage: Identity IdentityOf (r:1 w:1) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:0 w:100) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 20]`. + /// The range of component `s` is `[0, 100]`. + /// The range of component `x` is `[0, 100]`. + fn kill_identity(r: u32, s: u32, x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `680 + r * (5 ±0) + s * (20 ±0) + x * (66 ±0)` + // Estimated: `10991` + // Minimum execution time: 45_060_000 picoseconds. + Weight::from_parts(30_044_300, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 8_943 + .saturating_add(Weight::from_parts(270_510, 0).saturating_mul(r.into())) + // Standard Error: 1_746 + .saturating_add(Weight::from_parts(747_775, 0).saturating_mul(s.into())) + // Standard Error: 1_746 + .saturating_add(Weight::from_parts(150_732, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(s.into()))) + } + /// Storage: Identity IdentityOf (r:1 w:0) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:1 w:1) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 99]`. + fn add_sub(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `536 + s * (23 ±0)` + // Estimated: `10991` + // Minimum execution time: 15_619_000 picoseconds. + Weight::from_parts(19_839_769, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 1_102 + .saturating_add(Weight::from_parts(73_705, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Identity IdentityOf (r:1 w:0) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:1 w:1) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// The range of component `s` is `[1, 100]`. + fn rename_sub(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `615 + s * (4 ±0)` + // Estimated: `10991` + // Minimum execution time: 8_768_000 picoseconds. + Weight::from_parts(10_076_423, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 1_363 + .saturating_add(Weight::from_parts(68_020, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Identity IdentityOf (r:1 w:0) + /// Proof: Identity IdentityOf (max_values: None, max_size: Some(7526), added: 10001, mode: MaxEncodedLen) + /// Storage: Identity SuperOf (r:1 w:1) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// The range of component `s` is `[1, 100]`. + fn remove_sub(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `647 + s * (24 ±0)` + // Estimated: `10991` + // Minimum execution time: 19_137_000 picoseconds. + Weight::from_parts(23_700_395, 0) + .saturating_add(Weight::from_parts(0, 10991)) + // Standard Error: 1_375 + .saturating_add(Weight::from_parts(94_036, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Identity SuperOf (r:1 w:1) + /// Proof: Identity SuperOf (max_values: None, max_size: Some(90), added: 2565, mode: MaxEncodedLen) + /// Storage: Identity SubsOf (r:1 w:1) + /// Proof: Identity SubsOf (max_values: None, max_size: Some(2046), added: 4521, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:0) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 99]`. + fn quit_sub(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `620 + s * (24 ±0)` + // Estimated: `5511` + // Minimum execution time: 15_642_000 picoseconds. + Weight::from_parts(17_017_310, 0) + .saturating_add(Weight::from_parts(0, 5511)) + // Standard Error: 571 + .saturating_add(Weight::from_parts(71_443, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_moonbeam_orbiters.rs b/tracing/2700/runtime/common/src/weights/pallet_moonbeam_orbiters.rs new file mode 100644 index 00000000..9ed4c451 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_moonbeam_orbiters.rs @@ -0,0 +1,212 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_moonbeam_orbiters` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_moonbeam_orbiters +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_moonbeam_orbiters`. +pub struct WeightInfo(PhantomData); +impl pallet_moonbeam_orbiters::WeightInfo for WeightInfo { + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:0) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + fn collator_add_orbiter() -> Weight { + // Proof Size summary in bytes: + // Measured: `524` + // Estimated: `4502` + // Minimum execution time: 14_395_000 picoseconds. + Weight::from_parts(14_829_000, 0) + .saturating_add(Weight::from_parts(0, 4502)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + fn collator_remove_orbiter() -> Weight { + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 10_794_000 picoseconds. + Weight::from_parts(11_251_000, 0) + .saturating_add(Weight::from_parts(0, 3793)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + fn orbiter_leave_collator_pool() -> Weight { + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 10_874_000 picoseconds. + Weight::from_parts(11_386_000, 0) + .saturating_add(Weight::from_parts(0, 3793)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: MoonbeamOrbiters MinOrbiterDeposit (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters MinOrbiterDeposit (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) + fn orbiter_register() -> Weight { + // Proof Size summary in bytes: + // Measured: `244` + // Estimated: `4502` + // Minimum execution time: 18_272_000 picoseconds. + Weight::from_parts(18_623_000, 0) + .saturating_add(Weight::from_parts(0, 4502)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:0) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters CollatorsPool (r:101 w:0) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) + /// The range of component `n` is `[0, 100]`. + fn orbiter_unregister(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `353 + n * (48 ±0)` + // Estimated: `4502 + n * (2524 ±0)` + // Minimum execution time: 23_194_000 picoseconds. + Weight::from_parts(26_994_916, 0) + .saturating_add(Weight::from_parts(0, 4502)) + // Standard Error: 3_856 + .saturating_add(Weight::from_parts(3_066_545, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 2524).saturating_mul(n.into())) + } + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + fn add_collator() -> Weight { + // Proof Size summary in bytes: + // Measured: `44` + // Estimated: `3509` + // Minimum execution time: 6_626_000 picoseconds. + Weight::from_parts(6_766_000, 0) + .saturating_add(Weight::from_parts(0, 3509)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:9) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) + fn remove_collator() -> Weight { + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 13_833_000 picoseconds. + Weight::from_parts(14_436_000, 0) + .saturating_add(Weight::from_parts(0, 3793)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(11)) + } + /// Storage: MoonbeamOrbiters CurrentRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:100 w:100) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 100]`. + fn on_initialize(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `102 + x * (61 ±0)` + // Estimated: `1586 + x * (2537 ±0)` + // Minimum execution time: 4_838_000 picoseconds. + Weight::from_parts(3_934_897, 0) + .saturating_add(Weight::from_parts(0, 1586)) + // Standard Error: 1_450 + .saturating_add(Weight::from_parts(1_064_674, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 2537).saturating_mul(x.into())) + } + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn distribute_rewards() -> Weight { + // Proof Size summary in bytes: + // Measured: `260` + // Estimated: `3725` + // Minimum execution time: 13_951_000 picoseconds. + Weight::from_parts(14_388_000, 0) + .saturating_add(Weight::from_parts(0, 3725)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: MoonbeamOrbiters ForceRotation (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters ForceRotation (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CollatorsPool (r:2 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CurrentRound (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) + fn on_new_round() -> Weight { + // Proof Size summary in bytes: + // Measured: `218` + // Estimated: `6158` + // Minimum execution time: 16_367_000 picoseconds. + Weight::from_parts(17_229_000, 0) + .saturating_add(Weight::from_parts(0, 6158)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(9)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_multisig.rs b/tracing/2700/runtime/common/src/weights/pallet_multisig.rs new file mode 100644 index 00000000..62ac69c7 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_multisig.rs @@ -0,0 +1,166 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_multisig` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_multisig +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_multisig`. +pub struct WeightInfo(PhantomData); +impl pallet_multisig::WeightInfo for WeightInfo { + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `z` is `[0, 10000]`. + fn as_multi_threshold_1(z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 11_468_000 picoseconds. + Weight::from_parts(12_264_301, 0) + .saturating_add(Weight::from_parts(0, 1527)) + // Standard Error: 4 + .saturating_add(Weight::from_parts(99, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// The range of component `s` is `[2, 100]`. + /// The range of component `z` is `[0, 10000]`. + fn as_multi_create(s: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `304` + // Estimated: `5587` + // Minimum execution time: 27_229_000 picoseconds. + Weight::from_parts(17_646_947, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 650 + .saturating_add(Weight::from_parts(115_590, 0).saturating_mul(s.into())) + // Standard Error: 6 + .saturating_add(Weight::from_parts(1_008, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// The range of component `s` is `[3, 100]`. + /// The range of component `z` is `[0, 10000]`. + fn as_multi_approve(s: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312` + // Estimated: `5587` + // Minimum execution time: 19_809_000 picoseconds. + Weight::from_parts(10_872_947, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 509 + .saturating_add(Weight::from_parts(100_638, 0).saturating_mul(s.into())) + // Standard Error: 4 + .saturating_add(Weight::from_parts(976, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `s` is `[2, 100]`. + /// The range of component `z` is `[0, 10000]`. + fn as_multi_complete(s: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `475 + s * (20 ±0)` + // Estimated: `5587 + s * (20 ±0)` + // Minimum execution time: 33_146_000 picoseconds. + Weight::from_parts(24_322_085, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 763 + .saturating_add(Weight::from_parts(156_521, 0).saturating_mul(s.into())) + // Standard Error: 7 + .saturating_add(Weight::from_parts(959, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 20).saturating_mul(s.into())) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// The range of component `s` is `[2, 100]`. + fn approve_as_multi_create(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `304` + // Estimated: `5587` + // Minimum execution time: 17_400_000 picoseconds. + Weight::from_parts(17_831_464, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 792 + .saturating_add(Weight::from_parts(111_017, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// The range of component `s` is `[2, 100]`. + fn approve_as_multi_approve(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312` + // Estimated: `5587` + // Minimum execution time: 10_697_000 picoseconds. + Weight::from_parts(10_842_736, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 606 + .saturating_add(Weight::from_parts(92_557, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(2122), added: 4597, mode: MaxEncodedLen) + /// The range of component `s` is `[2, 100]`. + fn cancel_as_multi(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `474` + // Estimated: `5587` + // Minimum execution time: 19_175_000 picoseconds. + Weight::from_parts(19_433_900, 0) + .saturating_add(Weight::from_parts(0, 5587)) + // Standard Error: 626 + .saturating_add(Weight::from_parts(106_848, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_parachain_staking.rs b/tracing/2700/runtime/common/src/weights/pallet_parachain_staking.rs new file mode 100644 index 00000000..1fa08749 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_parachain_staking.rs @@ -0,0 +1,903 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_parachain_staking` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_parachain_staking +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_parachain_staking`. +pub struct WeightInfo(PhantomData); +impl pallet_parachain_staking::WeightInfo for WeightInfo { + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + fn set_staking_expectations() -> Weight { + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 6_890_000 picoseconds. + Weight::from_parts(7_224_000, 0) + .saturating_add(Weight::from_parts(0, 1573)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + fn set_inflation() -> Weight { + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 14_471_000 picoseconds. + Weight::from_parts(14_854_000, 0) + .saturating_add(Weight::from_parts(0, 1573)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) + fn set_parachain_bond_account() -> Weight { + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 5_456_000 picoseconds. + Weight::from_parts(5_699_000, 0) + .saturating_add(Weight::from_parts(0, 1491)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) + fn set_parachain_bond_reserve_percent() -> Weight { + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 5_390_000 picoseconds. + Weight::from_parts(5_665_000, 0) + .saturating_add(Weight::from_parts(0, 1491)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:1) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + fn set_total_selected() -> Weight { + // Proof Size summary in bytes: + // Measured: `28` + // Estimated: `1513` + // Minimum execution time: 6_141_000 picoseconds. + Weight::from_parts(6_387_000, 0) + .saturating_add(Weight::from_parts(0, 1513)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking CollatorCommission (r:1 w:1) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) + fn set_collator_commission() -> Weight { + // Proof Size summary in bytes: + // Measured: `27` + // Estimated: `1512` + // Minimum execution time: 5_661_000 picoseconds. + Weight::from_parts(5_868_000, 0) + .saturating_add(Weight::from_parts(0, 1512)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + fn set_blocks_per_round() -> Weight { + // Proof Size summary in bytes: + // Measured: `116` + // Estimated: `1601` + // Minimum execution time: 16_971_000 picoseconds. + Weight::from_parts(17_437_000, 0) + .saturating_add(Weight::from_parts(0, 1601)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[3, 200]`. + fn join_candidates(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1421 + x * (38 ±0)` + // Estimated: `4752 + x * (41 ±0)` + // Minimum execution time: 31_867_000 picoseconds. + Weight::from_parts(41_892_922, 0) + .saturating_add(Weight::from_parts(0, 4752)) + // Standard Error: 1_749 + .saturating_add(Weight::from_parts(93_193, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(7)) + .saturating_add(Weight::from_parts(0, 41).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 200]`. + fn schedule_leave_candidates(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `702 + x * (37 ±0)` + // Estimated: `4060 + x * (38 ±0)` + // Minimum execution time: 13_138_000 picoseconds. + Weight::from_parts(18_558_857, 0) + .saturating_add(Weight::from_parts(0, 4060)) + // Standard Error: 1_008 + .saturating_add(Weight::from_parts(66_693, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 38).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:349 w:349) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:350 w:350) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:350 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:350 w:350) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[2, 350]`. + fn execute_leave_candidates_worst_case(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1157 + x * (431 ±0)` + // Estimated: `4696 + x * (3762 ±0)` + // Minimum execution time: 65_656_000 picoseconds. + Weight::from_parts(66_996_000, 0) + .saturating_add(Weight::from_parts(0, 4696)) + // Standard Error: 107_183 + .saturating_add(Weight::from_parts(25_757_839, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 3762).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:349 w:349) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:350 w:350) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:350 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:350 w:350) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[2, 350]`. + /// The range of component `y` is `[2, 350]`. + fn execute_leave_candidates_ideal(x: u32, _y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1149 + x * (431 ±0)` + // Estimated: `4696 + x * (3762 ±0)` + // Minimum execution time: 61_023_000 picoseconds. + Weight::from_parts(61_779_000, 0) + .saturating_add(Weight::from_parts(0, 4696)) + // Standard Error: 49_414 + .saturating_add(Weight::from_parts(28_584_427, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 3762).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 200]`. + fn cancel_leave_candidates(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `670 + x * (37 ±0)` + // Estimated: `4028 + x * (38 ±0)` + // Minimum execution time: 12_638_000 picoseconds. + Weight::from_parts(17_996_862, 0) + .saturating_add(Weight::from_parts(0, 4028)) + // Standard Error: 993 + .saturating_add(Weight::from_parts(67_486, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 38).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[1, 200]`. + fn go_offline(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `567 + x * (38 ±0)` + // Estimated: `3968 + x * (39 ±0)` + // Minimum execution time: 12_169_000 picoseconds. + Weight::from_parts(17_084_623, 0) + .saturating_add(Weight::from_parts(0, 3968)) + // Standard Error: 1_057 + .saturating_add(Weight::from_parts(69_599, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 39).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[1, 200]`. + fn go_online(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `531 + x * (38 ±0)` + // Estimated: `3932 + x * (39 ±0)` + // Minimum execution time: 11_837_000 picoseconds. + Weight::from_parts(16_851_802, 0) + .saturating_add(Weight::from_parts(0, 3932)) + // Standard Error: 1_027 + .saturating_add(Weight::from_parts(72_062, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 39).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// The range of component `x` is `[1, 200]`. + fn candidate_bond_more(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1270 + x * (42 ±0)` + // Estimated: `4752 + x * (44 ±0)` + // Minimum execution time: 30_904_000 picoseconds. + Weight::from_parts(39_948_520, 0) + .saturating_add(Weight::from_parts(0, 4752)) + // Standard Error: 1_831 + .saturating_add(Weight::from_parts(123_879, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(Weight::from_parts(0, 44).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + fn schedule_candidate_bond_less() -> Weight { + // Proof Size summary in bytes: + // Measured: `171` + // Estimated: `3636` + // Minimum execution time: 9_219_000 picoseconds. + Weight::from_parts(9_688_000, 0) + .saturating_add(Weight::from_parts(0, 3636)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `x` is `[1, 200]`. + fn execute_candidate_bond_less(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1322 + x * (42 ±0)` + // Estimated: `4752 + x * (43 ±0)` + // Minimum execution time: 35_024_000 picoseconds. + Weight::from_parts(42_699_127, 0) + .saturating_add(Weight::from_parts(0, 4752)) + // Standard Error: 1_208 + .saturating_add(Weight::from_parts(105_143, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(Weight::from_parts(0, 43).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + fn cancel_candidate_bond_less() -> Weight { + // Proof Size summary in bytes: + // Measured: `191` + // Estimated: `3656` + // Minimum execution time: 8_552_000 picoseconds. + Weight::from_parts(8_881_000, 0) + .saturating_add(Weight::from_parts(0, 3656)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn set_candidate_bond_to_zero(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1322 + x * (42 ±0)` + // Estimated: `4752 + x * (43 ±0)` + // Minimum execution time: 34_969_000 picoseconds. + Weight::from_parts(43_183_234, 0) + .saturating_add(Weight::from_parts(0, 4752)) + // Standard Error: 1_377 + .saturating_add(Weight::from_parts(105_890, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + .saturating_add(Weight::from_parts(0, 43).saturating_mul(x.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 100]`. + /// The range of component `y` is `[2, 300]`. + fn delegate(x: u32, y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `2479 + x * (79 ±0) + y * (38 ±0)` + // Estimated: `5723 + x * (81 ±0) + y * (39 ±0)` + // Minimum execution time: 70_929_000 picoseconds. + Weight::from_parts(59_788_434, 0) + .saturating_add(Weight::from_parts(0, 5723)) + // Standard Error: 1_596 + .saturating_add(Weight::from_parts(166_733, 0).saturating_mul(x.into())) + // Standard Error: 523 + .saturating_add(Weight::from_parts(52_733, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(7)) + .saturating_add(Weight::from_parts(0, 81).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 39).saturating_mul(y.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 349]`. + fn schedule_revoke_delegation(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `566 + x * (42 ±0)` + // Estimated: `4012 + x * (43 ±0)` + // Minimum execution time: 10_384_000 picoseconds. + Weight::from_parts(18_134_181, 0) + .saturating_add(Weight::from_parts(0, 4012)) + // Standard Error: 696 + .saturating_add(Weight::from_parts(69_714, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 43).saturating_mul(x.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[0, 349]`. + fn delegator_bond_more(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1996 + x * (79 ±0)` + // Estimated: `5428 + x * (79 ±0)` + // Minimum execution time: 41_127_000 picoseconds. + Weight::from_parts(56_454_563, 0) + .saturating_add(Weight::from_parts(0, 5428)) + // Standard Error: 1_329 + .saturating_add(Weight::from_parts(155_463, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(9)) + .saturating_add(T::DbWeight::get().writes(7)) + .saturating_add(Weight::from_parts(0, 79).saturating_mul(x.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 349]`. + fn schedule_delegator_bond_less(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `566 + x * (42 ±0)` + // Estimated: `4012 + x * (43 ±0)` + // Minimum execution time: 10_304_000 picoseconds. + Weight::from_parts(18_044_389, 0) + .saturating_add(Weight::from_parts(0, 4012)) + // Standard Error: 682 + .saturating_add(Weight::from_parts(69_747, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 43).saturating_mul(x.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + fn execute_revoke_delegation() -> Weight { + // Proof Size summary in bytes: + // Measured: `964` + // Estimated: `4752` + // Minimum execution time: 52_762_000 picoseconds. + Weight::from_parts(53_896_000, 0) + .saturating_add(Weight::from_parts(0, 4752)) + .saturating_add(T::DbWeight::get().reads(10)) + .saturating_add(T::DbWeight::get().writes(8)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + fn execute_delegator_revoke_delegation_worst() -> Weight { + // Proof Size summary in bytes: + // Measured: `37308` + // Estimated: `40773` + // Minimum execution time: 121_863_000 picoseconds. + Weight::from_parts(125_957_000, 0) + .saturating_add(Weight::from_parts(0, 40773)) + .saturating_add(T::DbWeight::get().reads(11)) + .saturating_add(T::DbWeight::get().writes(10)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + fn execute_delegator_bond_less_worst() -> Weight { + // Proof Size summary in bytes: + // Measured: `29930` + // Estimated: `33395` + // Minimum execution time: 101_887_000 picoseconds. + Weight::from_parts(104_203_000, 0) + .saturating_add(Weight::from_parts(0, 33395)) + .saturating_add(T::DbWeight::get().reads(10)) + .saturating_add(T::DbWeight::get().writes(9)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 349]`. + fn cancel_delegation_request(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `663 + x * (42 ±0)` + // Estimated: `4092 + x * (43 ±0)` + // Minimum execution time: 13_580_000 picoseconds. + Weight::from_parts(20_161_730, 0) + .saturating_add(Weight::from_parts(0, 4092)) + // Standard Error: 748 + .saturating_add(Weight::from_parts(72_019, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 43).saturating_mul(x.into())) + } + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Staked (r:1 w:1) + /// Proof Skipped: ParachainStaking Staked (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:0) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CollatorCommission (r:1 w:0) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking DelayedPayouts (r:0 w:1) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) + fn prepare_staking_payouts() -> Weight { + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `3845` + // Minimum execution time: 21_509_000 picoseconds. + Weight::from_parts(22_210_000, 0) + .saturating_add(Weight::from_parts(0, 3845)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `y` is `[0, 100]`. + fn get_rewardable_delegators(y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `73 + y * (36 ±0)` + // Estimated: `3537 + y * (36 ±0)` + // Minimum execution time: 4_225_000 picoseconds. + Weight::from_parts(5_236_159, 0) + .saturating_add(Weight::from_parts(0, 3537)) + // Standard Error: 565 + .saturating_add(Weight::from_parts(54_480, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(Weight::from_parts(0, 36).saturating_mul(y.into())) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:0) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:51 w:0) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:51 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking SelectedCandidates (r:0 w:1) + /// Proof Skipped: ParachainStaking SelectedCandidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:0 w:51) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 50]`. + /// The range of component `y` is `[0, 100]`. + fn select_top_candidates(x: u32, y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + x * (3816 ±0) + y * (1800 ±0)` + // Estimated: `3730 + x * (3975 ±39) + y * (639 ±19)` + // Minimum execution time: 14_650_000 picoseconds. + Weight::from_parts(14_993_000, 0) + .saturating_add(Weight::from_parts(0, 3730)) + // Standard Error: 86_614 + .saturating_add(Weight::from_parts(11_368_523, 0).saturating_mul(x.into())) + // Standard Error: 43_192 + .saturating_add(Weight::from_parts(1_335_158, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 3975).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 639).saturating_mul(y.into())) + } + /// Storage: System Account (r:349 w:349) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:349 w:349) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:349 w:349) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:349 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 349]`. + /// The range of component `y` is `[0, 349]`. + /// The range of component `z` is `[0, 349]`. + fn pay_one_collator_reward_best(x: u32, y: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + x * (395 ±0) + y * (156 ±0) + z * (41 ±0)` + // Estimated: `125757 + x * (2591 ±1) + y * (2234 ±1) + z * (28 ±0)` + // Minimum execution time: 84_000 picoseconds. + Weight::from_parts(89_000, 0) + .saturating_add(Weight::from_parts(0, 125757)) + // Standard Error: 586_928 + .saturating_add(Weight::from_parts(37_021_750, 0).saturating_mul(x.into())) + // Standard Error: 586_928 + .saturating_add(Weight::from_parts(20_024_306, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(y.into()))) + .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(y.into()))) + .saturating_add(Weight::from_parts(0, 2591).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 2234).saturating_mul(y.into())) + .saturating_add(Weight::from_parts(0, 28).saturating_mul(z.into())) + } + /// Storage: ParachainStaking DelayedPayouts (r:1 w:0) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:2 w:1) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AwardedPts (r:1 w:1) + /// Proof Skipped: ParachainStaking AwardedPts (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:301 w:301) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `y` is `[0, 300]`. + fn pay_one_collator_reward(y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1208 + y * (160 ±0)` + // Estimated: `6978 + y * (2591 ±0)` + // Minimum execution time: 32_493_000 picoseconds. + Weight::from_parts(29_439_933, 0) + .saturating_add(Weight::from_parts(0, 6978)) + // Standard Error: 4_122 + .saturating_add(Weight::from_parts(9_113_953, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(y.into()))) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(y.into()))) + .saturating_add(Weight::from_parts(0, 2591).saturating_mul(y.into())) + } + fn base_on_initialize() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 646_000 picoseconds. + Weight::from_parts(696_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 300]`. + /// The range of component `y` is `[0, 100]`. + fn set_auto_compound(x: u32, y: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `671 + x * (22 ±0) + y * (36 ±0)` + // Estimated: `4027 + x * (23 ±0) + y * (36 ±0)` + // Minimum execution time: 19_844_000 picoseconds. + Weight::from_parts(18_132_368, 0) + .saturating_add(Weight::from_parts(0, 4027)) + // Standard Error: 390 + .saturating_add(Weight::from_parts(57_278, 0).saturating_mul(x.into())) + // Standard Error: 1_168 + .saturating_add(Weight::from_parts(51_455, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 23).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 36).saturating_mul(y.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[0, 350]`. + /// The range of component `y` is `[0, 349]`. + /// The range of component `z` is `[0, 99]`. + fn delegate_with_auto_compound(x: u32, y: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + x * (60 ±0) + y * (21 ±0) + z * (78 ±0)` + // Estimated: `26253 + x * (44 ±0) + y * (19 ±0) + z * (76 ±1)` + // Minimum execution time: 75_570_000 picoseconds. + Weight::from_parts(42_877_030, 0) + .saturating_add(Weight::from_parts(0, 26253)) + // Standard Error: 959 + .saturating_add(Weight::from_parts(145_930, 0).saturating_mul(x.into())) + // Standard Error: 962 + .saturating_add(Weight::from_parts(36_760, 0).saturating_mul(y.into())) + // Standard Error: 3_389 + .saturating_add(Weight::from_parts(236_052, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(9)) + .saturating_add(T::DbWeight::get().writes(8)) + .saturating_add(Weight::from_parts(0, 44).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 19).saturating_mul(y.into())) + .saturating_add(Weight::from_parts(0, 76).saturating_mul(z.into())) + } + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:2 w:2) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:2 w:2) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:2 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(37), added: 2512, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + fn delegate_with_auto_compound_worst() -> Weight { + // Proof Size summary in bytes: + // Measured: `48167` + // Estimated: `54107` + // Minimum execution time: 198_472_000 picoseconds. + Weight::from_parts(201_828_000, 0) + .saturating_add(Weight::from_parts(0, 54107)) + .saturating_add(T::DbWeight::get().reads(15)) + .saturating_add(T::DbWeight::get().writes(13)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn mint_collator_reward() -> Weight { + // Proof Size summary in bytes: + // Measured: `128` + // Estimated: `3581` + // Minimum execution time: 10_327_000 picoseconds. + Weight::from_parts(10_581_000, 0) + .saturating_add(Weight::from_parts(0, 3581)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: ParachainStaking EnableMarkingOffline (r:1 w:0) + /// Proof Skipped: ParachainStaking EnableMarkingOffline (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking SelectedCandidates (r:1 w:0) + /// Proof Skipped: ParachainStaking SelectedCandidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:2 w:0) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AwardedPts (r:2 w:0) + /// Proof Skipped: ParachainStaking AwardedPts (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + fn notify_inactive_collator() -> Weight { + // Proof Size summary in bytes: + // Measured: `11494` + // Estimated: `17434` + // Minimum execution time: 41_130_000 picoseconds. + Weight::from_parts(41_130_000, 0) + .saturating_add(Weight::from_parts(0, 17434)) + .saturating_add(T::DbWeight::get().reads(10_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_preimage.rs b/tracing/2700/runtime/common/src/weights/pallet_preimage.rs new file mode 100644 index 00000000..292050b2 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_preimage.rs @@ -0,0 +1,262 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_preimage` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-12-29, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("moonbase-dev")`, DB CACHE: 1024 + +// Executed Command: +// ./target/production/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_preimage +// --extrinsic=* +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_preimage`. +pub struct WeightInfo(PhantomData); +impl pallet_preimage::WeightInfo for WeightInfo { + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Balances::Holds` (r:1 w:1) + /// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(55), added: 2530, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + /// The range of component `s` is `[0, 4194304]`. + fn note_preimage(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `3544` + // Minimum execution time: 42_438_000 picoseconds. + Weight::from_parts(42_871_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + // Standard Error: 4 + .saturating_add(Weight::from_parts(2_343, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + /// The range of component `s` is `[0, 4194304]`. + fn note_requested_preimage(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `3544` + // Minimum execution time: 14_582_000 picoseconds. + Weight::from_parts(14_830_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + // Standard Error: 4 + .saturating_add(Weight::from_parts(2_355, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + /// The range of component `s` is `[0, 4194304]`. + fn note_no_deposit_preimage(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `3544` + // Minimum execution time: 13_989_000 picoseconds. + Weight::from_parts(14_259_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + // Standard Error: 4 + .saturating_add(Weight::from_parts(2_268, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Balances::Holds` (r:1 w:1) + /// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(55), added: 2530, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + fn unnote_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `3544` + // Minimum execution time: 45_436_000 picoseconds. + Weight::from_parts(47_383_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + fn unnote_no_deposit_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `144` + // Estimated: `3544` + // Minimum execution time: 20_696_000 picoseconds. + Weight::from_parts(21_356_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn request_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `176` + // Estimated: `3544` + // Minimum execution time: 18_023_000 picoseconds. + Weight::from_parts(18_340_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn request_no_deposit_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `144` + // Estimated: `3544` + // Minimum execution time: 12_682_000 picoseconds. + Weight::from_parts(13_131_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn request_unnoted_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `3544` + // Minimum execution time: 14_305_000 picoseconds. + Weight::from_parts(14_751_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn request_requested_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `3544` + // Minimum execution time: 9_682_000 picoseconds. + Weight::from_parts(10_105_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::PreimageFor` (r:0 w:1) + /// Proof: `Preimage::PreimageFor` (`max_values`: None, `max_size`: Some(4194344), added: 4196819, mode: `MaxEncodedLen`) + fn unrequest_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `144` + // Estimated: `3544` + // Minimum execution time: 18_660_000 picoseconds. + Weight::from_parts(18_921_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn unrequest_unnoted_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `3544` + // Minimum execution time: 9_921_000 picoseconds. + Weight::from_parts(10_340_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1 w:0) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:1 w:1) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + fn unrequest_multi_referenced_preimage() -> Weight { + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `3544` + // Minimum execution time: 9_686_000 picoseconds. + Weight::from_parts(10_099_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Preimage::StatusFor` (r:1023 w:1023) + /// Proof: `Preimage::StatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1023 w:1023) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(116), added: 2591, mode: `MaxEncodedLen`) + /// Storage: `Balances::Holds` (r:1023 w:1023) + /// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(55), added: 2530, mode: `MaxEncodedLen`) + /// Storage: `Preimage::RequestStatusFor` (r:0 w:1023) + /// Proof: `Preimage::RequestStatusFor` (`max_values`: None, `max_size`: Some(79), added: 2554, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 1024]`. + fn ensure_updated(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `747 + n * (203 ±0)` + // Estimated: `990 + n * (2591 ±0)` + // Minimum execution time: 47_705_000 picoseconds. + Weight::from_parts(48_184_000, 0) + .saturating_add(Weight::from_parts(0, 990)) + // Standard Error: 27_608 + .saturating_add(Weight::from_parts(46_842_973, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes((4_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_parts(0, 2591).saturating_mul(n.into())) + } +} \ No newline at end of file diff --git a/tracing/2700/runtime/common/src/weights/pallet_proxy.rs b/tracing/2700/runtime/common/src/weights/pallet_proxy.rs new file mode 100644 index 00000000..76a5d2d9 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_proxy.rs @@ -0,0 +1,226 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_proxy` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_proxy +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_proxy`. +pub struct WeightInfo(PhantomData); +impl pallet_proxy::WeightInfo for WeightInfo { + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `p` is `[1, 31]`. + fn proxy(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `191 + p * (25 ±0)` + // Estimated: `4310 + p * (25 ±0)` + // Minimum execution time: 11_482_000 picoseconds. + Weight::from_parts(12_093_037, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 943 + .saturating_add(Weight::from_parts(40_718, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + // Manually adding 1 DB read that happen when filtering the proxy call transaction + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(Weight::from_parts(0, 25).saturating_mul(p.into())) + } + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(1837), added: 4312, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `a` is `[0, 31]`. + /// The range of component `p` is `[1, 31]`. + fn proxy_announced(a: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `443 + a * (56 ±0) + p * (25 ±0)` + // Estimated: `5302 + a * (59 ±0) + p * (23 ±0)` + // Minimum execution time: 26_926_000 picoseconds. + Weight::from_parts(27_170_528, 0) + .saturating_add(Weight::from_parts(0, 5302)) + // Standard Error: 2_005 + .saturating_add(Weight::from_parts(82_968, 0).saturating_mul(a.into())) + // Standard Error: 2_072 + .saturating_add(Weight::from_parts(20_197, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 59).saturating_mul(a.into())) + .saturating_add(Weight::from_parts(0, 23).saturating_mul(p.into())) + } + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(1837), added: 4312, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `a` is `[0, 31]`. + /// The range of component `p` is `[1, 31]`. + fn remove_announcement(a: u32, _p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `329 + a * (56 ±0)` + // Estimated: `5302` + // Minimum execution time: 14_555_000 picoseconds. + Weight::from_parts(15_212_728, 0) + .saturating_add(Weight::from_parts(0, 5302)) + // Standard Error: 2_156 + .saturating_add(Weight::from_parts(75_335, 0).saturating_mul(a.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(1837), added: 4312, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `a` is `[0, 31]`. + /// The range of component `p` is `[1, 31]`. + fn reject_announcement(a: u32, _p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `329 + a * (56 ±0)` + // Estimated: `5302` + // Minimum execution time: 14_589_000 picoseconds. + Weight::from_parts(15_095_034, 0) + .saturating_add(Weight::from_parts(0, 5302)) + // Standard Error: 2_092 + .saturating_add(Weight::from_parts(79_740, 0).saturating_mul(a.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(1837), added: 4312, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `a` is `[0, 31]`. + /// The range of component `p` is `[1, 31]`. + fn announce(a: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `345 + a * (56 ±0) + p * (25 ±0)` + // Estimated: `5302` + // Minimum execution time: 19_613_000 picoseconds. + Weight::from_parts(22_016_278, 0) + .saturating_add(Weight::from_parts(0, 5302)) + // Standard Error: 2_419 + .saturating_add(Weight::from_parts(100_259, 0).saturating_mul(a.into())) + // Standard Error: 2_499 + .saturating_add(Weight::from_parts(26_733, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// The range of component `p` is `[1, 31]`. + fn add_proxy(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `149 + p * (25 ±0)` + // Estimated: `4310` + // Minimum execution time: 13_603_000 picoseconds. + Weight::from_parts(14_296_527, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 808 + .saturating_add(Weight::from_parts(42_189, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// The range of component `p` is `[1, 31]`. + fn remove_proxy(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `149 + p * (25 ±0)` + // Estimated: `4310` + // Minimum execution time: 13_627_000 picoseconds. + Weight::from_parts(14_289_242, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 915 + .saturating_add(Weight::from_parts(42_530, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// The range of component `p` is `[1, 31]`. + fn remove_proxies(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `149 + p * (25 ±0)` + // Estimated: `4310` + // Minimum execution time: 12_681_000 picoseconds. + Weight::from_parts(13_132_149, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 815 + .saturating_add(Weight::from_parts(41_809, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// The range of component `p` is `[1, 31]`. + fn create_pure(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `161` + // Estimated: `4310` + // Minimum execution time: 14_212_000 picoseconds. + Weight::from_parts(14_890_418, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 962 + .saturating_add(Weight::from_parts(3_235, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(845), added: 3320, mode: MaxEncodedLen) + /// The range of component `p` is `[0, 30]`. + fn kill_pure(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `174 + p * (25 ±0)` + // Estimated: `4310` + // Minimum execution time: 13_035_000 picoseconds. + Weight::from_parts(13_606_961, 0) + .saturating_add(Weight::from_parts(0, 4310)) + // Standard Error: 773 + .saturating_add(Weight::from_parts(38_899, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_randomness.rs b/tracing/2700/runtime/common/src/weights/pallet_randomness.rs new file mode 100644 index 00000000..af8ceb57 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_randomness.rs @@ -0,0 +1,168 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_randomness` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_randomness +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_randomness`. +pub struct WeightInfo(PhantomData); +impl pallet_randomness::WeightInfo for WeightInfo { + /// Storage: Randomness RelayEpoch (r:1 w:1) + /// Proof Skipped: Randomness RelayEpoch (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem ValidationData (r:1 w:0) + /// Proof Skipped: ParachainSystem ValidationData (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem RelayStateProof (r:1 w:0) + /// Proof Skipped: ParachainSystem RelayStateProof (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness InherentIncluded (r:0 w:1) + /// Proof Skipped: Randomness InherentIncluded (max_values: Some(1), max_size: None, mode: Measured) + fn set_babe_randomness_results() -> Weight { + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `3762` + // Minimum execution time: 10_513_000 picoseconds. + Weight::from_parts(10_834_000, 0) + .saturating_add(Weight::from_parts(0, 3762)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Randomness NotFirstBlock (r:1 w:0) + /// Proof Skipped: Randomness NotFirstBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:0) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:0) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness LocalVrfOutput (r:1 w:1) + /// Proof Skipped: Randomness LocalVrfOutput (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + fn on_initialize() -> Weight { + // Proof Size summary in bytes: + // Measured: `719` + // Estimated: `4184` + // Minimum execution time: 169_944_000 picoseconds. + Weight::from_parts(171_082_000, 0) + .saturating_add(Weight::from_parts(0, 4184)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Randomness RequestCount (r:1 w:1) + /// Proof Skipped: Randomness RequestCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + fn request_randomness() -> Weight { + // Proof Size summary in bytes: + // Measured: `516` + // Estimated: `6172` + // Minimum execution time: 29_481_000 picoseconds. + Weight::from_parts(29_887_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: Randomness Requests (r:1 w:0) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:0) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 100]`. + fn prepare_fulfillment(x: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `412` + // Estimated: `3877` + // Minimum execution time: 7_457_000 picoseconds. + Weight::from_parts(7_749_145, 0) + .saturating_add(Weight::from_parts(0, 3877)) + // Standard Error: 177 + .saturating_add(Weight::from_parts(144_131, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2)) + } + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + fn finish_fulfillment() -> Weight { + // Proof Size summary in bytes: + // Measured: `706` + // Estimated: `6172` + // Minimum execution time: 27_108_000 picoseconds. + Weight::from_parts(27_748_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn increase_fee() -> Weight { + // Proof Size summary in bytes: + // Measured: `792` + // Estimated: `6172` + // Minimum execution time: 25_726_000 picoseconds. + Weight::from_parts(26_475_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + fn execute_request_expiration() -> Weight { + // Proof Size summary in bytes: + // Measured: `835` + // Estimated: `6172` + // Minimum execution time: 31_196_000 picoseconds. + Weight::from_parts(31_824_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_referenda.rs b/tracing/2700/runtime/common/src/weights/pallet_referenda.rs new file mode 100644 index 00000000..fe8eba23 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_referenda.rs @@ -0,0 +1,496 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_referenda` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_referenda +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_referenda`. +pub struct WeightInfo(PhantomData); +impl pallet_referenda::WeightInfo for WeightInfo { + /// Storage: Referenda ReferendumCount (r:1 w:1) + /// Proof: Referenda ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:0 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + fn submit() -> Weight { + // Proof Size summary in bytes: + // Measured: `236` + // Estimated: `42428` + // Minimum execution time: 20_543_000 picoseconds. + Weight::from_parts(21_432_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn place_decision_deposit_preparing() -> Weight { + // Proof Size summary in bytes: + // Measured: `477` + // Estimated: `83866` + // Minimum execution time: 28_243_000 picoseconds. + Weight::from_parts(29_387_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:0) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn place_decision_deposit_queued() -> Weight { + // Proof Size summary in bytes: + // Measured: `3270` + // Estimated: `42428` + // Minimum execution time: 45_487_000 picoseconds. + Weight::from_parts(47_249_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:0) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn place_decision_deposit_not_queued() -> Weight { + // Proof Size summary in bytes: + // Measured: `3290` + // Estimated: `42428` + // Minimum execution time: 45_439_000 picoseconds. + Weight::from_parts(47_121_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:1) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn place_decision_deposit_passing() -> Weight { + // Proof Size summary in bytes: + // Measured: `477` + // Estimated: `83866` + // Minimum execution time: 33_247_000 picoseconds. + Weight::from_parts(34_212_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:1) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn place_decision_deposit_failing() -> Weight { + // Proof Size summary in bytes: + // Measured: `477` + // Estimated: `83866` + // Minimum execution time: 32_743_000 picoseconds. + Weight::from_parts(33_816_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + fn refund_decision_deposit() -> Weight { + // Proof Size summary in bytes: + // Measured: `387` + // Estimated: `4377` + // Minimum execution time: 18_586_000 picoseconds. + Weight::from_parts(19_021_000, 0) + .saturating_add(Weight::from_parts(0, 4377)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + fn refund_submission_deposit() -> Weight { + // Proof Size summary in bytes: + // Measured: `345` + // Estimated: `4377` + // Minimum execution time: 17_750_000 picoseconds. + Weight::from_parts(18_235_000, 0) + .saturating_add(Weight::from_parts(0, 4377)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn cancel() -> Weight { + // Proof Size summary in bytes: + // Measured: `285` + // Estimated: `83866` + // Minimum execution time: 20_371_000 picoseconds. + Weight::from_parts(21_004_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Referenda MetadataOf (r:1 w:0) + /// Proof: Referenda MetadataOf (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + fn kill() -> Weight { + // Proof Size summary in bytes: + // Measured: `786` + // Estimated: `83866` + // Minimum execution time: 59_921_000 picoseconds. + Weight::from_parts(61_509_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Referenda TrackQueue (r:1 w:0) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:1) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + fn one_fewer_deciding_queue_empty() -> Weight { + // Proof Size summary in bytes: + // Measured: `102` + // Estimated: `5477` + // Minimum execution time: 7_119_000 picoseconds. + Weight::from_parts(7_260_000, 0) + .saturating_add(Weight::from_parts(0, 5477)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn one_fewer_deciding_failing() -> Weight { + // Proof Size summary in bytes: + // Measured: `3104` + // Estimated: `42428` + // Minimum execution time: 35_136_000 picoseconds. + Weight::from_parts(36_654_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn one_fewer_deciding_passing() -> Weight { + // Proof Size summary in bytes: + // Measured: `3090` + // Estimated: `42428` + // Minimum execution time: 35_670_000 picoseconds. + Weight::from_parts(36_874_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:0) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + fn nudge_referendum_requeued_insertion() -> Weight { + // Proof Size summary in bytes: + // Measured: `2915` + // Estimated: `5477` + // Minimum execution time: 17_099_000 picoseconds. + Weight::from_parts(17_653_000, 0) + .saturating_add(Weight::from_parts(0, 5477)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:0) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + fn nudge_referendum_requeued_slide() -> Weight { + // Proof Size summary in bytes: + // Measured: `2915` + // Estimated: `5477` + // Minimum execution time: 16_765_000 picoseconds. + Weight::from_parts(17_615_000, 0) + .saturating_add(Weight::from_parts(0, 5477)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:0) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + fn nudge_referendum_queued() -> Weight { + // Proof Size summary in bytes: + // Measured: `2919` + // Estimated: `5477` + // Minimum execution time: 23_001_000 picoseconds. + Weight::from_parts(23_790_000, 0) + .saturating_add(Weight::from_parts(0, 5477)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:0) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Referenda TrackQueue (r:1 w:1) + /// Proof: Referenda TrackQueue (max_values: None, max_size: Some(2012), added: 4487, mode: MaxEncodedLen) + fn nudge_referendum_not_queued() -> Weight { + // Proof Size summary in bytes: + // Measured: `2939` + // Estimated: `5477` + // Minimum execution time: 22_839_000 picoseconds. + Weight::from_parts(23_722_000, 0) + .saturating_add(Weight::from_parts(0, 5477)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_no_deposit() -> Weight { + // Proof Size summary in bytes: + // Measured: `249` + // Estimated: `42428` + // Minimum execution time: 14_689_000 picoseconds. + Weight::from_parts(15_311_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_preparing() -> Weight { + // Proof Size summary in bytes: + // Measured: `285` + // Estimated: `42428` + // Minimum execution time: 15_039_000 picoseconds. + Weight::from_parts(15_625_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + fn nudge_referendum_timed_out() -> Weight { + // Proof Size summary in bytes: + // Measured: `194` + // Estimated: `4377` + // Minimum execution time: 9_579_000 picoseconds. + Weight::from_parts(9_947_000, 0) + .saturating_add(Weight::from_parts(0, 4377)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:1) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_begin_deciding_failing() -> Weight { + // Proof Size summary in bytes: + // Measured: `285` + // Estimated: `42428` + // Minimum execution time: 19_107_000 picoseconds. + Weight::from_parts(19_573_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda DecidingCount (r:1 w:1) + /// Proof: Referenda DecidingCount (max_values: None, max_size: Some(14), added: 2489, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_begin_deciding_passing() -> Weight { + // Proof Size summary in bytes: + // Measured: `285` + // Estimated: `42428` + // Minimum execution time: 20_042_000 picoseconds. + Weight::from_parts(20_480_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_begin_confirming() -> Weight { + // Proof Size summary in bytes: + // Measured: `338` + // Estimated: `42428` + // Minimum execution time: 17_651_000 picoseconds. + Weight::from_parts(18_258_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_end_confirming() -> Weight { + // Proof Size summary in bytes: + // Measured: `321` + // Estimated: `42428` + // Minimum execution time: 17_436_000 picoseconds. + Weight::from_parts(17_910_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_continue_not_confirming() -> Weight { + // Proof Size summary in bytes: + // Measured: `338` + // Estimated: `42428` + // Minimum execution time: 16_448_000 picoseconds. + Weight::from_parts(16_910_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_continue_confirming() -> Weight { + // Proof Size summary in bytes: + // Measured: `342` + // Estimated: `42428` + // Minimum execution time: 16_600_000 picoseconds. + Weight::from_parts(17_034_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:2 w:2) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// Storage: Scheduler Lookup (r:1 w:1) + /// Proof: Scheduler Lookup (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + fn nudge_referendum_approved() -> Weight { + // Proof Size summary in bytes: + // Measured: `342` + // Estimated: `83866` + // Minimum execution time: 23_193_000 picoseconds. + Weight::from_parts(23_606_000, 0) + .saturating_add(Weight::from_parts(0, 83866)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:1) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + fn nudge_referendum_rejected() -> Weight { + // Proof Size summary in bytes: + // Measured: `338` + // Estimated: `42428` + // Minimum execution time: 17_454_000 picoseconds. + Weight::from_parts(18_060_000, 0) + .saturating_add(Weight::from_parts(0, 42428)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:0) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: Referenda MetadataOf (r:0 w:1) + /// Proof: Referenda MetadataOf (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + fn set_some_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `338` + // Estimated: `4377` + // Minimum execution time: 13_651_000 picoseconds. + Weight::from_parts(14_428_000, 0) + .saturating_add(Weight::from_parts(0, 4377)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Referenda ReferendumInfoFor (r:1 w:0) + /// Proof: Referenda ReferendumInfoFor (max_values: None, max_size: Some(912), added: 3387, mode: MaxEncodedLen) + /// Storage: Referenda MetadataOf (r:1 w:1) + /// Proof: Referenda MetadataOf (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + fn clear_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `271` + // Estimated: `4377` + // Minimum execution time: 11_827_000 picoseconds. + Weight::from_parts(12_371_000, 0) + .saturating_add(Weight::from_parts(0, 4377)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_scheduler.rs b/tracing/2700/runtime/common/src/weights/pallet_scheduler.rs new file mode 100644 index 00000000..6a85baad --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_scheduler.rs @@ -0,0 +1,205 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_scheduler` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_scheduler +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_scheduler`. +pub struct WeightInfo(PhantomData); +impl pallet_scheduler::WeightInfo for WeightInfo { + /// Storage: Scheduler IncompleteSince (r:1 w:1) + /// Proof: Scheduler IncompleteSince (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + fn service_agendas_base() -> Weight { + // Proof Size summary in bytes: + // Measured: `31` + // Estimated: `1489` + // Minimum execution time: 2_877_000 picoseconds. + Weight::from_parts(2_990_000, 0) + .saturating_add(Weight::from_parts(0, 1489)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 50]`. + fn service_agenda_base(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `78 + s * (177 ±0)` + // Estimated: `42428` + // Minimum execution time: 1_931_000 picoseconds. + Weight::from_parts(3_725_545, 0) + .saturating_add(Weight::from_parts(0, 42428)) + // Standard Error: 1_433 + .saturating_add(Weight::from_parts(317_299, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn service_task_base() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_319_000 picoseconds. + Weight::from_parts(2_385_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Preimage PreimageFor (r:1 w:1) + /// Proof: Preimage PreimageFor (max_values: None, max_size: Some(4194344), added: 4196819, mode: Measured) + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// The range of component `s` is `[128, 4194304]`. + fn service_task_fetched(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `179 + s * (1 ±0)` + // Estimated: `3644 + s * (1 ±0)` + // Minimum execution time: 11_954_000 picoseconds. + Weight::from_parts(12_114_000, 0) + .saturating_add(Weight::from_parts(0, 3644)) + // Standard Error: 6 + .saturating_add(Weight::from_parts(1_099, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(s.into())) + } + /// Storage: Scheduler Lookup (r:0 w:1) + /// Proof: Scheduler Lookup (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + fn service_task_named() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_893_000 picoseconds. + Weight::from_parts(3_012_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn service_task_periodic() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_257_000 picoseconds. + Weight::from_parts(2_333_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + fn execute_dispatch_signed() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 3_422_000 picoseconds. + Weight::from_parts(3_493_000, 0) + .saturating_add(Weight::from_parts(0, 1527)) + .saturating_add(T::DbWeight::get().reads(1)) + } + fn execute_dispatch_unsigned() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_243_000 picoseconds. + Weight::from_parts(1_316_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 49]`. + fn schedule(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `78 + s * (177 ±0)` + // Estimated: `42428` + // Minimum execution time: 6_376_000 picoseconds. + Weight::from_parts(8_258_368, 0) + .saturating_add(Weight::from_parts(0, 42428)) + // Standard Error: 1_696 + .saturating_add(Weight::from_parts(375_190, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// Storage: Scheduler Lookup (r:0 w:1) + /// Proof: Scheduler Lookup (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// The range of component `s` is `[1, 50]`. + fn cancel(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `78 + s * (177 ±0)` + // Estimated: `42428` + // Minimum execution time: 9_362_000 picoseconds. + Weight::from_parts(8_447_528, 0) + .saturating_add(Weight::from_parts(0, 42428)) + // Standard Error: 2_297 + .saturating_add(Weight::from_parts(599_518, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Scheduler Lookup (r:1 w:1) + /// Proof: Scheduler Lookup (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// The range of component `s` is `[0, 49]`. + fn schedule_named(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `255 + s * (185 ±0)` + // Estimated: `42428` + // Minimum execution time: 8_278_000 picoseconds. + Weight::from_parts(11_068_336, 0) + .saturating_add(Weight::from_parts(0, 42428)) + // Standard Error: 2_406 + .saturating_add(Weight::from_parts(412_321, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Scheduler Lookup (r:1 w:1) + /// Proof: Scheduler Lookup (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Scheduler Agenda (r:1 w:1) + /// Proof: Scheduler Agenda (max_values: None, max_size: Some(38963), added: 41438, mode: MaxEncodedLen) + /// The range of component `s` is `[1, 50]`. + fn cancel_named(s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `281 + s * (185 ±0)` + // Estimated: `42428` + // Minimum execution time: 11_072_000 picoseconds. + Weight::from_parts(11_042_516, 0) + .saturating_add(Weight::from_parts(0, 42428)) + // Standard Error: 2_254 + .saturating_add(Weight::from_parts(623_730, 0).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_sudo.rs b/tracing/2700/runtime/common/src/weights/pallet_sudo.rs new file mode 100644 index 00000000..a39d3191 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_sudo.rs @@ -0,0 +1,82 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_sudo` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_sudo +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_sudo`. +pub struct WeightInfo(PhantomData); +impl pallet_sudo::WeightInfo for WeightInfo { + /// Storage: Sudo Key (r:1 w:1) + /// Proof: Sudo Key (max_values: Some(1), max_size: Some(20), added: 515, mode: MaxEncodedLen) + fn set_key() -> Weight { + // Proof Size summary in bytes: + // Measured: `153` + // Estimated: `1505` + // Minimum execution time: 7_790_000 picoseconds. + Weight::from_parts(7_983_000, 0) + .saturating_add(Weight::from_parts(0, 1505)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Sudo Key (r:1 w:0) + /// Proof: Sudo Key (max_values: Some(1), max_size: Some(20), added: 515, mode: MaxEncodedLen) + fn sudo() -> Weight { + // Proof Size summary in bytes: + // Measured: `153` + // Estimated: `1505` + // Minimum execution time: 7_702_000 picoseconds. + Weight::from_parts(7_984_000, 0) + .saturating_add(Weight::from_parts(0, 1505)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: Sudo Key (r:1 w:0) + /// Proof: Sudo Key (max_values: Some(1), max_size: Some(20), added: 515, mode: MaxEncodedLen) + fn sudo_as() -> Weight { + // Proof Size summary in bytes: + // Measured: `153` + // Estimated: `1505` + // Minimum execution time: 7_791_000 picoseconds. + Weight::from_parts(8_005_000, 0) + .saturating_add(Weight::from_parts(0, 1505)) + .saturating_add(T::DbWeight::get().reads(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_timestamp.rs b/tracing/2700/runtime/common/src/weights/pallet_timestamp.rs new file mode 100644 index 00000000..514cd7be --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_timestamp.rs @@ -0,0 +1,68 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_timestamp` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_timestamp +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_timestamp`. +pub struct WeightInfo(PhantomData); +impl pallet_timestamp::WeightInfo for WeightInfo { + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + fn set() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1493` + // Minimum execution time: 4_706_000 picoseconds. + Weight::from_parts(4_849_000, 0) + .saturating_add(Weight::from_parts(0, 1493)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn on_finalize() -> Weight { + // Proof Size summary in bytes: + // Measured: `94` + // Estimated: `0` + // Minimum execution time: 3_671_000 picoseconds. + Weight::from_parts(3_781_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_treasury.rs b/tracing/2700/runtime/common/src/weights/pallet_treasury.rs new file mode 100644 index 00000000..4db967e8 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_treasury.rs @@ -0,0 +1,208 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_treasury` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_treasury +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_treasury`. +pub struct WeightInfo(PhantomData); +impl pallet_treasury::WeightInfo for WeightInfo { + fn spend() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 80_000 picoseconds. + Weight::from_parts(90_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: Treasury ProposalCount (r:1 w:1) + /// Proof: Treasury ProposalCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Treasury Proposals (r:0 w:1) + /// Proof: Treasury Proposals (max_values: None, max_size: Some(84), added: 2559, mode: MaxEncodedLen) + fn propose_spend() -> Weight { + // Proof Size summary in bytes: + // Measured: `342` + // Estimated: `1489` + // Minimum execution time: 16_677_000 picoseconds. + Weight::from_parts(17_224_000, 0) + .saturating_add(Weight::from_parts(0, 1489)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Treasury Proposals (r:1 w:1) + /// Proof: Treasury Proposals (max_values: None, max_size: Some(84), added: 2559, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + fn reject_proposal() -> Weight { + // Proof Size summary in bytes: + // Measured: `516` + // Estimated: `6172` + // Minimum execution time: 28_249_000 picoseconds. + Weight::from_parts(28_825_000, 0) + .saturating_add(Weight::from_parts(0, 6172)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Treasury Proposals (r:1 w:0) + /// Proof: Treasury Proposals (max_values: None, max_size: Some(84), added: 2559, mode: MaxEncodedLen) + /// Storage: Treasury Approvals (r:1 w:1) + /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(402), added: 897, mode: MaxEncodedLen) + /// The range of component `p` is `[0, 99]`. + fn approve_proposal(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `537 + p * (8 ±0)` + // Estimated: `3549` + // Minimum execution time: 6_666_000 picoseconds. + Weight::from_parts(9_412_310, 0) + .saturating_add(Weight::from_parts(0, 3549)) + // Standard Error: 1_172 + .saturating_add(Weight::from_parts(75_315, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Treasury Approvals (r:1 w:1) + /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(402), added: 897, mode: MaxEncodedLen) + fn remove_approval() -> Weight { + // Proof Size summary in bytes: + // Measured: `194` + // Estimated: `1887` + // Minimum execution time: 5_305_000 picoseconds. + Weight::from_parts(5_530_000, 0) + .saturating_add(Weight::from_parts(0, 1887)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: System Account (r:1 w:0) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Treasury Deactivated (r:1 w:0) + /// Proof: Treasury Deactivated (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: Treasury Approvals (r:1 w:1) + /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(402), added: 897, mode: MaxEncodedLen) + /// Storage: Treasury Proposals (r:100 w:0) + /// Proof: Treasury Proposals (max_values: None, max_size: Some(84), added: 2559, mode: MaxEncodedLen) + /// The range of component `p` is `[0, 100]`. + fn on_initialize_proposals(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `277 + p * (97 ±0)` + // Estimated: `3581 + p * (2559 ±0)` + // Minimum execution time: 12_203_000 picoseconds. + Weight::from_parts(11_358_334, 0) + .saturating_add(Weight::from_parts(0, 3581)) + // Standard Error: 5_943 + .saturating_add(Weight::from_parts(2_475_040, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 2559).saturating_mul(p.into())) + } + /// Storage: Treasury ProposalCount (r:1 w:1) + /// Proof: Treasury ProposalCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Treasury Approvals (r:1 w:1) + /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(402), added: 897, mode: MaxEncodedLen) + /// Storage: Treasury Proposals (r:0 w:1) + /// Proof: Treasury Proposals (max_values: None, max_size: Some(108), added: 2583, mode: MaxEncodedLen) + fn spend_local() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1887` + // Minimum execution time: 177_000_000 picoseconds. + Weight::from_parts(191_000_000, 0) + .saturating_add(Weight::from_parts(0, 1887)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Treasury Spends (r:1 w:1) + /// Proof: Treasury Spends (max_values: None, max_size: Some(1848), added: 4323, mode: MaxEncodedLen) + /// Storage: XcmPallet QueryCounter (r:1 w:1) + /// Proof Skipped: XcmPallet QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Configuration ActiveConfig (r:1 w:0) + /// Proof Skipped: Configuration ActiveConfig (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet Queries (r:0 w:1) + /// Proof Skipped: XcmPallet Queries (max_values: None, max_size: None, mode: Measured) + fn payout() -> Weight { + // Proof Size summary in bytes: + // Measured: `737` + // Estimated: `5313` + // Minimum execution time: 551_000_000 picoseconds. + Weight::from_parts(569_000_000, 0) + .saturating_add(Weight::from_parts(0, 5313)) + .saturating_add(T::DbWeight::get().reads(9)) + .saturating_add(T::DbWeight::get().writes(6)) + } + /// Storage: Treasury Spends (r:1 w:1) + /// Proof: Treasury Spends (max_values: None, max_size: Some(1848), added: 4323, mode: MaxEncodedLen) + /// Storage: XcmPallet Queries (r:1 w:1) + /// Proof Skipped: XcmPallet Queries (max_values: None, max_size: None, mode: Measured) + fn check_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `442` + // Estimated: `5313` + // Minimum execution time: 245_000_000 picoseconds. + Weight::from_parts(281_000_000, 0) + .saturating_add(Weight::from_parts(0, 5313)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Treasury Spends (r:1 w:1) + /// Proof: Treasury Spends (max_values: None, max_size: Some(1848), added: 4323, mode: MaxEncodedLen) + fn void_spend() -> Weight { + // Proof Size summary in bytes: + // Measured: `172` + // Estimated: `5313` + // Minimum execution time: 147_000_000 picoseconds. + Weight::from_parts(160_000_000, 0) + .saturating_add(Weight::from_parts(0, 5313)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_utility.rs b/tracing/2700/runtime/common/src/weights/pallet_utility.rs new file mode 100644 index 00000000..e50da7a9 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_utility.rs @@ -0,0 +1,109 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_utility` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_utility +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_utility`. +pub struct WeightInfo(PhantomData); +impl pallet_utility::WeightInfo for WeightInfo { + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[0, 1000]`. + fn batch(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 3_367_000 picoseconds. + Weight::from_parts(3_496_000, 0) + .saturating_add(Weight::from_parts(0, 1527)) + // Standard Error: 1_117 + .saturating_add(Weight::from_parts(2_472_089, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + fn as_derivative() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 4_651_000 picoseconds. + Weight::from_parts(4_795_000, 0) + .saturating_add(Weight::from_parts(0, 1527)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[0, 1000]`. + fn batch_all(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 3_399_000 picoseconds. + Weight::from_parts(1_656_270, 0) + .saturating_add(Weight::from_parts(0, 1527)) + // Standard Error: 1_828 + .saturating_add(Weight::from_parts(2_506_503, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(1)) + } + fn dispatch_as() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_523_000 picoseconds. + Weight::from_parts(4_673_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[0, 1000]`. + fn force_batch(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 3_510_000 picoseconds. + Weight::from_parts(1_601_892, 0) + .saturating_add(Weight::from_parts(0, 1527)) + // Standard Error: 1_657 + .saturating_add(Weight::from_parts(2_465_423, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(1)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_whitelist.rs b/tracing/2700/runtime/common/src/weights/pallet_whitelist.rs new file mode 100644 index 00000000..a89a63b6 --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_whitelist.rs @@ -0,0 +1,113 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_whitelist` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_whitelist +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_whitelist`. +pub struct WeightInfo(PhantomData); +impl pallet_whitelist::WeightInfo for WeightInfo { + /// Storage: Whitelist WhitelistedCall (r:1 w:1) + /// Proof: Whitelist WhitelistedCall (max_values: None, max_size: Some(40), added: 2515, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + fn whitelist_call() -> Weight { + // Proof Size summary in bytes: + // Measured: `83` + // Estimated: `3544` + // Minimum execution time: 11_554_000 picoseconds. + Weight::from_parts(11_937_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Whitelist WhitelistedCall (r:1 w:1) + /// Proof: Whitelist WhitelistedCall (max_values: None, max_size: Some(40), added: 2515, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + fn remove_whitelisted_call() -> Weight { + // Proof Size summary in bytes: + // Measured: `212` + // Estimated: `3544` + // Minimum execution time: 12_621_000 picoseconds. + Weight::from_parts(12_927_000, 0) + .saturating_add(Weight::from_parts(0, 3544)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Whitelist WhitelistedCall (r:1 w:1) + /// Proof: Whitelist WhitelistedCall (max_values: None, max_size: Some(40), added: 2515, mode: MaxEncodedLen) + /// Storage: Preimage PreimageFor (r:1 w:1) + /// Proof: Preimage PreimageFor (max_values: None, max_size: Some(4194344), added: 4196819, mode: Measured) + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// The range of component `n` is `[1, 4194294]`. + fn dispatch_whitelisted_call(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `288 + n * (1 ±0)` + // Estimated: `3752 + n * (1 ±0)` + // Minimum execution time: 19_476_000 picoseconds. + Weight::from_parts(19_650_000, 0) + .saturating_add(Weight::from_parts(0, 3752)) + // Standard Error: 7 + .saturating_add(Weight::from_parts(1_036, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(n.into())) + } + /// Storage: Whitelist WhitelistedCall (r:1 w:1) + /// Proof: Whitelist WhitelistedCall (max_values: None, max_size: Some(40), added: 2515, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// The range of component `n` is `[1, 10000]`. + fn dispatch_whitelisted_call_with_preimage(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `212` + // Estimated: `3544` + // Minimum execution time: 14_497_000 picoseconds. + Weight::from_parts(14_754_700, 0) + .saturating_add(Weight::from_parts(0, 3544)) + // Standard Error: 2 + .saturating_add(Weight::from_parts(948, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_xcm.rs b/tracing/2700/runtime/common/src/weights/pallet_xcm.rs new file mode 100644 index 00000000..9c9bd5aa --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_xcm.rs @@ -0,0 +1,282 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_xcm` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_xcm +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_xcm`. +pub struct WeightInfo(PhantomData); +impl pallet_xcm::WeightInfo for WeightInfo { + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn send() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 15_397_000 picoseconds. + Weight::from_parts(15_791_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn teleport_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 18_446_744_073_709_551_000 picoseconds. + Weight::from_parts(18_446_744_073_709_551_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + fn reserve_transfer_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `3541` + // Minimum execution time: 12_181_000 picoseconds. + Weight::from_parts(12_556_000, 0) + .saturating_add(Weight::from_parts(0, 3541)) + .saturating_add(T::DbWeight::get().reads(1)) + } + fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_364_000 picoseconds. + Weight::from_parts(4_484_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + fn force_xcm_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_538_000 picoseconds. + Weight::from_parts(4_722_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + fn force_default_xcm_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_551_000 picoseconds. + Weight::from_parts(1_671_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) + fn force_subscribe_version_notify() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `3610` + // Minimum execution time: 18_013_000 picoseconds. + Weight::from_parts(18_604_000, 0) + .saturating_add(Weight::from_parts(0, 3610)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) + fn force_unsubscribe_version_notify() -> Weight { + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 20_502_000 picoseconds. + Weight::from_parts(20_948_000, 0) + .saturating_add(Weight::from_parts(0, 3793)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: PolkadotXcm XcmExecutionSuspended (r:0 w:1) + /// Proof Skipped: PolkadotXcm XcmExecutionSuspended (max_values: Some(1), max_size: None, mode: Measured) + fn force_suspension() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_588_000 picoseconds. + Weight::from_parts(1_633_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + fn migrate_supported_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `167` + // Estimated: `11057` + // Minimum execution time: 13_876_000 picoseconds. + Weight::from_parts(14_183_000, 0) + .saturating_add(Weight::from_parts(0, 11057)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + fn migrate_version_notifiers() -> Weight { + // Proof Size summary in bytes: + // Measured: `171` + // Estimated: `11061` + // Minimum execution time: 13_695_000 picoseconds. + Weight::from_parts(14_351_000, 0) + .saturating_add(Weight::from_parts(0, 11061)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + fn already_notified_target() -> Weight { + // Proof Size summary in bytes: + // Measured: `178` + // Estimated: `13543` + // Minimum execution time: 15_535_000 picoseconds. + Weight::from_parts(15_823_000, 0) + .saturating_add(Weight::from_parts(0, 13543)) + .saturating_add(T::DbWeight::get().reads(5)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn notify_current_targets() -> Weight { + // Proof Size summary in bytes: + // Measured: `212` + // Estimated: `6152` + // Minimum execution time: 18_768_000 picoseconds. + Weight::from_parts(19_300_000, 0) + .saturating_add(Weight::from_parts(0, 6152)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + fn notify_target_migration_fail() -> Weight { + // Proof Size summary in bytes: + // Measured: `172` + // Estimated: `8587` + // Minimum execution time: 7_607_000 picoseconds. + Weight::from_parts(7_884_000, 0) + .saturating_add(Weight::from_parts(0, 8587)) + .saturating_add(T::DbWeight::get().reads(3)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + fn migrate_version_notify_targets() -> Weight { + // Proof Size summary in bytes: + // Measured: `178` + // Estimated: `11068` + // Minimum execution time: 13_923_000 picoseconds. + Weight::from_parts(14_349_000, 0) + .saturating_add(Weight::from_parts(0, 11068)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn migrate_and_notify_old_targets() -> Weight { + // Proof Size summary in bytes: + // Measured: `254` + // Estimated: `11144` + // Minimum execution time: 24_934_000 picoseconds. + Weight::from_parts(25_495_000, 0) + .saturating_add(Weight::from_parts(0, 11144)) + .saturating_add(T::DbWeight::get().reads(9)) + .saturating_add(T::DbWeight::get().writes(4)) + } +} diff --git a/tracing/2700/runtime/common/src/weights/pallet_xcm_transactor.rs b/tracing/2700/runtime/common/src/weights/pallet_xcm_transactor.rs new file mode 100644 index 00000000..3b1b29fc --- /dev/null +++ b/tracing/2700/runtime/common/src/weights/pallet_xcm_transactor.rs @@ -0,0 +1,196 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . +//! Autogenerated weights for `pallet_xcm_transactor` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-11-01, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `ip-10-0-0-176`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("moonbase-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/moonbeam +// benchmark +// pallet +// --chain=moonbase-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_xcm_transactor +// --extrinsic=* +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/common/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_xcm_transactor`. +pub struct WeightInfo(PhantomData); +impl pallet_xcm_transactor::WeightInfo for WeightInfo { + /// Storage: XcmTransactor IndexToAccount (r:1 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) + fn register() -> Weight { + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `3541` + // Minimum execution time: 6_377_000 picoseconds. + Weight::from_parts(6_644_000, 0) + .saturating_add(Weight::from_parts(0, 3541)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: XcmTransactor IndexToAccount (r:0 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) + fn deregister() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_881_000 picoseconds. + Weight::from_parts(4_077_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + fn set_transact_info() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_652_000 picoseconds. + Weight::from_parts(4_896_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + fn remove_transact_info() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_277_000 picoseconds. + Weight::from_parts(4_465_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:0 w:1) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + fn set_fee_per_second() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_106_000 picoseconds. + Weight::from_parts(4_461_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor IndexToAccount (r:1 w:0) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn transact_through_derivative() -> Weight { + // Proof Size summary in bytes: + // Measured: `451` + // Estimated: `3916` + // Minimum execution time: 20_809_000 picoseconds. + Weight::from_parts(21_288_000, 0) + .saturating_add(Weight::from_parts(0, 3916)) + .saturating_add(T::DbWeight::get().reads(6)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + fn transact_through_sovereign() -> Weight { + // Proof Size summary in bytes: + // Measured: `389` + // Estimated: `3854` + // Minimum execution time: 15_641_000 picoseconds. + Weight::from_parts(16_101_000, 0) + .saturating_add(Weight::from_parts(0, 3854)) + .saturating_add(T::DbWeight::get().reads(5)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn transact_through_signed() -> Weight { + // Proof Size summary in bytes: + // Measured: `433` + // Estimated: `3898` + // Minimum execution time: 28_236_000 picoseconds. + Weight::from_parts(28_728_000, 0) + .saturating_add(Weight::from_parts(0, 3898)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn hrmp_manage() -> Weight { + // Proof Size summary in bytes: + // Measured: `433` + // Estimated: `3898` + // Minimum execution time: 28_653_000 picoseconds. + Weight::from_parts(29_169_000, 0) + .saturating_add(Weight::from_parts(0, 3898)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/tracing/2700/runtime/moonbase/Cargo.toml b/tracing/2700/runtime/moonbase/Cargo.toml new file mode 100644 index 00000000..926184b3 --- /dev/null +++ b/tracing/2700/runtime/moonbase/Cargo.toml @@ -0,0 +1,369 @@ +[package] +name = "moonbase-runtime" +authors = { workspace = true } +build = "build.rs" +description = "Moonbase Runtime" +edition = "2021" +homepage = "https://moonbeam.network" +license = "GPL-3.0-only" +version = "0.8.4" + +[dependencies] +hex-literal = { workspace = true, optional = true } +log = { workspace = true } +num_enum = { workspace = true } +rlp = { workspace = true, optional = true } +serde = { workspace = true, features = [ "derive" ] } +sha3 = { workspace = true, optional = true } +smallvec = { workspace = true } +strum = { workspace = true } +strum_macros = { workspace = true } + +# Moonbeam +account = { workspace = true } +moonbeam-core-primitives = { workspace = true } +moonbeam-relay-encoder = { workspace = true } +moonbeam-runtime-common = { workspace = true } +precompile-utils = { workspace = true } +session-keys-primitives = { workspace = true } +xcm-primitives = { workspace = true } + +# Moonbeam pallets +moonbeam-xcm-benchmarks = { workspace = true } +pallet-asset-manager = { workspace = true } +pallet-author-mapping = { workspace = true } +pallet-crowdloan-rewards = { workspace = true } +pallet-erc20-xcm-bridge = { workspace = true } +pallet-evm-chain-id = { workspace = true } +pallet-ethereum-xcm = { workspace = true } +pallet-maintenance-mode = { workspace = true, features = [ "xcm-support" ] } +pallet-migrations = { workspace = true } +pallet-moonbeam-orbiters = { workspace = true } +pallet-parachain-staking = { workspace = true } +pallet-proxy-genesis-companion = { workspace = true } +pallet-randomness = { workspace = true } +pallet-xcm-transactor = { workspace = true } + +# Moonbeam precompiles +pallet-evm-precompile-author-mapping = { workspace = true } +pallet-evm-precompile-balances-erc20 = { workspace = true } +pallet-evm-precompile-batch = { workspace = true } +pallet-evm-precompile-call-permit = { workspace = true } +pallet-evm-precompile-collective = { workspace = true } +pallet-evm-precompile-conviction-voting = { workspace = true } +pallet-evm-precompile-crowdloan-rewards = { workspace = true } +pallet-evm-precompile-democracy = { workspace = true } +pallet-evm-precompile-gmp = { workspace = true } +pallet-evm-precompile-identity = { workspace = true } +pallet-evm-precompile-parachain-staking = { workspace = true } +pallet-evm-precompile-preimage = { workspace = true } +pallet-evm-precompile-proxy = { workspace = true } +pallet-evm-precompile-randomness = { workspace = true } +pallet-evm-precompile-referenda = { workspace = true } +pallet-evm-precompile-registry = { workspace = true } +pallet-evm-precompile-relay-encoder = { workspace = true } +pallet-evm-precompile-xcm-transactor = { workspace = true } +pallet-evm-precompile-xcm-utils = { workspace = true } +pallet-evm-precompile-xtokens = { workspace = true } +pallet-evm-precompileset-assets-erc20 = { workspace = true } + +# Moonbeam tracing +evm-tracing-events = { workspace = true, optional = true } +moonbeam-evm-tracer = { workspace = true, optional = true } +moonbeam-rpc-primitives-debug = { workspace = true } +moonbeam-rpc-primitives-txpool = { workspace = true } + +# Substrate +frame-executive = { workspace = true } +frame-support = { workspace = true } +frame-system = { workspace = true } +frame-system-rpc-runtime-api = { workspace = true } +pallet-assets = { workspace = true } +pallet-balances = { workspace = true, features = [ "insecure_zero_ed" ] } +pallet-collective = { workspace = true } +pallet-conviction-voting = { workspace = true } +pallet-democracy = { workspace = true } +pallet-identity = { workspace = true } +pallet-multisig = { workspace = true } +pallet-preimage = { workspace = true } +pallet-proxy = { workspace = true } +pallet-referenda = { workspace = true } +pallet-root-testing = { workspace = true } +pallet-scheduler = { workspace = true } +pallet-society = { workspace = true } +pallet-sudo = { workspace = true } +pallet-timestamp = { workspace = true } +pallet-transaction-payment = { workspace = true } +pallet-transaction-payment-rpc-runtime-api = { workspace = true } +pallet-treasury = { workspace = true } +pallet-utility = { workspace = true } +pallet-whitelist = { workspace = true } +parity-scale-codec = { workspace = true, features = [ + "derive", + "max-encoded-len", + "chain-error", +] } +scale-info = { workspace = true, features = [ "derive" ] } +sp-api = { workspace = true } +sp-block-builder = { workspace = true } +sp-core = { workspace = true } +sp-debug-derive = { workspace = true } +sp-inherents = { workspace = true } +sp-io = { workspace = true, features = [ "improved_panic_error_reporting" ] } +sp-offchain = { workspace = true } +sp-runtime = { workspace = true } +sp-session = { workspace = true } +sp-std = { workspace = true } +sp-transaction-pool = { workspace = true } +sp-version = { workspace = true } +sp-weights = { workspace = true } + +# Frontier +fp-evm = { workspace = true } +fp-rpc = { workspace = true } +fp-self-contained = { workspace = true, features = [ "serde" ] } +pallet-base-fee = { workspace = true } +pallet-ethereum = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm-precompile-blake2 = { workspace = true } +pallet-evm-precompile-bn128 = { workspace = true } +pallet-evm-precompile-dispatch = { workspace = true } +pallet-evm-precompile-modexp = { workspace = true } +pallet-evm-precompile-sha3fips = { workspace = true } +pallet-evm-precompile-simple = { workspace = true } + +# Polkadot / XCM +orml-traits = { workspace = true } +orml-xcm-support = { workspace = true } +orml-xtokens = { workspace = true } +pallet-xcm = { workspace = true } +pallet-xcm-benchmarks = { workspace = true, optional = true } +polkadot-core-primitives = { workspace = true } +polkadot-parachain = { workspace = true } +polkadot-runtime-common = { workspace = true } +xcm = { workspace = true } +xcm-builder = { workspace = true } +xcm-executor = { workspace = true } + +# Cumulus +cumulus-pallet-dmp-queue = { workspace = true } +cumulus-pallet-parachain-system = { workspace = true } +cumulus-pallet-xcm = { workspace = true } +cumulus-pallet-xcmp-queue = { workspace = true } +cumulus-primitives-core = { workspace = true } +cumulus-primitives-timestamp = { workspace = true } +cumulus-primitives-utility = { workspace = true } +parachain-info = { workspace = true } + +# Moonkit +async-backing-primitives = { workspace = true } +moonkit-xcm-primitives = { workspace = true } +nimbus-primitives = { workspace = true } +pallet-async-backing = { workspace = true } +pallet-author-inherent = { workspace = true } +pallet-author-slot-filter = { workspace = true } + +# Benchmarking +frame-benchmarking = { workspace = true, optional = true } +frame-system-benchmarking = { workspace = true, optional = true } +frame-try-runtime = { workspace = true, optional = true } + +[build-dependencies] +substrate-wasm-builder = { workspace = true } + +[features] +default = [ "std" , "evm-tracing"] +std = [ + "account/std", + "async-backing-primitives/std", + "cumulus-pallet-dmp-queue/std", + "cumulus-pallet-parachain-system/std", + "cumulus-pallet-xcm/std", + "cumulus-pallet-xcmp-queue/std", + "cumulus-primitives-core/std", + "cumulus-primitives-timestamp/std", + "evm-tracing-events/std", + "fp-evm/std", + "fp-rpc/std", + "fp-self-contained/std", + "frame-benchmarking/std", + "frame-executive/std", + "frame-support/std", + "frame-system-rpc-runtime-api/std", + "frame-system/std", + "moonbeam-core-primitives/std", + "moonbeam-evm-tracer/std", + "moonbeam-relay-encoder/std", + "moonbeam-rpc-primitives-debug/std", + "moonbeam-rpc-primitives-txpool/std", + "moonbeam-runtime-common/std", + "moonkit-xcm-primitives/std", + "nimbus-primitives/std", + "orml-xtokens/std", + "pallet-asset-manager/std", + "pallet-assets/std", + "pallet-async-backing/std", + "pallet-author-inherent/std", + "pallet-author-mapping/std", + "pallet-author-slot-filter/std", + "pallet-balances/std", + "pallet-base-fee/std", + "pallet-collective/std", + "pallet-conviction-voting/std", + "pallet-crowdloan-rewards/std", + "pallet-democracy/std", + "pallet-erc20-xcm-bridge/std", + "pallet-evm-chain-id/std", + "pallet-ethereum-xcm/std", + "pallet-ethereum/std", + "pallet-evm-precompile-author-mapping/std", + "pallet-evm-precompile-balances-erc20/std", + "pallet-evm-precompile-batch/std", + "pallet-evm-precompile-call-permit/std", + "pallet-evm-precompile-collective/std", + "pallet-evm-precompile-conviction-voting/std", + "pallet-evm-precompile-democracy/std", + "pallet-evm-precompile-parachain-staking/std", + "pallet-evm-precompile-preimage/std", + "pallet-evm-precompile-randomness/std", + "pallet-evm-precompile-referenda/std", + "pallet-evm-precompile-registry/std", + "pallet-evm-precompile-xcm-transactor/std", + "pallet-evm-precompile-xcm-utils/std", + "pallet-evm-precompile-xtokens/std", + "pallet-evm-precompileset-assets-erc20/std", + "pallet-evm/std", + "pallet-identity/std", + "pallet-maintenance-mode/std", + "pallet-migrations/std", + "pallet-moonbeam-orbiters/std", + "pallet-multisig/std", + "pallet-parachain-staking/std", + "pallet-preimage/std", + "pallet-proxy-genesis-companion/std", + "pallet-proxy/std", + "pallet-randomness/std", + "pallet-referenda/std", + "pallet-root-testing/std", + "pallet-scheduler/std", + "pallet-society/std", + "pallet-sudo/std", + "pallet-timestamp/std", + "pallet-transaction-payment-rpc-runtime-api/std", + "pallet-transaction-payment/std", + "pallet-treasury/std", + "pallet-utility/std", + "pallet-whitelist/std", + "pallet-xcm-transactor/std", + "pallet-xcm/std", + "parachain-info/std", + "parity-scale-codec/std", + "precompile-utils/std", + "scale-info/std", + "session-keys-primitives/std", + "sp-api/std", + "sp-block-builder/std", + "sp-core/std", + "sp-inherents/std", + "sp-io/std", + "sp-offchain/std", + "sp-runtime/std", + "sp-session/std", + "sp-std/std", + "sp-transaction-pool/std", + "sp-version/std", + "strum/std", + "xcm-builder/std", + "xcm-executor/std", + "xcm-primitives/std", + "xcm/std", +] + +# Must be enabled for tracing runtimes only +evm-tracing = [ "evm-tracing-events", "moonbeam-evm-tracer", "rlp", "sha3" ] + +# Allow to print logs details (no wasm:stripped) +force-debug = [ "sp-debug-derive/force-debug" ] + +# Will be enabled by the `wasm-builder` when building the runtime for WASM. +runtime-wasm = [ ] + +# A feature that should be enabled when the runtime should be build for on-chain +# deployment. This will disable stuff that shouldn't be part of the on-chain wasm +# to make it smaller like logging for example. +on-chain-release-build = [ "sp-api/disable-logging" ] + +runtime-benchmarks = [ + "cumulus-pallet-parachain-system/runtime-benchmarks", + "frame-benchmarking/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "frame-system-benchmarking/runtime-benchmarks", + "frame-system/runtime-benchmarks", + "hex-literal", + "moonbeam-relay-encoder/runtime-benchmarks", + "moonbeam-runtime-common/runtime-benchmarks", + "moonbeam-xcm-benchmarks/runtime-benchmarks", + "pallet-asset-manager/runtime-benchmarks", + "pallet-assets/runtime-benchmarks", + "pallet-author-inherent/runtime-benchmarks", + "pallet-author-mapping/runtime-benchmarks", + "pallet-author-slot-filter/runtime-benchmarks", + "pallet-balances/runtime-benchmarks", + "pallet-collective/runtime-benchmarks", + "pallet-conviction-voting/runtime-benchmarks", + "pallet-crowdloan-rewards/runtime-benchmarks", + "pallet-democracy/runtime-benchmarks", + "pallet-ethereum-xcm/runtime-benchmarks", + "pallet-ethereum/runtime-benchmarks", + "pallet-evm/runtime-benchmarks", + "pallet-identity/runtime-benchmarks", + "pallet-migrations/runtime-benchmarks", + "pallet-moonbeam-orbiters/runtime-benchmarks", + "pallet-multisig/runtime-benchmarks", + "pallet-parachain-staking/runtime-benchmarks", + "pallet-preimage/runtime-benchmarks", + "pallet-proxy/runtime-benchmarks", + "pallet-randomness/runtime-benchmarks", + "pallet-referenda/runtime-benchmarks", + "pallet-scheduler/runtime-benchmarks", + "pallet-society/runtime-benchmarks", + "pallet-sudo/runtime-benchmarks", + "pallet-timestamp/runtime-benchmarks", + "pallet-treasury/runtime-benchmarks", + "pallet-utility/runtime-benchmarks", + "pallet-whitelist/runtime-benchmarks", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor/runtime-benchmarks", + "pallet-xcm/runtime-benchmarks", + "session-keys-primitives/runtime-benchmarks", + "sp-runtime/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", +] + +try-runtime = [ + "fp-self-contained/try-runtime", + "frame-executive/try-runtime", + "frame-system/try-runtime", + "frame-try-runtime", + "moonbeam-runtime-common/try-runtime", + "pallet-asset-manager/try-runtime", + "pallet-author-mapping/try-runtime", + "pallet-author-slot-filter/try-runtime", + "pallet-balances/try-runtime", + "pallet-collective/try-runtime", + "pallet-conviction-voting/try-runtime", + "pallet-democracy/try-runtime", + "pallet-maintenance-mode/try-runtime", + "pallet-maintenance-mode/try-runtime", + "pallet-migrations/try-runtime", + "pallet-parachain-staking/try-runtime", + "pallet-preimage/try-runtime", + "pallet-referenda/try-runtime", + "pallet-root-testing/try-runtime", + "pallet-scheduler/try-runtime", + "pallet-society/try-runtime", + "pallet-timestamp/try-runtime", + "pallet-xcm-transactor/try-runtime", +] + +moonbase-runtime-benchmarks = [ ] diff --git a/tracing/2700/runtime/moonbase/build.rs b/tracing/2700/runtime/moonbase/build.rs new file mode 100644 index 00000000..3934b9c5 --- /dev/null +++ b/tracing/2700/runtime/moonbase/build.rs @@ -0,0 +1,25 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use substrate_wasm_builder::WasmBuilder; + +fn main() { + WasmBuilder::new() + .with_current_project() + .export_heap_base() + .import_memory() + .build() +} diff --git a/tracing/2700/runtime/moonbase/src/asset_config.rs b/tracing/2700/runtime/moonbase/src/asset_config.rs new file mode 100644 index 00000000..5e060c5b --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/asset_config.rs @@ -0,0 +1,343 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Asset configuration for Moonbase. +//! + +use super::{ + currency, governance, xcm_config, AccountId, AssetId, AssetManager, Assets, Balance, Balances, + CouncilInstance, LocalAssets, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::traits::Hash as THash; + +use frame_support::{ + dispatch::GetDispatchInfo, + parameter_types, + traits::{AsEnsureOriginWithArg, ConstU128, ConstU32, EitherOfDiverse}, + weights::Weight, +}; + +use frame_system::{EnsureNever, EnsureRoot}; +use parity_scale_codec::{Compact, Decode, Encode}; +use scale_info::TypeInfo; +use sp_core::{H160, H256}; + +use sp_std::{ + convert::{From, Into}, + prelude::*, +}; + +// Number of items that can be destroyed with our configured max extrinsic proof size. +// x = (a - b) / c where: +// a: maxExtrinsic proof size +// b: base proof size for destroy_accounts in pallet_assets weights +// c: proof size for each item +// 656.87 = (3_407_872 - 8232) / 5180 +const REMOVE_ITEMS_LIMIT: u32 = 656; + +// Not to disrupt the previous asset instance, we assign () to Foreign +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// For foreign assets, these parameters dont matter much +// as this will only be called by root with the forced arguments +// No deposit is substracted with those methods +// For local assets, they do matter. We use similar parameters +// to those in statemine (except for approval) +parameter_types! { + pub const AssetDeposit: Balance = 100 * currency::UNIT * currency::SUPPLY_FACTOR; + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = currency::deposit(1,68); + pub const MetadataDepositPerByte: Balance = currency::deposit(0, 1); +} + +/// We allow root and Chain council to execute privileged asset operations. +pub type AssetsForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +// Foreign assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = AssetsForceOrigin; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// Local assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureNever; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::{pallet_prelude::DispatchResult, transactional}; + +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + #[transactional] + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetRegistrarMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset.into(), + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(ASSET_PRECOMPILE_ADDRESS_PREFIX, asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + + // Lastly, the metadata + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset.into(), + metadata.name, + metadata.symbol, + metadata.decimals, + metadata.is_frozen, + ) + } + + #[transactional] + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + // We create with root, because we need to decide whether we want to create the asset + // as sufficient. Take into account this does not hold any reserved amount + // in pallet-assets + LocalAssets::force_create( + RuntimeOrigin::root(), + asset.into(), + owner, + is_sufficient, + min_balance, + )?; + + // No metadata needs to be set, as this can be set through regular calls + + // TODO: should we put the revert code? + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + ); + Ok(()) + } + + #[transactional] + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // First destroy the asset + Assets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + #[transactional] + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // First destroy the asset + LocalAssets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + // For us both of them (Foreign and Local) have the same annotated weight for a given + // witness + // We need to take the dispatch info from the destroy call, which is already annotated in + // the assets pallet + // Additionally, we need to add a DB write for removing the precompile revert code in the + // EVM + + // This is the dispatch info of destroy + let call_weight = RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { + id: asset.into(), + }, + ) + .get_dispatch_info() + .weight; + + // This is the db write + call_weight.saturating_add(::DbWeight::get().writes(1)) + } +} + +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a local asset counter to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetRegistrarMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, + pub is_frozen: bool, +} + +pub type ForeignAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +pub type LocalAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetRegistrarMetadata; + type ForeignAssetType = xcm_config::AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = ForeignAssetModifierOrigin; + type LocalAssetModifierOrigin = LocalAssetModifierOrigin; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = moonbeam_weights::pallet_asset_manager::WeightInfo; +} + +// Instruct how to go from an H160 to an AssetID +// We just take the lowest 128 bits +impl AccountIdAssetIdConversion for Runtime { + /// The way to convert an account to assetId is by ensuring that the prefix is 0XFFFFFFFF + /// and by taking the lowest 128 bits as the assetId + fn account_to_asset_id(account: AccountId) -> Option<(Vec, AssetId)> { + let h160_account: H160 = account.into(); + let mut data = [0u8; 16]; + let (prefix_part, id_part) = h160_account.as_fixed_bytes().split_at(4); + if prefix_part == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX + || prefix_part == LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX + { + data.copy_from_slice(id_part); + let asset_id: AssetId = u128::from_be_bytes(data).into(); + Some((prefix_part.to_vec(), asset_id)) + } else { + None + } + } + + // The opposite conversion + fn asset_id_to_account(prefix: &[u8], asset_id: AssetId) -> AccountId { + let mut data = [0u8; 20]; + data[0..4].copy_from_slice(prefix); + data[4..20].copy_from_slice(&asset_id.to_be_bytes()); + AccountId::from(data) + } +} diff --git a/tracing/2700/runtime/moonbase/src/governance/councils.rs b/tracing/2700/runtime/moonbase/src/governance/councils.rs new file mode 100644 index 00000000..59a74c6f --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/councils.rs @@ -0,0 +1,98 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Councils for Gov1 and Gov2 + +use super::*; +use moonbeam_runtime_common::weights as moonbeam_weights; + +pub type CouncilInstance = pallet_collective::Instance1; +pub type TechCommitteeInstance = pallet_collective::Instance2; +pub type TreasuryCouncilInstance = pallet_collective::Instance3; +pub type OpenTechCommitteeInstance = pallet_collective::Instance4; + +parameter_types! { + // TODO: Check value of this parameter + pub MaxProposalWeight: Weight = Perbill::from_percent(50) * BlockWeights::get().max_block; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the council at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of council members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for treasury council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the treasury council at once. + type MaxProposals = ConstU32<20>; + /// The maximum number of treasury council members. + type MaxMembers = ConstU32<9>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 14 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} diff --git a/tracing/2700/runtime/moonbase/src/governance/democracy.rs b/tracing/2700/runtime/moonbase/src/governance/democracy.rs new file mode 100644 index 00000000..ff8d6c33 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/democracy.rs @@ -0,0 +1,76 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Democracy config for Gov1 + +use super::councils::*; +use crate::*; + +// The purpose of this offset is to ensure that a democratic proposal will not apply in the same +// block as a round change. +const ENACTMENT_OFFSET: u32 = 300; + +impl pallet_democracy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type EnactmentPeriod = ConstU32<{ 1 * DAYS + ENACTMENT_OFFSET }>; + type LaunchPeriod = ConstU32<{ 1 * DAYS }>; + type VotingPeriod = ConstU32<{ 5 * DAYS }>; + type VoteLockingPeriod = ConstU32<{ 1 * DAYS }>; + type FastTrackVotingPeriod = ConstU32<{ 4 * HOURS }>; + type MinimumDeposit = ConstU128<{ 4 * currency::UNIT * currency::SUPPLY_FACTOR }>; + /// To decide what their next motion is. + type ExternalOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight majority-carries vote. + type ExternalMajorityOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight default-carries (NTB) vote. + type ExternalDefaultOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To allow a shorter voting/enactment period for external proposals. + type FastTrackOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To instant fast track. + type InstantOrigin = + pallet_collective::EnsureProportionAtLeast; + // To cancel a proposal which has been passed. + type CancellationOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + // To cancel a proposal before it has been passed. + type CancelProposalOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + type BlacklistOrigin = EnsureRoot; + // Any single technical committee member may veto a coming council proposal, however they can + // only do it once and it lasts only for the cooloff period. + type VetoOrigin = pallet_collective::EnsureMember; + type CooloffPeriod = ConstU32<{ 7 * DAYS }>; + type Slash = (); + type InstantAllowed = ConstBool; + type Scheduler = Scheduler; + type MaxVotes = ConstU32<100>; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_democracy::WeightInfo; + type MaxProposals = ConstU32<100>; + type Preimages = Preimage; + type MaxDeposits = ConstU32<100>; + type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; +} diff --git a/tracing/2700/runtime/moonbase/src/governance/mod.rs b/tracing/2700/runtime/moonbase/src/governance/mod.rs new file mode 100644 index 00000000..0367cdf0 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/mod.rs @@ -0,0 +1,30 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Governance configurations + +pub mod councils; +mod democracy; +pub mod referenda; + +use super::*; + +mod origins; +pub use origins::{ + custom_origins, GeneralAdmin, ReferendumCanceller, ReferendumKiller, WhitelistedCaller, +}; +mod tracks; +pub use tracks::TracksInfo; diff --git a/tracing/2700/runtime/moonbase/src/governance/origins.rs b/tracing/2700/runtime/moonbase/src/governance/origins.rs new file mode 100644 index 00000000..20d0829f --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/origins.rs @@ -0,0 +1,80 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +//! Custom origins for governance interventions. +pub use custom_origins::*; + +#[frame_support::pallet] +pub mod custom_origins { + use frame_support::pallet_prelude::*; + use strum_macros::EnumString; + + #[pallet::config] + pub trait Config: frame_system::Config {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[derive( + PartialEq, Eq, Clone, MaxEncodedLen, Encode, Decode, TypeInfo, RuntimeDebug, EnumString, + )] + #[strum(serialize_all = "snake_case")] + #[pallet::origin] + pub enum Origin { + /// Origin able to dispatch a whitelisted call. + WhitelistedCaller, + /// General admin + GeneralAdmin, + /// Origin able to cancel referenda. + ReferendumCanceller, + /// Origin able to kill referenda. + ReferendumKiller, + } + + macro_rules! decl_unit_ensures { + ( $name:ident: $success_type:ty = $success:expr ) => { + pub struct $name; + impl> + From> + EnsureOrigin for $name + { + type Success = $success_type; + fn try_origin(o: O) -> Result { + o.into().and_then(|o| match o { + Origin::$name => Ok($success), + r => Err(O::from(r)), + }) + } + #[cfg(feature = "runtime-benchmarks")] + fn try_successful_origin() -> Result { + Ok(O::from(Origin::$name)) + } + } + }; + ( $name:ident ) => { decl_unit_ensures! { $name : () = () } }; + ( $name:ident: $success_type:ty = $success:expr, $( $rest:tt )* ) => { + decl_unit_ensures! { $name: $success_type = $success } + decl_unit_ensures! { $( $rest )* } + }; + ( $name:ident, $( $rest:tt )* ) => { + decl_unit_ensures! { $name } + decl_unit_ensures! { $( $rest )* } + }; + () => {} + } + decl_unit_ensures!( + ReferendumCanceller, + ReferendumKiller, + WhitelistedCaller, + GeneralAdmin + ); +} diff --git a/tracing/2700/runtime/moonbase/src/governance/referenda.rs b/tracing/2700/runtime/moonbase/src/governance/referenda.rs new file mode 100644 index 00000000..ced47563 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/referenda.rs @@ -0,0 +1,98 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! # Gov2 config +//! Includes runtime configs for these substrate pallets: +//! 1. pallet-conviction-voting +//! 2. pallet-whitelist +//! 3. pallet-referenda + +use super::*; +use crate::currency::*; +use frame_support::traits::{EitherOf, MapSuccess}; +use frame_system::EnsureRootWithSuccess; +use moonbeam_runtime_common::weights as moonbeam_weights; +use sp_runtime::traits::Replace; + +parameter_types! { + pub const VoteLockingPeriod: BlockNumber = 1 * DAYS; +} + +impl pallet_conviction_voting::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_conviction_voting::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type Polls = Referenda; + type MaxTurnout = frame_support::traits::TotalIssuanceOf; + // Maximum number of concurrent votes an account may have + type MaxVotes = ConstU32<20>; + // Minimum period of vote locking + type VoteLockingPeriod = VoteLockingPeriod; +} + +parameter_types! { + pub const AlarmInterval: BlockNumber = 1; + pub const SubmissionDeposit: Balance = 10 * UNIT * SUPPLY_FACTOR; + pub const UndecidingTimeout: BlockNumber = 21 * DAYS; +} + +pub type GeneralAdminOrRoot = EitherOf, origins::GeneralAdmin>; + +impl custom_origins::Config for Runtime {} + +// The purpose of this pallet is to queue calls to be dispatched as by root later => the Dispatch +// origin corresponds to the Gov2 Whitelist track. +impl pallet_whitelist::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_whitelist::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WhitelistOrigin = EitherOf< + EnsureRootWithSuccess>, + MapSuccess< + pallet_collective::EnsureProportionAtLeast< + Self::AccountId, + OpenTechCommitteeInstance, + 5, + 9, + >, + Replace>, + >, + >; + type DispatchWhitelistedOrigin = EitherOf, WhitelistedCaller>; + type Preimages = Preimage; +} + +pallet_referenda::impl_tracksinfo_get!(TracksInfo, Balance, BlockNumber); + +impl pallet_referenda::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_referenda::WeightInfo; + type RuntimeCall = RuntimeCall; + type RuntimeEvent = RuntimeEvent; + type Scheduler = Scheduler; + type Currency = Balances; + type SubmitOrigin = frame_system::EnsureSigned; + type CancelOrigin = EitherOf, ReferendumCanceller>; + type KillOrigin = EitherOf, ReferendumKiller>; + type Slash = Treasury; + type Votes = pallet_conviction_voting::VotesOf; + type Tally = pallet_conviction_voting::TallyOf; + type SubmissionDeposit = SubmissionDeposit; + type MaxQueued = ConstU32<100>; + type UndecidingTimeout = UndecidingTimeout; + type AlarmInterval = AlarmInterval; + type Tracks = TracksInfo; + type Preimages = Preimage; +} diff --git a/tracing/2700/runtime/moonbase/src/governance/tracks.rs b/tracing/2700/runtime/moonbase/src/governance/tracks.rs new file mode 100644 index 00000000..1b0bd312 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/governance/tracks.rs @@ -0,0 +1,179 @@ +// Copyright 2022 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Track configurations for governance. + +use super::*; +use crate::currency::{KILOUNIT, SUPPLY_FACTOR, UNIT}; +use sp_std::str::FromStr; + +const fn percent(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 100) +} +const fn permill(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 1000) +} + +use pallet_referenda::Curve; +const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 5] = [ + ( + 0, + pallet_referenda::TrackInfo { + // Name of this track. + name: "root", + // A limit for the number of referenda on this track that can be being decided at once. + // For Root origin this should generally be just one. + max_deciding: 5, + // Amount that must be placed on deposit before a decision can be made. + decision_deposit: 100 * KILOUNIT * SUPPLY_FACTOR, + // Amount of time this must be submitted for before a decision can be made. + prepare_period: 1 * DAYS, + // Amount of time that a decision may take to be approved prior to cancellation. + decision_period: 14 * DAYS, + // Amount of time that the approval criteria must hold before it can be approved. + confirm_period: 1 * DAYS, + // Minimum amount of time that an approved proposal must be in the dispatch queue. + min_enactment_period: 1 * DAYS, + // Minimum aye votes as percentage of overall conviction-weighted votes needed for + // approval as a function of time into decision period. + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + // Minimum pre-conviction aye-votes ("support") as percentage of overall population that + // is needed for approval as a function of time into decision period. + min_support: Curve::make_linear(14, 14, permill(5), percent(25)), + }, + ), + ( + 1, + pallet_referenda::TrackInfo { + name: "whitelisted_caller", + max_deciding: 100, + decision_deposit: 10 * KILOUNIT * SUPPLY_FACTOR, + prepare_period: 10 * MINUTES, + decision_period: 14 * DAYS, + confirm_period: 10 * MINUTES, + min_enactment_period: 30 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14 * 24, percent(1), percent(0), percent(2)), + }, + ), + ( + 2, + pallet_referenda::TrackInfo { + name: "general_admin", + max_deciding: 10, + decision_deposit: 500 * UNIT * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 1 * DAYS, + min_enactment_period: 1 * DAYS, + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + min_support: Curve::make_reciprocal(7, 14, percent(10), percent(0), percent(50)), + }, + ), + ( + 3, + pallet_referenda::TrackInfo { + name: "referendum_canceller", + max_deciding: 20, + decision_deposit: 10 * KILOUNIT * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(50)), + }, + ), + ( + 4, + pallet_referenda::TrackInfo { + name: "referendum_killer", + max_deciding: 100, + decision_deposit: 20 * KILOUNIT * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(10)), + }, + ), +]; + +pub struct TracksInfo; +impl pallet_referenda::TracksInfo for TracksInfo { + type Id = u16; + type RuntimeOrigin = ::PalletsOrigin; + fn tracks() -> &'static [(Self::Id, pallet_referenda::TrackInfo)] { + &TRACKS_DATA[..] + } + fn track_for(id: &Self::RuntimeOrigin) -> Result { + if let Ok(system_origin) = frame_system::RawOrigin::try_from(id.clone()) { + match system_origin { + frame_system::RawOrigin::Root => { + if let Some((track_id, _)) = Self::tracks() + .into_iter() + .find(|(_, track)| track.name == "root") + { + Ok(*track_id) + } else { + Err(()) + } + } + _ => Err(()), + } + } else if let Ok(custom_origin) = custom_origins::Origin::try_from(id.clone()) { + if let Some((track_id, _)) = Self::tracks().into_iter().find(|(_, track)| { + if let Ok(track_custom_origin) = custom_origins::Origin::from_str(track.name) { + track_custom_origin == custom_origin + } else { + false + } + }) { + Ok(*track_id) + } else { + Err(()) + } + } else { + Err(()) + } + } +} + +#[test] +/// To ensure voters are always locked into their vote +fn vote_locking_always_longer_than_enactment_period() { + for (_, track) in TRACKS_DATA { + assert!( + ::VoteLockingPeriod::get() + >= track.min_enactment_period, + "Track {} has enactment period {} < vote locking period {}", + track.name, + track.min_enactment_period, + ::VoteLockingPeriod::get(), + ); + } +} + +#[test] +fn all_tracks_have_origins() { + for (_, track) in TRACKS_DATA { + // check name.into() is successful either converts into "root" or custom origin + let track_is_root = track.name == "root"; + let track_has_custom_origin = custom_origins::Origin::from_str(track.name).is_ok(); + assert!(track_is_root || track_has_custom_origin); + } +} diff --git a/tracing/2700/runtime/moonbase/src/lib.rs b/tracing/2700/runtime/moonbase/src/lib.rs new file mode 100644 index 00000000..d8a33f41 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/lib.rs @@ -0,0 +1,1859 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! The Moonbase Runtime. +//! +//! Primary features of this runtime include: +//! * Ethereum compatibility +//! * Moonbase tokenomics + +#![cfg_attr(not(feature = "std"), no_std)] +// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. +#![recursion_limit = "256"] + +// Make the WASM binary available. +#[cfg(feature = "std")] +include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); + +pub mod asset_config; +pub mod governance; +pub mod timestamp; +pub mod xcm_config; + +mod precompiles; + +// Re-export required by get! macro. +#[cfg(feature = "std")] +pub use fp_evm::GenesisAccount; +pub use frame_support::traits::Get; +pub use moonbeam_core_primitives::{ + AccountId, AccountIndex, Address, AssetId, Balance, BlockNumber, DigestItem, Hash, Header, + Index, Signature, +}; +pub use pallet_author_slot_filter::EligibilityValue; +pub use pallet_parachain_staking::{weights::WeightInfo, InflationInfo, Range}; +pub use precompiles::{ + MoonbasePrecompiles, PrecompileName, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use account::AccountId20; +use cumulus_pallet_parachain_system::{ + RelayChainStateProof, RelayNumberMonotonicallyIncreases, RelaychainDataProvider, +}; +use cumulus_primitives_core::relay_chain; +use fp_rpc::TransactionStatus; +use frame_support::{ + construct_runtime, + dispatch::{DispatchClass, GetDispatchInfo, PostDispatchInfo}, + ensure, + pallet_prelude::DispatchResult, + parameter_types, + traits::{ + fungible::HoldConsideration, + tokens::{PayFromAccount, UnityAssetBalanceConversion}, + ConstBool, ConstU128, ConstU16, ConstU32, ConstU64, ConstU8, Contains, + Currency as CurrencyT, EitherOfDiverse, EqualPrivilegeOnly, FindAuthor, Imbalance, + InstanceFilter, LinearStoragePrice, OffchainWorker, OnFinalize, OnIdle, OnInitialize, + OnRuntimeUpgrade, OnUnbalanced, + }, + weights::{ + constants::{RocksDbWeight, WEIGHT_REF_TIME_PER_SECOND}, + ConstantMultiplier, Weight, WeightToFeeCoefficient, WeightToFeeCoefficients, + WeightToFeePolynomial, + }, + PalletId, +}; + +use frame_system::{EnsureRoot, EnsureSigned}; +use governance::councils::*; +use moonbeam_rpc_primitives_txpool::TxPoolResponse; +use moonbeam_runtime_common::weights as moonbeam_weights; +use nimbus_primitives::CanAuthor; +use pallet_balances::NegativeImbalance; +use pallet_ethereum::Call::transact; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; +use pallet_evm::{ + Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, + FeeCalculator, GasWeightMapping, IdentityAddressMapping, + OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, +}; +use pallet_transaction_payment::{CurrencyAdapter, Multiplier, TargetedFeeAdjustment}; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use scale_info::TypeInfo; +use sp_api::impl_runtime_apis; +use sp_core::{OpaqueMetadata, H160, H256, U256}; +#[cfg(feature = "try-runtime")] +use sp_runtime::TryRuntimeError; +use sp_runtime::{ + create_runtime_str, generic, impl_opaque_keys, + traits::{ + BlakeTwo256, Block as BlockT, DispatchInfoOf, Dispatchable, IdentityLookup, + PostDispatchInfoOf, UniqueSaturatedInto, Zero, + }, + transaction_validity::{ + InvalidTransaction, TransactionSource, TransactionValidity, TransactionValidityError, + }, + ApplyExtrinsicResult, DispatchErrorWithPostInfo, FixedPointNumber, Perbill, Permill, + Perquintill, +}; +use sp_std::{ + convert::{From, Into}, + prelude::*, +}; +#[cfg(feature = "std")] +use sp_version::NativeVersion; +use sp_version::RuntimeVersion; + +use smallvec::smallvec; +use sp_runtime::serde::{Deserialize, Serialize}; + +#[cfg(any(feature = "std", test))] +pub use sp_runtime::BuildStorage; + +pub type Precompiles = MoonbasePrecompiles; + +/// UNIT, the native token, uses 18 decimals of precision. +pub mod currency { + use super::Balance; + + // Provide a common factor between runtimes based on a supply of 10_000_000 tokens. + pub const SUPPLY_FACTOR: Balance = 1; + + pub const WEI: Balance = 1; + pub const KILOWEI: Balance = 1_000; + pub const MEGAWEI: Balance = 1_000_000; + pub const GIGAWEI: Balance = 1_000_000_000; + pub const MICROUNIT: Balance = 1_000_000_000_000; + pub const MILLIUNIT: Balance = 1_000_000_000_000_000; + pub const UNIT: Balance = 1_000_000_000_000_000_000; + pub const KILOUNIT: Balance = 1_000_000_000_000_000_000_000; + + pub const TRANSACTION_BYTE_FEE: Balance = 1 * GIGAWEI * SUPPLY_FACTOR; + pub const STORAGE_BYTE_FEE: Balance = 100 * MICROUNIT * SUPPLY_FACTOR; + pub const WEIGHT_FEE: Balance = 50 * KILOWEI * SUPPLY_FACTOR; + + pub const fn deposit(items: u32, bytes: u32) -> Balance { + items as Balance * 1 * UNIT * SUPPLY_FACTOR + (bytes as Balance) * STORAGE_BYTE_FEE + } +} + +/// Maximum weight per block +// TODO: multiply MAXIMUM_BLOCK_WEIGHT times 4 when async backing will be definitly enabled +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) + .saturating_div(2) + .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); + +// TODO: Set MILLISECS_PER_BLOCK to 6000 when async backing will be definitly enabled +pub const MILLISECS_PER_BLOCK: u64 = 12000; +pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); +pub const HOURS: BlockNumber = MINUTES * 60; +pub const DAYS: BlockNumber = HOURS * 24; +pub const WEEKS: BlockNumber = DAYS * 7; +/// Opaque types. These are used by the CLI to instantiate machinery that don't need to know +/// the specifics of the runtime. They can then be made to be agnostic over specific formats +/// of data like extrinsics, allowing for them to continue syncing the network through upgrades +/// to even the core data structures. +pub mod opaque { + use super::*; + + pub use sp_runtime::OpaqueExtrinsic as UncheckedExtrinsic; + pub type Block = generic::Block; + + impl_opaque_keys! { + pub struct SessionKeys { + pub nimbus: AuthorInherent, + pub vrf: session_keys_primitives::VrfSessionKey, + } + } +} + +/// This runtime version. +/// The spec_version is composed of 2x2 digits. The first 2 digits represent major changes +/// that can't be skipped, such as data migration upgrades. The last 2 digits represent minor +/// changes which can be skipped. +#[sp_version::runtime_version] +pub const VERSION: RuntimeVersion = RuntimeVersion { + spec_name: create_runtime_str!("moonbase"), + impl_name: create_runtime_str!("moonbase"), + authoring_version: 4, + spec_version: 2700, + impl_version: 0, + apis: RUNTIME_API_VERSIONS, + transaction_version: 2, + state_version: 0, +}; + +/// The version information used to identify this runtime when compiled natively. +#[cfg(feature = "std")] +pub fn native_version() -> NativeVersion { + NativeVersion { + runtime_version: VERSION, + can_author_with: Default::default(), + } +} + +const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); +pub const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturating_div(4); +// Here we assume Ethereum's base fee of 21000 gas and convert to weight, but we +// subtract roughly the cost of a balance transfer from it (about 1/3 the cost) +// and some cost to account for per-byte-fee. +// TODO: we should use benchmarking's overhead feature to measure this +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); + +pub struct RuntimeBlockWeights; +impl Get for RuntimeBlockWeights { + fn get() -> frame_system::limits::BlockWeights { + frame_system::limits::BlockWeights::builder() + .for_class(DispatchClass::Normal, |weights| { + weights.base_extrinsic = EXTRINSIC_BASE_WEIGHT; + weights.max_total = NORMAL_WEIGHT.into(); + }) + .for_class(DispatchClass::Operational, |weights| { + weights.max_total = MAXIMUM_BLOCK_WEIGHT.into(); + weights.reserved = (MAXIMUM_BLOCK_WEIGHT - NORMAL_WEIGHT).into(); + }) + .avg_block_initialization(Perbill::from_percent(10)) + .build() + .expect("Provided BlockWeight definitions are valid, qed") + } +} + +parameter_types! { + pub const Version: RuntimeVersion = VERSION; + /// TODO: this is left here so that `impl_runtime_apis_plus_common` will find the same type for + /// `BlockWeights` in all runtimes. It can probably be removed once the custom + /// `RuntimeBlockWeights` has been pushed to each runtime. + pub BlockWeights: frame_system::limits::BlockWeights = RuntimeBlockWeights::get(); + /// We allow for 5 MB blocks. + pub BlockLength: frame_system::limits::BlockLength = frame_system::limits::BlockLength + ::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); +} + +impl frame_system::Config for Runtime { + /// The identifier used to distinguish between accounts. + type AccountId = AccountId; + /// The aggregated dispatch type that is available for extrinsics. + type RuntimeCall = RuntimeCall; + /// The lookup mechanism to get account ID from whatever is passed in dispatchers. + type Lookup = IdentityLookup; + /// The index type for storing how many extrinsics an account has signed. + type Nonce = Index; + /// The index type for blocks. + type Block = Block; + /// The type for hashing blocks and tries. + type Hash = Hash; + /// The hashing algorithm used. + type Hashing = BlakeTwo256; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + /// The ubiquitous origin type. + type RuntimeOrigin = RuntimeOrigin; + /// Maximum number of block number to block hash mappings to keep (oldest pruned first). + type BlockHashCount = ConstU32<256>; + /// Maximum weight of each block. With a default weight system of 1byte == 1weight, 4mb is ok. + type BlockWeights = RuntimeBlockWeights; + /// Maximum size of all encoded transactions (in bytes) that are allowed in one block. + type BlockLength = BlockLength; + /// Runtime version. + type Version = Version; + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = RocksDbWeight; + type BaseCallFilter = MaintenanceMode; + type SystemWeightInfo = (); + /// This is used as an identifier of the chain. 42 is the generic substrate prefix. + type SS58Prefix = ConstU16<1287>; + type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_utility::WeightInfo; +} + +impl pallet_timestamp::Config for Runtime { + /// A timestamp: milliseconds since the unix epoch. + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = ConstU64<6000>; + type WeightInfo = moonbeam_weights::pallet_timestamp::WeightInfo; +} + +impl pallet_balances::Config for Runtime { + type MaxReserves = ConstU32<50>; + type ReserveIdentifier = [u8; 4]; + type MaxLocks = ConstU32<50>; + /// The type for recording an account's balance. + type Balance = Balance; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ConstU128<0>; + type AccountStore = System; + type FreezeIdentifier = (); + type MaxFreezes = ConstU32<0>; + type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; + type MaxHolds = ConstU32<1>; + type WeightInfo = moonbeam_weights::pallet_balances::WeightInfo; +} + +pub struct DealWithFees(sp_std::marker::PhantomData); +impl OnUnbalanced> for DealWithFees +where + R: pallet_balances::Config + pallet_treasury::Config, + pallet_treasury::Pallet: OnUnbalanced>, +{ + // this seems to be called for substrate-based transactions + fn on_unbalanceds(mut fees_then_tips: impl Iterator>) { + if let Some(fees) = fees_then_tips.next() { + // for fees, 80% are burned, 20% to the treasury + let (_, to_treasury) = fees.ration(80, 20); + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + + // handle tip if there is one + if let Some(tip) = fees_then_tips.next() { + // for now we use the same burn/treasury strategy used for regular fees + let (_, to_treasury) = tip.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } + } + } + + // this is called from pallet_evm for Ethereum-based transactions + // (technically, it calls on_unbalanced, which calls this when non-zero) + fn on_nonzero_unbalanced(amount: NegativeImbalance) { + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + let (_, to_treasury) = amount.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } +} + +pub struct LengthToFee; +impl WeightToFeePolynomial for LengthToFee { + type Balance = Balance; + + fn polynomial() -> WeightToFeeCoefficients { + smallvec![ + WeightToFeeCoefficient { + degree: 1, + coeff_frac: Perbill::zero(), + coeff_integer: currency::TRANSACTION_BYTE_FEE, + negative: false, + }, + WeightToFeeCoefficient { + degree: 3, + coeff_frac: Perbill::zero(), + coeff_integer: 1 * currency::SUPPLY_FACTOR, + negative: false, + }, + ] + } +} + +impl pallet_transaction_payment::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnChargeTransaction = CurrencyAdapter>; + type OperationalFeeMultiplier = ConstU8<5>; + type WeightToFee = ConstantMultiplier>; + type LengthToFee = LengthToFee; + type FeeMultiplierUpdate = FastAdjustingFeeUpdate; +} + +impl pallet_sudo::Config for Runtime { + type RuntimeCall = RuntimeCall; + type RuntimeEvent = RuntimeEvent; + type WeightInfo = moonbeam_weights::pallet_sudo::WeightInfo; +} + +impl pallet_evm_chain_id::Config for Runtime {} + +/// Current approximation of the gas/s consumption considering +/// EVM execution over compiled WASM (on 4.4Ghz CPU). +/// Given the 500ms Weight, from which 75% only are used for transactions, +/// the total EVM execution gas limit is: GAS_PER_SECOND * 0.500 * 0.75 ~= 15_000_000. +pub const GAS_PER_SECOND: u64 = 40_000_000; + +/// Approximate ratio of the amount of Weight per Gas. +/// u64 works for approximations because Weight is a very small unit compared to gas. +pub const WEIGHT_PER_GAS: u64 = WEIGHT_REF_TIME_PER_SECOND / GAS_PER_SECOND; +/// The highest amount of new storage that can be created in a block (40KB). +pub const BLOCK_STORAGE_LIMIT: u64 = 40 * 1024; +parameter_types! { + pub BlockGasLimit: U256 + = U256::from(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT.ref_time() / WEIGHT_PER_GAS); + /// The portion of the `NORMAL_DISPATCH_RATIO` that we adjust the fees with. Blocks filled less + /// than this will decrease the weight and more will increase. + pub const TargetBlockFullness: Perquintill = Perquintill::from_percent(25); + /// The adjustment variable of the runtime. Higher values will cause `TargetBlockFullness` to + /// change the fees more rapidly. This fast multiplier responds by doubling/halving in + /// approximately one hour at extreme block congestion levels. + pub AdjustmentVariable: Multiplier = Multiplier::saturating_from_rational(4, 1_000); + /// Minimum amount of the multiplier. This value cannot be too low. A test case should ensure + /// that combined with `AdjustmentVariable`, we can recover from the minimum. + /// See `multiplier_can_grow_from_zero` in integration_tests.rs. + pub MinimumMultiplier: Multiplier = Multiplier::saturating_from_rational(1, 10); + /// Maximum multiplier. We pick a value that is expensive but not impossibly so; it should act + /// as a safety net. + pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); + pub PrecompilesValue: MoonbasePrecompiles = MoonbasePrecompiles::<_>::new(); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); + /// The amount of gas per pov. A ratio of 4 if we convert ref_time to gas and we compare + /// it with the pov_size for a block. E.g. + /// ceil( + /// (max_extrinsic.ref_time() / max_extrinsic.proof_size()) / WEIGHT_PER_GAS + /// ) + pub const GasLimitPovSizeRatio: u64 = 4; + /// The amount of gas per storage (in bytes): BLOCK_GAS_LIMIT / BLOCK_STORAGE_LIMIT + /// (15_000_000 / 40kb) + pub GasLimitStorageGrowthRatio: u64 = 366; +} + +pub struct TransactionPaymentAsGasPrice; +impl FeeCalculator for TransactionPaymentAsGasPrice { + fn min_gas_price() -> (U256, Weight) { + // TODO: transaction-payment differs from EIP-1559 in that its tip and length fees are not + // scaled by the multiplier, which means its multiplier will be overstated when + // applied to an ethereum transaction + // note: transaction-payment uses both a congestion modifier (next_fee_multiplier, which is + // updated once per block in on_finalize) and a 'WeightToFee' implementation. Our + // runtime implements this as a 'ConstantModifier', so we can get away with a simple + // multiplication here. + // It is imperative that `saturating_mul_int` be performed as late as possible in the + // expression since it involves fixed point multiplication with a division by a fixed + // divisor. This leads to truncation and subsequent precision loss if performed too early. + // This can lead to min_gas_price being same across blocks even if the multiplier changes. + // There's still some precision loss when the final `gas_price` (used_gas * min_gas_price) + // is computed in frontier, but that's currently unavoidable. + let min_gas_price = TransactionPayment::next_fee_multiplier() + .saturating_mul_int(currency::WEIGHT_FEE.saturating_mul(WEIGHT_PER_GAS as u128)); + ( + min_gas_price.into(), + ::DbWeight::get().reads(1), + ) + } +} + +/// A "Fast" TargetedFeeAdjustment. Parameters chosen based on model described here: +/// https://research.web3.foundation/en/latest/polkadot/overview/2-token-economics.html#-1.-fast-adjusting-mechanism // editorconfig-checker-disable-line +/// +/// The adjustment algorithm boils down to: +/// +/// diff = (previous_block_weight - target) / maximum_block_weight +/// next_multiplier = prev_multiplier * (1 + (v * diff) + ((v * diff)^2 / 2)) +/// assert(next_multiplier > min) +/// where: v is AdjustmentVariable +/// target is TargetBlockFullness +/// min is MinimumMultiplier +pub type FastAdjustingFeeUpdate = TargetedFeeAdjustment< + R, + TargetBlockFullness, + AdjustmentVariable, + MinimumMultiplier, + MaximumMultiplier, +>; + +/// The author inherent provides an AccountId, but pallet evm needs an H160. +/// This simple adapter makes the conversion for any types T, U such that T: Into +pub struct FindAuthorAdapter(sp_std::marker::PhantomData<(T, U, Inner)>); + +impl FindAuthor for FindAuthorAdapter +where + T: Into, + Inner: FindAuthor, +{ + fn find_author<'a, I>(digests: I) -> Option + where + I: 'a + IntoIterator, + { + Inner::find_author(digests).map(Into::into) + } +} + +moonbeam_runtime_common::impl_on_charge_evm_transaction!(); + +impl pallet_evm::Config for Runtime { + type FeeCalculator = TransactionPaymentAsGasPrice; + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; + type CallOrigin = EnsureAddressRoot; + type WithdrawOrigin = EnsureAddressNever; + type AddressMapping = IdentityAddressMapping; + type Currency = Balances; + type RuntimeEvent = RuntimeEvent; + type Runner = pallet_evm::runner::stack::Runner; + type PrecompilesType = MoonbasePrecompiles; + type PrecompilesValue = PrecompilesValue; + type ChainId = EthereumChainId; + type OnChargeTransaction = OnChargeEVMTransaction>; + type BlockGasLimit = BlockGasLimit; + type FindAuthor = FindAuthorAdapter; + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = crate::timestamp::RelayTimestamp; + type WeightInfo = moonbeam_weights::pallet_evm::WeightInfo; +} + +parameter_types! { + pub MaximumSchedulerWeight: Weight = NORMAL_DISPATCH_RATIO * RuntimeBlockWeights::get().max_block; + pub const NoPreimagePostponement: Option = Some(10); +} + +impl pallet_scheduler::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeOrigin = RuntimeOrigin; + type PalletsOrigin = OriginCaller; + type RuntimeCall = RuntimeCall; + type MaximumWeight = MaximumSchedulerWeight; + type ScheduleOrigin = EnsureRoot; + type MaxScheduledPerBlock = ConstU32<50>; + type WeightInfo = moonbeam_weights::pallet_scheduler::WeightInfo; + type OriginPrivilegeCmp = EqualPrivilegeOnly; + type Preimages = Preimage; +} + +parameter_types! { + pub const PreimageBaseDeposit: Balance = 5 * currency::UNIT * currency::SUPPLY_FACTOR ; + pub const PreimageByteDeposit: Balance = currency::STORAGE_BYTE_FEE; + pub const PreimageHoldReason: RuntimeHoldReason = + RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); +} + +impl pallet_preimage::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_preimage::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type ManagerOrigin = EnsureRoot; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const TreasuryId: PalletId = PalletId(*b"pc/trsry"); + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +type TreasuryApproveOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, +>; + +type TreasuryRejectOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionMoreThan, +>; + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + // At least three-fifths majority of the council is required (or root) to approve a proposal + type ApproveOrigin = TreasuryApproveOrigin; + // More than half of the council is required (or root) to reject a proposal + type RejectOrigin = TreasuryRejectOrigin; + type RuntimeEvent = RuntimeEvent; + // If spending proposal rejected, transfer proposer bond to treasury + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ConstU128<{ 1 * currency::UNIT * currency::SUPPLY_FACTOR }>; + type SpendPeriod = ConstU32<{ 6 * DAYS }>; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = ConstU32<100>; + type WeightInfo = moonbeam_weights::pallet_treasury::WeightInfo; + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = BenchmarkHelper; +} + +type IdentityForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +type IdentityRegistrarOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_identity::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + // Add one item in storage and take 258 bytes + type BasicDeposit = ConstU128<{ currency::deposit(1, 258) }>; + // Not add any item to the storage but takes 66 bytes + type FieldDeposit = ConstU128<{ currency::deposit(0, 66) }>; + // Add one item in storage and take 53 bytes + type SubAccountDeposit = ConstU128<{ currency::deposit(1, 53) }>; + type MaxSubAccounts = ConstU32<100>; + type MaxAdditionalFields = ConstU32<100>; + type IdentityInformation = pallet_identity::simple::IdentityInfo; + type MaxRegistrars = ConstU32<20>; + type Slashed = Treasury; + type ForceOrigin = IdentityForceOrigin; + type RegistrarOrigin = IdentityRegistrarOrigin; + type WeightInfo = moonbeam_weights::pallet_identity::WeightInfo; +} + +pub struct TransactionConverter; + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } +} + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> opaque::UncheckedExtrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will immediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +parameter_types! { + pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); + pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); +} + +pub const UNINCLUDED_SEGMENT_CAPACITY: u32 = 1; +pub const BLOCK_PROCESSING_VELOCITY: u32 = 1; + +type ConsensusHook = pallet_async_backing::consensus_hook::FixedVelocityConsensusHook< + Runtime, + BLOCK_PROCESSING_VELOCITY, + UNINCLUDED_SEGMENT_CAPACITY, +>; + +impl cumulus_pallet_parachain_system::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnSystemEvent = (); + type SelfParaId = ParachainInfo; + type DmpMessageHandler = MaintenanceMode; + type ReservedDmpWeight = ReservedDmpWeight; + type OutboundXcmpMessageSource = XcmpQueue; + type XcmpMessageHandler = XcmpQueue; + type ReservedXcmpWeight = ReservedXcmpWeight; + type CheckAssociatedRelayNumber = RelayNumberMonotonicallyIncreases; + type ConsensusHook = crate::timestamp::ConsensusHookWrapperForRelayTimestamp; +} + +impl parachain_info::Config for Runtime {} + +pub struct OnNewRound; +impl pallet_parachain_staking::OnNewRound for OnNewRound { + fn on_new_round(round_index: pallet_parachain_staking::RoundIndex) -> Weight { + MoonbeamOrbiters::on_new_round(round_index) + } +} +pub struct PayoutCollatorOrOrbiterReward; +impl pallet_parachain_staking::PayoutCollatorReward for PayoutCollatorOrOrbiterReward { + fn payout_collator_reward( + for_round: pallet_parachain_staking::RoundIndex, + collator_id: AccountId, + amount: Balance, + ) -> Weight { + let extra_weight = if MoonbeamOrbiters::is_orbiter(for_round, collator_id) { + MoonbeamOrbiters::distribute_rewards(for_round, collator_id, amount) + } else { + ParachainStaking::mint_collator_reward(for_round, collator_id, amount) + }; + + ::DbWeight::get() + .reads(1) + .saturating_add(extra_weight) + } +} + +pub struct OnInactiveCollator; +impl pallet_parachain_staking::OnInactiveCollator for OnInactiveCollator { + fn on_inactive_collator( + collator_id: AccountId, + round: pallet_parachain_staking::RoundIndex, + ) -> Result> { + let extra_weight = if !MoonbeamOrbiters::is_orbiter(round, collator_id.clone()) { + ParachainStaking::go_offline_inner(collator_id)?; + ::WeightInfo::go_offline( + pallet_parachain_staking::MAX_CANDIDATES, + ) + } else { + Weight::zero() + }; + + Ok(::DbWeight::get() + .reads(1) + .saturating_add(extra_weight)) + } +} + +type MonetaryGovernanceOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_parachain_staking::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type MonetaryGovernanceOrigin = MonetaryGovernanceOrigin; + /// Minimum round length is 2 minutes (10 * 12 second block times) + type MinBlocksPerRound = ConstU32<10>; + /// If a collator doesn't produce any block on this number of rounds, it is notified as inactive + type MaxOfflineRounds = ConstU32<2>; + /// Rounds before the collator leaving the candidates request can be executed + type LeaveCandidatesDelay = ConstU32<2>; + /// Rounds before the candidate bond increase/decrease can be executed + type CandidateBondLessDelay = ConstU32<2>; + /// Rounds before the delegator exit can be executed + type LeaveDelegatorsDelay = ConstU32<2>; + /// Rounds before the delegator revocation can be executed + type RevokeDelegationDelay = ConstU32<2>; + /// Rounds before the delegator bond increase/decrease can be executed + type DelegationBondLessDelay = ConstU32<2>; + /// Rounds before the reward is paid + type RewardPaymentDelay = ConstU32<2>; + /// Minimum collators selected per round, default at genesis and minimum forever after + type MinSelectedCandidates = ConstU32<8>; + /// Maximum top delegations per candidate + type MaxTopDelegationsPerCandidate = ConstU32<300>; + /// Maximum bottom delegations per candidate + type MaxBottomDelegationsPerCandidate = ConstU32<50>; + /// Maximum delegations per delegator + type MaxDelegationsPerDelegator = ConstU32<100>; + /// Minimum stake required to be reserved to be a candidate + type MinCandidateStk = ConstU128<{ 500 * currency::UNIT * currency::SUPPLY_FACTOR }>; + /// Minimum stake required to be reserved to be a delegator + type MinDelegation = ConstU128<{ 1 * currency::UNIT * currency::SUPPLY_FACTOR }>; + type BlockAuthor = AuthorInherent; + type OnCollatorPayout = (); + type PayoutCollatorReward = PayoutCollatorOrOrbiterReward; + type OnInactiveCollator = OnInactiveCollator; + type OnNewRound = OnNewRound; + type WeightInfo = moonbeam_weights::pallet_parachain_staking::WeightInfo; + type MaxCandidates = ConstU32<200>; +} + +impl pallet_author_inherent::Config for Runtime { + type SlotBeacon = RelaychainDataProvider; + type AccountLookup = MoonbeamOrbiters; + type CanAuthor = AuthorFilter; + type AuthorId = AccountId; + type WeightInfo = moonbeam_weights::pallet_author_inherent::WeightInfo; +} + +#[cfg(test)] +mod mock { + use super::*; + pub struct MockRandomness; + impl frame_support::traits::Randomness for MockRandomness { + fn random(subject: &[u8]) -> (H256, BlockNumber) { + (H256(sp_io::hashing::blake2_256(subject)), 0) + } + } +} + +impl pallet_author_slot_filter::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + #[cfg(not(test))] + type RandomnessSource = Randomness; + #[cfg(test)] + type RandomnessSource = mock::MockRandomness; + type PotentialAuthors = ParachainStaking; + type WeightInfo = moonbeam_weights::pallet_author_slot_filter::WeightInfo; +} + +impl pallet_async_backing::Config for Runtime { + type AllowMultipleBlocksPerSlot = ConstBool; + type GetAndVerifySlot = pallet_async_backing::RelaySlot; +} + +parameter_types! { + pub const InitializationPayment: Perbill = Perbill::from_percent(30); + pub const RelaySignaturesThreshold: Perbill = Perbill::from_percent(100); + pub const SignatureNetworkIdentifier: &'static [u8] = b"moonbase-"; + +} + +impl pallet_crowdloan_rewards::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Initialized = ConstBool; + type InitializationPayment = InitializationPayment; + type MaxInitContributors = ConstU32<500>; + // TODO to be revisited + type MinimumReward = ConstU128<0>; + type RewardCurrency = Balances; + type RelayChainAccountId = [u8; 32]; + type RewardAddressAssociateOrigin = EnsureSigned; + type RewardAddressChangeOrigin = EnsureSigned; + type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; + type SignatureNetworkIdentifier = SignatureNetworkIdentifier; + type VestingBlockNumber = cumulus_primitives_core::relay_chain::BlockNumber; + type VestingBlockProvider = RelaychainDataProvider; + type WeightInfo = moonbeam_weights::pallet_crowdloan_rewards::WeightInfo; +} + +// This is a simple session key manager. It should probably either work with, or be replaced +// entirely by pallet sessions +impl pallet_author_mapping::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type DepositCurrency = Balances; + type DepositAmount = ConstU128<{ 100 * currency::UNIT * currency::SUPPLY_FACTOR }>; + type Keys = session_keys_primitives::VrfId; + type WeightInfo = moonbeam_weights::pallet_author_mapping::WeightInfo; +} + +/// The type used to represent the kinds of proxying allowed. +#[derive( + Copy, + Clone, + Eq, + PartialEq, + Ord, + PartialOrd, + Encode, + Decode, + Debug, + MaxEncodedLen, + TypeInfo, + Serialize, + Deserialize, +)] +pub enum ProxyType { + /// All calls can be proxied. This is the trivial/most permissive filter. + Any = 0, + /// Only extrinsics that do not transfer funds. + NonTransfer = 1, + /// Only extrinsics related to governance (democracy and collectives). + Governance = 2, + /// Only extrinsics related to staking. + Staking = 3, + /// Allow to veto an announced proxy call. + CancelProxy = 4, + /// Allow extrinsic related to Balances. + Balances = 5, + /// Allow extrinsic related to AuthorMapping. + AuthorMapping = 6, + /// Allow extrinsic related to IdentityJudgement. + IdentityJudgement = 7, +} + +impl Default for ProxyType { + fn default() -> Self { + Self::Any + } +} + +fn is_governance_precompile(precompile_name: &precompiles::PrecompileName) -> bool { + matches!( + precompile_name, + PrecompileName::DemocracyPrecompile + | PrecompileName::CouncilInstance + | PrecompileName::TechCommitteeInstance + | PrecompileName::TreasuryCouncilInstance + | PrecompileName::ReferendaPrecompile + | PrecompileName::ConvictionVotingPrecompile + | PrecompileName::PreimagePrecompile + | PrecompileName::OpenTechCommitteeInstance, + ) +} + +// Be careful: Each time this filter is modified, the substrate filter must also be modified +// consistently. +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType { + fn is_evm_proxy_call_allowed( + &self, + call: &pallet_evm_precompile_proxy::EvmSubCall, + recipient_has_code: bool, + gas: u64, + ) -> precompile_utils::EvmResult { + Ok(match self { + ProxyType::Any => true, + ProxyType::NonTransfer => { + call.value == U256::zero() + && match PrecompileName::from_address(call.to.0) { + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::IdentityPrecompile + | PrecompileName::ParachainStakingPrecompile, + ) => true, + Some(ref precompile) if is_governance_precompile(precompile) => true, + _ => false, + } + } + ProxyType::Governance => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(ref precompile) if is_governance_precompile(precompile) + ) + } + ProxyType::Staking => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile + ) + ) + } + // The proxy precompile does not contain method cancel_proxy + ProxyType::CancelProxy => false, + ProxyType::Balances => { + // Allow only "simple" accounts as recipient (no code nor precompile). + // Note: Checking the presence of the code is not enough because some precompiles + // have no code. + !recipient_has_code + && !precompile_utils::precompile_set::is_precompile_or_fail::( + call.to.0, gas, + )? + } + ProxyType::AuthorMapping => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(PrecompileName::AuthorMappingPrecompile) + ) + } + // There is no identity precompile + ProxyType::IdentityJudgement => false, + }) + } +} + +// Be careful: Each time this filter is modified, the EVM filter must also be modified consistently. +impl InstanceFilter for ProxyType { + fn filter(&self, c: &RuntimeCall) -> bool { + match self { + ProxyType::Any => true, + ProxyType::NonTransfer => { + matches!( + c, + RuntimeCall::System(..) + | RuntimeCall::ParachainSystem(..) + | RuntimeCall::Timestamp(..) + | RuntimeCall::ParachainStaking(..) + | RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Identity(..) + | RuntimeCall::Utility(..) + | RuntimeCall::Proxy(..) | RuntimeCall::AuthorMapping(..) + | RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::claim { .. } + ) + ) + } + ProxyType::Governance => matches!( + c, + RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Utility(..) + ), + ProxyType::Staking => matches!( + c, + RuntimeCall::ParachainStaking(..) + | RuntimeCall::Utility(..) + | RuntimeCall::AuthorMapping(..) + | RuntimeCall::MoonbeamOrbiters(..) + ), + ProxyType::CancelProxy => matches!( + c, + RuntimeCall::Proxy(pallet_proxy::Call::reject_announcement { .. }) + ), + ProxyType::Balances => { + matches!(c, RuntimeCall::Balances(..) | RuntimeCall::Utility(..)) + } + ProxyType::AuthorMapping => matches!(c, RuntimeCall::AuthorMapping(..)), + ProxyType::IdentityJudgement => matches!( + c, + RuntimeCall::Identity(pallet_identity::Call::provide_judgement { .. }) + | RuntimeCall::Utility(..) + ), + } + } + + fn is_superset(&self, o: &Self) -> bool { + match (self, o) { + (x, y) if x == y => true, + (ProxyType::Any, _) => true, + (_, ProxyType::Any) => false, + _ => false, + } + } +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + // One storage item; key size 32, value size 8 + type ProxyDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 21 bytes (20 bytes AccountId + 1 byte sizeof(ProxyType)). + type ProxyDepositFactor = ConstU128<{ currency::deposit(0, 21) }>; + type MaxProxies = ConstU32<32>; + type WeightInfo = moonbeam_weights::pallet_proxy::WeightInfo; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 56 bytes: + // - 20 bytes AccountId + // - 32 bytes Hasher (Blake2256) + // - 4 bytes BlockNumber (u32) + type AnnouncementDepositFactor = ConstU128<{ currency::deposit(0, 56) }>; +} + +impl pallet_migrations::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + // TODO wire up our correct list of migrations here. Maybe this shouldn't be in + // `moonbeam_runtime_common`. + type MigrationsList = ( + moonbeam_runtime_common::migrations::CommonMigrations< + Runtime, + CouncilCollective, + TechCommitteeCollective, + TreasuryCouncilCollective, + OpenTechCommitteeCollective, + >, + ); + type XcmExecutionManager = XcmExecutionManager; +} + +/// Maintenance mode Call filter +pub struct MaintenanceFilter; +impl Contains for MaintenanceFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(_) => false, + RuntimeCall::LocalAssets(_) => false, + RuntimeCall::Balances(_) => false, + RuntimeCall::CrowdloanRewards(_) => false, + RuntimeCall::Ethereum(_) => false, + RuntimeCall::EVM(_) => false, + RuntimeCall::Identity(_) => false, + RuntimeCall::XTokens(_) => false, + RuntimeCall::ParachainStaking(_) => false, + RuntimeCall::MoonbeamOrbiters(_) => false, + RuntimeCall::PolkadotXcm(_) => false, + RuntimeCall::Treasury(_) => false, + RuntimeCall::XcmTransactor(_) => false, + RuntimeCall::EthereumXcm(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + _ => true, + } + } +} + +/// Normal Call Filter +/// We dont allow to create nor mint assets, this for now is disabled +/// We only allow transfers. For now creation of assets will go through +/// asset-manager, while minting/burning only happens through xcm messages +/// This can change in the future +pub struct NormalFilter; +impl Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(method) => match method { + pallet_assets::Call::transfer { .. } => true, + pallet_assets::Call::transfer_keep_alive { .. } => true, + pallet_assets::Call::approve_transfer { .. } => true, + pallet_assets::Call::transfer_approved { .. } => true, + pallet_assets::Call::cancel_approval { .. } => true, + pallet_assets::Call::destroy_accounts { .. } => true, + pallet_assets::Call::destroy_approvals { .. } => true, + pallet_assets::Call::finish_destroy { .. } => true, + _ => false, + }, + // We want to disable create, as we dont want users to be choosing the + // assetId of their choice + // We also disable destroy, as we want to route destroy through the + // asset-manager, which guarantees the removal both at the EVM and + // substrate side of things + RuntimeCall::LocalAssets(method) => match method { + pallet_assets::Call::create { .. } => false, + pallet_assets::Call::start_destroy { .. } => false, + _ => true, + }, + // We filter anonymous proxy as they make "reserve" inconsistent + // See: https://github.com/paritytech/substrate/blob/37cca710eed3dadd4ed5364c7686608f5175cce1/frame/proxy/src/lib.rs#L270 // editorconfig-checker-disable-line + RuntimeCall::Proxy(method) => match method { + pallet_proxy::Call::create_pure { .. } => false, + pallet_proxy::Call::kill_pure { .. } => false, + pallet_proxy::Call::proxy { real, .. } => { + !pallet_evm::AccountCodes::::contains_key(H160::from(*real)) + } + _ => true, + }, + // Filtering the EVM prevents possible re-entrancy from the precompiles which could + // lead to unexpected scenarios. + // See https://github.com/PureStake/sr-moonbeam/issues/30 + // Note: It is also assumed that EVM calls are only allowed through `Origin::Root` so + // this can be seen as an additional security + RuntimeCall::EVM(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + RuntimeCall::Treasury( + pallet_treasury::Call::spend { .. } + | pallet_treasury::Call::payout { .. } + | pallet_treasury::Call::check_status { .. } + | pallet_treasury::Call::void_spend { .. }, + ) => false, + _ => true, + } + } +} + +use cumulus_primitives_core::{relay_chain::BlockNumber as RelayBlockNumber, DmpMessageHandler}; + +pub struct XcmExecutionManager; +impl moonkit_xcm_primitives::PauseXcmExecution for XcmExecutionManager { + fn suspend_xcm_execution() -> DispatchResult { + XcmpQueue::suspend_xcm_execution(RuntimeOrigin::root()) + } + fn resume_xcm_execution() -> DispatchResult { + XcmpQueue::resume_xcm_execution(RuntimeOrigin::root()) + } +} + +pub struct NormalDmpHandler; +impl DmpMessageHandler for NormalDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + (if Migrations::should_pause_xcm() { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } else { + DmpQueue::handle_dmp_messages(iter, limit) + }) + ::DbWeight::get().reads(1) + } +} + +pub struct MaintenanceDmpHandler; +impl DmpMessageHandler for MaintenanceDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + _limit: Weight, + ) -> Weight { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } +} + +/// The hooks we wnat to run in Maintenance Mode +pub struct MaintenanceHooks; + +impl OnInitialize for MaintenanceHooks { + fn on_initialize(n: BlockNumber) -> Weight { + AllPalletsWithSystem::on_initialize(n) + } +} + +// return 0 +// For some reason using empty tuple () isnt working +// There exist only two pallets that use onIdle and these are xcmp and dmp queues +// For some reason putting an empty tumple does not work (transaction never finishes) +// We use an empty onIdle, if on the future we want one of the pallets to execute it +// we need to provide it here +impl OnIdle for MaintenanceHooks { + fn on_idle(_n: BlockNumber, _max_weight: Weight) -> Weight { + Weight::zero() + } +} + +impl OnRuntimeUpgrade for MaintenanceHooks { + fn on_runtime_upgrade() -> Weight { + AllPalletsWithSystem::on_runtime_upgrade() + } + + #[cfg(feature = "try-runtime")] + fn try_on_runtime_upgrade(checks: bool) -> Result { + AllPalletsWithSystem::try_on_runtime_upgrade(checks) + } +} + +impl OnFinalize for MaintenanceHooks { + fn on_finalize(n: BlockNumber) { + AllPalletsWithSystem::on_finalize(n) + } +} + +impl OffchainWorker for MaintenanceHooks { + fn offchain_worker(n: BlockNumber) { + AllPalletsWithSystem::offchain_worker(n) + } +} + +impl pallet_maintenance_mode::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type NormalCallFilter = NormalFilter; + type MaintenanceCallFilter = MaintenanceFilter; + type MaintenanceOrigin = + pallet_collective::EnsureProportionAtLeast; + type XcmExecutionManager = XcmExecutionManager; + type NormalDmpHandler = NormalDmpHandler; + type MaintenanceDmpHandler = MaintenanceDmpHandler; + // We use AllPalletsWithSystem because we dont want to change the hooks in normal + // operation + type NormalExecutiveHooks = AllPalletsWithSystem; + type MaintenanceExecutiveHooks = MaintenanceHooks; +} + +impl pallet_proxy_genesis_companion::Config for Runtime { + type ProxyType = ProxyType; +} + +parameter_types! { + pub OrbiterReserveIdentifier: [u8; 4] = [b'o', b'r', b'b', b'i']; +} + +type AddCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; +type DelCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_moonbeam_orbiters::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AccountLookup = AuthorMapping; + type AddCollatorOrigin = AddCollatorOrigin; + type Currency = Balances; + type DelCollatorOrigin = DelCollatorOrigin; + /// Maximum number of orbiters per collator + type MaxPoolSize = ConstU32<8>; + /// Maximum number of round to keep on storage + type MaxRoundArchive = ConstU32<4>; + type OrbiterReserveIdentifier = OrbiterReserveIdentifier; + type RotatePeriod = ConstU32<3>; + /// Round index type. + type RoundIndex = pallet_parachain_staking::RoundIndex; + type WeightInfo = moonbeam_weights::pallet_moonbeam_orbiters::WeightInfo; +} + +/// Only callable after `set_validation_data` is called which forms this proof the same way +fn relay_chain_state_proof() -> RelayChainStateProof { + let relay_storage_root = ParachainSystem::validation_data() + .expect("set in `set_validation_data`") + .relay_parent_storage_root; + let relay_chain_state = + ParachainSystem::relay_state_proof().expect("set in `set_validation_data`"); + RelayChainStateProof::new(ParachainInfo::get(), relay_storage_root, relay_chain_state) + .expect("Invalid relay chain state proof, already constructed in `set_validation_data`") +} + +pub struct BabeDataGetter; +impl pallet_randomness::GetBabeData> for BabeDataGetter { + // Tolerate panic here because only ever called in inherent (so can be omitted) + fn get_epoch_index() -> u64 { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + const BENCHMARKING_NEW_EPOCH: u64 = 10u64; + return BENCHMARKING_NEW_EPOCH; + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::EPOCH_INDEX) + .ok() + .flatten() + .expect("expected to be able to read epoch index from relay chain state proof") + } + fn get_epoch_randomness() -> Option { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + let benchmarking_babe_output = Hash::default(); + return Some(benchmarking_babe_output); + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::ONE_EPOCH_AGO_RANDOMNESS) + .ok() + .flatten() + } +} + +impl pallet_randomness::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AddressMapping = sp_runtime::traits::ConvertInto; + type Currency = Balances; + type BabeDataGetter = BabeDataGetter; + type VrfKeyLookup = AuthorMapping; + type Deposit = ConstU128<{ 1 * currency::UNIT * currency::SUPPLY_FACTOR }>; + type MaxRandomWords = ConstU8<100>; + type MinBlockDelay = ConstU32<2>; + type MaxBlockDelay = ConstU32<2_000>; + type BlockExpirationDelay = ConstU32<10_000>; + type EpochExpirationDelay = ConstU64<10_000>; + type WeightInfo = moonbeam_weights::pallet_randomness::WeightInfo; +} + +impl pallet_root_testing::Config for Runtime {} + +parameter_types! { + // One storage item; key size is 32 + 20; value is size 4+4+16+20 bytes = 44 bytes. + pub const DepositBase: Balance = currency::deposit(1, 96); + // Additional storage item size of 20 bytes. + pub const DepositFactor: Balance = currency::deposit(0, 20); + pub const MaxSignatories: u32 = 100; +} + +impl pallet_multisig::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type DepositBase = DepositBase; + type DepositFactor = DepositFactor; + type MaxSignatories = MaxSignatories; + type WeightInfo = moonbeam_weights::pallet_multisig::WeightInfo; +} + +construct_runtime! { + pub enum Runtime + { + System: frame_system::{Pallet, Call, Storage, Config, Event} = 0, + Utility: pallet_utility::{Pallet, Call, Event} = 1, + Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 2, + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 3, + Sudo: pallet_sudo::{Pallet, Call, Config, Storage, Event} = 4, + // Previously 5: pallet_randomness_collective_flip + ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Storage, Inherent, Event} = 6, + TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Config, Event} = 7, + ParachainInfo: parachain_info::{Pallet, Storage, Config} = 8, + EthereumChainId: pallet_evm_chain_id::{Pallet, Storage, Config} = 9, + EVM: pallet_evm::{Pallet, Config, Call, Storage, Event} = 10, + Ethereum: pallet_ethereum::{Pallet, Call, Storage, Event, Origin, Config} = 11, + ParachainStaking: pallet_parachain_staking::{Pallet, Call, Storage, Event, Config} = 12, + Scheduler: pallet_scheduler::{Pallet, Storage, Event, Call} = 13, + Democracy: pallet_democracy::{Pallet, Storage, Config, Event, Call} = 14, + CouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 15, + TechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 16, + Treasury: pallet_treasury::{Pallet, Storage, Config, Event, Call} = 17, + AuthorInherent: pallet_author_inherent::{Pallet, Call, Storage, Inherent} = 18, + AuthorFilter: pallet_author_slot_filter::{Pallet, Call, Storage, Event, Config} = 19, + CrowdloanRewards: pallet_crowdloan_rewards::{Pallet, Call, Config, Storage, Event} = 20, + AuthorMapping: pallet_author_mapping::{Pallet, Call, Config, Storage, Event} = 21, + Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 22, + MaintenanceMode: pallet_maintenance_mode::{Pallet, Call, Config, Storage, Event} = 23, + Identity: pallet_identity::{Pallet, Call, Storage, Event} = 24, + XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event} = 25, + CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin} = 26, + DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 27, + PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event, Origin, Config} = 28, + Assets: pallet_assets::{Pallet, Call, Storage, Event} = 29, + XTokens: orml_xtokens::{Pallet, Call, Storage, Event} = 30, + AssetManager: pallet_asset_manager::{Pallet, Call, Storage, Event} = 31, + Migrations: pallet_migrations::{Pallet, Storage, Config, Event} = 32, + XcmTransactor: pallet_xcm_transactor::{Pallet, Call, Config, Storage, Event} = 33, + ProxyGenesisCompanion: pallet_proxy_genesis_companion::{Pallet, Config} = 34, + LocalAssets: pallet_assets::::{Pallet, Call, Storage, Event} = 36, + MoonbeamOrbiters: pallet_moonbeam_orbiters::{Pallet, Call, Storage, Event} = 37, + EthereumXcm: pallet_ethereum_xcm::{Pallet, Call, Storage, Origin} = 38, + Randomness: pallet_randomness::{Pallet, Call, Storage, Event, Inherent} = 39, + TreasuryCouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 40, + ConvictionVoting: pallet_conviction_voting::{Pallet, Call, Storage, Event} = 41, + Referenda: pallet_referenda::{Pallet, Call, Storage, Event} = 42, + Origins: governance::custom_origins::{Origin} = 43, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 44, + Whitelist: pallet_whitelist::{Pallet, Call, Storage, Event} = 45, + OpenTechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 46, + RootTesting: pallet_root_testing::{Pallet, Call, Storage} = 47, + Erc20XcmBridge: pallet_erc20_xcm_bridge::{Pallet} = 48, + Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 49, + AsyncBacking: pallet_async_backing::{Pallet, Storage} = 50, + } +} + +/// Block type as expected by this runtime. +pub type Block = generic::Block; +/// A Block signed with a Justification +pub type SignedBlock = generic::SignedBlock; +/// BlockId type as expected by this runtime. +pub type BlockId = generic::BlockId; + +/// The SignedExtension to the basic transaction logic. +pub type SignedExtra = ( + frame_system::CheckNonZeroSender, + frame_system::CheckSpecVersion, + frame_system::CheckTxVersion, + frame_system::CheckGenesis, + frame_system::CheckEra, + frame_system::CheckNonce, + frame_system::CheckWeight, + pallet_transaction_payment::ChargeTransactionPayment, +); +/// Unchecked extrinsic type as expected by this runtime. +pub type UncheckedExtrinsic = + fp_self_contained::UncheckedExtrinsic; +/// Extrinsic type that has already been checked. +pub type CheckedExtrinsic = + fp_self_contained::CheckedExtrinsic; +/// Executive: handles dispatch to the various pallets. +pub type Executive = frame_executive::Executive< + Runtime, + Block, + frame_system::ChainContext, + Runtime, + pallet_maintenance_mode::ExecutiveHooks, +>; + +#[cfg(feature = "runtime-benchmarks")] +use { + moonbeam_runtime_common::benchmarking::BenchmarkHelper, + moonbeam_xcm_benchmarks::generic::benchmarking as MoonbeamXcmBenchmarks, + MoonbeamXcmBenchmarks::XcmGenericBenchmarks as MoonbeamXcmGenericBench, +}; +#[cfg(feature = "runtime-benchmarks")] +mod benches { + frame_benchmarking::define_benchmarks!( + [pallet_utility, Utility] + [pallet_timestamp, Timestamp] + [pallet_balances, Balances] + [pallet_sudo, Sudo] + [pallet_evm, EVM] + [pallet_assets, Assets] + [pallet_collective, CouncilCollective] + [pallet_parachain_staking, ParachainStaking] + [pallet_scheduler, Scheduler] + [pallet_democracy, Democracy] + [pallet_treasury, Treasury] + [pallet_author_inherent, AuthorInherent] + [pallet_author_slot_filter, AuthorFilter] + [pallet_crowdloan_rewards, CrowdloanRewards] + [pallet_author_mapping, AuthorMapping] + [pallet_proxy, Proxy] + [pallet_identity, Identity] + [cumulus_pallet_xcmp_queue, XcmpQueue] + [pallet_xcm, PolkadotXcm] + [pallet_asset_manager, AssetManager] + [pallet_xcm_transactor, XcmTransactor] + [pallet_moonbeam_orbiters, MoonbeamOrbiters] + [pallet_randomness, Randomness] + [pallet_conviction_voting, ConvictionVoting] + [pallet_referenda, Referenda] + [pallet_preimage, Preimage] + [pallet_whitelist, Whitelist] + [pallet_multisig, Multisig] + [moonbeam_xcm_benchmarks::weights::generic, MoonbeamXcmGenericBench::] + ); +} + +// All of our runtimes share most of their Runtime API implementations. +// We use a macro to implement this common part and add runtime-specific additional implementations. +// This macro expands to : +// ``` +// impl_runtime_apis! { +// // All impl blocks shared between all runtimes. +// +// // Specific impls provided to the `impl_runtime_apis_plus_common!` macro. +// } +// ``` +moonbeam_runtime_common::impl_runtime_apis_plus_common! { + impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { + fn validate_transaction( + source: TransactionSource, + xt: ::Extrinsic, + block_hash: ::Hash, + ) -> TransactionValidity { + // Filtered calls should not enter the tx pool as they'll fail if inserted. + // If this call is not allowed, we return early. + if !::BaseCallFilter::contains(&xt.0.function) { + return InvalidTransaction::Call.into(); + } + + // This runtime uses Substrate's pallet transaction payment. This + // makes the chain feel like a standard Substrate chain when submitting + // frame transactions and using Substrate ecosystem tools. It has the downside that + // transaction are not prioritized by gas_price. The following code reprioritizes + // transactions to overcome this. + // + // A more elegant, ethereum-first solution is + // a pallet that replaces pallet transaction payment, and allows users + // to directly specify a gas price rather than computing an effective one. + // #HopefullySomeday + + // First we pass the transactions to the standard FRAME executive. This calculates all the + // necessary tags, longevity and other properties that we will leave unchanged. + // This also assigns some priority that we don't care about and will overwrite next. + let mut intermediate_valid = Executive::validate_transaction(source, xt.clone(), block_hash)?; + + let dispatch_info = xt.get_dispatch_info(); + + // If this is a pallet ethereum transaction, then its priority is already set + // according to effective priority fee from pallet ethereum. If it is any other kind of + // transaction, we modify its priority. The goal is to arrive at a similar metric used + // by pallet ethereum, which means we derive a fee-per-gas from the txn's tip and + // weight. + Ok(match &xt.0.function { + RuntimeCall::Ethereum(transact { .. }) => intermediate_valid, + _ if dispatch_info.class != DispatchClass::Normal => intermediate_valid, + _ => { + let tip = match xt.0.signature { + None => 0, + Some((_, _, ref signed_extra)) => { + // Yuck, this depends on the index of charge transaction in Signed Extra + let charge_transaction = &signed_extra.7; + charge_transaction.tip() + } + }; + + let effective_gas = + ::GasWeightMapping::weight_to_gas( + dispatch_info.weight + ); + let tip_per_gas = if effective_gas > 0 { + tip.saturating_div(effective_gas as u128) + } else { + 0 + }; + + // Overwrite the original prioritization with this ethereum one + intermediate_valid.priority = tip_per_gas as u64; + intermediate_valid + } + }) + } + } + + impl async_backing_primitives::UnincludedSegmentApi for Runtime { + fn can_build_upon( + included_hash: ::Hash, + slot: async_backing_primitives::Slot, + ) -> bool { + ConsensusHook::can_build_upon(included_hash, slot) + } + } +} + +struct CheckInherents; + +// Parity has decided to depreciate this trait, but does not offer a satisfactory replacement, +// see issue: https://github.com/paritytech/polkadot-sdk/issues/2841 +#[allow(deprecated)] +impl cumulus_pallet_parachain_system::CheckInherents for CheckInherents { + fn check_inherents( + block: &Block, + relay_state_proof: &cumulus_pallet_parachain_system::RelayChainStateProof, + ) -> sp_inherents::CheckInherentsResult { + let relay_chain_slot = relay_state_proof + .read_slot() + .expect("Could not read the relay chain slot from the proof"); + let inherent_data = + cumulus_primitives_timestamp::InherentDataProvider::from_relay_chain_slot_and_duration( + relay_chain_slot, + sp_std::time::Duration::from_secs(6), + ) + .create_inherent_data() + .expect("Could not create the timestamp inherent data"); + inherent_data.check_extrinsics(block) + } +} + +// Nimbus's Executive wrapper allows relay validators to verify the seal digest +cumulus_pallet_parachain_system::register_validate_block!( + Runtime = Runtime, + BlockExecutor = pallet_author_inherent::BlockExecutor::, + CheckInherents = CheckInherents, +); + +moonbeam_runtime_common::impl_self_contained_call!(); + +// Shorthand for a Get field of a pallet Config. +#[macro_export] +macro_rules! get { + ($pallet:ident, $name:ident, $type:ty) => { + <<$crate::Runtime as $pallet::Config>::$name as $crate::Get<$type>>::get() + }; +} + +#[cfg(test)] +mod tests { + use super::{currency::*, *}; + + #[test] + // Helps us to identify a Pallet Call in case it exceeds the 1kb limit. + // Hint: this should be a rare case. If that happens, one or more of the dispatchable arguments + // need to be Boxed. + fn call_max_size() { + const CALL_ALIGN: u32 = 1024; + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() + <= CALL_ALIGN as usize + ); + } + + #[test] + fn currency_constants_are_correct() { + assert_eq!(SUPPLY_FACTOR, 1); + + // txn fees + assert_eq!(TRANSACTION_BYTE_FEE, Balance::from(1 * GIGAWEI)); + assert_eq!( + get!(pallet_transaction_payment, OperationalFeeMultiplier, u8), + 5_u8 + ); + assert_eq!(STORAGE_BYTE_FEE, Balance::from(100 * MICROUNIT)); + + // democracy minimums + assert_eq!( + get!(pallet_democracy, MinimumDeposit, u128), + Balance::from(4 * UNIT) + ); + assert_eq!( + get!(pallet_treasury, ProposalBondMinimum, u128), + Balance::from(1 * UNIT) + ); + + // pallet_identity deposits + assert_eq!( + get!(pallet_identity, BasicDeposit, u128), + Balance::from(1 * UNIT + 25800 * MICROUNIT) + ); + assert_eq!( + get!(pallet_identity, FieldDeposit, u128), + Balance::from(6600 * MICROUNIT) + ); + assert_eq!( + get!(pallet_identity, SubAccountDeposit, u128), + Balance::from(1 * UNIT + 5300 * MICROUNIT) + ); + + // staking minimums + assert_eq!( + get!(pallet_parachain_staking, MinCandidateStk, u128), + Balance::from(500 * UNIT) + ); + assert_eq!( + get!(pallet_parachain_staking, MinDelegation, u128), + Balance::from(1 * UNIT) + ); + + // crowdloan min reward + assert_eq!( + get!(pallet_crowdloan_rewards, MinimumReward, u128), + Balance::from(0u128) + ); + + // deposit for AuthorMapping + assert_eq!( + get!(pallet_author_mapping, DepositAmount, u128), + Balance::from(100 * UNIT) + ); + + // proxy deposits + assert_eq!( + get!(pallet_proxy, ProxyDepositBase, u128), + Balance::from(1 * UNIT + 800 * MICROUNIT) + ); + assert_eq!( + get!(pallet_proxy, ProxyDepositFactor, u128), + Balance::from(2100 * MICROUNIT) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositBase, u128), + Balance::from(1 * UNIT + 800 * MICROUNIT) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositFactor, u128), + Balance::from(5600 * MICROUNIT) + ); + } + + #[test] + fn max_offline_rounds_lower_or_eq_than_reward_payment_delay() { + assert!( + get!(pallet_parachain_staking, MaxOfflineRounds, u32) + <= get!(pallet_parachain_staking, RewardPaymentDelay, u32) + ); + } + + #[test] + // Required migration is + // pallet_parachain_staking::migrations::IncreaseMaxTopDelegationsPerCandidate + // Purpose of this test is to remind of required migration if constant is ever changed + fn updating_maximum_delegators_per_candidate_requires_configuring_required_migration() { + assert_eq!( + get!(pallet_parachain_staking, MaxTopDelegationsPerCandidate, u32), + 300 + ); + assert_eq!( + get!( + pallet_parachain_staking, + MaxBottomDelegationsPerCandidate, + u32 + ), + 50 + ); + } + + #[test] + fn test_proxy_type_can_be_decoded_from_valid_values() { + let test_cases = vec![ + // (input, expected) + (0u8, ProxyType::Any), + (1, ProxyType::NonTransfer), + (2, ProxyType::Governance), + (3, ProxyType::Staking), + (4, ProxyType::CancelProxy), + (5, ProxyType::Balances), + (6, ProxyType::AuthorMapping), + (7, ProxyType::IdentityJudgement), + ]; + + for (input, expected) in test_cases { + let actual = ProxyType::decode(&mut input.to_le_bytes().as_slice()); + assert_eq!( + Ok(expected), + actual, + "failed decoding ProxyType for value '{}'", + input + ); + } + } + + #[test] + fn configured_base_extrinsic_weight_is_evm_compatible() { + let min_ethereum_transaction_weight = WeightPerGas::get() * 21_000; + let base_extrinsic = ::BlockWeights::get() + .get(frame_support::dispatch::DispatchClass::Normal) + .base_extrinsic; + assert!(base_extrinsic.ref_time() <= min_ethereum_transaction_weight.ref_time()); + } + + #[test] + fn test_storage_growth_ratio_is_correct() { + let expected_storage_growth_ratio = BlockGasLimit::get() + .low_u64() + .saturating_div(BLOCK_STORAGE_LIMIT); + let actual_storage_growth_ratio = + ::GasLimitStorageGrowthRatio::get(); + assert_eq!( + expected_storage_growth_ratio, actual_storage_growth_ratio, + "Storage growth ratio is not correct" + ); + } +} diff --git a/tracing/2700/runtime/moonbase/src/precompiles.rs b/tracing/2700/runtime/moonbase/src/precompiles.rs new file mode 100644 index 00000000..48ffdb8f --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/precompiles.rs @@ -0,0 +1,271 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use crate::{ + asset_config::{ForeignAssetInstance, LocalAssetInstance}, + xcm_config::XcmExecutorConfig, + CouncilInstance, OpenTechCommitteeInstance, TechCommitteeInstance, TreasuryCouncilInstance, +}; +use frame_support::parameter_types; +use pallet_evm_precompile_author_mapping::AuthorMappingPrecompile; +use pallet_evm_precompile_balances_erc20::{Erc20BalancesPrecompile, Erc20Metadata}; +use pallet_evm_precompile_batch::BatchPrecompile; +use pallet_evm_precompile_blake2::Blake2F; +use pallet_evm_precompile_bn128::{Bn128Add, Bn128Mul, Bn128Pairing}; +use pallet_evm_precompile_call_permit::CallPermitPrecompile; +use pallet_evm_precompile_collective::CollectivePrecompile; +use pallet_evm_precompile_conviction_voting::ConvictionVotingPrecompile; +use pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompile; +use pallet_evm_precompile_democracy::DemocracyPrecompile; +use pallet_evm_precompile_gmp::GmpPrecompile; +use pallet_evm_precompile_identity::IdentityPrecompile; +use pallet_evm_precompile_modexp::Modexp; +use pallet_evm_precompile_parachain_staking::ParachainStakingPrecompile; +use pallet_evm_precompile_preimage::PreimagePrecompile; +use pallet_evm_precompile_proxy::{OnlyIsProxyAndProxy, ProxyPrecompile}; +use pallet_evm_precompile_randomness::RandomnessPrecompile; +use pallet_evm_precompile_referenda::ReferendaPrecompile; +use pallet_evm_precompile_registry::PrecompileRegistry; +use pallet_evm_precompile_relay_encoder::RelayEncoderPrecompile; +use pallet_evm_precompile_sha3fips::Sha3FIPS256; +use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; +use pallet_evm_precompile_xcm_transactor::{ + v1::XcmTransactorPrecompileV1, v2::XcmTransactorPrecompileV2, v3::XcmTransactorPrecompileV3, +}; +use pallet_evm_precompile_xcm_utils::{AllExceptXcmExecute, XcmUtilsPrecompile}; +use pallet_evm_precompile_xtokens::XtokensPrecompile; +use pallet_evm_precompileset_assets_erc20::{Erc20AssetsPrecompileSet, IsForeign, IsLocal}; +use precompile_utils::precompile_set::*; + +/// ERC20 metadata for the native token. +pub struct NativeErc20Metadata; + +impl Erc20Metadata for NativeErc20Metadata { + /// Returns the name of the token. + fn name() -> &'static str { + "DEV token" + } + + /// Returns the symbol of the token. + fn symbol() -> &'static str { + "DEV" + } + + /// Returns the decimals places of the token. + fn decimals() -> u8 { + 18 + } + + /// Must return `true` only if it represents the main native currency of + /// the network. It must be the currency used in `pallet_evm`. + fn is_native_currency() -> bool { + true + } +} + +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as foreign +pub const FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8; 4]; +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as local +pub const LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8, 255u8, 255u8, 254u8]; + +parameter_types! { + pub ForeignAssetPrefix: &'static [u8] = FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX; + pub LocalAssetPrefix: &'static [u8] = LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX; +} + +type EthereumPrecompilesChecks = (AcceptDelegateCall, CallableByContract, CallableByPrecompile); + +#[precompile_utils::precompile_name_from_address] +type MoonbasePrecompilesAt = ( + // Ethereum precompiles: + // We allow DELEGATECALL to stay compliant with Ethereum behavior. + PrecompileAt, ECRecover, EthereumPrecompilesChecks>, + PrecompileAt, Sha256, EthereumPrecompilesChecks>, + PrecompileAt, Ripemd160, EthereumPrecompilesChecks>, + PrecompileAt, Identity, EthereumPrecompilesChecks>, + PrecompileAt, Modexp, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Add, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Mul, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Pairing, EthereumPrecompilesChecks>, + PrecompileAt, Blake2F, EthereumPrecompilesChecks>, + // Non-Moonbeam specific nor Ethereum precompiles : + PrecompileAt, Sha3FIPS256, (CallableByContract, CallableByPrecompile)>, + RemovedPrecompileAt>, // Dispatch + PrecompileAt, ECRecoverPublicKey, (CallableByContract, CallableByPrecompile)>, + // Moonbeam specific precompiles: + PrecompileAt< + AddressU64<2048>, + ParachainStakingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2049>, + CrowdloanRewardsPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2050>, + Erc20BalancesPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2051>, + DemocracyPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2052>, + XtokensPrecompile, + ( + SubcallWithMaxNesting<1>, + CallableByContract, + CallableByPrecompile, + ), + >, + PrecompileAt< + AddressU64<2053>, + RelayEncoderPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2054>, + XcmTransactorPrecompileV1, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2055>, + AuthorMappingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2056>, + BatchPrecompile, + ( + SubcallWithMaxNesting<2>, + // Batch is the only precompile allowed to call Batch. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2057>, + RandomnessPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2058>, + CallPermitPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2059>, + ProxyPrecompile, + ( + CallableByContract>, + SubcallWithMaxNesting<0>, + // Batch is the only precompile allowed to call Proxy. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2060>, + XcmUtilsPrecompile, + CallableByContract>, + >, + PrecompileAt< + AddressU64<2061>, + XcmTransactorPrecompileV2, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2062>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2063>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2064>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2065>, + ReferendaPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2066>, + ConvictionVotingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2067>, + PreimagePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2068>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2069>, + PrecompileRegistry, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt, GmpPrecompile, SubcallWithMaxNesting<0>>, + PrecompileAt< + AddressU64<2071>, + XcmTransactorPrecompileV3, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2072>, + IdentityPrecompile, + (CallableByContract, CallableByPrecompile), + >, +); + +/// The PrecompileSet installed in the Moonbase runtime. +/// We include the nine Istanbul precompiles +/// (https://github.com/ethereum/go-ethereum/blob/3c46f557/core/vm/contracts.go#L69) +/// The following distribution has been decided for the precompiles +/// 0-1023: Ethereum Mainnet Precompiles +/// 1024-2047 Precompiles that are not in Ethereum Mainnet but are neither Moonbeam specific +/// 2048-4095 Moonbeam specific precompiles +pub type MoonbasePrecompiles = PrecompileSetBuilder< + R, + ( + // Skip precompiles if out of range. + PrecompilesInRangeInclusive<(AddressU64<1>, AddressU64<4095>), MoonbasePrecompilesAt>, + // Prefixed precompile sets (XC20) + PrecompileSetStartingWith< + ForeignAssetPrefix, + Erc20AssetsPrecompileSet, + (CallableByContract, CallableByPrecompile), + >, + PrecompileSetStartingWith< + LocalAssetPrefix, + Erc20AssetsPrecompileSet, + (CallableByContract, CallableByPrecompile), + >, + ), +>; diff --git a/tracing/2700/runtime/moonbase/src/timestamp.rs b/tracing/2700/runtime/moonbase/src/timestamp.rs new file mode 100644 index 00000000..4df4eca6 --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/timestamp.rs @@ -0,0 +1,87 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! A way to get a relyable timestamp + +use crate::Runtime; +use cumulus_pallet_parachain_system::{ + consensus_hook::UnincludedSegmentCapacity, + relay_state_snapshot::{self, ReadEntryErr}, + ConsensusHook, RelayChainStateProof, +}; +use frame_support::pallet_prelude::*; +use frame_support::storage::types::{StorageValue, ValueQuery}; +use frame_support::traits::{StorageInstance, Time}; +pub use moonbeam_core_primitives::well_known_relay_keys; + +/// Get the relay timestamp. +/// Noe that the relay timestamp is populated at the parachain system inherent. +/// If you fetch the timestamp before, you will get the timestamp of the parent block. +pub struct RelayTimestamp; +impl Time for RelayTimestamp { + type Moment = u64; + + fn now() -> Self::Moment { + RelayTimestampNow::get() + } +} + +/// A wrapper around the consensus hook to get the relay timlestmap from the relay storage proof +pub struct ConsensusHookWrapperForRelayTimestamp(core::marker::PhantomData); +impl ConsensusHook for ConsensusHookWrapperForRelayTimestamp { + fn on_state_proof(state_proof: &RelayChainStateProof) -> (Weight, UnincludedSegmentCapacity) { + let relay_timestamp: u64 = + match state_proof.read_entry(well_known_relay_keys::TIMESTAMP_NOW, None) { + Ok(relay_timestamp) => relay_timestamp, + // Log the read entry error + Err(relay_state_snapshot::Error::ReadEntry(ReadEntryErr::Proof)) => { + log::error!("Invalid relay storage proof: fail to read key TIMESTAMP_NOW"); + panic!("Invalid realy storage proof: fail to read key TIMESTAMP_NOW"); + } + Err(relay_state_snapshot::Error::ReadEntry(ReadEntryErr::Decode)) => { + log::error!("Corrupted relay storage: fail to decode value TIMESTAMP_NOW"); + panic!("Corrupted relay storage: fail to decode value TIMESTAMP_NOW"); + } + Err(relay_state_snapshot::Error::ReadEntry(ReadEntryErr::Absent)) => { + log::error!("Corrupted relay storage: value TIMESTAMP_NOW is absent!"); + panic!("Corrupted relay storage: value TIMESTAMP_NOW is absent!"); + } + // Can't return another kind of error, the blokc is invalid anyway, so we should panic + _ => unreachable!(), + }; + + let wrapper_weight = ::DbWeight::get().writes(1); + + RelayTimestampNow::put(relay_timestamp); + + let (weight, capacity) = Inner::on_state_proof(state_proof); + + (weight.saturating_add(wrapper_weight), capacity) + } +} + +// Prefix for storage value RelayTimestampNow +struct RelayTimestampNowPrefix; +impl StorageInstance for RelayTimestampNowPrefix { + const STORAGE_PREFIX: &'static str = "RelayTimestampNow"; + + fn pallet_prefix() -> &'static str { + "runtime" + } +} + +// Storage type used to store the last current relay timestamp +type RelayTimestampNow = StorageValue; diff --git a/tracing/2700/runtime/moonbase/src/xcm_config.rs b/tracing/2700/runtime/moonbase/src/xcm_config.rs new file mode 100644 index 00000000..dea67d2b --- /dev/null +++ b/tracing/2700/runtime/moonbase/src/xcm_config.rs @@ -0,0 +1,705 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! XCM configuration for Moonbase. +//! + +use super::{ + governance, AccountId, AssetId, AssetManager, Assets, Balance, Balances, DealWithFees, + Erc20XcmBridge, LocalAssets, ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, RuntimeCall, + RuntimeEvent, RuntimeOrigin, Treasury, XcmpQueue, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::{ + traits::{Hash as THash, MaybeEquivalence, PostDispatchInfoOf}, + DispatchErrorWithPostInfo, +}; + +use frame_support::{ + parameter_types, + traits::{EitherOfDiverse, Everything, Nothing, PalletInfoAccess}, +}; + +use frame_system::{EnsureRoot, RawOrigin}; +use sp_core::{ConstU32, H160, H256}; +use sp_weights::Weight; +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, DescribeAllTerminal, DescribeFamily, EnsureXcmOrigin, + FungiblesAdapter, HashedDescription, NoChecking, ParentIsPreset, RelayChainAsNative, + SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountKey20AsNative, + SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, WeightInfoBounds, + WithComputedOrigin, +}; + +use xcm::latest::prelude::*; +use xcm_executor::traits::{CallDispatcher, ConvertLocation, JustTry}; + +use orml_xcm_support::MultiNativeAsset; +use xcm_primitives::{ + AbsoluteAndRelativeReserve, AccountIdToCurrencyId, AccountIdToMultiLocation, AsAssetType, + FirstAssetTrader, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, XcmTransact, +}; + +use parity_scale_codec::{Decode, Encode}; +use scale_info::TypeInfo; + +use sp_std::{ + convert::{From, Into, TryFrom}, + prelude::*, +}; + +use orml_traits::parameter_type_with_key; + +use crate::governance::referenda::GeneralAdminOrRoot; + +parameter_types! { + // The network Id of the relay + pub const RelayNetwork: NetworkId = NetworkId::Westend; + // The relay chain Origin type + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + // The universal location within the global consensus system + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(ParachainInfo::parachain_id().into())); + + + // Self Reserve location, defines the multilocation identifiying the self-reserve currency + // This is used to match it also against our Balances pallet when we receive such + // a MultiLocation: (Self Balances pallet index) + // We use the RELATIVE multilocation + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // This is the relative view of our local assets. + // Indentified by thix prefix + generalIndex(assetId) + // We use the RELATIVE multilocation + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // If we receive a MultiLocation of type AccountKey20, just generate a native account + AccountKey20Aliases, + // Generate remote accounts according to polkadot standards + HashedDescription>, +); + +/// Wrapper type around `LocationToAccountId` to convert an `AccountId` to type `H160`. +pub struct LocationToH160; +impl ConvertLocation for LocationToH160 { + fn convert_location(location: &MultiLocation) -> Option { + >::convert_location(location) + .map(Into::into) + } +} + +// The non-reserve fungible transactor type +// It will use pallet-assets, and the Id will be matched against AsAssetType +// This is intended to match FOREIGN ASSETS +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId20 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +/// The transactor for our own chain currency. +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + xcm_builder::IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets that are not the native currency +/// This transactor uses the new reanchor logic +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + // This just tells to convert an assetId into a GeneralIndex junction prepended + // by LocalAssetsPalletLocation + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// We use all transactors +// These correspond to +// SelfReserve asset, both pre and post 0.9.16 +// Foreign assets +// Local assets, both pre and post 0.9.16 +// We can remove the Old reanchor once +// we import https://github.com/open-web3-stack/open-runtime-module-library/pull/708 +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, + Erc20XcmBridge, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + // Xcm Origins defined by a Multilocation of type AccountKey20 can be converted to a 20 byte- + // account local origin + SignedAccountKey20AsNative, +); + +parameter_types! { + /// Maximum number of instructions in a single XCM fragment. A sanity check against + /// weight caculations getting too crazy. + pub MaxInstructions: u32 = 100; +} + +/// Xcm Weigher shared between multiple Xcm-related configs. +pub type XcmWeigher = WeightInfoBounds< + moonbeam_xcm_benchmarks::weights::XcmWeight, + RuntimeCall, + MaxInstructions, +>; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +/// We do not burn anything because we want to mimic exactly what +/// the sovereign account has +pub type XcmFeesToAccount = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +// Our implementation of the Moonbeam Call +// Attachs the right origin in case the call is made to pallet-ethereum-xcm +#[cfg(not(feature = "evm-tracing"))] +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); +#[cfg(feature = "evm-tracing")] +moonbeam_runtime_common::impl_moonbeam_xcm_call_tracing!(); + +moonbeam_runtime_common::impl_evm_runner_precompile_or_eth_xcm!(); + +pub struct SafeCallFilter; +impl frame_support::traits::Contains for SafeCallFilter { + fn contains(_call: &RuntimeCall) -> bool { + // TODO review + // This needs to be addressed at EVM level + true + } +} + +parameter_types! { + pub const MaxAssetsIntoHolding: u32 = xcm_primitives::MAX_ASSETS; +} + +pub struct XcmExecutorConfig; +impl xcm_executor::Config for XcmExecutorConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + // How to withdraw and deposit an asset. + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + // Filter to the reserve withdraw operations + // Whenever the reserve matches the relative or absolute value + // of our chain, we always return the relative reserve + type IsReserve = MultiNativeAsset>; + type IsTeleporter = (); // No teleport + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = XcmWeigher; + // We use two traders + // When we receive the relative representation of the self-reserve asset, + // we use UsingComponents and the local way of handling fees + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + UsingComponents< + ::WeightToFee, + SelfReserve, + AccountId, + Balances, + DealWithFees, + >, + FirstAssetTrader, + ); + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = pallet_erc20_xcm_bridge::AssetTrapWrapper; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type PalletInstancesInfo = crate::AllPalletsWithSystem; + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type AssetLocker = (); + type AssetExchanger = (); + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = SafeCallFilter; + type Aliasers = Nothing; +} + +// Converts a Signed Local Origin into a MultiLocation +pub type LocalOriginToLocation = SignedToAccountId20; + +/// The means for routing XCM messages which are not for local execution into the right message +/// queues. +pub type XcmRouter = ( + // Two routers - use UMP to communicate with the relay chain: + cumulus_primitives_utility::ParentAsUmp, + // ..and XCMP to communicate with the sibling chains. + XcmpQueue, +); + +type XcmExecutor = pallet_erc20_xcm_bridge::XcmExecutorWrapper< + RuntimeCall, + xcm_executor::XcmExecutor, +>; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Everything; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = LocationToAccountId; + type MaxLockers = ConstU32<8>; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + // TODO pallet-xcm weights + type WeightInfo = moonbeam_weights::pallet_xcm::WeightInfo; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; + type AdminOrigin = EnsureRoot; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl cumulus_pallet_xcmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ChannelInfo = ParachainSystem; + type VersionWrapper = PolkadotXcm; + type ExecuteOverweightOrigin = EnsureRoot; + type ControllerOrigin = EnsureRoot; + type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; + type WeightInfo = moonbeam_weights::cumulus_pallet_xcmp_queue::WeightInfo; + type PriceForSiblingDelivery = polkadot_runtime_common::xcm_sender::NoPriceForMessageDelivery< + cumulus_primitives_core::ParaId, + >; +} + +impl cumulus_pallet_dmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ExecuteOverweightOrigin = EnsureRoot; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} + +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We take it +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + // Our native token + SelfReserve, + // Assets representing other chains native tokens + ForeignAsset(AssetId), + // Our local assets + LocalAssetReserve(AssetId), + // Erc20 token + Erc20 { contract_address: H160 }, +} + +impl AccountIdToCurrencyId for Runtime { + fn account_to_currency_id(account: AccountId) -> Option { + Some(match account { + // the self-reserve currency is identified by the pallet-balances address + a if a == H160::from_low_u64_be(2050).into() => CurrencyId::SelfReserve, + // the rest of the currencies, by their corresponding erc20 address + _ => match Runtime::account_to_asset_id(account) { + // We distinguish by prefix, and depending on it we create either + // Foreign or Local + Some((prefix, asset_id)) => { + if prefix == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX.to_vec() { + CurrencyId::ForeignAsset(asset_id) + } else { + CurrencyId::LocalAssetReserve(asset_id) + } + } + // If no known prefix is identified, we consider that it's a "real" erc20 token + // (i.e. managed by a real smart contract) + None => CurrencyId::Erc20 { + contract_address: account.into(), + }, + }, + }) + } +} + +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + CurrencyId::SelfReserve => { + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + CurrencyId::Erc20 { contract_address } => { + let mut location = Erc20XcmBridgePalletLocation::get(); + location + .push_interior(Junction::AccountKey20 { + key: contract_address.0, + network: None, + }) + .ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight + = Weight::from_parts(200_000_000u64, 0); + pub const MaxAssetsForTransfer: usize = 2; + // This is how we are going to detect whether the asset is a Reserve asset + // This however is the chain part only + pub SelfLocation: MultiLocation = MultiLocation::here(); + // We need this to be able to catch when someone is trying to execute a non- + // cross-chain transfer in xtokens through the absolute path way + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(ParachainInfo::parachain_id().into()) + ) + }; + +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + // AssetHub fee + (1, Some(Parachain(1001u32))) => Some(50_000_000u128), + _ => None, + } + }; +} + +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = AbsoluteAndRelativeReserve; +} + +// 1 WND/ROC should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +// For now we only allow to transact in the relay, although this might change in the future +// Transactors just defines the chains in which we allow transactions to be issued through +// xcm +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum Transactors { + Relay, +} + +// Default for benchmarking +#[cfg(feature = "runtime-benchmarks")] +impl Default for Transactors { + fn default() -> Self { + Transactors::Relay + } +} + +impl TryFrom for Transactors { + type Error = (); + fn try_from(value: u8) -> Result { + match value { + 0u8 => Ok(Transactors::Relay), + _ => Err(()), + } + } +} + +impl UtilityEncodeCall for Transactors { + fn encode_call(self, call: UtilityAvailableCalls) -> Vec { + match self { + Transactors::Relay => pallet_xcm_transactor::Pallet::::encode_call( + pallet_xcm_transactor::Pallet(sp_std::marker::PhantomData::), + call, + ), + } + } +} + +impl XcmTransact for Transactors { + fn destination(self) -> MultiLocation { + match self { + Transactors::Relay => MultiLocation::parent(), + } + } +} + +pub type DerivativeAddressRegistrationOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = Transactors; + type DerivativeAddressRegistrationOrigin = DerivativeAddressRegistrationOrigin; + type SovereignAccountDispatcherOrigin = EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type XcmSender = XcmRouter; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = AbsoluteAndRelativeReserve; + type WeightInfo = moonbeam_weights::pallet_xcm_transactor::WeightInfo; + type HrmpManipulatorOrigin = GeneralAdminOrRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + // This is the relative view of erc20 assets. + // Identified by this prefix + AccountKey20(contractAddress) + // We use the RELATIVE multilocation + pub Erc20XcmBridgePalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // To be able to support almost all erc20 implementations, + // we provide a sufficiently hight gas limit. + pub Erc20XcmBridgeTransferGasLimit: u64 = 200_000; +} + +impl pallet_erc20_xcm_bridge::Config for Runtime { + type AccountIdConverter = LocationToH160; + type Erc20MultilocationPrefix = Erc20XcmBridgePalletLocation; + type Erc20TransferGasLimit = Erc20XcmBridgeTransferGasLimit; + type EvmRunner = EvmRunnerPrecompileOrEthXcm; +} + +#[cfg(feature = "runtime-benchmarks")] +mod testing { + use super::*; + use xcm_executor::traits::ConvertLocation; + + /// This From exists for benchmarking purposes. It has the potential side-effect of calling + /// AssetManager::set_asset_type_asset_id() and should NOT be used in any production code. + impl From for CurrencyId { + fn from(location: MultiLocation) -> CurrencyId { + use xcm_primitives::AssetTypeGetter; + + // If it does not exist, for benchmarking purposes, we create the association + let asset_id = if let Some(asset_id) = + AsAssetType::::convert_location(&location) + { + asset_id + } else { + let asset_type = AssetType::Xcm(location); + let asset_id: AssetId = asset_type.clone().into(); + AssetManager::set_asset_type_asset_id(asset_type, asset_id); + asset_id + }; + + CurrencyId::ForeignAsset(asset_id) + } + } +} diff --git a/tracing/2700/runtime/moonbase/tests/common/mod.rs b/tracing/2700/runtime/moonbase/tests/common/mod.rs new file mode 100644 index 00000000..4b9d10a1 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/common/mod.rs @@ -0,0 +1,397 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#![allow(dead_code)] + +use cumulus_primitives_parachain_inherent::ParachainInherentData; +use fp_evm::GenesisAccount; +use frame_support::{ + assert_ok, + traits::{OnFinalize, OnInitialize}, +}; +use moonbase_runtime::{asset_config::AssetRegistrarMetadata, xcm_config::AssetType}; +pub use moonbase_runtime::{ + currency::{GIGAWEI, SUPPLY_FACTOR, UNIT, WEI}, + AccountId, AssetId, AssetManager, Assets, AuthorInherent, Balance, Balances, CrowdloanRewards, + Ethereum, Executive, Header, InflationInfo, LocalAssets, ParachainStaking, Range, Runtime, + RuntimeCall, RuntimeEvent, System, TransactionConverter, TransactionPaymentAsGasPrice, + UncheckedExtrinsic, HOURS, WEEKS, +}; +use nimbus_primitives::{NimbusId, NIMBUS_ENGINE_ID}; +use polkadot_parachain::primitives::HeadData; +use sp_core::{Encode, H160}; +use sp_runtime::{traits::Dispatchable, BuildStorage, Digest, DigestItem, Perbill, Percent}; + +use std::collections::BTreeMap; + +use fp_rpc::ConvertTransaction; +use pallet_transaction_payment::Multiplier; + +// A valid signed Alice transfer. +pub const VALID_ETH_TX: &str = + "02f86d8205018085174876e80085e8d4a5100082520894f24ff3a9cf04c71dbc94d0b566f7a27b9456\ + 6cac8080c001a0e1094e1a52520a75c0255db96132076dd0f1263089f838bea548cbdbfc64a4d19f031c\ + 92a8cb04e2d68d20a6158d542a07ac440cc8d07b6e36af02db046d92df"; + +// An invalid signed Alice transfer with a gas limit artifically set to 0. +pub const INVALID_ETH_TX: &str = + "f86180843b9aca00809412cb274aad8251c875c0bf6872b67d9983e53fdd01801ca00e28ba2dd3c5a\ + 3fd467d4afd7aefb4a34b373314fff470bb9db743a84d674a0aa06e5994f2d07eafe1c37b4ce5471ca\ + ecec29011f6f5bf0b1a552c55ea348df35f"; + +pub fn rpc_run_to_block(n: u32) { + while System::block_number() < n { + Ethereum::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + Ethereum::on_initialize(System::block_number()); + } +} + +/// Utility function that advances the chain to the desired block number. +/// If an author is provided, that author information is injected to all the blocks in the meantime. +pub fn run_to_block(n: u32, author: Option) { + // Finalize the first block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + while System::block_number() < n { + // Set the new block number and author + match author { + Some(ref author) => { + let pre_digest = Digest { + logs: vec![DigestItem::PreRuntime(NIMBUS_ENGINE_ID, author.encode())], + }; + System::reset_events(); + System::initialize( + &(System::block_number() + 1), + &System::parent_hash(), + &pre_digest, + ); + } + None => { + System::set_block_number(System::block_number() + 1); + } + } + + // Initialize the new block + AuthorInherent::on_initialize(System::block_number()); + ParachainStaking::on_initialize(System::block_number()); + Ethereum::on_initialize(System::block_number()); + + // Finalize the block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + ParachainStaking::on_finalize(System::block_number()); + } +} + +pub fn last_event() -> RuntimeEvent { + System::events().pop().expect("Event expected").event +} + +// Test struct with the purpose of initializing xcm assets +#[derive(Clone)] +pub struct XcmAssetInitialization { + pub asset_type: AssetType, + pub metadata: AssetRegistrarMetadata, + pub balances: Vec<(AccountId, Balance)>, + pub is_sufficient: bool, +} + +pub struct ExtBuilder { + // endowed accounts with balances + balances: Vec<(AccountId, Balance)>, + // [asset, Vec, owner] + local_assets: Vec<(AssetId, Vec<(AccountId, Balance)>, AccountId)>, + // [collator, amount] + collators: Vec<(AccountId, Balance)>, + // [delegator, collator, nomination_amount] + delegations: Vec<(AccountId, AccountId, Balance, Percent)>, + // per-round inflation config + inflation: InflationInfo, + // AuthorId -> AccoutId mappings + mappings: Vec<(NimbusId, AccountId)>, + // Crowdloan fund + crowdloan_fund: Balance, + // Chain id + chain_id: u64, + // EVM genesis accounts + evm_accounts: BTreeMap, + // [assettype, metadata, Vec] + xcm_assets: Vec, + safe_xcm_version: Option, +} + +impl Default for ExtBuilder { + fn default() -> ExtBuilder { + ExtBuilder { + balances: vec![], + delegations: vec![], + local_assets: vec![], + collators: vec![], + inflation: InflationInfo { + expect: Range { + min: 100_000 * UNIT, + ideal: 200_000 * UNIT, + max: 500_000 * UNIT, + }, + // not used + annual: Range { + min: Perbill::from_percent(50), + ideal: Perbill::from_percent(50), + max: Perbill::from_percent(50), + }, + // unrealistically high parameterization, only for testing + round: Range { + min: Perbill::from_percent(5), + ideal: Perbill::from_percent(5), + max: Perbill::from_percent(5), + }, + }, + mappings: vec![], + crowdloan_fund: 0, + chain_id: CHAIN_ID, + evm_accounts: BTreeMap::new(), + xcm_assets: vec![], + safe_xcm_version: None, + } + } +} + +impl ExtBuilder { + pub fn with_evm_accounts(mut self, accounts: BTreeMap) -> Self { + self.evm_accounts = accounts; + self + } + + pub fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self { + self.balances = balances; + self + } + + pub fn with_collators(mut self, collators: Vec<(AccountId, Balance)>) -> Self { + self.collators = collators; + self + } + + pub fn with_delegations(mut self, delegations: Vec<(AccountId, AccountId, Balance)>) -> Self { + self.delegations = delegations + .into_iter() + .map(|d| (d.0, d.1, d.2, Percent::zero())) + .collect(); + self + } + + pub fn with_xcm_assets(mut self, xcm_assets: Vec) -> Self { + self.xcm_assets = xcm_assets; + self + } + + pub fn with_crowdloan_fund(mut self, crowdloan_fund: Balance) -> Self { + self.crowdloan_fund = crowdloan_fund; + self + } + + pub fn with_mappings(mut self, mappings: Vec<(NimbusId, AccountId)>) -> Self { + self.mappings = mappings; + self + } + + pub fn with_safe_xcm_version(mut self, safe_xcm_version: u32) -> Self { + self.safe_xcm_version = Some(safe_xcm_version); + self + } + + #[allow(dead_code)] + pub fn with_inflation(mut self, inflation: InflationInfo) -> Self { + self.inflation = inflation; + self + } + + pub fn build(self) -> sp_io::TestExternalities { + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: self.balances, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_parachain_staking::GenesisConfig:: { + candidates: self.collators, + delegations: self.delegations, + inflation_config: self.inflation, + collator_commission: Perbill::from_percent(20), + parachain_bond_reserve_percent: Percent::from_percent(30), + blocks_per_round: 2 * HOURS, + num_selected_candidates: 8, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_crowdloan_rewards::GenesisConfig:: { + funded_amount: self.crowdloan_fund, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_author_mapping::GenesisConfig:: { + mappings: self.mappings, + } + .assimilate_storage(&mut t) + .unwrap(); + + let genesis_config = pallet_evm_chain_id::GenesisConfig:: { + chain_id: self.chain_id, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: self.evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_ethereum::GenesisConfig:: { + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_xcm::GenesisConfig:: { + safe_xcm_version: self.safe_xcm_version, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_transaction_payment::GenesisConfig:: { + multiplier: Multiplier::from(8u128), + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + + let local_assets = self.local_assets.clone(); + let xcm_assets = self.xcm_assets.clone(); + + ext.execute_with(|| { + // If any local assets specified, we create them here + for (asset_id, balances, owner) in local_assets.clone() { + LocalAssets::force_create(root_origin(), asset_id.into(), owner, true, 1).unwrap(); + for (account, balance) in balances { + LocalAssets::mint(origin_of(owner.into()), asset_id.into(), account, balance) + .unwrap(); + } + } + // If any xcm assets specified, we register them here + for xcm_asset_initialization in xcm_assets { + let asset_id: AssetId = xcm_asset_initialization.asset_type.clone().into(); + AssetManager::register_foreign_asset( + root_origin(), + xcm_asset_initialization.asset_type, + xcm_asset_initialization.metadata, + 1, + xcm_asset_initialization.is_sufficient, + ) + .unwrap(); + for (account, balance) in xcm_asset_initialization.balances { + Assets::mint( + origin_of(AssetManager::account_id()), + asset_id.into(), + account, + balance, + ) + .unwrap(); + } + } + System::set_block_number(1); + }); + ext + } +} + +pub const CHAIN_ID: u64 = 1281; +pub const ALICE: [u8; 20] = [4u8; 20]; +pub const ALICE_NIMBUS: [u8; 32] = [4u8; 32]; +pub const BOB: [u8; 20] = [5u8; 20]; +pub const CHARLIE: [u8; 20] = [6u8; 20]; +pub const DAVE: [u8; 20] = [7u8; 20]; +pub const EVM_CONTRACT: [u8; 20] = [8u8; 20]; + +pub fn origin_of(account_id: AccountId) -> ::RuntimeOrigin { + ::RuntimeOrigin::signed(account_id) +} + +pub fn inherent_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::none() +} + +pub fn root_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::root() +} + +pub fn unchecked_eth_tx(raw_hex_tx: &str) -> UncheckedExtrinsic { + let converter = TransactionConverter; + converter.convert_transaction(ethereum_transaction(raw_hex_tx)) +} + +pub fn ethereum_transaction(raw_hex_tx: &str) -> pallet_ethereum::Transaction { + let bytes = hex::decode(raw_hex_tx).expect("Transaction bytes."); + let transaction = ethereum::EnvelopedDecodable::decode(&bytes[..]); + assert!(transaction.is_ok()); + transaction.unwrap() +} + +/// Mock the inherent that sets validation data in ParachainSystem, which +/// contains the `relay_chain_block_number`, which is used in `author-filter` as a +/// source of randomness to filter valid authors at each block. +pub fn set_parachain_inherent_data() { + use cumulus_primitives_core::PersistedValidationData; + use cumulus_test_relay_sproof_builder::RelayStateSproofBuilder; + + let mut relay_sproof = RelayStateSproofBuilder::default(); + relay_sproof.para_id = 100u32.into(); + relay_sproof.included_para_head = Some(HeadData(vec![1, 2, 3])); + + let additional_key_values = vec![( + moonbeam_core_primitives::well_known_relay_keys::TIMESTAMP_NOW.to_vec(), + sp_timestamp::Timestamp::default().encode(), + )]; + + relay_sproof.additional_key_values = additional_key_values; + + let (relay_parent_storage_root, relay_chain_state) = relay_sproof.into_state_root_and_proof(); + + let vfp = PersistedValidationData { + relay_parent_number: 1u32, + relay_parent_storage_root, + ..Default::default() + }; + let parachain_inherent_data = ParachainInherentData { + validation_data: vfp, + relay_chain_state: relay_chain_state, + downward_messages: Default::default(), + horizontal_messages: Default::default(), + }; + assert_ok!(RuntimeCall::ParachainSystem( + cumulus_pallet_parachain_system::Call::::set_validation_data { + data: parachain_inherent_data + } + ) + .dispatch(inherent_origin())); +} diff --git a/tracing/2700/runtime/moonbase/tests/evm_tracing.rs b/tracing/2700/runtime/moonbase/tests/evm_tracing.rs new file mode 100644 index 00000000..85fffcbf --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/evm_tracing.rs @@ -0,0 +1,94 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbase EVM tracing Integration Tests + +mod common; + +#[cfg(test)] +#[cfg(feature = "evm-tracing")] +mod tests { + use super::common::*; + + use pallet_evm::AddressMapping; + use sp_core::H160; + + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; + use std::str::FromStr; + + #[test] + fn debug_runtime_api_trace_transaction() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * UNIT), + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * UNIT, + } + .into(), + ); + let transaction = ethereum_transaction(VALID_ETH_TX); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + assert!(Runtime::trace_transaction( + vec![non_eth_uxt.clone(), eth_uxt, non_eth_uxt.clone()], + &transaction + ) + .is_ok()); + }); + } + + #[test] + fn debug_runtime_api_trace_block() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * UNIT), + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * UNIT, + } + .into(), + ); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let eth_tx = ethereum_transaction(VALID_ETH_TX); + let eth_extrinsic_hash = eth_tx.hash(); + assert!(Runtime::trace_block( + vec![non_eth_uxt.clone(), eth_uxt.clone(), non_eth_uxt, eth_uxt], + vec![eth_extrinsic_hash, eth_extrinsic_hash] + ) + .is_ok()); + }); + } +} diff --git a/tracing/2700/runtime/moonbase/tests/integration_test.rs b/tracing/2700/runtime/moonbase/tests/integration_test.rs new file mode 100644 index 00000000..0cc59167 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/integration_test.rs @@ -0,0 +1,3060 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbase Runtime Integration Tests + +mod common; +use common::*; + +use pallet_balances::NegativeImbalance; +use precompile_utils::{ + precompile_set::{is_precompile_or_fail, IsActivePrecompile}, + prelude::*, + testing::*, +}; + +use fp_evm::{Context, IsPrecompileResult}; +use frame_support::{ + assert_noop, assert_ok, + dispatch::DispatchClass, + traits::{ + fungible::Inspect, Currency as CurrencyT, EnsureOrigin, PalletInfo, StorageInfo, + StorageInfoTrait, + }, + weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight}, + StorageHasher, Twox128, +}; +use moonbase_runtime::{ + asset_config::AssetRegistrarMetadata, + asset_config::LocalAssetInstance, + get, + xcm_config::{AssetType, SelfReserve}, + AccountId, AssetId, AssetManager, Assets, Balances, CouncilCollective, CrowdloanRewards, + OpenTechCommitteeCollective, ParachainStaking, PolkadotXcm, Precompiles, Runtime, + RuntimeBlockWeights, RuntimeCall, RuntimeEvent, System, TechCommitteeCollective, + TransactionPayment, TreasuryCouncilCollective, XTokens, XcmTransactor, + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; +use polkadot_parachain::primitives::Sibling; +use precompile_utils::testing::MockHandle; +use sp_runtime::{ + traits::{Convert as XcmConvert, Dispatchable}, + BuildStorage, +}; +use std::str::from_utf8; +use xcm_builder::{ParentIsPreset, SiblingParachainConvertsVia}; +use xcm_executor::traits::ConvertLocation; + +use moonbeam_xcm_benchmarks::weights::XcmWeight; +use nimbus_primitives::NimbusId; +use pallet_evm::PrecompileSet; +use pallet_evm_precompileset_assets_erc20::{ + AccountIdAssetIdConversion, IsLocal, SELECTOR_LOG_APPROVAL, SELECTOR_LOG_TRANSFER, +}; +use pallet_transaction_payment::Multiplier; +use pallet_xcm_transactor::{Currency, CurrencyPayment, HrmpOperation, TransactWeights}; +use parity_scale_codec::Encode; +use sha3::{Digest, Keccak256}; +use sp_core::{crypto::UncheckedFrom, ByteArray, Pair, H160, H256, U256}; +use sp_runtime::{DispatchError, ModuleError}; +use xcm::latest::prelude::*; + +type AuthorMappingPCall = + pallet_evm_precompile_author_mapping::AuthorMappingPrecompileCall; +type BatchPCall = pallet_evm_precompile_batch::BatchPrecompileCall; +type CrowdloanRewardsPCall = + pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompileCall; +type XcmUtilsPCall = pallet_evm_precompile_xcm_utils::XcmUtilsPrecompileCall< + Runtime, + moonbase_runtime::xcm_config::XcmExecutorConfig, +>; +type XtokensPCall = pallet_evm_precompile_xtokens::XtokensPrecompileCall; +type LocalAssetsPCall = pallet_evm_precompileset_assets_erc20::Erc20AssetsPrecompileSetCall< + Runtime, + IsLocal, + LocalAssetInstance, +>; +type XcmTransactorV1PCall = + pallet_evm_precompile_xcm_transactor::v1::XcmTransactorPrecompileV1Call; +type XcmTransactorV2PCall = + pallet_evm_precompile_xcm_transactor::v2::XcmTransactorPrecompileV2Call; + +// TODO: can we construct a const U256...? +const BASE_FEE_GENISIS: u128 = 10 * GIGAWEI; + +#[test] +fn xcmp_queue_controller_origin_is_root() { + // important for the XcmExecutionManager impl of PauseExecution which uses root origin + // to suspend/resume XCM execution in xcmp_queue::on_idle + assert_ok!( + ::ControllerOrigin::ensure_origin(root_origin()) + ); +} + +#[test] +fn fast_track_available() { + assert!(get!(pallet_democracy, InstantAllowed, bool)); +} + +#[test] +fn verify_pallet_prefixes() { + fn is_pallet_prefix(name: &str) { + // Compares the unhashed pallet prefix in the `StorageInstance` implementation by every + // storage item in the pallet P. This pallet prefix is used in conjunction with the + // item name to get the unique storage key: hash(PalletPrefix) + hash(StorageName) + // https://github.com/paritytech/substrate/blob/master/frame/support/procedural/src/pallet/ + // expand/storage.rs#L389-L401 + assert_eq!( + ::PalletInfo::name::

(), + Some(name) + ); + } + // TODO: use StorageInfoTrait from https://github.com/paritytech/substrate/pull/9246 + // This is now available with polkadot-v0.9.9 dependencies + is_pallet_prefix::("System"); + is_pallet_prefix::("Utility"); + is_pallet_prefix::("ParachainSystem"); + is_pallet_prefix::("TransactionPayment"); + is_pallet_prefix::("ParachainInfo"); + is_pallet_prefix::("EthereumChainId"); + is_pallet_prefix::("EVM"); + is_pallet_prefix::("Ethereum"); + is_pallet_prefix::("ParachainStaking"); + is_pallet_prefix::("Scheduler"); + is_pallet_prefix::("Democracy"); + is_pallet_prefix::("CouncilCollective"); + is_pallet_prefix::("TechCommitteeCollective"); + is_pallet_prefix::("Treasury"); + is_pallet_prefix::( + "OpenTechCommitteeCollective", + ); + is_pallet_prefix::("AuthorInherent"); + is_pallet_prefix::("AuthorFilter"); + is_pallet_prefix::("CrowdloanRewards"); + is_pallet_prefix::("AuthorMapping"); + is_pallet_prefix::("MaintenanceMode"); + is_pallet_prefix::("Identity"); + is_pallet_prefix::("XcmpQueue"); + is_pallet_prefix::("CumulusXcm"); + is_pallet_prefix::("DmpQueue"); + is_pallet_prefix::("PolkadotXcm"); + is_pallet_prefix::("Assets"); + is_pallet_prefix::("XTokens"); + is_pallet_prefix::("AssetManager"); + is_pallet_prefix::("Migrations"); + is_pallet_prefix::("XcmTransactor"); + is_pallet_prefix::("ProxyGenesisCompanion"); + is_pallet_prefix::("LocalAssets"); + is_pallet_prefix::("MoonbeamOrbiters"); + is_pallet_prefix::("EthereumXcm"); + is_pallet_prefix::("Randomness"); + is_pallet_prefix::("TreasuryCouncilCollective"); + + let prefix = |pallet_name, storage_name| { + let mut res = [0u8; 32]; + res[0..16].copy_from_slice(&Twox128::hash(pallet_name)); + res[16..32].copy_from_slice(&Twox128::hash(storage_name)); + res.to_vec() + }; + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"TotalIssuance".to_vec(), + prefix: prefix(b"Balances", b"TotalIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"InactiveIssuance".to_vec(), + prefix: prefix(b"Balances", b"InactiveIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Account".to_vec(), + prefix: prefix(b"Balances", b"Account"), + max_values: None, + max_size: Some(100), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Locks".to_vec(), + prefix: prefix(b"Balances", b"Locks"), + max_values: None, + max_size: Some(1287), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Reserves".to_vec(), + prefix: prefix(b"Balances", b"Reserves"), + max_values: None, + max_size: Some(1037), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Holds".to_vec(), + prefix: prefix(b"Balances", b"Holds"), + max_values: None, + max_size: Some(55), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Freezes".to_vec(), + prefix: prefix(b"Balances", b"Freezes"), + max_values: None, + max_size: Some(37), + }, + ] + ); + assert_eq!( + ::storage_info(), + vec![StorageInfo { + pallet_name: b"Sudo".to_vec(), + storage_name: b"Key".to_vec(), + prefix: prefix(b"Sudo", b"Key"), + max_values: Some(1), + max_size: Some(20), + }] + ); + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Proxies".to_vec(), + prefix: prefix(b"Proxy", b"Proxies"), + max_values: None, + max_size: Some(845), + }, + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Announcements".to_vec(), + prefix: prefix(b"Proxy", b"Announcements"), + max_values: None, + max_size: Some(1837), + } + ] + ); + assert_eq!( + ::storage_info(), + vec![StorageInfo { + pallet_name: b"MaintenanceMode".to_vec(), + storage_name: b"MaintenanceMode".to_vec(), + prefix: prefix(b"MaintenanceMode", b"MaintenanceMode"), + max_values: Some(1), + max_size: None, + },] + ); +} + +#[test] +fn test_collectives_storage_item_prefixes() { + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"CouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TechCommitteeCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TreasuryCouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"OpenTechCommitteeCollective".to_vec()); + } +} + +#[test] +fn collective_set_members_root_origin_works() { + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert_ok!(CouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TechCommitteeCollective + assert_ok!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TreasuryCouncilCollective + assert_ok!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // OpenTechCommitteeCollective + assert_ok!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + }); +} + +#[test] +fn collective_set_members_general_admin_origin_works() { + use moonbase_runtime::{ + governance::custom_origins::Origin as CustomOrigin, OriginCaller, Utility, + }; + + ExtBuilder::default().build().execute_with(|| { + let root_caller = ::RuntimeOrigin::root(); + let alice = AccountId::from(ALICE); + + // CouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TreasuryCouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // OpenTechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller, + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + + assert_eq!( + System::events() + .into_iter() + .filter_map(|r| { + match r.event { + RuntimeEvent::Utility(pallet_utility::Event::DispatchedAs { result }) + if result.is_ok() => + { + Some(true) + } + _ => None, + } + }) + .collect::>() + .len(), + 4 + ) + }); +} + +#[test] +fn collective_set_members_signed_origin_does_not_work() { + let alice = AccountId::from(ALICE); + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert!(CouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![alice, AccountId::from(BOB)], + Some(alice), + 2 + ) + .is_err()); + // TechCommitteeCollective + assert!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // TreasuryCouncilCollective + assert!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // OpenTechCommitteeCollective + assert!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + }); +} + +#[test] +fn verify_pallet_indices() { + fn is_pallet_index(index: usize) { + assert_eq!( + ::PalletInfo::index::

(), + Some(index) + ); + } + is_pallet_index::(0); + is_pallet_index::(1); + is_pallet_index::(3); + is_pallet_index::(4); + is_pallet_index::(6); + is_pallet_index::(7); + is_pallet_index::(8); + is_pallet_index::(9); + is_pallet_index::(10); + is_pallet_index::(11); + is_pallet_index::(12); + is_pallet_index::(13); + is_pallet_index::(14); + is_pallet_index::(15); + is_pallet_index::(16); + is_pallet_index::(17); + is_pallet_index::(18); + is_pallet_index::(19); + is_pallet_index::(20); + is_pallet_index::(21); + is_pallet_index::(22); + is_pallet_index::(23); + is_pallet_index::(24); + is_pallet_index::(25); + is_pallet_index::(26); + is_pallet_index::(27); + is_pallet_index::(28); + is_pallet_index::(29); + is_pallet_index::(30); + is_pallet_index::(31); + is_pallet_index::(32); + is_pallet_index::(33); + is_pallet_index::(34); + is_pallet_index::(36); + is_pallet_index::(37); + is_pallet_index::(38); + is_pallet_index::(39); + is_pallet_index::(40); + is_pallet_index::(46); +} + +#[test] +fn verify_reserved_indices() { + use frame_metadata::*; + let metadata = moonbase_runtime::Runtime::metadata(); + let metadata = match metadata.1 { + RuntimeMetadata::V14(metadata) => metadata, + _ => panic!("metadata has been bumped, test needs to be updated"), + }; + // 35: BaseFee + let reserved = vec![35]; + let existing = metadata + .pallets + .iter() + .map(|p| p.index) + .collect::>(); + assert!(reserved.iter().all(|index| !existing.contains(index))); +} + +#[test] +fn verify_proxy_type_indices() { + assert_eq!(moonbase_runtime::ProxyType::Any as u8, 0); + assert_eq!(moonbase_runtime::ProxyType::NonTransfer as u8, 1); + assert_eq!(moonbase_runtime::ProxyType::Governance as u8, 2); + assert_eq!(moonbase_runtime::ProxyType::Staking as u8, 3); + assert_eq!(moonbase_runtime::ProxyType::CancelProxy as u8, 4); + assert_eq!(moonbase_runtime::ProxyType::Balances as u8, 5); + assert_eq!(moonbase_runtime::ProxyType::AuthorMapping as u8, 6); + assert_eq!(moonbase_runtime::ProxyType::IdentityJudgement as u8, 7); +} + +#[test] +fn join_collator_candidates() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 2_000 * UNIT), + (AccountId::from(CHARLIE), 1_100 * UNIT), + (AccountId::from(DAVE), 1_000 * UNIT), + ]) + .with_collators(vec![ + (AccountId::from(ALICE), 1_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_delegations(vec![ + (AccountId::from(CHARLIE), AccountId::from(ALICE), 50 * UNIT), + (AccountId::from(CHARLIE), AccountId::from(BOB), 50 * UNIT), + ]) + .build() + .execute_with(|| { + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(ALICE)), + 1_000 * UNIT, + 2u32 + ), + pallet_parachain_staking::Error::::CandidateExists + ); + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 1_000 * UNIT, + 2u32 + ), + pallet_parachain_staking::Error::::DelegatorExists + ); + assert!(System::events().is_empty()); + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(DAVE)), + 1_000 * UNIT, + 2u32 + )); + assert_eq!( + last_event(), + RuntimeEvent::ParachainStaking( + pallet_parachain_staking::Event::JoinedCollatorCandidates { + account: AccountId::from(DAVE), + amount_locked: 1_000 * UNIT, + new_total_amt_locked: 3_100 * UNIT + } + ) + ); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(ALICE)); + assert_eq!(candidates.0[0].amount, 1_050 * UNIT); + assert_eq!(candidates.0[1].owner, AccountId::from(BOB)); + assert_eq!(candidates.0[1].amount, 1_050 * UNIT); + assert_eq!(candidates.0[2].owner, AccountId::from(DAVE)); + assert_eq!(candidates.0[2].amount, 1_000 * UNIT); + }); +} + +#[test] +fn transfer_through_evm_to_stake() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * UNIT)]) + .build() + .execute_with(|| { + // Charlie has no balance => fails to stake + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 1_000 * UNIT, + 0u32 + ), + DispatchError::Module(ModuleError { + index: 12, + error: [8, 0, 0, 0], + message: Some("InsufficientBalance") + }) + ); + + // Alice transfer from free balance 2000 UNIT to Bob + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 2_000 * UNIT, + )); + assert_eq!(Balances::free_balance(AccountId::from(BOB)), 2_000 * UNIT); + + let gas_limit = 100000u64; + // Bob transfers 1000 UNIT to Charlie via EVM + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(CHARLIE), + input: Vec::new(), + value: (1_000 * UNIT).into(), + gas_limit, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: None, + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + assert_eq!( + Balances::free_balance(AccountId::from(CHARLIE)), + 1_000 * UNIT, + ); + + // Charlie can stake now + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 1_000 * UNIT, + 0u32, + ),); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(CHARLIE)); + assert_eq!(candidates.0[0].amount, 1_000 * UNIT); + }); +} + +#[test] +fn reward_block_authors() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 100 extra tokens for her mapping deposit + (AccountId::from(ALICE), 2_100 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + for x in 2..1199 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 1_100 * UNIT, + ); + assert_eq!(Balances::usable_balance(AccountId::from(BOB)), 500 * UNIT,); + run_to_block(1201, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 1213666666584000000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 541333333292000000000, + ); + }); +} + +#[test] +fn reward_block_authors_with_parachain_bond_reserved() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 100 extra tokens for her mapping deposit + (AccountId::from(ALICE), 2_100 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + (AccountId::from(CHARLIE), UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + assert_ok!(ParachainStaking::set_parachain_bond_account( + root_origin(), + AccountId::from(CHARLIE), + ),); + for x in 2..1199 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 1_100 * UNIT, + ); + assert_eq!(Balances::usable_balance(AccountId::from(BOB)), 500 * UNIT,); + assert_eq!(Balances::usable_balance(AccountId::from(CHARLIE)), UNIT,); + run_to_block(1201, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 1182693333281650000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 525841666640825000000, + ); + // 30% reserved for parachain bond + assert_eq!( + Balances::usable_balance(AccountId::from(CHARLIE)), + 47515000000000000000, + ); + }); +} + +#[test] +fn initialize_crowdloan_addresses_with_batch_and_pay() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 450_000 * UNIT); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 450_000 * UNIT); + let expected = RuntimeEvent::Utility(pallet_utility::Event::BatchCompleted); + assert_eq!(last_event(), expected); + // This one should fail, as we already filled our data + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch { + calls: vec![RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![([4u8; 32].into(), Some(AccountId::from(ALICE)), 432000)] + } + )] + }) + .dispatch(root_origin()) + ); + let expected_fail = RuntimeEvent::Utility(pallet_utility::Event::BatchInterrupted { + index: 0, + error: DispatchError::Module(ModuleError { + index: 20, + error: [8, 0, 0, 0], + message: None, + }), + }); + assert_eq!(last_event(), expected_fail); + // Claim 1 block. + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(CHARLIE)))); + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(DAVE)))); + + let vesting_period = 4 * WEEKS as u128; + let per_block = (1_050_000 * UNIT) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (450_000 * UNIT) + per_block + ); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (450_000 * UNIT) + per_block + ); + // The total claimed reward should be equal to the account balance at this point. + assert_eq!( + Balances::balance(&AccountId::from(CHARLIE)), + (450_000 * UNIT) + per_block + ); + assert_eq!( + Balances::balance(&AccountId::from(DAVE)), + (450_000 * UNIT) + per_block + ); + assert_noop!( + CrowdloanRewards::claim(origin_of(AccountId::from(ALICE))), + pallet_crowdloan_rewards::Error::::NoAssociatedClaim + ); + }); +} + +#[test] +fn initialize_crowdloan_address_and_change_with_relay_key_sig() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + + let (pair1, _) = sp_core::sr25519::Pair::generate(); + let (pair2, _) = sp_core::sr25519::Pair::generate(); + + let public1 = pair1.public(); + let public2 = pair2.public(); + + // signature: + // WRAP_BYTES|| NetworkIdentifier|| new_account || previous_account || WRAP_BYTES + let mut message = pallet_crowdloan_rewards::WRAPPED_BYTES_PREFIX.to_vec(); + message.append(&mut b"moonbase-".to_vec()); + message.append(&mut AccountId::from(DAVE).encode()); + message.append(&mut AccountId::from(CHARLIE).encode()); + message.append(&mut pallet_crowdloan_rewards::WRAPPED_BYTES_POSTFIX.to_vec()); + + let signature1 = pair1.sign(&message); + let signature2 = pair2.sign(&message); + + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + // two relay accounts pointing at the same reward account + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public1.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public2.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 900_000 * UNIT); + + // this should fail, as we are only providing one signature + assert_noop!( + CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![(public1.into(), signature1.clone().into())] + ), + pallet_crowdloan_rewards::Error::::InsufficientNumberOfValidProofs + ); + + // this should be valid + assert_ok!(CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![ + (public1.into(), signature1.into()), + (public2.into(), signature2.into()) + ] + )); + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (900_000 * UNIT) + ); + }); +} + +#[test] +fn claim_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 450_000 * UNIT); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 450_000 * UNIT); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Alice uses the crowdloan precompile to claim through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENISIS.into(); + + // Construct the call data (selector, amount) + let mut call_data = Vec::::from([0u8; 4]); + call_data[0..4].copy_from_slice(&Keccak256::digest(b"claim()")[0..4]); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let vesting_period = 4 * WEEKS as u128; + let per_block = (1_050_000 * UNIT) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (450_000 * UNIT) + per_block + ); + }) +} + +#[test] +fn is_contributor_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Assert precompile reports Bob is not a contributor + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(BOB.into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(false); + + // Assert precompile reports Charlie is a nominator + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(CHARLIE.into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(true); + }) +} + +#[test] +fn reward_info_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + let expected_total: U256 = (1_500_000 * UNIT).into(); + let expected_claimed: U256 = (450_000 * UNIT).into(); + + // Assert precompile reports correct Charlie reward info. + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::reward_info { + contributor: Address(AccountId::from(CHARLIE).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns((expected_total, expected_claimed)); + }) +} + +#[test] +fn update_reward_address_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * UNIT) + .build() + .execute_with(|| { + // set parachain inherent data + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * UNIT + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Charlie uses the crowdloan precompile to update address through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENISIS.into(); + + // Construct the input data to check if Bob is a contributor + let mut call_data = Vec::::from([0u8; 36]); + call_data[0..4] + .copy_from_slice(&Keccak256::digest(b"update_reward_address(address)")[0..4]); + call_data[16..36].copy_from_slice(&ALICE); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + assert!(CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)).is_none()); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(ALICE)) + .unwrap() + .claimed_reward, + (450_000 * UNIT) + ); + }) +} + +#[test] +fn asset_can_be_registered() { + ExtBuilder::default().build().execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonbase_runtime::AssetId = source_location.clone().into(); + let asset_metadata = AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }; + assert_ok!(AssetManager::register_foreign_asset( + moonbase_runtime::RuntimeOrigin::root(), + source_location, + asset_metadata, + 1u128, + true, + )); + assert!(AssetManager::asset_id_type(source_id).is_some()); + }); +} + +#[test] +fn local_assets_cannot_be_create_by_signed_origins() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT * SUPPLY_FACTOR), + (AccountId::from(BOB), 1_000 * UNIT * SUPPLY_FACTOR), + ]) + .build() + .execute_with(|| { + assert_noop!( + RuntimeCall::LocalAssets( + pallet_assets::Call::::create { + id: 11u128.into(), + admin: AccountId::from(ALICE), + min_balance: 1u128 + } + ) + .dispatch(::RuntimeOrigin::signed( + AccountId::from(ALICE) + )), + frame_system::Error::::CallFiltered + ); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_supply_and_balance() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * UNIT)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Assert the asset has been created with the correct supply + assert_eq!(Assets::total_supply(relay_asset_id), 1_000 * UNIT); + + // Access totalSupply through precompile. Important that the context is correct + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::total_supply {}, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * UNIT)); + + // Access balanceOf through precompile + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(ALICE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * UNIT)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * UNIT)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Transfer tokens from Alice to Bob, 400 UNIT. + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::transfer { + to: Address(BOB.into()), + value: { 400 * UNIT }.into(), + }, + ) + .expect_cost(23763) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * UNIT)), + )) + .execute_returns(true); + + // Make sure BOB has 400 UNIT + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(BOB.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * UNIT)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_approve() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * UNIT)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Aprove Bob for spending 400 UNIT from Alice + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::approve { + spender: Address(BOB.into()), + value: { 400 * UNIT }.into(), + }, + ) + .expect_cost(14210) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_APPROVAL, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * UNIT)), + )) + .execute_returns(true); + + // Transfer tokens from Alice to Charlie by using BOB as origin + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::transfer_from { + from: Address(ALICE.into()), + to: Address(CHARLIE.into()), + value: { 400 * UNIT }.into(), + }, + ) + .expect_cost(28991) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(CHARLIE), + solidity::encode_event_data(U256::from(400 * UNIT)), + )) + .execute_returns(true); + + // Make sure CHARLIE has 400 UNIT + Precompiles::new() + .prepare_test( + CHARLIE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(CHARLIE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * UNIT)); + }); +} + +#[test] +fn xtokens_precompiles_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // We use the address of the asset as an identifier of the asset we want to transfer + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer { + currency_address: Address(asset_precompile_address.into()), + amount: 500_000_000_000_000u128.into(), + destination, + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()) + }) +} + +#[test] +fn xtokens_precompiles_transfer_multiasset() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // This time we transfer it through TransferMultiAsset + // Instead of the address, we encode directly the multilocation referencing the asset + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer_multiasset { + // We want to transfer the relay token + asset: MultiLocation::parent(), + amount: 500_000_000_000_000u128.into(), + destination, + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()); + }) +} + +#[test] +fn xtokens_precompiles_transfer_native() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // Its address is + let asset_precompile_address = H160::from_low_u64_be(2050); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // We use the address of the asset as an identifier of the asset we want to transfer + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer { + currency_address: Address(asset_precompile_address), + amount: { 500 * UNIT }.into(), + destination: destination.clone(), + weight: 4_000_000, + }, + ) + .expect_cost(16000) + .expect_no_logs() + .execute_returns(()); + }) +} + +fn run_with_system_weight(w: Weight, mut assertions: F) +where + F: FnMut() -> (), +{ + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); +} + +#[test] +#[rustfmt::skip] +fn length_fee_is_sensible() { + use sp_runtime::testing::TestXt; + + // tests that length fee is sensible for a few hypothetical transactions + ExtBuilder::default().build().execute_with(|| { + let call = frame_system::Call::remark:: { remark: vec![] }; + let uxt: TestXt<_, ()> = TestXt::new(call, Some((1u64, ()))); + + let calc_fee = |len: u32| -> Balance { + moonbase_runtime::TransactionPayment::query_fee_details(uxt.clone(), len) + .inclusion_fee + .expect("fee should be calculated") + .len_fee + }; + + // editorconfig-checker-disable + // left: cost of length fee, right: size in bytes + // /------------- proportional component: O(N * 1B) + // | /- exponential component: O(N ** 3) + // | | + assert_eq!( 1_000_000_001, calc_fee(1)); + assert_eq!( 10_000_001_000, calc_fee(10)); + assert_eq!( 100_001_000_000, calc_fee(100)); + assert_eq!( 1_001_000_000_000, calc_fee(1_000)); + assert_eq!( 11_000_000_000_000, calc_fee(10_000)); // inflection point + assert_eq!( 1_100_000_000_000_000, calc_fee(100_000)); + assert_eq!( 1_001_000_000_000_000_000, calc_fee(1_000_000)); // one UNIT, ~ 1MB + assert_eq!( 1_000_010_000_000_000_000_000, calc_fee(10_000_000)); + assert_eq!(1_000_000_100_000_000_000_000_000, calc_fee(100_000_000)); + // editorconfig-checker-enable + }); +} + +#[test] +fn multiplier_can_grow_from_zero() { + use frame_support::traits::Get; + + let minimum_multiplier = moonbase_runtime::MinimumMultiplier::get(); + let target = moonbase_runtime::TargetBlockFullness::get() + * RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = moonbase_runtime::FastAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) +} + +#[test] +fn ethereum_invalid_transaction() { + ExtBuilder::default().build().execute_with(|| { + // Ensure an extrinsic not containing enough gas limit to store the transaction + // on chain is rejected. + assert_eq!( + Executive::apply_extrinsic(unchecked_eth_tx(INVALID_ETH_TX)), + Err( + sp_runtime::transaction_validity::TransactionValidityError::Invalid( + sp_runtime::transaction_validity::InvalidTransaction::Custom(0u8) + ) + ) + ); + }); +} + +#[test] +fn transfer_ed_0_substrate() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), (1 * UNIT) + (1 * WEI)), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // Substrate transfer + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 1 * UNIT, + )); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI); + }); +} + +#[test] +fn initial_gas_fee_is_correct() { + use fp_evm::FeeCalculator; + + ExtBuilder::default().build().execute_with(|| { + let multiplier = TransactionPayment::next_fee_multiplier(); + assert_eq!(multiplier, Multiplier::from(8u128)); + + assert_eq!( + TransactionPaymentAsGasPrice::min_gas_price(), + ( + 10_000_000_000u128.into(), + Weight::from_parts(25_000_000u64, 0) + ) + ); + }); +} + +#[test] +fn transfer_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * UNIT) + (21_000 * BASE_FEE_GENISIS)) + (1 * WEI), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * UNIT).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI,); + }); +} + +#[test] +fn refund_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * UNIT) + (21_777 * BASE_FEE_GENISIS)), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer that zeroes ALICE + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * UNIT).into(), + gas_limit: 21_777u64, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // ALICE is refunded + assert_eq!( + Balances::free_balance(AccountId::from(ALICE)), + 777 * BASE_FEE_GENISIS, + ); + }); +} + +#[test] +fn author_does_not_receive_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * UNIT) + (21_000 * (500 * GIGAWEI)), + )]) + .build() + .execute_with(|| { + // Some block author as seen by pallet-evm. + let author = AccountId::from(>::find_author()); + // Currently the default impl of the evm uses `deposit_into_existing`. + // If we were to use this implementation, and for an author to receive eventual tips, + // the account needs to be somehow initialized, otherwise the deposit would fail. + Balances::make_free_balance_be(&author, 100 * UNIT); + + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * UNIT).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(300 * GIGAWEI), + max_priority_fee_per_gas: Some(U256::from(200 * GIGAWEI)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // Author free balance didn't change. + assert_eq!(Balances::free_balance(author), 100 * UNIT,); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_with_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * UNIT) + (21_000 * (2 * BASE_FEE_GENISIS)), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * UNIT).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(2 * BASE_FEE_GENISIS), + max_priority_fee_per_gas: Some(U256::from(BASE_FEE_GENISIS)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + // Fee is 1 * base_fee + tip. + let fee = ((2 * BASE_FEE_GENISIS) * 21_000) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonbase_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_without_priority_fee() { + use fp_evm::FeeCalculator; + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * UNIT) + (21_000 * (2 * BASE_FEE_GENISIS)), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * UNIT).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + // Fee is 1 GWEI base fee. + let base_fee = TransactionPaymentAsGasPrice::min_gas_price().0; + assert_eq!(base_fee.as_u128(), BASE_FEE_GENISIS); // hint in case following asserts fail + let fee = (base_fee.as_u128() * 21_000u128) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonbase_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn root_can_change_default_xcm_vers() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let source_id: moonbase_runtime::AssetId = source_location.clone().into(); + // Default XCM version is not set yet, so xtokens should fail because it does not + // know with which version to send + assert_noop!( + XTokens::transfer( + origin_of(AccountId::from(ALICE)), + moonbase_runtime::xcm_config::CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest.clone())), + WeightLimit::Limited(4000000000.into()) + ), + orml_xtokens::Error::::XcmExecutionFailed + ); + + // Root sets the defaultXcm + assert_ok!(PolkadotXcm::force_default_xcm_version( + root_origin(), + Some(2) + )); + + // Now transferring does not fail + assert_ok!(XTokens::transfer( + origin_of(AccountId::from(ALICE)), + moonbase_runtime::xcm_config::CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(4000000000.into()) + )); + }) +} + +#[test] +fn transactor_cannot_use_more_than_max_weight() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonbase_runtime::AssetId = source_location.clone().into(); + assert_ok!(XcmTransactor::register( + root_origin(), + AccountId::from(ALICE), + 0, + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + 1, + )); + + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonbase_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new( + xcm::VersionedMultiLocation::V3(MultiLocation::parent()) + )), + fee_amount: None + }, + vec![], + // 20000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonbase_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsCurrencyId( + moonbase_runtime::xcm_config::CurrencyId::ForeignAsset(source_id) + ), + fee_amount: None + }, + vec![], + // 20000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + }) +} + +#[test] +fn root_can_use_hrmp_manage() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .build() + .execute_with(|| { + // It fails sending, because the router does not work in test mode + // But all rest checks pass + assert_noop!( + XcmTransactor::hrmp_manage( + root_origin(), + HrmpOperation::Accept { + para_id: 2000u32.into() + }, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new( + xcm::VersionedMultiLocation::V3(MultiLocation::parent()) + )), + fee_amount: Some(10000) + }, + // 20000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: Some(Limited(20000.into())) + } + ), + pallet_xcm_transactor::Error::::ErrorValidating + ); + }) +} + +#[test] +fn transact_through_signed_precompile_works_v1() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::parent(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let xcm_transactor_v1_precompile_address = H160::from_low_u64_be(2054); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + Weight::from_parts(200_000, (xcm_primitives::DEFAULT_PROOF_SIZE) + 4000), + Some(4000.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + 1, + )); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v1_precompile_address, + XcmTransactorV1PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 15000, + call: bytes.into(), + }, + ) + .expect_cost(17149) + .expect_no_logs() + .execute_returns(()); + }); +} + +#[test] +fn transact_through_signed_precompile_works_v2() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::parent(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .expect_cost(17149) + .expect_no_logs() + .execute_returns(()); + }); +} + +#[test] +fn transact_through_signed_cannot_send_to_local_chain() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::here(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .execute_reverts(|output| { + from_utf8(&output) + .unwrap() + .contains("Dispatched call failed with error:") + && from_utf8(&output).unwrap().contains("ErrorValidating") + }); + }); +} + +// Test to ensure we can use either in crowdloan rewards without worrying for migrations +#[test] +fn account_id_32_encodes_like_32_byte_u8_slice() { + let account_as_account_id_32: sp_runtime::AccountId32 = [1u8; 32].into(); + let account_as_slice = [1u8; 32]; + assert_eq!(account_as_account_id_32.encode(), account_as_slice.encode()); +} + +#[test] +fn author_mapping_precompile_associate_update_and_clear() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .build() + .execute_with(|| { + let author_mapping_precompile_address = H160::from_low_u64_be(2055); + let first_nimbus_id: NimbusId = + sp_core::sr25519::Public::unchecked_from([1u8; 32]).into(); + let first_vrf_id: session_keys_primitives::VrfId = + sp_core::sr25519::Public::unchecked_from([1u8; 32]).into(); + let second_nimbus_id: NimbusId = + sp_core::sr25519::Public::unchecked_from([2u8; 32]).into(); + let second_vrf_id: session_keys_primitives::VrfId = + sp_core::sr25519::Public::unchecked_from([2u8; 32]).into(); + + // Associate it + Precompiles::new() + .prepare_test( + ALICE, + author_mapping_precompile_address, + AuthorMappingPCall::add_association { + nimbus_id: [1u8; 32].into(), + }, + ) + .expect_cost(14737) + .expect_no_logs() + .execute_returns(()); + + let expected_associate_event = + RuntimeEvent::AuthorMapping(pallet_author_mapping::Event::KeysRegistered { + nimbus_id: first_nimbus_id.clone(), + account_id: AccountId::from(ALICE), + keys: first_vrf_id.clone(), + }); + assert_eq!(last_event(), expected_associate_event); + + // Update it + Precompiles::new() + .prepare_test( + ALICE, + author_mapping_precompile_address, + AuthorMappingPCall::update_association { + old_nimbus_id: [1u8; 32].into(), + new_nimbus_id: [2u8; 32].into(), + }, + ) + .expect_cost(14515) + .expect_no_logs() + .execute_returns(()); + + let expected_update_event = + RuntimeEvent::AuthorMapping(pallet_author_mapping::Event::KeysRotated { + new_nimbus_id: second_nimbus_id.clone(), + account_id: AccountId::from(ALICE), + new_keys: second_vrf_id.clone(), + }); + assert_eq!(last_event(), expected_update_event); + + // Clear it + Precompiles::new() + .prepare_test( + ALICE, + author_mapping_precompile_address, + AuthorMappingPCall::clear_association { + nimbus_id: [2u8; 32].into(), + }, + ) + .expect_cost(14795) + .expect_no_logs() + .execute_returns(()); + + let expected_clear_event = + RuntimeEvent::AuthorMapping(pallet_author_mapping::Event::KeysRemoved { + nimbus_id: second_nimbus_id, + account_id: AccountId::from(ALICE), + keys: second_vrf_id, + }); + assert_eq!(last_event(), expected_clear_event); + }); +} + +#[test] +fn author_mapping_register_and_set_keys() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .build() + .execute_with(|| { + let author_mapping_precompile_address = H160::from_low_u64_be(2055); + let first_nimbus_id: NimbusId = + sp_core::sr25519::Public::unchecked_from([1u8; 32]).into(); + let first_vrf_key: session_keys_primitives::VrfId = + sp_core::sr25519::Public::unchecked_from([3u8; 32]).into(); + let second_nimbus_id: NimbusId = + sp_core::sr25519::Public::unchecked_from([2u8; 32]).into(); + let second_vrf_key: session_keys_primitives::VrfId = + sp_core::sr25519::Public::unchecked_from([4u8; 32]).into(); + + // Associate it + Precompiles::new() + .prepare_test( + ALICE, + author_mapping_precompile_address, + AuthorMappingPCall::set_keys { + keys: solidity::encode_arguments(( + H256::from([1u8; 32]), + H256::from([3u8; 32]), + )) + .into(), + }, + ) + .expect_cost(15816) + .expect_no_logs() + .execute_returns(()); + + let expected_associate_event = + RuntimeEvent::AuthorMapping(pallet_author_mapping::Event::KeysRegistered { + nimbus_id: first_nimbus_id.clone(), + account_id: AccountId::from(ALICE), + keys: first_vrf_key.clone(), + }); + assert_eq!(last_event(), expected_associate_event); + + // Update it + Precompiles::new() + .prepare_test( + ALICE, + author_mapping_precompile_address, + AuthorMappingPCall::set_keys { + keys: solidity::encode_arguments(( + H256::from([2u8; 32]), + H256::from([4u8; 32]), + )) + .into(), + }, + ) + .expect_cost(15816) + .expect_no_logs() + .execute_returns(()); + + let expected_update_event = + RuntimeEvent::AuthorMapping(pallet_author_mapping::Event::KeysRotated { + new_nimbus_id: second_nimbus_id.clone(), + account_id: AccountId::from(ALICE), + new_keys: second_vrf_key.clone(), + }); + assert_eq!(last_event(), expected_update_event); + }); +} + +#[test] +fn test_xcm_utils_ml_tp_account() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_address_parent: H160 = + ParentIsPreset::::convert_location(&MultiLocation::parent()) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: MultiLocation::parent(), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parent)); + + let parachain_2000_multilocation = MultiLocation::new(1, X1(Parachain(2000))); + let expected_address_parachain: H160 = + SiblingParachainConvertsVia::::convert_location( + ¶chain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parachain)); + + let alice_in_parachain_2000_multilocation = MultiLocation::new( + 1, + X2( + Parachain(2000), + AccountKey20 { + network: None, + key: ALICE, + }, + ), + ); + let expected_address_alice_in_parachain_2000: H160 = + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &alice_in_parachain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: alice_in_parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_alice_in_parachain_2000)); + }); +} + +#[test] +fn test_xcm_utils_weight_message() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_weight = + XcmWeight::::clear_origin().ref_time(); + + let message: Vec = xcm::VersionedXcm::<()>::V3(Xcm(vec![ClearOrigin])).encode(); + + let input = XcmUtilsPCall::weight_message { + message: message.into(), + }; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(0) + .expect_no_logs() + .execute_returns(expected_weight); + }); +} + +#[test] +fn test_xcm_utils_get_units_per_second() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let multilocation = SelfReserve::get(); + + let input = XcmUtilsPCall::get_units_per_second { multilocation }; + + let expected_units = + WEIGHT_REF_TIME_PER_SECOND as u128 * moonbase_runtime::currency::WEIGHT_FEE; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(expected_units); + }); +} + +#[test] +fn precompile_existence() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let precompile_addresses: std::collections::BTreeSet<_> = vec![ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 1024, 1025, 1026, 2048, 2049, 2050, 2051, 2052, 2053, 2054, + 2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, + 2069, 2070, 2071, 2072, + ] + .into_iter() + .map(H160::from_low_u64_be) + .collect(); + + for i in 0..3000 { + let address = H160::from_low_u64_be(i); + + if precompile_addresses.contains(&address) { + assert!( + is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return true", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_some(), + "execute({},..) should return Some(_)", + i + ); + } else { + assert!( + !is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return false", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_none(), + "execute({},..) should return None", + i + ); + } + } + }); +} + +#[test] +fn removed_precompiles() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let removed_precompiles = [1025]; + + for i in 1..3000 { + let address = H160::from_low_u64_be(i); + + if !is_precompile_or_fail::(address, 100_000u64).expect("to be ok") { + continue; + } + + if !removed_precompiles.contains(&i) { + assert!( + match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} should be an active precompile" + ); + continue; + } + + assert!( + !match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} shouldn't be an active precompile" + ); + + precompiles + .prepare_test(Alice, address, []) + .execute_reverts(|out| out == b"Removed precompile"); + } + }) +} + +#[test] +fn substrate_based_fees_zero_txn_costs_only_base_extrinsic() { + use frame_support::dispatch::{DispatchInfo, Pays}; + use moonbase_runtime::{currency, EXTRINSIC_BASE_WEIGHT}; + + ExtBuilder::default().build().execute_with(|| { + let size_bytes = 0; + let tip = 0; + let dispatch_info = DispatchInfo { + weight: Weight::zero(), + class: DispatchClass::Normal, + pays_fee: Pays::Yes, + }; + + assert_eq!( + TransactionPayment::compute_fee(size_bytes, &dispatch_info, tip), + EXTRINSIC_BASE_WEIGHT.ref_time() as u128 * currency::WEIGHT_FEE, + ); + }); +} + +#[test] +fn deal_with_fees_handles_tip() { + use frame_support::traits::OnUnbalanced; + use moonbase_runtime::{DealWithFees, Treasury}; + + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 10_000)]) + .build() + .execute_with(|| { + // Alice has 10_000, which makes inital supply 10_000. + // drop()ing the NegativeImbalance below will cause the total_supply to be decreased + // incorrectly (since there was never a withdraw to begin with), which in this case has + // the desired effect of showing that currency was burned. + let total_supply_before = Balances::total_issuance(); + assert_eq!(total_supply_before, 10_000); + + let fees_then_tips = vec![ + NegativeImbalance::::new(100), + NegativeImbalance::::new(1_000), + ]; + DealWithFees::on_unbalanceds(fees_then_tips.into_iter()); + + // treasury should have received 20% + assert_eq!(Balances::free_balance(&Treasury::account_id()), 220); + + // verify 80% burned + let total_supply_after = Balances::total_issuance(); + assert_eq!(total_supply_before - total_supply_after, 880); + }); +} + +#[test] +fn evm_revert_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + // Batch a transfer followed by an invalid call to batch. + // Thus BatchAll will revert the transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + input: BatchPCall::batch_all { + to: vec![Address(BOB.into()), Address(batch_precompile_address)].into(), + value: vec![U256::from(1 * UNIT), U256::zero()].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 0, "there should be no transfer event"); + }); +} + +#[test] +fn evm_success_keeps_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + input: BatchPCall::batch_all { + to: vec![Address(BOB.into())].into(), + value: vec![U256::from(1 * UNIT)].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: U256::from(BASE_FEE_GENISIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 1, "there should be 1 transfer event"); + }); +} + +#[test] +fn validate_transaction_fails_on_filtered_call() { + use sp_runtime::transaction_validity::{ + InvalidTransaction, TransactionSource, TransactionValidityError, + }; + use sp_transaction_pool::runtime_api::runtime_decl_for_tagged_transaction_queue::TaggedTransactionQueueV3; // editorconfig-checker-disable-line + + ExtBuilder::default().build().execute_with(|| { + let xt = UncheckedExtrinsic::new_unsigned( + pallet_evm::Call::::call { + source: Default::default(), + target: H160::default(), + input: Vec::new(), + value: Default::default(), + gas_limit: Default::default(), + max_fee_per_gas: Default::default(), + max_priority_fee_per_gas: Default::default(), + nonce: Default::default(), + access_list: Default::default(), + } + .into(), + ); + + assert_eq!( + Runtime::validate_transaction(TransactionSource::External, xt, Default::default(),), + Err(TransactionValidityError::Invalid(InvalidTransaction::Call)), + ); + }); +} + +#[cfg(test)] +mod fee_tests { + use super::*; + use fp_evm::FeeCalculator; + use frame_support::{ + traits::{ConstU128, OnFinalize}, + weights::{ConstantMultiplier, WeightToFee}, + }; + use moonbase_runtime::{ + currency, BlockWeights, FastAdjustingFeeUpdate, LengthToFee, MinimumMultiplier, + TargetBlockFullness, NORMAL_WEIGHT, WEIGHT_PER_GAS, + }; + use sp_runtime::{BuildStorage, FixedPointNumber, Perbill}; + + fn run_with_system_weight(w: Weight, mut assertions: F) + where + F: FnMut() -> (), + { + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); + } + + #[test] + fn test_multiplier_can_grow_from_zero() { + let minimum_multiplier = MinimumMultiplier::get(); + let target = TargetBlockFullness::get() + * BlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = FastAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) + } + + #[test] + fn test_fee_calculation() { + let base_extrinsic = BlockWeights::get() + .get(DispatchClass::Normal) + .base_extrinsic; + let multiplier = sp_runtime::FixedU128::from_float(0.999000000000000000); + let extrinsic_len = 100u32; + let extrinsic_weight = 5_000u64; + let tip = 42u128; + type WeightToFeeImpl = + ConstantMultiplier>; + type LengthToFeeImpl = LengthToFee; + + // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip + let expected_fee = + WeightToFeeImpl::weight_to_fee(&base_extrinsic) + + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( + &Weight::from_parts(extrinsic_weight, 1), + )) + LengthToFeeImpl::weight_to_fee(&Weight::from_parts(extrinsic_len as u64, 1)) + + tip; + + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier); + let actual_fee = TransactionPayment::compute_fee( + extrinsic_len, + &frame_support::dispatch::DispatchInfo { + class: DispatchClass::Normal, + pays_fee: frame_support::dispatch::Pays::Yes, + weight: Weight::from_parts(extrinsic_weight, 1), + }, + tip, + ); + + assert_eq!( + expected_fee, + actual_fee, + "The actual fee did not match the expected fee, diff {}", + actual_fee - expected_fee + ); + }); + } + + #[test] + fn test_min_gas_price_is_deterministic() { + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + let multiplier = sp_runtime::FixedU128::from_u32(1); + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier); + let actual = TransactionPaymentAsGasPrice::min_gas_price().0; + let expected: U256 = multiplier + .saturating_mul_int(currency::WEIGHT_FEE.saturating_mul(WEIGHT_PER_GAS as u128)) + .into(); + + assert_eq!(expected, actual); + }); + } + + #[test] + fn test_min_gas_price_has_no_precision_loss_from_saturating_mul_int() { + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + let multiplier_1 = sp_runtime::FixedU128::from_float(0.999593900000000000); + let multiplier_2 = sp_runtime::FixedU128::from_float(0.999593200000000000); + + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier_1); + let a = TransactionPaymentAsGasPrice::min_gas_price(); + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier_2); + let b = TransactionPaymentAsGasPrice::min_gas_price(); + + assert_ne!( + a, b, + "both gas prices were equal, unexpected precision loss incurred" + ); + }); + } + + #[test] + fn test_fee_scenarios() { + use sp_runtime::FixedU128; + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + let weight_fee_per_gas = currency::WEIGHT_FEE.saturating_mul(WEIGHT_PER_GAS as u128); + let sim = |start_gas_price: u128, fullness: Perbill, num_blocks: u64| -> U256 { + let start_multiplier = + FixedU128::from_rational(start_gas_price, weight_fee_per_gas); + pallet_transaction_payment::NextFeeMultiplier::::set(start_multiplier); + + let block_weight = NORMAL_WEIGHT * fullness; + + for i in 0..num_blocks { + System::set_block_number(i as u32); + System::set_block_consumed_resources(block_weight, 0); + TransactionPayment::on_finalize(i as u32); + } + + TransactionPaymentAsGasPrice::min_gas_price().0 + }; + + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(0), 1), + U256::from(999_000_500), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(25), 1), + U256::from(1_000_000_000), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(50), 1), + U256::from(1_001_000_500), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(100), 1), + U256::from(1_003_004_500), + ); + + // 1 "real" hour (at 12-second blocks) + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(0), 300), + U256::from(740_818_257), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(25), 300), + U256::from(1_000_000_000), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(50), 300), + U256::from(1_349_858_740), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(100), 300), + U256::from(2_459_599_798u128), + ); + + // 1 "real" day (at 12-second blocks) + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(0), 7200), + U256::from(125_000_000), // lower bound enforced + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(25), 7200), + U256::from(1_000_000_000), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(50), 7200), + U256::from(1_339_429_158_283u128), + ); + assert_eq!( + sim(1_000_000_000, Perbill::from_percent(100), 7200), + U256::from(125_000_000_000_000u128), // upper bound enforced + ); + }); + } +} diff --git a/tracing/2700/runtime/moonbase/tests/runtime_apis.rs b/tracing/2700/runtime/moonbase/tests/runtime_apis.rs new file mode 100644 index 00000000..9ed29655 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/runtime_apis.rs @@ -0,0 +1,392 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbase Runtime Api Integration Tests + +mod common; +use common::*; + +use fp_evm::GenesisAccount; +use frame_support::assert_ok; +use nimbus_primitives::NimbusId; +use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; +use sp_core::{ByteArray, H160, H256, U256}; + +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; +use std::{collections::BTreeMap, str::FromStr}; + +#[test] +fn ethereum_runtime_rpc_api_chain_id() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!(Runtime::chain_id(), CHAIN_ID); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_basic() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * UNIT)]) + .build() + .execute_with(|| { + assert_eq!( + Runtime::account_basic(H160::from(ALICE)), + EVMAccount { + balance: U256::from(2_000 * UNIT), + nonce: U256::zero() + } + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_gas_price() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!( + Runtime::gas_price(), + TransactionPaymentAsGasPrice::min_gas_price().0 + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_code_at() { + let address = H160::from(EVM_CONTRACT); + let code: Vec = vec![1, 2, 3, 4, 5]; + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: code.clone(), + nonce: Default::default(), + storage: Default::default(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::account_code_at(address), code); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_author() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .build() + .execute_with(|| { + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + assert_eq!(Runtime::author(), H160::from(ALICE)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_storage_at() { + let address = H160::from(EVM_CONTRACT); + let mut key = [0u8; 32]; + key[31..32].copy_from_slice(&[6u8][..]); + let mut value = [0u8; 32]; + value[31..32].copy_from_slice(&[7u8][..]); + let item = H256::from_slice(&key[..]); + let mut storage: BTreeMap = BTreeMap::new(); + storage.insert(H256::from_slice(&key[..]), item); + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: Vec::new(), + nonce: Default::default(), + storage: storage.clone(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::storage_at(address, U256::from(6)), item); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_call() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 2_000 * UNIT), + ]) + .build() + .execute_with(|| { + let execution_result = Runtime::call( + H160::from(ALICE), // from + H160::from(BOB), // to + Vec::new(), // data + U256::from(1000u64), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_create() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * UNIT)]) + .build() + .execute_with(|| { + let execution_result = Runtime::create( + H160::from(ALICE), // from + vec![0, 1, 1, 0], // data + U256::zero(), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_transaction_statuses() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24ff3a9cf04c71dbc94d0b566f7a27b94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 2_000 * UNIT), + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .build() + .execute_with(|| { + let _result = Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)); + rpc_run_to_block(2); + let statuses = + Runtime::current_transaction_statuses().expect("Transaction statuses result."); + assert_eq!(statuses.len(), 1); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_block() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .build() + .execute_with(|| { + rpc_run_to_block(2); + let block = Runtime::current_block().expect("Block result."); + assert_eq!(block.header.number, U256::from(1u8)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_receipts() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24ff3a9cf04c71dbc94d0b566f7a27b94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 2_000 * UNIT), + (AccountId::from(ALICE), 2_000 * UNIT), + (AccountId::from(BOB), 1_000 * UNIT), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * UNIT, + )]) + .build() + .execute_with(|| { + let _result = Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)); + rpc_run_to_block(2); + let receipts = Runtime::current_receipts().expect("Receipts result."); + assert_eq!(receipts.len(), 1); + }); +} + +#[test] +fn txpool_runtime_api_extrinsic_filter() { + ExtBuilder::default().build().execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * UNIT, + } + .into(), + ); + + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let txpool = >::extrinsic_filter( + vec![eth_uxt.clone(), non_eth_uxt.clone()], + vec![unchecked_eth_tx(VALID_ETH_TX), non_eth_uxt], + ); + assert_eq!(txpool.ready.len(), 1); + assert_eq!(txpool.future.len(), 1); + }); +} + +#[test] +fn can_author_when_selected_is_empty() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 20_000_000 * UNIT), + (AccountId::from(BOB), 10_000_000 * UNIT), + ]) + .with_collators(vec![(AccountId::from(ALICE), 2_000_000 * UNIT)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 1); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: Default::default(), + parent_hash: Default::default(), + state_root: Default::default(), + }; + + // Base case: ALICE can author blocks when she is the only candidate + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Remove ALICE from candidate pool, leaving the candidate_pool empty + assert_ok!(ParachainStaking::go_offline(origin_of(AccountId::from( + ALICE + )))); + + // Need to fast forward to right before the next session, which is when selected candidates + // will be updated. We want to test the creation of the first block of the next session. + run_to_block(1799, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1799, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Check that it works as expected after session update + run_to_block(1800, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1800, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + }); +} + +// Some Priority-related test ideas +// 1. Eth balance transfer with various gas prices. Priority == gas price +// 2. Eth contract call with various gas prices. Priority == gas price +// 3. System remark with no tip -> calculate expected priority from gas weight mapping +// 4. System remark with tip. +// 5. Operational dispatch has higher priority than normal for otherwise same transactions diff --git a/tracing/2700/runtime/moonbase/tests/xcm_mock/mod.rs b/tracing/2700/runtime/moonbase/tests/xcm_mock/mod.rs new file mode 100644 index 00000000..56d396e9 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/xcm_mock/mod.rs @@ -0,0 +1,274 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +pub mod parachain; +pub mod relay_chain; +pub mod statemint_like; +use cumulus_primitives_core::ParaId; +use pallet_xcm_transactor::relay_indices::*; +use sp_runtime::traits::AccountIdConversion; +use sp_runtime::{AccountId32, BuildStorage}; +use xcm_simulator::{decl_test_network, decl_test_parachain, decl_test_relay_chain, TestExt}; + +use polkadot_runtime_parachains::configuration::{ + GenesisConfig as ConfigurationGenesisConfig, HostConfiguration, +}; +use polkadot_runtime_parachains::paras::{ + GenesisConfig as ParasGenesisConfig, ParaGenesisArgs, ParaKind, +}; + +use sp_core::{H160, U256}; +use std::{collections::BTreeMap, str::FromStr}; + +pub const PARAALICE: [u8; 20] = [1u8; 20]; +pub const RELAYALICE: AccountId32 = AccountId32::new([0u8; 32]); +pub const RELAYBOB: AccountId32 = AccountId32::new([2u8; 32]); + +pub fn para_a_account() -> AccountId32 { + ParaId::from(1).into_account_truncating() +} + +pub fn para_b_account() -> AccountId32 { + ParaId::from(2).into_account_truncating() +} + +pub fn para_a_account_20() -> parachain::AccountId { + ParaId::from(1).into_account_truncating() +} + +pub fn evm_account() -> H160 { + H160::from_str("1000000000000000000000000000000000000001").unwrap() +} + +pub fn mock_para_genesis_info() -> ParaGenesisArgs { + ParaGenesisArgs { + genesis_head: vec![1u8].into(), + validation_code: vec![1u8].into(), + para_kind: ParaKind::Parachain, + } +} + +pub fn mock_relay_config() -> HostConfiguration { + HostConfiguration:: { + hrmp_channel_max_capacity: u32::MAX, + hrmp_channel_max_total_size: u32::MAX, + hrmp_max_parachain_inbound_channels: 10, + hrmp_max_parachain_outbound_channels: 10, + hrmp_channel_max_message_size: u32::MAX, + // Changed to avoid aritmetic errors within hrmp_close + max_downward_message_size: 100_000u32, + ..Default::default() + } +} + +decl_test_parachain! { + pub struct ParaA { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(1), + } +} + +decl_test_parachain! { + pub struct ParaB { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(2), + } +} + +decl_test_parachain! { + pub struct ParaC { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(3), + } +} + +decl_test_parachain! { + pub struct Statemint { + Runtime = statemint_like::Runtime, + XcmpMessageHandler = statemint_like::MsgQueue, + DmpMessageHandler = statemint_like::MsgQueue, + new_ext = statemint_ext(4), + } +} + +decl_test_relay_chain! { + pub struct Relay { + Runtime = relay_chain::Runtime, + RuntimeCall = relay_chain::RuntimeCall, + RuntimeEvent = relay_chain::RuntimeEvent, + XcmConfig = relay_chain::XcmConfig, + MessageQueue = relay_chain::MessageQueue, + System = relay_chain::System, + new_ext = relay_ext(vec![1, 2, 3, 4]), + } +} + +decl_test_network! { + pub struct MockNet { + relay_chain = Relay, + parachains = vec![ + (1, ParaA), + (2, ParaB), + (3, ParaC), + (4, Statemint), + ], + } +} + +pub const INITIAL_BALANCE: u128 = 10_000_000_000_000_000; + +pub const INITIAL_EVM_BALANCE: u128 = 0; +pub const INITIAL_EVM_NONCE: u32 = 1; + +pub fn para_ext(para_id: u32) -> sp_io::TestExternalities { + use parachain::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(PARAALICE.into(), INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_xcm_transactor::GenesisConfig:: { + // match relay runtime construct_runtime order in xcm_mock::relay_chain + relay_indices: RelayChainIndices { + hrmp: 6u8, + init_open_channel: 0u8, + accept_open_channel: 1u8, + close_channel: 2u8, + cancel_open_request: 6u8, + ..Default::default() + }, + ..Default::default() + } + .assimilate_storage(&mut t) + .unwrap(); + + // EVM accounts are self-sufficient. + let mut evm_accounts = BTreeMap::new(); + evm_accounts.insert( + evm_account(), + fp_evm::GenesisAccount { + nonce: U256::from(INITIAL_EVM_NONCE), + balance: U256::from(INITIAL_EVM_BALANCE), + storage: Default::default(), + code: vec![ + 0x00, // STOP + ], + }, + ); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn statemint_ext(para_id: u32) -> sp_io::TestExternalities { + use statemint_like::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![ + (RELAYALICE.into(), INITIAL_BALANCE), + (RELAYBOB.into(), INITIAL_BALANCE), + ], + } + .assimilate_storage(&mut t) + .unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn relay_ext(paras: Vec) -> sp_io::TestExternalities { + use relay_chain::{Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(RELAYALICE, INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + let para_genesis: Vec<(ParaId, ParaGenesisArgs)> = paras + .iter() + .map(|¶_id| (para_id.into(), mock_para_genesis_info())) + .collect(); + + let genesis_config = ConfigurationGenesisConfig:: { + config: mock_relay_config(), + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = ParasGenesisConfig:: { + paras: para_genesis, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + }); + ext +} +pub type RelayChainPalletXcm = pallet_xcm::Pallet; +pub type Hrmp = polkadot_runtime_parachains::hrmp::Pallet; + +pub type StatemintBalances = pallet_balances::Pallet; +pub type StatemintChainPalletXcm = pallet_xcm::Pallet; +pub type StatemintAssets = pallet_assets::Pallet; + +pub type ParachainPalletXcm = pallet_xcm::Pallet; +pub type Assets = pallet_assets::Pallet; +pub type LocalAssets = pallet_assets::Pallet; + +pub type Balances = pallet_balances::Pallet; +pub type Treasury = pallet_treasury::Pallet; +pub type AssetManager = pallet_asset_manager::Pallet; +pub type XTokens = orml_xtokens::Pallet; +pub type RelayBalances = pallet_balances::Pallet; +pub type ParaBalances = pallet_balances::Pallet; +pub type XcmTransactor = pallet_xcm_transactor::Pallet; diff --git a/tracing/2700/runtime/moonbase/tests/xcm_mock/parachain.rs b/tracing/2700/runtime/moonbase/tests/xcm_mock/parachain.rs new file mode 100644 index 00000000..c4d8109c --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -0,0 +1,1243 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Parachain runtime mock. + +use frame_support::{ + construct_runtime, + dispatch::GetDispatchInfo, + ensure, parameter_types, + traits::{ + AsEnsureOriginWithArg, ConstU32, Everything, Get, InstanceFilter, Nothing, PalletInfoAccess, + }, + weights::Weight, + PalletId, +}; + +use frame_system::{pallet_prelude::BlockNumberFor, EnsureNever, EnsureRoot}; +use pallet_xcm::migration::v1::VersionUncheckedMigrateToV1; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use sp_core::H256; +use sp_runtime::{ + traits::{BlakeTwo256, Hash, IdentityLookup, MaybeEquivalence, Zero}, + Permill, +}; +use sp_std::{convert::TryFrom, prelude::*}; +use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; + +use cumulus_primitives_core::relay_chain::HrmpChannelId; +use orml_traits::parameter_type_with_key; +use pallet_ethereum::PostLogContent; +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; +use polkadot_parachain::primitives::{Id as ParaId, Sibling}; +use xcm::latest::{ + AssetId as XcmAssetId, Error as XcmError, ExecuteXcm, + Junction::{PalletInstance, Parachain}, + Junctions, MultiLocation, NetworkId, Outcome, Xcm, +}; +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; + +#[cfg(feature = "runtime-benchmarks")] +use moonbeam_runtime_common::benchmarking::BenchmarkHelper as ArgumentsBenchmarkHelper; +use scale_info::TypeInfo; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; + +pub type AccountId = moonbeam_core_primitives::AccountId; +pub type Balance = u128; +pub type AssetId = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 0; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 10; // Does not really matter as this will be only called by root + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + AccountKey20Aliases, + // The rest of multilocations convert via hashing it + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + SignedAccountKey20AsNative, +); + +parameter_types! { + pub const UnitWeightCost: Weight = Weight::from_parts(1u64, 1u64); + pub MaxInstructions: u32 = 100; +} + +// Instructing how incoming xcm assets will be handled +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId32 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +/// The transactor for our own chain currency. +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets besides the native currency on this chain. +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// These will be our transactors +// We use both transactors +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, +); + +pub type XcmRouter = super::ParachainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +pub type XcmFeesToAccount_ = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +parameter_types! { + // We cannot skip the native trader for some specific tests, so we will have to work with + // a native trader that charges same number of units as weight + // We use both the old and new anchoring logics + pub ParaTokensPerSecond: (XcmAssetId, u128, u128) = ( + Concrete(SelfReserve::get()), + 1000000000000, + 0, + ); +} + +parameter_types! { + pub const RelayNetwork: NetworkId = NetworkId::Polkadot; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + + // New Self Reserve location, defines the multilocation identifiying the self-reserve currency + // This is used to match it also against our Balances pallet when we receive such + // a MultiLocation: (Self Balances pallet index) + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + pub const MaxAssetsIntoHolding: u32 = 64; +} + +use frame_system::RawOrigin; +use sp_runtime::traits::PostDispatchInfoOf; +use sp_runtime::DispatchErrorWithPostInfo; +use xcm_executor::traits::CallDispatcher; +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = orml_xcm_support::MultiNativeAsset< + xcm_primitives::AbsoluteAndRelativeReserve, + >; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + // We use three traders + // When we receive either representation of the self-reserve asset, + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + FixedRateOfFungible, + xcm_primitives::FirstAssetTrader, + ); + + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + SelfReserve, + ForeignAsset(AssetId), + LocalAssetReserve(AssetId), +} + +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + CurrencyId::SelfReserve => { + // For now and until Xtokens is adapted to handle 0.9.16 version we use + // the old anchoring here + // This is not a problem in either cases, since the view of the destination + // chain does not change + // TODO! change this to NewAnchoringSelfReserve once xtokens is adapted for it + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxAssetsForTransfer: usize = 2; + pub SelfLocation: MultiLocation = MultiLocation::here(); + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(MsgQueue::parachain_id().into()) + ) + }; +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + (1, Some(Parachain(4u32))) => Some(50u128), + _ => None, + } + }; +} + +// The XCM message wrapper wrapper +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const ProposalBondMinimum: Balance = 0; + pub const SpendPeriod: u32 = 0; + pub const TreasuryId: PalletId = PalletId(*b"pc/trsry"); + pub const MaxApprovals: u32 = 100; + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + type ApproveOrigin = EnsureRoot; + type RejectOrigin = EnsureRoot; + type RuntimeEvent = RuntimeEvent; + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ProposalBondMinimum; + type SpendPeriod = SpendPeriod; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = MaxApprovals; + type WeightInfo = (); + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = ArgumentsBenchmarkHelper; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} + +// Pallet to provide the version, used to test runtime upgrade version changes +#[frame_support::pallet] +pub mod mock_version_changer { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_version)] + pub(super) type CurrentVersion = StorageValue<_, XcmVersion, ValueQuery>; + + impl Get for Pallet { + fn get() -> XcmVersion { + Self::current_version() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + VersionChanged(XcmVersion), + } + + impl Pallet { + pub fn set_version(version: XcmVersion) { + CurrentVersion::::put(version); + Self::deposit_event(Event::VersionChanged(version)); + } + } +} + +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl mock_version_changer::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +pub type LocalOriginToLocation = + xcm_primitives::SignedToAccountId20; + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = frame_support::traits::Nothing; + type XcmExecutor = XcmExecutor; + // Do not allow teleports + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + // We use a custom one to test runtime ugprades + type AdvertisedXcmVersion = XcmVersioner; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} + +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We simply hash the AssetType and take the lowest 128 bits +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::pallet_prelude::DispatchResult; +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset, + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset, + metadata.name, + metadata.symbol, + metadata.decimals, + false, + ) + } + + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + LocalAssets::force_create( + RuntimeOrigin::root(), + asset, + owner, + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(ASSET_PRECOMPILE_ADDRESS_PREFIX, asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + Ok(()) + } + + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + Assets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + Ok(()) + } + + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + LocalAssets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { + id: asset.into(), + }, + ) + .get_dispatch_info() + .weight + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, +} + +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a local asset counter to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetMetadata; + type ForeignAssetType = AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = EnsureRoot; + type LocalAssetModifierOrigin = EnsureRoot; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = (); +} + +// 1 ROC/WND should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = MockTransactors; + type DerivativeAddressRegistrationOrigin = EnsureRoot; + type SovereignAccountDispatcherOrigin = frame_system::EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type XcmSender = XcmRouter; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; + type WeightInfo = (); + type HrmpManipulatorOrigin = EnsureRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + pub const MinimumPeriod: u64 = 1000; +} +impl pallet_timestamp::Config for Runtime { + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = MinimumPeriod; + type WeightInfo = (); +} + +use sp_core::U256; + +const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; +/// Block storage limit in bytes. Set to 40 KB. +const BLOCK_STORAGE_LIMIT: u64 = 40 * 1024; + +parameter_types! { + pub BlockGasLimit: U256 = U256::from(u64::MAX); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); + pub GasLimitPovSizeRatio: u64 = { + let block_gas_limit = BlockGasLimit::get().min(u64::MAX.into()).low_u64(); + block_gas_limit.saturating_div(MAX_POV_SIZE) + }; + pub GasLimitStorageGrowthRatio: u64 = + BlockGasLimit::get().min(u64::MAX.into()).low_u64().saturating_div(BLOCK_STORAGE_LIMIT); +} + +impl pallet_evm::Config for Runtime { + type FeeCalculator = (); + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + + type CallOrigin = pallet_evm::EnsureAddressRoot; + type WithdrawOrigin = pallet_evm::EnsureAddressNever; + + type AddressMapping = pallet_evm::IdentityAddressMapping; + type Currency = Balances; + type Runner = pallet_evm::runner::stack::Runner; + + type RuntimeEvent = RuntimeEvent; + type PrecompilesType = (); + type PrecompilesValue = (); + type ChainId = (); + type BlockGasLimit = BlockGasLimit; + type OnChargeTransaction = (); + type BlockHashMapping = pallet_evm::SubstrateBlockHashMapping; + type FindAuthor = (); + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = Timestamp; + type WeightInfo = pallet_evm::weights::SubstrateWeight; +} + +pub struct NormalFilter; +impl frame_support::traits::Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + _ => true, + } + } +} + +// We need to use the encoding from the relay mock runtime +#[derive(Encode, Decode)] +pub enum RelayCall { + #[codec(index = 5u8)] + // the index should match the position of the module in `construct_runtime!` + Utility(UtilityCall), + #[codec(index = 6u8)] + // the index should match the position of the module in `construct_runtime!` + Hrmp(HrmpCall), +} + +#[derive(Encode, Decode)] +pub enum UtilityCall { + #[codec(index = 1u8)] + AsDerivative(u16), +} + +// HRMP call encoding, needed for xcm transactor pallet +#[derive(Encode, Decode)] +pub enum HrmpCall { + #[codec(index = 0u8)] + InitOpenChannel(ParaId, u32, u32), + #[codec(index = 1u8)] + AcceptOpenChannel(ParaId), + #[codec(index = 2u8)] + CloseChannel(HrmpChannelId), + #[codec(index = 6u8)] + CancelOpenRequest(HrmpChannelId, u32), +} + +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum MockTransactors { + Relay, +} + +impl xcm_primitives::XcmTransact for MockTransactors { + fn destination(self) -> MultiLocation { + match self { + MockTransactors::Relay => MultiLocation::parent(), + } + } +} + +impl xcm_primitives::UtilityEncodeCall for MockTransactors { + fn encode_call(self, call: xcm_primitives::UtilityAvailableCalls) -> Vec { + match self { + MockTransactors::Relay => match call { + xcm_primitives::UtilityAvailableCalls::AsDerivative(a, b) => { + let mut call = + RelayCall::Utility(UtilityCall::AsDerivative(a.clone())).encode(); + call.append(&mut b.clone()); + call + } + }, + } + } +} + +pub struct MockHrmpEncoder; +impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { + fn hrmp_encode_call( + call: xcm_primitives::HrmpAvailableCalls, + ) -> Result, xcm::latest::Error> { + match call { + xcm_primitives::HrmpAvailableCalls::InitOpenChannel(a, b, c) => Ok(RelayCall::Hrmp( + HrmpCall::InitOpenChannel(a.clone(), b.clone(), c.clone()), + ) + .encode()), + xcm_primitives::HrmpAvailableCalls::AcceptOpenChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::AcceptOpenChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CloseChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::CloseChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CancelOpenRequest(a, b) => { + Ok(RelayCall::Hrmp(HrmpCall::CancelOpenRequest(a.clone(), b.clone())).encode()) + } + } + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} +parameter_types! { + pub ReservedXcmpWeight: Weight = Weight::from_parts(u64::max_value(), 0); +} + +#[derive( + Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Encode, Decode, Debug, MaxEncodedLen, TypeInfo, +)] +pub enum ProxyType { + NotAllowed = 0, + Any = 1, +} + +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType {} + +impl InstanceFilter for ProxyType { + fn filter(&self, _c: &RuntimeCall) -> bool { + match self { + ProxyType::NotAllowed => false, + ProxyType::Any => true, + } + } + fn is_superset(&self, _o: &Self) -> bool { + false + } +} + +impl Default for ProxyType { + fn default() -> Self { + Self::NotAllowed + } +} + +parameter_types! { + pub const ProxyCost: u64 = 1; +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + type ProxyDepositBase = ProxyCost; + type ProxyDepositFactor = ProxyCost; + type MaxProxies = ConstU32<32>; + type WeightInfo = pallet_proxy::weights::SubstrateWeight; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ProxyCost; + type AnnouncementDepositFactor = ProxyCost; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will iMmediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +type Block = frame_system::mocking::MockBlockU32; + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + MsgQueue: mock_msg_queue, + XcmVersioner: mock_version_changer, + + PolkadotXcm: pallet_xcm, + Assets: pallet_assets, + CumulusXcm: cumulus_pallet_xcm, + XTokens: orml_xtokens, + AssetManager: pallet_asset_manager, + XcmTransactor: pallet_xcm_transactor, + Treasury: pallet_treasury, + LocalAssets: pallet_assets::, + Proxy: pallet_proxy, + + Timestamp: pallet_timestamp, + EVM: pallet_evm, + Ethereum: pallet_ethereum, + EthereumXcm: pallet_ethereum_xcm, + } +); + +pub(crate) fn para_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::tokens::{PayFromAccount, UnityAssetBalanceConversion}; +use frame_support::traits::{OnFinalize, OnInitialize, OnRuntimeUpgrade}; +pub(crate) fn on_runtime_upgrade() { + VersionUncheckedMigrateToV1::::on_runtime_upgrade(); +} + +pub(crate) fn para_roll_to(n: BlockNumber) { + while System::block_number() < n { + PolkadotXcm::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + PolkadotXcm::on_initialize(System::block_number()); + } +} diff --git a/tracing/2700/runtime/moonbase/tests/xcm_mock/relay_chain.rs b/tracing/2700/runtime/moonbase/tests/xcm_mock/relay_chain.rs new file mode 100644 index 00000000..31fb79a3 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/xcm_mock/relay_chain.rs @@ -0,0 +1,414 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, parameter_types, + traits::{Everything, Nothing, ProcessMessage, ProcessMessageError}, +}; +use frame_system::pallet_prelude::BlockNumberFor; +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, IdentityLookup}, + AccountId32, +}; + +use frame_support::weights::{Weight, WeightMeter}; +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_runtime_parachains::{ + configuration, dmp, hrmp, + inclusion::{AggregateMessageOrigin, UmpQueueId}, + origin, paras, shared, +}; +use sp_runtime::transaction_validity::TransactionPriority; +use sp_runtime::Permill; +use xcm::latest::prelude::*; +use xcm_builder::{ + Account32Hash, AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, ChildParachainConvertsVia, + ChildSystemParachainAsSuperuser, CurrencyAdapter as XcmCurrencyAdapter, FixedRateOfFungible, + FixedWeightBounds, IsConcrete, ProcessXcmMessage, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{Config, XcmExecutor}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WeightInfo = (); + type PalletsOrigin = OriginCaller; +} + +impl shared::Config for Runtime {} + +impl configuration::Config for Runtime { + type WeightInfo = configuration::TestWeightInfo; +} + +parameter_types! { + pub KsmLocation: MultiLocation = Here.into(); + pub const KusamaNetwork: NetworkId = NetworkId::Kusama; + pub const AnyNetwork: Option = None; + pub UniversalLocation: InteriorMultiLocation = Here; +} + +pub type SovereignAccountOf = ( + ChildParachainConvertsVia, + AccountId32Aliases, + // Not enabled in the relay per se, but we enable it to test + // the transact_through_signed extrinsic + Account32Hash, +); + +pub type LocalAssetTransactor = + XcmCurrencyAdapter, SovereignAccountOf, AccountId, ()>; + +type LocalOriginConverter = ( + SovereignSignedViaLocation, + ChildParachainAsNative, + SignedAccountId32AsNative, + ChildSystemParachainAsSuperuser, +); + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(1000u64, 1000u64); + pub KsmPerSecond: (AssetId, u128, u128) = (Concrete(KsmLocation::get()), 1, 1); + pub const MaxInstructions: u32 = 100; + pub const MaxAssetsIntoHolding: u32 = 64; + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +pub type XcmRouter = super::RelayChainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + pub Kusama: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(KsmLocation::get()) }); + pub Statemine: MultiLocation = Parachain(4).into(); + pub KusamaForStatemine: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Statemine::get()); +} + +pub type TrustedTeleporters = xcm_builder::Case; + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = LocalAssetTransactor; + type OriginConverter = LocalOriginConverter; + type IsReserve = (); + type IsTeleporter = TrustedTeleporters; + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = XcmPallet; + type AssetTrap = XcmPallet; + type AssetClaims = XcmPallet; + type SubscriptionService = XcmPallet; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +pub type LocalOriginToLocation = SignedToAccountId32; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmRouter = XcmRouter; + // Anyone can execute XCM messages locally... + type ExecuteXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +parameter_types! { + pub const FirstMessageFactorPercent: u64 = 100; +} + +parameter_types! { + pub const ParasUnsignedPriority: TransactionPriority = TransactionPriority::max_value(); +} + +/// A very dumb implementation of `EstimateNextSessionRotation`. At the moment of writing, this +/// is more to satisfy type requirements rather than to test anything. +pub struct TestNextSessionRotation; + +impl frame_support::traits::EstimateNextSessionRotation for TestNextSessionRotation { + fn average_session_length() -> u32 { + 10 + } + + fn estimate_current_session_progress(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } + + fn estimate_next_session_rotation(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } +} + +impl paras::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = paras::TestWeightInfo; + type UnsignedPriority = ParasUnsignedPriority; + type NextSessionRotation = TestNextSessionRotation; + type QueueFootprinter = (); + type OnNewHead = (); +} + +impl dmp::Config for Runtime {} + +impl hrmp::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type WeightInfo = TestHrmpWeightInfo; + type ChannelManager = frame_system::EnsureRoot; +} + +impl frame_system::offchain::SendTransactionTypes for Runtime +where + RuntimeCall: From, +{ + type Extrinsic = UncheckedExtrinsic; + type OverarchingCall = RuntimeCall; +} + +impl origin::Config for Runtime {} + +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +type Block = frame_system::mocking::MockBlockU32; + +parameter_types! { + pub MessageQueueServiceWeight: Weight = Weight::from_parts(1_000_000_000, 1_000_000); + pub const MessageQueueHeapSize: u32 = 65_536; + pub const MessageQueueMaxStale: u32 = 16; +} + +pub struct MessageProcessor; +impl ProcessMessage for MessageProcessor { + type Origin = AggregateMessageOrigin; + + fn process_message( + message: &[u8], + origin: Self::Origin, + meter: &mut WeightMeter, + id: &mut [u8; 32], + ) -> Result { + let para = match origin { + AggregateMessageOrigin::Ump(UmpQueueId::Para(para)) => para, + }; + ProcessXcmMessage::, RuntimeCall>::process_message( + message, + Junction::Parachain(para.into()), + meter, + id, + ) + } +} + +impl pallet_message_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Size = u32; + type HeapSize = MessageQueueHeapSize; + type MaxStale = MessageQueueMaxStale; + type ServiceWeight = MessageQueueServiceWeight; + type MessageProcessor = MessageProcessor; + type QueueChangeHandler = (); + type WeightInfo = (); + type QueuePausedQuery = (); +} + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + ParasOrigin: origin, + MessageQueue: pallet_message_queue, + XcmPallet: pallet_xcm, + Utility: pallet_utility, + Hrmp: hrmp, + Dmp: dmp, + Paras: paras, + Configuration: configuration, + } +); + +pub(crate) fn relay_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::{OnFinalize, OnInitialize}; +pub(crate) fn relay_roll_to(n: BlockNumber) { + while System::block_number() < n { + XcmPallet::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + XcmPallet::on_initialize(System::block_number()); + } +} + +/// A weight info that is only suitable for testing. +pub struct TestHrmpWeightInfo; + +impl hrmp::WeightInfo for TestHrmpWeightInfo { + fn hrmp_accept_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn force_clean_hrmp(_: u32, _: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_close(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_open(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_cancel_open_request(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_close_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_init_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn clean_open_channel_requests(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_open_hrmp_channel(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn establish_system_channel() -> Weight { + Weight::from_parts(1, 0) + } + + fn poke_channel_deposits() -> Weight { + Weight::from_parts(1, 0) + } +} diff --git a/tracing/2700/runtime/moonbase/tests/xcm_mock/statemint_like.rs b/tracing/2700/runtime/moonbase/tests/xcm_mock/statemint_like.rs new file mode 100644 index 00000000..7348b799 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/xcm_mock/statemint_like.rs @@ -0,0 +1,553 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, match_types, parameter_types, + traits::{AsEnsureOriginWithArg, Everything, Nothing}, + weights::Weight, +}; +use frame_system::{EnsureRoot, EnsureSigned}; + +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, Hash, IdentityLookup}, + AccountId32, +}; + +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; + +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_parachain::primitives::Sibling; +use sp_std::convert::TryFrom; +use xcm::latest::prelude::*; +use xcm::VersionedXcm; +use xcm_builder::{ + AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, AsPrefixedGeneralIndex, + ConvertedConcreteId, CurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type AssetId = u128; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 0; // 1 UNIT deposit to create asset + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + /// Key = 32 bytes, Value = 36 bytes (32+1+1+1+1) + // https://github.com/paritytech/substrate/blob/069917b/frame/assets/src/lib.rs#L257L271 + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const ExecutiveBody: BodyId = BodyId::Executive; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = (); + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +parameter_types! { + pub const KsmLocation: MultiLocation = MultiLocation::parent(); + pub const RelayNetwork: NetworkId = NetworkId::Kusama; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + pub Local: MultiLocation = Here.into(); + pub CheckingAccount: AccountId = PolkadotXcm::check_account(); + pub KsmPerSecond: (xcm::latest::prelude::AssetId, u128, u128) = + (Concrete(KsmLocation::get()), 1, 1); +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // Straight up local `AccountId32` origins just alias directly to `AccountId`. + AccountId32Aliases, +); + +/// Means for transacting the native currency on this chain. +pub type CurrencyTransactor = CurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching the given location or name: + IsConcrete, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We don't track any teleports of `Balances`. + (), +>; + +/// Means for transacting assets besides the native currency on this chain. +pub type FungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We only want to allow teleports of known assets. We use non-zero issuance as an indication + // that this asset is known. + NoChecking, + // The account to use for tracking teleports. + CheckingAccount, +>; +/// Means for transacting assets on this chain. +pub type AssetTransactors = (CurrencyTransactor, FungiblesTransactor); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Native signed account converter; this just converts an `AccountId32` origin into a normal + // `Origin::Signed` origin of the same 32-byte value. + SignedAccountId32AsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, +); + +parameter_types! { + // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. + pub UnitWeightCost: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxInstructions: u32 = 100; +} + +match_types! { + pub type ParentOrParentsExecutivePlurality: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } + }; +} +match_types! { + pub type ParentOrSiblings: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(_) } + }; +} + +pub type Barrier = ( + TakeWeightCredit, + AllowTopLevelPaidExecutionFrom, + // Parent and its exec plurality get free execution + AllowUnpaidExecutionFrom, + // Expected responses are OK. + AllowKnownQueryResponses, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, +); + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); + pub const MaxAssetsIntoHolding: u32 = 64; +} + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = + orml_xcm_support::MultiNativeAsset; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = Barrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +/// No local origins on this chain are allowed to dispatch XCM sends/executions. +pub type LocalOriginToLocation = SignedToAccountId32; + +pub type XcmRouter = super::ParachainXcmRouter; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Pallet to cover test cases for change https://github.com/paritytech/cumulus/pull/831 +#[frame_support::pallet] +pub mod mock_statemint_prefix { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + #[pallet::without_storage_info] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_prefix)] + pub(super) type CurrentPrefix = StorageValue<_, MultiLocation, ValueQuery>; + + impl Get for Pallet { + fn get() -> MultiLocation { + Self::current_prefix() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // Changed Prefix + PrefixChanged(MultiLocation), + } + + impl Pallet { + pub fn set_prefix(prefix: MultiLocation) { + CurrentPrefix::::put(&prefix); + Self::deposit_event(Event::PrefixChanged(prefix)); + } + } +} + +impl mock_statemint_prefix::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +type Block = frame_system::mocking::MockBlockU32; +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + PolkadotXcm: pallet_xcm, + CumulusXcm: cumulus_pallet_xcm, + MsgQueue: mock_msg_queue, + Assets: pallet_assets, + PrefixChanger: mock_statemint_prefix, + + } +); diff --git a/tracing/2700/runtime/moonbase/tests/xcm_tests.rs b/tracing/2700/runtime/moonbase/tests/xcm_tests.rs new file mode 100644 index 00000000..e8ce1821 --- /dev/null +++ b/tracing/2700/runtime/moonbase/tests/xcm_tests.rs @@ -0,0 +1,4057 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbase Runtime Xcm Tests + +mod xcm_mock; +use frame_support::{ + assert_ok, + traits::{ConstU32, PalletInfo, PalletInfoAccess}, + weights::constants::WEIGHT_REF_TIME_PER_SECOND, + weights::Weight, + BoundedVec, +}; +use pallet_asset_manager::LocalAssetIdCreator; +use pallet_xcm_transactor::{ + Currency, CurrencyPayment, HrmpInitParams, HrmpOperation, TransactWeights, +}; +use sp_std::boxed::Box; +use xcm::latest::prelude::*; +use xcm::{VersionedMultiLocation, WrapVersion}; +use xcm_builder::HashedDescriptionDescribeFamilyAllTerminal; +use xcm_executor::traits::ConvertLocation; +use xcm_mock::*; +use xcm_primitives::{UtilityEncodeCall, DEFAULT_PROOF_SIZE}; +use xcm_simulator::TestExt; +mod common; +use common::ExtBuilder; +use cumulus_primitives_core::relay_chain::HrmpChannelId; +// Send a relay asset (like DOT) to a parachain A +#[test] +fn receive_relay_asset_from_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Verify that parachain received the asset + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +// Send relay asset (like DOT) back from Parachain A to relaychain +#[test] +fn send_relay_asset_to_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register relay asset in paraA + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // Free execution + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // First send relay chain asset to Parachain like in previous test + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Lets gather the balance before sending back money + let mut balance_before_sending = 0; + Relay::execute_with(|| { + balance_before_sending = RelayBalances::free_balance(&RELAYALICE); + }); + + // We now send back some money to the relay + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: RELAYALICE.into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 123, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The balances in paraAlice should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); + + // Balances in the relay should have been received + Relay::execute_with(|| { + // Free execution,x full amount received + assert!(RelayBalances::free_balance(&RELAYALICE) > balance_before_sending); + }); +} + +#[test] +fn send_relay_asset_to_para_b() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register asset in paraA. Free execution + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // First send relay chain asset to Parachain A like in previous test + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Now send relay asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 23); + }); + + // Para B balances should have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_to_para_b() { + MockNet::reset(); + + // this represents the asset in paraA + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Native token is substracted in paraA + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Asset is minted in paraB + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_from_para_b_to_para_c() { + MockNet::reset(); + + // Represents para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in parachain B. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register para A asset in parachain C. Free execution + ParaC::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send para A asset from para B to para C + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(3), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The message passed through parachainA so we needed to pay since its the native token + ParaC::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 96); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_and_back_to_para_a() { + MockNet::reset(); + + // Para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in para B + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send back para A asset to para A + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // Weight used is 4 + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 4 + ); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_and_back_to_para_a_with_new_reanchoring() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A asset has been credited + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // This time we will force the new reanchoring by manually sending the + // Message through polkadotXCM pallet + + let dest = MultiLocation { + parents: 1, + interior: X1(Parachain(1)), + }; + + let reanchored_para_a_balances = MultiLocation::new(0, X1(PalletInstance(1u8))); + + let message = xcm::VersionedXcm::<()>::V3(Xcm(vec![ + WithdrawAsset((reanchored_para_a_balances.clone(), 100).into()), + ClearOrigin, + BuyExecution { + fees: (reanchored_para_a_balances, 100).into(), + weight_limit: Limited(80.into()), + }, + DepositAsset { + assets: All.into(), + beneficiary: MultiLocation::new( + 0, + X1(AccountKey20 { + network: None, + key: PARAALICE, + }), + ), + }, + ])); + ParaB::execute_with(|| { + // Send a message to the sovereign account in ParaA to withdraw + // and deposit asset + assert_ok!(ParachainPalletXcm::send( + parachain::RuntimeOrigin::root(), + Box::new(dest.into()), + Box::new(message), + )); + }); + + ParaA::execute_with(|| { + // Weight used is 4 + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 4 + ); + }); +} + +#[test] +fn receive_relay_asset_with_trader() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // We are sending 100 tokens from relay. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Therefore with no refund, we should receive 10 tokens less + // Native trader fails for this, and we use the asset trader + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 100).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // non-free execution, not full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // In destination chain, we only need 4 weight + // We put 10 weight, 6 of which should be refunded and 4 of which should go to treasury + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(10u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // We are sending 100 tokens from para A. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Since we set 10 weight in destination chain, 25 will be charged upfront + // 15 of those will be refunded, while 10 will go to treasury as the true weight used + // will be 4 + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader_and_fee() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // With these units per second, 80K weight convrets to 1 asset unit + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 12500000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // we use transfer_with_fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_with_fee( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + 1, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // 100 tokens transferred plus 1 taken from fees + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 - 1 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received because trully the xcm instruction does not cost + // what it is specified + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 101); + }); +} + +#[test] +fn error_when_not_paying_enough() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + // We are sending 100 tokens from relay. + // If we set the dest weight to be 1e7, we know the buy_execution will spend 1e7*1e6/1e12 = 10 + // Therefore with no refund, we should receive 10 tokens less + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 5).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // amount not received as it is not paying enough + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); +} + +#[test] +fn transact_through_derivative_multilocation() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + // 4000000000 + 3000 we should have taken out 4000003000 tokens from the caller + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000003000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + // 4000000000 + 3000 we should have taken out 4000003000 tokens from the caller + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + false + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 9000 correspond to 4000009000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn transact_through_sovereign() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000003000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000009000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn test_automatic_versioning_on_runtime_upgrade_with_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A and set XCM version to 1 + ParaA::execute_with(|| { + parachain::XcmVersioner::set_version(1); + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let response = Response::Version(2); + let querier: MultiLocation = Here.into(); + + // This is irrelevant, nothing will be done with this message, + // but we need to pass a message as an argument to trigger the storage change + let mock_message: Xcm<()> = Xcm(vec![QueryResponse { + query_id: 0, + response, + max_weight: Weight::zero(), + querier: Some(querier), + }]); + // The router is mocked, and we cannot use WrapVersion in ChildParachainRouter. So we will force + // it directly here + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + Relay::execute_with(|| { + // This sets the default version, for not known destinations + assert_ok!(RelayChainPalletXcm::force_default_xcm_version( + relay_chain::RuntimeOrigin::root(), + Some(2) + )); + + // Wrap version, which sets VersionedStorage + // This is necessary because the mock router does not use wrap_version, but + // this is not necessary in prod + assert_ok!(::wrap_version( + &Parachain(1).into(), + mock_message + )); + + // Transfer assets. Since it is an unknown destination, it will query for version + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + + // Let's advance the relay. This should trigger the subscription message + relay_chain::relay_roll_to(2); + + // queries should have been updated + assert!(RelayChainPalletXcm::query(0).is_some()); + }); + + let expected_supported_version: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 1, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the version change + assert!(relay_chain::relay_events().contains(&expected_supported_version)); + }); + + // ParaA changes version to 2, and calls on_runtime_upgrade. This should notify the targets + // of the new version change + ParaA::execute_with(|| { + // Set version + parachain::XcmVersioner::set_version(2); + // Do runtime upgrade + parachain::on_runtime_upgrade(); + // Initialize block, to call on_initialize and notify targets + parachain::para_roll_to(2); + // Expect the event in the parachain + assert!(parachain::para_events().iter().any(|e| matches!( + e, + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::VersionChangeNotified { + result: 2, + .. + }) + ))); + }); + + // This event should have been seen in the relay + let expected_supported_version_2: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 2, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the new version change + assert!(relay_chain::relay_events().contains(&expected_supported_version_2)); + }); +} + +#[test] +fn test_automatic_versioning_on_runtime_upgrade_with_para_b() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + let response = Response::Version(2); + let querier: MultiLocation = Here.into(); + + // This is irrelevant, nothing will be done with this message, + // but we need to pass a message as an argument to trigger the storage change + let mock_message: Xcm<()> = Xcm(vec![QueryResponse { + query_id: 0, + response, + max_weight: Weight::zero(), + querier: Some(querier), + }]); + + ParaA::execute_with(|| { + // advertised version + parachain::XcmVersioner::set_version(2); + }); + + ParaB::execute_with(|| { + // Let's try with v0 + parachain::XcmVersioner::set_version(0); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + ParaA::execute_with(|| { + // This sets the default version, for not known destinations + assert_ok!(ParachainPalletXcm::force_default_xcm_version( + parachain::RuntimeOrigin::root(), + Some(2) + )); + // Wrap version, which sets VersionedStorage + assert_ok!(::wrap_version( + &MultiLocation::new(1, X1(Parachain(2))).into(), + mock_message + )); + + parachain::para_roll_to(2); + + // queries should have been updated + assert!(ParachainPalletXcm::query(0).is_some()); + }); + + let expected_supported_version: parachain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 1, + interior: X1(Parachain(2)), + }, + version: 0, + } + .into(); + + ParaA::execute_with(|| { + // Assert that the events vector contains the version change + assert!(parachain::para_events().contains(&expected_supported_version)); + }); + + // Let's ensure talking in v0 works + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // ParaB changes version to 2, and calls on_runtime_upgrade. This should notify the targets + // of the new version change + ParaB::execute_with(|| { + // Set version + parachain::XcmVersioner::set_version(2); + // Do runtime upgrade + parachain::on_runtime_upgrade(); + // Initialize block, to call on_initialize and notify targets + parachain::para_roll_to(2); + // Expect the event in the parachain + assert!(parachain::para_events().iter().any(|e| matches!( + e, + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::VersionChangeNotified { + result: 2, + .. + }) + ))); + }); + + // This event should have been seen in para A + let expected_supported_version_2: parachain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 1, + interior: X1(Parachain(2)), + }, + version: 2, + } + .into(); + + // Para A should have received the version change + ParaA::execute_with(|| { + // Assert that the events vector contains the new version change + assert!(parachain::para_events().contains(&expected_supported_version_2)); + }); +} + +#[test] +fn receive_asset_with_no_sufficients_not_possible_if_non_existent_account() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should not have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 0); + }); + + // Send native token to fresh_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + fresh_account.into(), + 100 + )); + }); + + // Re-send tokens + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn receive_assets_with_sufficients_true_allows_non_funded_account_to_receive_assets() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn evm_account_receiving_assets_should_handle_sufficients_ref_count() { + MockNet::reset(); + + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + // Evm account is self sufficient + ParaA::execute_with(|| { + assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Evm account sufficient ref count increased by 1. + ParaA::execute_with(|| { + // TODO: since the suicided logic was introduced the data of the smart contract is not + // removed, it will have to be updated in a future release when there is the ability to + // remove contract data + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 2); + }); + + ParaA::execute_with(|| { + // Remove the account from the evm context. + parachain::EVM::remove_account(&evm_account()); + // Evm account sufficient ref count decreased by 1. + // TODO: since the suicided logic was introduced the data of the smart contract is not + // removed, it will have to be updated in a future release when there is the ability to + // remove contract data + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); +} + +#[test] +fn empty_account_should_not_be_reset() { + MockNet::reset(); + + // Test account has nonce 1 on genesis. + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send native token to evm_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + evm_account_id, + 100 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Empty the assets from the account. + // As this makes the account go below the `min_balance`, the account is considered dead + // at eyes of pallet-assets, and the consumer reference is decreased by 1 and is now Zero. + assert_ok!(parachain::Assets::transfer( + parachain::RuntimeOrigin::signed(evm_account_id), + source_id, + PARAALICE.into(), + 123 + )); + // Verify account asset balance is Zero. + assert_eq!( + parachain::Assets::balance(source_id, &evm_account_id.into()), + 0 + ); + // Because we no longer have consumer references, we can set the balance to Zero. + // This would reset the account if our ED were to be > than Zero. + assert_ok!(ParaBalances::force_set_balance( + parachain::RuntimeOrigin::root(), + evm_account_id, + 0, + )); + // Verify account native balance is Zero. + assert_eq!(ParaBalances::free_balance(&evm_account_id), 0); + // Remove the account from the evm context. + // This decreases the sufficients reference by 1 and now is Zero. + parachain::EVM::remove_account(&evm_account()); + // Verify reference count. + let account = parachain::System::account(evm_account_id); + // TODO: after introducing the suicided fix the value for account.sufficients will remain 1 + // until the storage is not completely removed, it will have to be decreased to 0 once the + // storage can be fully removed + assert_eq!(account.sufficients, 1); + assert_eq!(account.consumers, 0); + assert_eq!(account.providers, 1); + // We expect the account to be alive in a Zero ED context. + // TODO: after introducing the suicided fix the nonce is increased by 1 + // until the storage is not completely removed, it will have to be decreased to 1 once the + // storage can be fully removed + assert_eq!(parachain::System::account_nonce(evm_account_id), 2); + }); +} + +#[test] +fn test_statemint_like() { + MockNet::reset(); + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemint_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + let statemint_asset_a_balances = MultiLocation::new( + 1, + X3( + Parachain(4), + PalletInstance(5), + xcm::latest::prelude::GeneralIndex(0u128), + ), + ); + let source_location = parachain::AssetType::Xcm(statemint_asset_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"StatemintToken".to_vec(), + symbol: b"StatemintToken".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + Statemint::execute_with(|| { + // Set new prefix + statemint_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + assert_ok!(StatemintAssets::create( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 1 + )); + + assert_ok!(StatemintAssets::mint( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 300000000000000 + )); + + // This is needed, since the asset is created as non-sufficient + assert_ok!(StatemintBalances::transfer_allow_death( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send asset with previous prefix + assert_ok!(StatemintChainPalletXcm::reserve_transfer_assets( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + xcm::latest::prelude::GeneralIndex(0), + ), + 123 + ) + .into() + ), + 0, + )); + }); + + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b() { + ExtBuilder::default().build().execute_with(|| { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location = parachain::AssetType::Xcm(para_a_local_asset); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::LocalAssetReserve(asset_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b_and_send_it_back_together_with_some_dev() { + ExtBuilder::default().build().execute_with(|| { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location_local_asset = parachain::AssetType::Xcm(para_a_local_asset); + let source_id_local_asset: parachain::AssetId = source_location_local_asset.clone().into(); + + let asset_metadata_local_asset = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location_balances = parachain::AssetType::Xcm(para_a_balances); + let source_id_balances: parachain::AssetId = source_location_balances.clone().into(); + + let asset_metadata_balances = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_local_asset.clone(), + asset_metadata_local_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_local_asset, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_balances.clone(), + asset_metadata_balances, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_balances, + 0u128, + 1 + )); + }); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::LocalAssetReserve(asset_id), 100), + (parachain::CurrencyId::SelfReserve, 1000000) + ], + 0, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + let mut alith_balance_asset_before = 0; + let mut alith_balance_native_token_before = 0; + + ParaA::execute_with(|| { + alith_balance_asset_before = LocalAssets::balance(asset_id, &PARAALICE.into()); + alith_balance_native_token_before = Balances::free_balance(&PARAALICE.into()); + }); + + let new_dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!( + Assets::balance(source_id_local_asset, &PARAALICE.into()), + 100 + ); + assert_eq!( + Assets::balance(source_id_balances, &PARAALICE.into()), + 1000000 + ); + + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::ForeignAsset(source_id_balances), 4), + ( + parachain::CurrencyId::ForeignAsset(source_id_local_asset), + 50 + ) + ], + 0, + Box::new(VersionedMultiLocation::V3(new_dest)), + WeightLimit::Limited(Weight::from_parts(4u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + let alith_balance_asset_after = LocalAssets::balance(asset_id, &PARAALICE.into()); + let alith_balance_native_token_after = Balances::free_balance(&PARAALICE.into()); + assert_eq!(alith_balance_asset_after, alith_balance_asset_before + 50); + assert_eq!( + alith_balance_native_token_before, + alith_balance_native_token_after + ); + }); + }); +} + +#[test] +fn send_statemint_asset_from_para_a_to_statemint_with_relay_fee() { + MockNet::reset(); + + // Relay asset + let relay_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_relay_id: parachain::AssetId = relay_location.clone().into(); + + let relay_asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Statemint asset + let statemint_asset = MultiLocation::new( + 1, + X3(Parachain(4u32), PalletInstance(5u8), GeneralIndex(10u128)), + ); + let statemint_location_asset = parachain::AssetType::Xcm(statemint_asset); + let source_statemint_asset_id: parachain::AssetId = statemint_location_asset.clone().into(); + + let asset_metadata_statemint_asset = parachain::AssetMetadata { + name: b"USDC".to_vec(), + symbol: b"USDC".to_vec(), + decimals: 12, + }; + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemint_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + relay_location.clone(), + relay_asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + relay_location, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + statemint_location_asset.clone(), + asset_metadata_statemint_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + statemint_location_asset, + 0u128, + 1 + )); + }); + + let parachain_beneficiary_from_relay: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send relay chain asset to Alice in Parachain A + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_relay) + .clone() + .into() + ), + Box::new((Here, 200).into()), + 0, + )); + }); + + Statemint::execute_with(|| { + // Set new prefix + statemint_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + + assert_ok!(StatemintAssets::create( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 1 + )); + + assert_ok!(StatemintAssets::mint( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 300000000000000 + )); + + // Send some native statemint tokens to sovereign for fees. + // We can't pay fees with USDC as the asset is minted as non-sufficient. + assert_ok!(StatemintBalances::transfer_allow_death( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Send statemint USDC asset to Alice in Parachain A + let parachain_beneficiary_from_statemint: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send with new prefix + assert_ok!(StatemintChainPalletXcm::reserve_transfer_assets( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_statemint) + .clone() + .into() + ), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + GeneralIndex(10), + ), + 125 + ) + .into() + ), + 0, + )); + }); + + let statemint_beneficiary = MultiLocation { + parents: 1, + interior: X2( + Parachain(4), + AccountId32 { + network: None, + id: RELAYBOB.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // Alice has received 125 USDC + assert_eq!( + Assets::balance(source_statemint_asset_id, &PARAALICE.into()), + 125 + ); + + // Alice has received 200 Relay assets + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 200); + }); + + Statemint::execute_with(|| { + // Check that BOB's balance is empty before the transfer + assert_eq!(StatemintAssets::account_balances(RELAYBOB), vec![]); + }); + + // Transfer USDC from Parachain A to Statemint using Relay asset as fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + ( + parachain::CurrencyId::ForeignAsset(source_statemint_asset_id), + 100 + ), + (parachain::CurrencyId::ForeignAsset(source_relay_id), 100) + ], + 1, + Box::new(VersionedMultiLocation::V3(statemint_beneficiary)), + WeightLimit::Limited(Weight::from_parts(80_000_000u64, 100_000u64)) + )); + }); + + ParaA::execute_with(|| { + // Alice has 100 USDC less + assert_eq!( + Assets::balance(source_statemint_asset_id, &PARAALICE.into()), + 25 + ); + + // Alice has 100 relay asset less + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 100); + }); + + Statemint::execute_with(|| { + // Check that BOB received 100 USDC on statemint + assert_eq!(StatemintAssets::account_balances(RELAYBOB), vec![(10, 100)]); + }); +} + +#[test] +fn transact_through_signed_multilocation() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4000.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000004000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // 100 transferred + assert_eq!(RelayBalances::free_balance(¶_a_account()), 100); + + // 4000005186 refunded + assert_eq!(RelayBalances::free_balance(&derived), 4000005186); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + assert!(ParaBalances::free_balance(&derived) == 0); + + assert!(ParaBalances::free_balance(¶_a_account_20()) == 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: Some(overall_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + }); + + ParaB::execute_with(|| { + // Check the derived account was refunded + assert_eq!(ParaBalances::free_balance(&derived), 8993); + + // Check the transfer was executed + assert_eq!(ParaBalances::free_balance(¶_a_account_20()), 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact { + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer went through + assert!( + ParaBalances::free_balance(&PARAALICE.into()) + == parachain_b_alice_balances_before + 100 + ); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_no_proxy_fails() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer wasn't executed + assert!(ParaBalances::free_balance(&PARAALICE.into()) == parachain_b_alice_balances_before); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_proxy_succeeds() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let transfer_recipient = evm_account(); + let mut transfer_recipient_balance_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + transfer_recipient_balance_before = ParaBalances::free_balance(&transfer_recipient.into()); + + // Add proxy ALICE -> derived + let _ = parachain::Proxy::add_proxy_delegate( + &PARAALICE.into(), + derived, + parachain::ProxyType::Any, + 0, + ); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V2(xcm_primitives::EthereumXcmTransactionV2 { + gas_limit: U256::from(21000), + action: pallet_ethereum::TransactionAction::Call(transfer_recipient.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer was executed + assert!( + ParaBalances::free_balance(&transfer_recipient.into()) + == transfer_recipient_balance_before + 100 + ); + }); +} + +#[test] +fn hrmp_init_accept_through_root() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_b_account(), + 1000u128 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp init channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::InitOpen(HrmpInitParams { + para_id: 2u32.into(), + proposed_max_capacity: 1, + proposed_max_message_size: 1 + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelRequested { + sender: 1u32.into(), + recipient: 2u32.into(), + proposed_max_capacity: 1u32, + proposed_max_message_size: 1u32, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); + ParaB::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp accept channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Accept { + para_id: 1u32.into() + }, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelAccepted { + sender: 1u32.into(), + recipient: 2u32.into(), + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +#[test] +fn hrmp_close_works() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(Hrmp::force_open_hrmp_channel( + relay_chain::RuntimeOrigin::root(), + 1u32.into(), + 2u32.into(), + 1u32, + 1u32 + )); + assert_ok!(Hrmp::force_process_hrmp_open( + relay_chain::RuntimeOrigin::root(), + 1u32 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Close(HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into() + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::ChannelClosed { + by_parachain: 1u32.into(), + channel_id: HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into(), + }, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +use parity_scale_codec::{Decode, Encode}; +use sp_io::hashing::blake2_256; + +// Helper to derive accountIds +pub fn derivative_account_id(who: sp_runtime::AccountId32, index: u16) -> sp_runtime::AccountId32 { + let entropy = (b"modlpy/utilisuba", who, index).using_encoded(blake2_256); + sp_runtime::AccountId32::decode(&mut &entropy[..]).expect("valid account id") +} diff --git a/tracing/2700/runtime/moonbeam/Cargo.toml b/tracing/2700/runtime/moonbeam/Cargo.toml new file mode 100644 index 00000000..6d73317f --- /dev/null +++ b/tracing/2700/runtime/moonbeam/Cargo.toml @@ -0,0 +1,355 @@ +[package] +name = "moonbeam-runtime" +authors = { workspace = true } +build = "build.rs" +description = "Moonbeam Runtime" +edition = "2021" +homepage = "https://moonbeam.network" +license = "GPL-3.0-only" +version = "0.8.4" + +[dependencies] +hex-literal = { workspace = true, optional = true } +log = { workspace = true } +num_enum = { workspace = true } +rlp = { workspace = true, optional = true } +serde = { workspace = true, features = [ "derive" ] } +sha3 = { workspace = true, optional = true } +smallvec = { workspace = true } +strum = { workspace = true } +strum_macros = { workspace = true } + +# Moonbeam +account = { workspace = true } +moonbeam-core-primitives = { workspace = true } +moonbeam-relay-encoder = { workspace = true } +moonbeam-runtime-common = { workspace = true } +precompile-utils = { workspace = true } +session-keys-primitives = { workspace = true } +xcm-primitives = { workspace = true } + +# Moonbeam pallets +moonbeam-xcm-benchmarks = { workspace = true } +pallet-asset-manager = { workspace = true } +pallet-author-mapping = { workspace = true } +pallet-crowdloan-rewards = { workspace = true } +pallet-erc20-xcm-bridge = { workspace = true } +pallet-evm-chain-id = { workspace = true } +pallet-ethereum-xcm = { workspace = true } +pallet-maintenance-mode = { workspace = true, features = [ "xcm-support" ] } +pallet-migrations = { workspace = true } +pallet-moonbeam-orbiters = { workspace = true } +pallet-parachain-staking = { workspace = true } +pallet-proxy-genesis-companion = { workspace = true } +pallet-randomness = { workspace = true } +pallet-xcm-transactor = { workspace = true } + +# Moonbeam precompiles +pallet-evm-precompile-author-mapping = { workspace = true } +pallet-evm-precompile-balances-erc20 = { workspace = true } +pallet-evm-precompile-batch = { workspace = true } +pallet-evm-precompile-call-permit = { workspace = true } +pallet-evm-precompile-collective = { workspace = true } +pallet-evm-precompile-conviction-voting = { workspace = true } +pallet-evm-precompile-crowdloan-rewards = { workspace = true } +pallet-evm-precompile-democracy = { workspace = true } +pallet-evm-precompile-gmp = { workspace = true } +pallet-evm-precompile-identity = { workspace = true } +pallet-evm-precompile-parachain-staking = { workspace = true } +pallet-evm-precompile-preimage = { workspace = true } +pallet-evm-precompile-proxy = { workspace = true } +pallet-evm-precompile-randomness = { workspace = true } +pallet-evm-precompile-referenda = { workspace = true } +pallet-evm-precompile-registry = { workspace = true } +pallet-evm-precompile-relay-encoder = { workspace = true } +pallet-evm-precompile-xcm-transactor = { workspace = true } +pallet-evm-precompile-xcm-utils = { workspace = true } +pallet-evm-precompile-xtokens = { workspace = true } +pallet-evm-precompileset-assets-erc20 = { workspace = true } + +# Moonbeam tracing +evm-tracing-events = { workspace = true, optional = true } +moonbeam-evm-tracer = { workspace = true, optional = true } +moonbeam-rpc-primitives-debug = { workspace = true } +moonbeam-rpc-primitives-txpool = { workspace = true } + +# Substrate +frame-executive = { workspace = true } +frame-support = { workspace = true } +frame-system = { workspace = true } +frame-system-rpc-runtime-api = { workspace = true } +pallet-assets = { workspace = true } +pallet-balances = { workspace = true, features = [ "insecure_zero_ed" ] } +pallet-collective = { workspace = true } +pallet-conviction-voting = { workspace = true } +pallet-democracy = { workspace = true } +pallet-identity = { workspace = true } +pallet-multisig = { workspace = true } +pallet-preimage = { workspace = true } +pallet-proxy = { workspace = true } +pallet-referenda = { workspace = true } +pallet-root-testing = { workspace = true } +pallet-scheduler = { workspace = true } +pallet-society = { workspace = true } +pallet-timestamp = { workspace = true } +pallet-transaction-payment = { workspace = true } +pallet-transaction-payment-rpc-runtime-api = { workspace = true } +pallet-treasury = { workspace = true } +pallet-utility = { workspace = true } +pallet-whitelist = { workspace = true } +parity-scale-codec = { workspace = true, features = [ + "derive", + "max-encoded-len", + "chain-error", +] } +scale-info = { workspace = true, features = [ "derive" ] } +sp-api = { workspace = true } +sp-block-builder = { workspace = true } +sp-core = { workspace = true } +sp-inherents = { workspace = true } +sp-io = { workspace = true, features = [ "improved_panic_error_reporting" ] } +sp-offchain = { workspace = true } +sp-runtime = { workspace = true } +sp-session = { workspace = true } +sp-std = { workspace = true } +sp-transaction-pool = { workspace = true } +sp-version = { workspace = true } +sp-weights = { workspace = true } + +# Frontier +fp-evm = { workspace = true } +fp-rpc = { workspace = true } +fp-self-contained = { workspace = true, features = [ "serde" ] } +pallet-base-fee = { workspace = true } +pallet-ethereum = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm-precompile-blake2 = { workspace = true } +pallet-evm-precompile-bn128 = { workspace = true } +pallet-evm-precompile-dispatch = { workspace = true } +pallet-evm-precompile-modexp = { workspace = true } +pallet-evm-precompile-sha3fips = { workspace = true } +pallet-evm-precompile-simple = { workspace = true } + +# Polkadot / XCM +orml-traits = { workspace = true } +orml-xcm-support = { workspace = true } +orml-xtokens = { workspace = true } +pallet-xcm = { workspace = true } +pallet-xcm-benchmarks = { workspace = true, optional = true } +polkadot-core-primitives = { workspace = true } +polkadot-runtime-common = { workspace = true } +polkadot-parachain = { workspace = true } +xcm = { workspace = true } +xcm-builder = { workspace = true } +xcm-executor = { workspace = true } + +# Cumulus +cumulus-pallet-dmp-queue = { workspace = true } +cumulus-pallet-parachain-system = { workspace = true } +cumulus-pallet-xcm = { workspace = true } +cumulus-pallet-xcmp-queue = { workspace = true } +cumulus-primitives-core = { workspace = true } +cumulus-primitives-timestamp = { workspace = true } +cumulus-primitives-utility = { workspace = true } +parachain-info = { workspace = true } + +# Moonkit +async-backing-primitives = { workspace = true } +moonkit-xcm-primitives = { workspace = true } +nimbus-primitives = { workspace = true } +pallet-author-inherent = { workspace = true } +pallet-author-slot-filter = { workspace = true } + +# Benchmarking +frame-benchmarking = { workspace = true, optional = true } +frame-system-benchmarking = { workspace = true, optional = true } +frame-try-runtime = { workspace = true, optional = true } + +[build-dependencies] +substrate-wasm-builder = { workspace = true } + +[features] +default = [ "std" , "evm-tracing"] +std = [ + "account/std", + "async-backing-primitives/std", + "cumulus-pallet-dmp-queue/std", + "cumulus-pallet-parachain-system/std", + "cumulus-pallet-xcm/std", + "cumulus-pallet-xcmp-queue/std", + "cumulus-primitives-core/std", + "cumulus-primitives-timestamp/std", + "evm-tracing-events/std", + "fp-evm/std", + "fp-rpc/std", + "fp-self-contained/std", + "frame-benchmarking/std", + "frame-executive/std", + "frame-support/std", + "frame-system-rpc-runtime-api/std", + "frame-system/std", + "moonbeam-core-primitives/std", + "moonbeam-evm-tracer/std", + "moonbeam-relay-encoder/std", + "moonbeam-rpc-primitives-debug/std", + "moonbeam-rpc-primitives-txpool/std", + "moonbeam-runtime-common/std", + "moonbeam-xcm-benchmarks/std", + "moonkit-xcm-primitives/std", + "nimbus-primitives/std", + "orml-xtokens/std", + "pallet-asset-manager/std", + "pallet-assets/std", + "pallet-author-inherent/std", + "pallet-author-mapping/std", + "pallet-author-slot-filter/std", + "pallet-balances/std", + "pallet-base-fee/std", + "pallet-collective/std", + "pallet-conviction-voting/std", + "pallet-crowdloan-rewards/std", + "pallet-democracy/std", + "pallet-erc20-xcm-bridge/std", + "pallet-evm-chain-id/std", + "pallet-ethereum-xcm/std", + "pallet-ethereum/std", + "pallet-evm-precompile-author-mapping/std", + "pallet-evm-precompile-balances-erc20/std", + "pallet-evm-precompile-batch/std", + "pallet-evm-precompile-call-permit/std", + "pallet-evm-precompile-collective/std", + "pallet-evm-precompile-conviction-voting/std", + "pallet-evm-precompile-parachain-staking/std", + "pallet-evm-precompile-preimage/std", + "pallet-evm-precompile-randomness/std", + "pallet-evm-precompile-referenda/std", + "pallet-evm-precompile-relay-encoder/std", + "pallet-evm-precompile-xcm-transactor/std", + "pallet-evm-precompile-xcm-utils/std", + "pallet-evm-precompile-xtokens/std", + "pallet-evm-precompileset-assets-erc20/std", + "pallet-evm/std", + "pallet-identity/std", + "pallet-maintenance-mode/std", + "pallet-migrations/std", + "pallet-moonbeam-orbiters/std", + "pallet-multisig/std", + "pallet-parachain-staking/std", + "pallet-preimage/std", + "pallet-proxy-genesis-companion/std", + "pallet-proxy/std", + "pallet-randomness/std", + "pallet-referenda/std", + "pallet-root-testing/std", + "pallet-scheduler/std", + "pallet-society/std", + "pallet-timestamp/std", + "pallet-transaction-payment-rpc-runtime-api/std", + "pallet-transaction-payment/std", + "pallet-treasury/std", + "pallet-utility/std", + "pallet-whitelist/std", + "pallet-xcm-transactor/std", + "pallet-xcm/std", + "parachain-info/std", + "parity-scale-codec/std", + "precompile-utils/std", + "scale-info/std", + "session-keys-primitives/std", + "sp-api/std", + "sp-block-builder/std", + "sp-core/std", + "sp-inherents/std", + "sp-io/std", + "sp-offchain/std", + "sp-runtime/std", + "sp-session/std", + "sp-std/std", + "sp-transaction-pool/std", + "sp-version/std", + "strum/std", + "xcm-builder/std", + "xcm-executor/std", + "xcm-primitives/std", + "xcm/std", +] +evm-tracing = [ "evm-tracing-events", "moonbeam-evm-tracer", "rlp", "sha3" ] + +# Will be enabled by the `wasm-builder` when building the runtime for WASM. +runtime-wasm = [] + +# A feature that should be enabled when the runtime should be build for on-chain +# deployment. This will disable stuff that shouldn't be part of the on-chain wasm +# to make it smaller like logging for example. +on-chain-release-build = [ "sp-api/disable-logging" ] + +runtime-benchmarks = [ + "cumulus-pallet-parachain-system/runtime-benchmarks", + "frame-benchmarking", + "frame-benchmarking/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "frame-system-benchmarking/runtime-benchmarks", + "frame-system/runtime-benchmarks", + "hex-literal", + "moonbeam-relay-encoder/runtime-benchmarks", + "moonbeam-runtime-common/runtime-benchmarks", + "moonbeam-xcm-benchmarks/runtime-benchmarks", + "pallet-asset-manager/runtime-benchmarks", + "pallet-assets/runtime-benchmarks", + "pallet-author-inherent/runtime-benchmarks", + "pallet-author-mapping/runtime-benchmarks", + "pallet-author-slot-filter/runtime-benchmarks", + "pallet-balances/runtime-benchmarks", + "pallet-collective/runtime-benchmarks", + "pallet-conviction-voting/runtime-benchmarks", + "pallet-crowdloan-rewards/runtime-benchmarks", + "pallet-ethereum-xcm/runtime-benchmarks", + "pallet-ethereum/runtime-benchmarks", + "pallet-evm/runtime-benchmarks", + "pallet-identity/runtime-benchmarks", + "pallet-migrations/runtime-benchmarks", + "pallet-moonbeam-orbiters/runtime-benchmarks", + "pallet-multisig/runtime-benchmarks", + "pallet-parachain-staking/runtime-benchmarks", + "pallet-preimage/runtime-benchmarks", + "pallet-proxy/runtime-benchmarks", + "pallet-randomness/runtime-benchmarks", + "pallet-referenda/runtime-benchmarks", + "pallet-scheduler/runtime-benchmarks", + "pallet-society/runtime-benchmarks", + "pallet-timestamp/runtime-benchmarks", + "pallet-treasury/runtime-benchmarks", + "pallet-utility/runtime-benchmarks", + "pallet-whitelist/runtime-benchmarks", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor/runtime-benchmarks", + "pallet-xcm/runtime-benchmarks", + "session-keys-primitives/runtime-benchmarks", + "sp-runtime/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", +] + +try-runtime = [ + "fp-self-contained/try-runtime", + "frame-executive/try-runtime", + "frame-system/try-runtime", + "frame-try-runtime", + "moonbeam-runtime-common/try-runtime", + "pallet-asset-manager/try-runtime", + "pallet-author-mapping/try-runtime", + "pallet-author-slot-filter/try-runtime", + "pallet-balances/try-runtime", + "pallet-collective/try-runtime", + "pallet-conviction-voting/try-runtime", + "pallet-democracy/try-runtime", + "pallet-maintenance-mode/try-runtime", + "pallet-migrations/try-runtime", + "pallet-parachain-staking/try-runtime", + "pallet-preimage/try-runtime", + "pallet-referenda/try-runtime", + "pallet-root-testing/try-runtime", + "pallet-scheduler/try-runtime", + "pallet-society/try-runtime", + "pallet-timestamp/try-runtime", + "pallet-whitelist/try-runtime", +] diff --git a/tracing/2700/runtime/moonbeam/build.rs b/tracing/2700/runtime/moonbeam/build.rs new file mode 100644 index 00000000..3934b9c5 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/build.rs @@ -0,0 +1,25 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use substrate_wasm_builder::WasmBuilder; + +fn main() { + WasmBuilder::new() + .with_current_project() + .export_heap_base() + .import_memory() + .build() +} diff --git a/tracing/2700/runtime/moonbeam/src/asset_config.rs b/tracing/2700/runtime/moonbeam/src/asset_config.rs new file mode 100644 index 00000000..00c1fde4 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/asset_config.rs @@ -0,0 +1,342 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Asset configuration for Moonbase. +//! + +use super::{ + currency, governance, xcm_config, AccountId, AssetId, AssetManager, Assets, Balance, Balances, + CouncilInstance, LocalAssets, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use frame_support::{ + dispatch::GetDispatchInfo, + parameter_types, + traits::{AsEnsureOriginWithArg, ConstU128, ConstU32, EitherOfDiverse}, + weights::Weight, +}; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::traits::Hash as THash; + +use frame_system::{EnsureNever, EnsureRoot}; +use sp_core::{H160, H256}; + +use parity_scale_codec::{Compact, Decode, Encode}; +use scale_info::TypeInfo; + +use sp_std::{ + convert::{From, Into}, + prelude::*, +}; + +// Number of items that can be destroyed with our configured max extrinsic proof size. +// x = (a - b) / c where: +// a: maxExtrinsic proof size +// b: base proof size for destroy_accounts in pallet_assets weights +// c: proof size for each item +// 656.87 = (3_407_872 - 8232) / 5180 +const REMOVE_ITEMS_LIMIT: u32 = 656; + +// Not to disrupt the previous asset instance, we assign () to Foreign +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// For foreign assets, these parameters dont matter much +// as this will only be called by root with the forced arguments +// No deposit is substracted with those methods +// For local assets, they do matter. We use similar parameters +// to those in statemine (except for approval) +parameter_types! { + pub const AssetDeposit: Balance = 100 * currency::GLMR * currency::SUPPLY_FACTOR; + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = currency::deposit(1,68); + pub const MetadataDepositPerByte: Balance = currency::deposit(0, 1); +} + +/// We allow root and Chain council to execute privileged asset operations. +pub type AssetsForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +// Foreign assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = AssetsForceOrigin; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// Local assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureNever; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::{pallet_prelude::DispatchResult, transactional}; + +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + #[transactional] + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetRegistrarMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset.into(), + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(ASSET_PRECOMPILE_ADDRESS_PREFIX, asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + + // Lastly, the metadata + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset.into(), + metadata.name, + metadata.symbol, + metadata.decimals, + metadata.is_frozen, + ) + } + + #[transactional] + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + // We create with root, because we need to decide whether we want to create the asset + // as sufficient. Take into account this does not hold any reserved amount + // in pallet-assets + LocalAssets::force_create( + RuntimeOrigin::root(), + asset.into(), + owner, + is_sufficient, + min_balance, + )?; + + // No metadata needs to be set, as this can be set through regular calls + + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + ); + Ok(()) + } + + #[transactional] + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + Assets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + #[transactional] + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + LocalAssets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + // For us both of them (Foreign and Local) have the same annotated weight for a given + // witness + // We need to take the dispatch info from the destroy call, which is already annotated in + // the assets pallet + // Additionally, we need to add a DB write for removing the precompile revert code in the + // EVM + + // This is the dispatch info of destroy + let call_weight = RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { + id: asset.into(), + }, + ) + .get_dispatch_info() + .weight; + + // This is the db write + call_weight.saturating_add(::DbWeight::get().writes(1)) + } +} + +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a local asset counter to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetRegistrarMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, + pub is_frozen: bool, +} + +pub type ForeignAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +pub type LocalAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetRegistrarMetadata; + type ForeignAssetType = xcm_config::AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = ForeignAssetModifierOrigin; + type LocalAssetModifierOrigin = LocalAssetModifierOrigin; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = moonbeam_weights::pallet_asset_manager::WeightInfo; +} + +// Instruct how to go from an H160 to an AssetID +// We just take the lowest 128 bits +impl AccountIdAssetIdConversion for Runtime { + /// The way to convert an account to assetId is by ensuring that the prefix is 0XFFFFFFFF + /// and by taking the lowest 128 bits as the assetId + fn account_to_asset_id(account: AccountId) -> Option<(Vec, AssetId)> { + let h160_account: H160 = account.into(); + let mut data = [0u8; 16]; + let (prefix_part, id_part) = h160_account.as_fixed_bytes().split_at(4); + if prefix_part == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX + || prefix_part == LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX + { + data.copy_from_slice(id_part); + let asset_id: AssetId = u128::from_be_bytes(data).into(); + Some((prefix_part.to_vec(), asset_id)) + } else { + None + } + } + + // The opposite conversion + fn asset_id_to_account(prefix: &[u8], asset_id: AssetId) -> AccountId { + let mut data = [0u8; 20]; + data[0..4].copy_from_slice(prefix); + data[4..20].copy_from_slice(&asset_id.to_be_bytes()); + AccountId::from(data) + } +} diff --git a/tracing/2700/runtime/moonbeam/src/governance/councils.rs b/tracing/2700/runtime/moonbeam/src/governance/councils.rs new file mode 100644 index 00000000..b444bf0a --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/councils.rs @@ -0,0 +1,97 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Councils for Gov1 and Gov2 + +use super::*; + +pub type CouncilInstance = pallet_collective::Instance1; +pub type TechCommitteeInstance = pallet_collective::Instance2; +pub type TreasuryCouncilInstance = pallet_collective::Instance3; +pub type OpenTechCommitteeInstance = pallet_collective::Instance4; + +parameter_types! { + // TODO: Check value of this parameter + pub MaxProposalWeight: Weight = Perbill::from_percent(50) * RuntimeBlockWeights::get().max_block; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the council at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of council members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for treasury council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the treasury council at once. + type MaxProposals = ConstU32<20>; + /// The maximum number of treasury council members. + type MaxMembers = ConstU32<9>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 14 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} diff --git a/tracing/2700/runtime/moonbeam/src/governance/democracy.rs b/tracing/2700/runtime/moonbeam/src/governance/democracy.rs new file mode 100644 index 00000000..382a53ba --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/democracy.rs @@ -0,0 +1,77 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Democracy config for Gov1 + +use super::councils::*; +use crate::*; + +// The purpose of this offset is to ensure that a democratic proposal will not apply in the same +// block as a round change. +const ENACTMENT_OFFSET: u32 = 900; + +impl pallet_democracy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type EnactmentPeriod = ConstU32<{ 2 * DAYS + ENACTMENT_OFFSET }>; + type LaunchPeriod = ConstU32<{ 7 * DAYS }>; + type VotingPeriod = ConstU32<{ 14 * DAYS }>; + + type VoteLockingPeriod = ConstU32<{ 7 * DAYS }>; + type FastTrackVotingPeriod = ConstU32<{ 1 * DAYS }>; + type MinimumDeposit = ConstU128<{ 4 * currency::GLMR * currency::SUPPLY_FACTOR }>; + /// To decide what their next motion is. + type ExternalOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight majority-carries vote. + type ExternalMajorityOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight default-carries (NTB) vote. + type ExternalDefaultOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To allow a shorter voting/enactment period for external proposals. + type FastTrackOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To instant fast track. + type InstantOrigin = + pallet_collective::EnsureProportionAtLeast; + // To cancel a proposal which has been passed. + type CancellationOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + // To cancel a proposal before it has been passed. + type CancelProposalOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + type BlacklistOrigin = EnsureRoot; + // Any single technical committee member may veto a coming council proposal, however they can + // only do it once and it lasts only for the cooloff period. + type VetoOrigin = pallet_collective::EnsureMember; + type CooloffPeriod = ConstU32<{ 7 * DAYS }>; + type Slash = (); + type InstantAllowed = ConstBool; + type Scheduler = Scheduler; + type MaxVotes = ConstU32<100>; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_democracy::WeightInfo; + type MaxProposals = ConstU32<100>; + type Preimages = Preimage; + type MaxDeposits = ConstU32<100>; + type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; +} diff --git a/tracing/2700/runtime/moonbeam/src/governance/mod.rs b/tracing/2700/runtime/moonbeam/src/governance/mod.rs new file mode 100644 index 00000000..bc946aad --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/mod.rs @@ -0,0 +1,30 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Governance configurations + +pub mod councils; +mod democracy; +pub mod referenda; + +use super::*; + +mod origins; +pub use origins::{ + custom_origins, GeneralAdmin, ReferendumCanceller, ReferendumKiller, WhitelistedCaller, +}; +mod tracks; +pub use tracks::TracksInfo; diff --git a/tracing/2700/runtime/moonbeam/src/governance/origins.rs b/tracing/2700/runtime/moonbeam/src/governance/origins.rs new file mode 100644 index 00000000..d873cc96 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/origins.rs @@ -0,0 +1,82 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +//! Custom origins for governance interventions. +#![cfg_attr(not(feature = "std"), no_std)] + +pub use custom_origins::*; + +#[frame_support::pallet] +pub mod custom_origins { + use frame_support::pallet_prelude::*; + use strum_macros::EnumString; + + #[pallet::config] + pub trait Config: frame_system::Config {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[derive( + PartialEq, Eq, Clone, MaxEncodedLen, Encode, Decode, TypeInfo, RuntimeDebug, EnumString, + )] + #[strum(serialize_all = "snake_case")] + #[pallet::origin] + pub enum Origin { + /// Origin able to dispatch a whitelisted call. + WhitelistedCaller, + /// General admin + GeneralAdmin, + /// Origin able to cancel referenda. + ReferendumCanceller, + /// Origin able to kill referenda. + ReferendumKiller, + } + + macro_rules! decl_unit_ensures { + ( $name:ident: $success_type:ty = $success:expr ) => { + pub struct $name; + impl> + From> + EnsureOrigin for $name + { + type Success = $success_type; + fn try_origin(o: O) -> Result { + o.into().and_then(|o| match o { + Origin::$name => Ok($success), + r => Err(O::from(r)), + }) + } + #[cfg(feature = "runtime-benchmarks")] + fn try_successful_origin() -> Result { + Ok(O::from(Origin::$name)) + } + } + }; + ( $name:ident ) => { decl_unit_ensures! { $name : () = () } }; + ( $name:ident: $success_type:ty = $success:expr, $( $rest:tt )* ) => { + decl_unit_ensures! { $name: $success_type = $success } + decl_unit_ensures! { $( $rest )* } + }; + ( $name:ident, $( $rest:tt )* ) => { + decl_unit_ensures! { $name } + decl_unit_ensures! { $( $rest )* } + }; + () => {} + } + decl_unit_ensures!( + ReferendumCanceller, + ReferendumKiller, + WhitelistedCaller, + GeneralAdmin + ); +} diff --git a/tracing/2700/runtime/moonbeam/src/governance/referenda.rs b/tracing/2700/runtime/moonbeam/src/governance/referenda.rs new file mode 100644 index 00000000..78d1a18f --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/referenda.rs @@ -0,0 +1,98 @@ +// Copyright 2019-2023 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! # Gov2 config +//! Includes runtime configs for these substrate pallets: +//! 1. pallet-conviction-voting +//! 2. pallet-whitelist +//! 3. pallet-referenda + +use super::*; +use crate::currency::{GLMR, SUPPLY_FACTOR}; +use frame_support::traits::{EitherOf, MapSuccess}; +use frame_system::EnsureRootWithSuccess; +use sp_runtime::traits::Replace; + +parameter_types! { + pub const VoteLockingPeriod: BlockNumber = 1 * DAYS; +} + +impl pallet_conviction_voting::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_conviction_voting::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type Polls = Referenda; + type MaxTurnout = frame_support::traits::TotalIssuanceOf; + // Maximum number of concurrent votes an account may have + type MaxVotes = ConstU32<20>; + // Minimum period of vote locking + type VoteLockingPeriod = VoteLockingPeriod; +} + +parameter_types! { + pub const AlarmInterval: BlockNumber = 1; + pub const SubmissionDeposit: Balance = 10 * GLMR * SUPPLY_FACTOR; + pub const UndecidingTimeout: BlockNumber = 21 * DAYS; +} + +// Origin for general admin or root +pub type GeneralAdminOrRoot = EitherOf, origins::GeneralAdmin>; + +impl custom_origins::Config for Runtime {} + +// The purpose of this pallet is to queue calls to be dispatched as by root later => the Dispatch +// origin corresponds to the Gov2 Whitelist track. +impl pallet_whitelist::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_whitelist::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WhitelistOrigin = EitherOf< + EnsureRootWithSuccess>, + MapSuccess< + pallet_collective::EnsureProportionAtLeast< + Self::AccountId, + OpenTechCommitteeInstance, + 5, + 9, + >, + Replace>, + >, + >; + type DispatchWhitelistedOrigin = EitherOf, WhitelistedCaller>; + type Preimages = Preimage; +} + +pallet_referenda::impl_tracksinfo_get!(TracksInfo, Balance, BlockNumber); + +impl pallet_referenda::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_referenda::WeightInfo; + type RuntimeCall = RuntimeCall; + type RuntimeEvent = RuntimeEvent; + type Scheduler = Scheduler; + type Currency = Balances; + type SubmitOrigin = frame_system::EnsureSigned; + type CancelOrigin = EitherOf, ReferendumCanceller>; + type KillOrigin = EitherOf, ReferendumKiller>; + type Slash = Treasury; + type Votes = pallet_conviction_voting::VotesOf; + type Tally = pallet_conviction_voting::TallyOf; + type SubmissionDeposit = SubmissionDeposit; + type MaxQueued = ConstU32<100>; + type UndecidingTimeout = UndecidingTimeout; + type AlarmInterval = AlarmInterval; + type Tracks = TracksInfo; + type Preimages = Preimage; +} diff --git a/tracing/2700/runtime/moonbeam/src/governance/tracks.rs b/tracing/2700/runtime/moonbeam/src/governance/tracks.rs new file mode 100644 index 00000000..34b527c9 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/governance/tracks.rs @@ -0,0 +1,179 @@ +// Copyright 2022 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Track configurations for governance. + +use super::*; +use crate::currency::{GLMR, KILOGLMR, SUPPLY_FACTOR}; +use sp_std::str::FromStr; + +const fn percent(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 100) +} +const fn permill(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 1000) +} + +use pallet_referenda::Curve; +const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 5] = [ + ( + 0, + pallet_referenda::TrackInfo { + // Name of this track. + name: "root", + // A limit for the number of referenda on this track that can be being decided at once. + // For Root origin this should generally be just one. + max_deciding: 5, + // Amount that must be placed on deposit before a decision can be made. + decision_deposit: 20 * KILOGLMR * SUPPLY_FACTOR, + // Amount of time this must be submitted for before a decision can be made. + prepare_period: 1 * DAYS, + // Amount of time that a decision may take to be approved prior to cancellation. + decision_period: 14 * DAYS, + // Amount of time that the approval criteria must hold before it can be approved. + confirm_period: 1 * DAYS, + // Minimum amount of time that an approved proposal must be in the dispatch queue. + min_enactment_period: 1 * DAYS, + // Minimum aye votes as percentage of overall conviction-weighted votes needed for + // approval as a function of time into decision period. + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + // Minimum pre-conviction aye-votes ("support") as percentage of overall population that + // is needed for approval as a function of time into decision period. + min_support: Curve::make_linear(14, 14, permill(5), percent(25)), + }, + ), + ( + 1, + pallet_referenda::TrackInfo { + name: "whitelisted_caller", + max_deciding: 100, + decision_deposit: 2 * KILOGLMR * SUPPLY_FACTOR, + prepare_period: 10 * MINUTES, + decision_period: 14 * DAYS, + confirm_period: 10 * MINUTES, + min_enactment_period: 30 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14 * 24, percent(1), percent(0), percent(2)), + }, + ), + ( + 2, + pallet_referenda::TrackInfo { + name: "general_admin", + max_deciding: 10, + decision_deposit: 100 * GLMR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 1 * DAYS, + min_enactment_period: 1 * DAYS, + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + min_support: Curve::make_reciprocal(7, 14, percent(10), percent(0), percent(50)), + }, + ), + ( + 3, + pallet_referenda::TrackInfo { + name: "referendum_canceller", + max_deciding: 20, + decision_deposit: 2 * KILOGLMR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(10)), + }, + ), + ( + 4, + pallet_referenda::TrackInfo { + name: "referendum_killer", + max_deciding: 100, + decision_deposit: 4 * KILOGLMR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(10)), + }, + ), +]; + +pub struct TracksInfo; +impl pallet_referenda::TracksInfo for TracksInfo { + type Id = u16; + type RuntimeOrigin = ::PalletsOrigin; + fn tracks() -> &'static [(Self::Id, pallet_referenda::TrackInfo)] { + &TRACKS_DATA[..] + } + fn track_for(id: &Self::RuntimeOrigin) -> Result { + if let Ok(system_origin) = frame_system::RawOrigin::try_from(id.clone()) { + match system_origin { + frame_system::RawOrigin::Root => { + if let Some((track_id, _)) = Self::tracks() + .into_iter() + .find(|(_, track)| track.name == "root") + { + Ok(*track_id) + } else { + Err(()) + } + } + _ => Err(()), + } + } else if let Ok(custom_origin) = custom_origins::Origin::try_from(id.clone()) { + if let Some((track_id, _)) = Self::tracks().into_iter().find(|(_, track)| { + if let Ok(track_custom_origin) = custom_origins::Origin::from_str(track.name) { + track_custom_origin == custom_origin + } else { + false + } + }) { + Ok(*track_id) + } else { + Err(()) + } + } else { + Err(()) + } + } +} + +#[test] +/// To ensure voters are always locked into their vote +fn vote_locking_always_longer_than_enactment_period() { + for (_, track) in TRACKS_DATA { + assert!( + ::VoteLockingPeriod::get() + >= track.min_enactment_period, + "Track {} has enactment period {} < vote locking period {}", + track.name, + track.min_enactment_period, + ::VoteLockingPeriod::get(), + ); + } +} + +#[test] +fn all_tracks_have_origins() { + for (_, track) in TRACKS_DATA { + // check name.into() is successful either converts into "root" or custom origin + let track_is_root = track.name == "root"; + let track_has_custom_origin = custom_origins::Origin::from_str(track.name).is_ok(); + assert!(track_is_root || track_has_custom_origin); + } +} diff --git a/tracing/2700/runtime/moonbeam/src/lib.rs b/tracing/2700/runtime/moonbeam/src/lib.rs new file mode 100644 index 00000000..77e10401 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/lib.rs @@ -0,0 +1,1852 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! The Moonbeam Runtime. +//! +//! Primary features of this runtime include: +//! * Ethereum compatibility +//! * Moonbeam tokenomics + +#![cfg_attr(not(feature = "std"), no_std)] +// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. +#![recursion_limit = "256"] + +// Make the WASM binary available. +#[cfg(feature = "std")] +include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); + +use account::AccountId20; +use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainDataProvider}; +use cumulus_primitives_core::relay_chain; +use fp_rpc::TransactionStatus; + +// Re-export required by get! macro. +use cumulus_primitives_core::{relay_chain::BlockNumber as RelayBlockNumber, DmpMessageHandler}; +#[cfg(feature = "std")] +pub use fp_evm::GenesisAccount; +pub use frame_support::traits::Get; +use frame_support::{ + construct_runtime, + dispatch::{DispatchClass, GetDispatchInfo, PostDispatchInfo}, + ensure, + pallet_prelude::DispatchResult, + parameter_types, + traits::{ + fungible::HoldConsideration, + tokens::{PayFromAccount, UnityAssetBalanceConversion}, + ConstBool, ConstU128, ConstU16, ConstU32, ConstU64, ConstU8, Contains, + Currency as CurrencyT, EitherOfDiverse, EqualPrivilegeOnly, Imbalance, InstanceFilter, + LinearStoragePrice, OffchainWorker, OnFinalize, OnIdle, OnInitialize, OnRuntimeUpgrade, + OnUnbalanced, + }, + weights::{ + constants::{RocksDbWeight, WEIGHT_REF_TIME_PER_SECOND}, + ConstantMultiplier, Weight, WeightToFeeCoefficient, WeightToFeeCoefficients, + WeightToFeePolynomial, + }, + PalletId, +}; +use frame_system::{EnsureRoot, EnsureSigned}; +pub use moonbeam_core_primitives::{ + AccountId, AccountIndex, Address, AssetId, Balance, BlockNumber, DigestItem, Hash, Header, + Index, Signature, +}; +use moonbeam_rpc_primitives_txpool::TxPoolResponse; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_balances::NegativeImbalance; +use pallet_ethereum::Call::transact; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; +use pallet_evm::{ + Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, + FeeCalculator, GasWeightMapping, IdentityAddressMapping, + OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, +}; +pub use pallet_parachain_staking::{weights::WeightInfo, InflationInfo, Range}; +use pallet_transaction_payment::{CurrencyAdapter, Multiplier, TargetedFeeAdjustment}; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use scale_info::TypeInfo; +use serde::{Deserialize, Serialize}; +use smallvec::smallvec; +use sp_api::impl_runtime_apis; +use sp_core::{OpaqueMetadata, H160, H256, U256}; +#[cfg(feature = "try-runtime")] +use sp_runtime::TryRuntimeError; +use sp_runtime::{ + create_runtime_str, generic, impl_opaque_keys, + traits::{ + BlakeTwo256, Block as BlockT, DispatchInfoOf, Dispatchable, IdentityLookup, + PostDispatchInfoOf, UniqueSaturatedInto, Zero, + }, + transaction_validity::{ + InvalidTransaction, TransactionSource, TransactionValidity, TransactionValidityError, + }, + ApplyExtrinsicResult, DispatchErrorWithPostInfo, FixedPointNumber, Perbill, Permill, + Perquintill, SaturatedConversion, +}; +use sp_std::{convert::TryFrom, prelude::*}; + +#[cfg(feature = "std")] +use sp_version::NativeVersion; +use sp_version::RuntimeVersion; + +use nimbus_primitives::CanAuthor; + +mod precompiles; +pub use precompiles::{ + MoonbeamPrecompiles, PrecompileName, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +#[cfg(any(feature = "std", test))] +pub use sp_runtime::BuildStorage; + +pub type Precompiles = MoonbeamPrecompiles; + +pub mod asset_config; +pub mod governance; +pub mod xcm_config; +use governance::councils::*; + +/// GLMR, the native token, uses 18 decimals of precision. +pub mod currency { + use super::Balance; + + // Provide a common factor between runtimes based on a supply of 10_000_000 tokens. + pub const SUPPLY_FACTOR: Balance = 100; + + pub const WEI: Balance = 1; + pub const KILOWEI: Balance = 1_000; + pub const MEGAWEI: Balance = 1_000_000; + pub const GIGAWEI: Balance = 1_000_000_000; + pub const MICROGLMR: Balance = 1_000_000_000_000; + pub const MILLIGLMR: Balance = 1_000_000_000_000_000; + pub const GLMR: Balance = 1_000_000_000_000_000_000; + pub const KILOGLMR: Balance = 1_000_000_000_000_000_000_000; + + pub const TRANSACTION_BYTE_FEE: Balance = 1 * GIGAWEI * SUPPLY_FACTOR; + pub const STORAGE_BYTE_FEE: Balance = 100 * MICROGLMR * SUPPLY_FACTOR; + pub const WEIGHT_FEE: Balance = 50 * KILOWEI * SUPPLY_FACTOR; + + pub const fn deposit(items: u32, bytes: u32) -> Balance { + items as Balance * 100 * MILLIGLMR * SUPPLY_FACTOR + (bytes as Balance) * STORAGE_BYTE_FEE + } +} + +/// Maximum weight per block +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) + .saturating_div(2) + .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); + +pub const MILLISECS_PER_BLOCK: u64 = 12000; +pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); +pub const HOURS: BlockNumber = MINUTES * 60; +pub const DAYS: BlockNumber = HOURS * 24; +pub const WEEKS: BlockNumber = DAYS * 7; +pub const MONTHS: BlockNumber = DAYS * 30; +/// Opaque types. These are used by the CLI to instantiate machinery that don't need to know +/// the specifics of the runtime. They can then be made to be agnostic over specific formats +/// of data like extrinsics, allowing for them to continue syncing the network through upgrades +/// to even the core datastructures. +pub mod opaque { + use super::*; + + pub use sp_runtime::OpaqueExtrinsic as UncheckedExtrinsic; + pub type Block = generic::Block; + + impl_opaque_keys! { + pub struct SessionKeys { + pub nimbus: AuthorInherent, + pub vrf: session_keys_primitives::VrfSessionKey, + } + } +} + +/// This runtime version. +/// The spec_version is composed of 2x2 digits. The first 2 digits represent major changes +/// that can't be skipped, such as data migration upgrades. The last 2 digits represent minor +/// changes which can be skipped. +#[sp_version::runtime_version] +pub const VERSION: RuntimeVersion = RuntimeVersion { + spec_name: create_runtime_str!("moonbeam"), + impl_name: create_runtime_str!("moonbeam"), + authoring_version: 3, + spec_version: 2700, + impl_version: 0, + apis: RUNTIME_API_VERSIONS, + transaction_version: 2, + state_version: 0, +}; + +/// The version information used to identify this runtime when compiled natively. +#[cfg(feature = "std")] +pub fn native_version() -> NativeVersion { + NativeVersion { + runtime_version: VERSION, + can_author_with: Default::default(), + } +} + +const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); +const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturating_div(4); +// Here we assume Ethereum's base fee of 21000 gas and convert to weight, but we +// subtract roughly the cost of a balance transfer from it (about 1/3 the cost) +// and some cost to account for per-byte-fee. +// TODO: we should use benchmarking's overhead feature to measure this +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); + +pub struct RuntimeBlockWeights; +impl Get for RuntimeBlockWeights { + fn get() -> frame_system::limits::BlockWeights { + frame_system::limits::BlockWeights::builder() + .for_class(DispatchClass::Normal, |weights| { + weights.base_extrinsic = EXTRINSIC_BASE_WEIGHT; + weights.max_total = NORMAL_WEIGHT.into(); + }) + .for_class(DispatchClass::Operational, |weights| { + weights.max_total = MAXIMUM_BLOCK_WEIGHT.into(); + weights.reserved = (MAXIMUM_BLOCK_WEIGHT - NORMAL_WEIGHT).into(); + }) + .avg_block_initialization(Perbill::from_percent(10)) + .build() + .expect("Provided BlockWeight definitions are valid, qed") + } +} + +parameter_types! { + pub const Version: RuntimeVersion = VERSION; + /// We allow for 5 MB blocks. + pub BlockLength: frame_system::limits::BlockLength = frame_system::limits::BlockLength + ::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); +} + +impl frame_system::Config for Runtime { + /// The identifier used to distinguish between accounts. + type AccountId = AccountId; + /// The aggregated dispatch type that is available for extrinsics. + type RuntimeCall = RuntimeCall; + /// The lookup mechanism to get account ID from whatever is passed in dispatchers. + type Lookup = IdentityLookup; + /// The index type for storing how many extrinsics an account has signed. + type Nonce = Index; + /// The index type for blocks. + type Block = Block; + /// The type for hashing blocks and tries. + type Hash = Hash; + /// The hashing algorithm used. + type Hashing = BlakeTwo256; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + /// The ubiquitous origin type. + type RuntimeOrigin = RuntimeOrigin; + /// Maximum number of block number to block hash mappings to keep (oldest pruned first). + type BlockHashCount = ConstU32<256>; + /// Maximum weight of each block. With a default weight system of 1byte == 1weight, 4mb is ok. + type BlockWeights = RuntimeBlockWeights; + /// Maximum size of all encoded transactions (in bytes) that are allowed in one block. + type BlockLength = BlockLength; + /// Runtime version. + type Version = Version; + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = RocksDbWeight; + type BaseCallFilter = MaintenanceMode; + type SystemWeightInfo = (); + /// This is used as an identifier of the chain. 42 is the generic substrate prefix. + type SS58Prefix = ConstU16<1284>; + type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_utility::WeightInfo; +} + +impl pallet_timestamp::Config for Runtime { + /// A timestamp: milliseconds since the unix epoch. + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = ConstU64<6000>; + type WeightInfo = moonbeam_weights::pallet_timestamp::WeightInfo; +} + +impl pallet_balances::Config for Runtime { + type MaxReserves = ConstU32<50>; + type ReserveIdentifier = [u8; 4]; + type MaxLocks = ConstU32<50>; + /// The type for recording an account's balance. + type Balance = Balance; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ConstU128<0>; + type AccountStore = System; + type FreezeIdentifier = (); + type MaxFreezes = ConstU32<0>; + type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; + type MaxHolds = ConstU32<1>; + type WeightInfo = moonbeam_weights::pallet_balances::WeightInfo; +} + +pub struct DealWithFees(sp_std::marker::PhantomData); +impl OnUnbalanced> for DealWithFees +where + R: pallet_balances::Config + pallet_treasury::Config, + pallet_treasury::Pallet: OnUnbalanced>, +{ + // this seems to be called for substrate-based transactions + fn on_unbalanceds(mut fees_then_tips: impl Iterator>) { + if let Some(fees) = fees_then_tips.next() { + // for fees, 80% are burned, 20% to the treasury + let (_, to_treasury) = fees.ration(80, 20); + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + + // handle tip if there is one + if let Some(tip) = fees_then_tips.next() { + // for now we use the same burn/treasury strategy used for regular fees + let (_, to_treasury) = tip.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } + } + } + + // this is called from pallet_evm for Ethereum-based transactions + // (technically, it calls on_unbalanced, which calls this when non-zero) + fn on_nonzero_unbalanced(amount: NegativeImbalance) { + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + let (_, to_treasury) = amount.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } +} + +pub struct LengthToFee; +impl WeightToFeePolynomial for LengthToFee { + type Balance = Balance; + + fn polynomial() -> WeightToFeeCoefficients { + smallvec![ + WeightToFeeCoefficient { + degree: 1, + coeff_frac: Perbill::zero(), + coeff_integer: currency::TRANSACTION_BYTE_FEE, + negative: false, + }, + WeightToFeeCoefficient { + degree: 3, + coeff_frac: Perbill::zero(), + coeff_integer: 1 * currency::SUPPLY_FACTOR, + negative: false, + }, + ] + } +} + +impl pallet_transaction_payment::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnChargeTransaction = CurrencyAdapter>; + type OperationalFeeMultiplier = ConstU8<5>; + type WeightToFee = ConstantMultiplier>; + type LengthToFee = LengthToFee; + type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; +} + +impl pallet_evm_chain_id::Config for Runtime {} + +/// Current approximation of the gas/s consumption considering +/// EVM execution over compiled WASM (on 4.4Ghz CPU). +/// Given the 500ms Weight, from which 75% only are used for transactions, +/// the total EVM execution gas limit is: GAS_PER_SECOND * 0.500 * 0.75 ~= 15_000_000. +pub const GAS_PER_SECOND: u64 = 40_000_000; + +/// Approximate ratio of the amount of Weight per Gas. +/// u64 works for approximations because Weight is a very small unit compared to gas. +pub const WEIGHT_PER_GAS: u64 = WEIGHT_REF_TIME_PER_SECOND / GAS_PER_SECOND; + +parameter_types! { + pub BlockGasLimit: U256 + = U256::from(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT.ref_time() / WEIGHT_PER_GAS); + /// The portion of the `NORMAL_DISPATCH_RATIO` that we adjust the fees with. Blocks filled less + /// than this will decrease the weight and more will increase. + pub const TargetBlockFullness: Perquintill = Perquintill::from_percent(25); + /// The adjustment variable of the runtime. Higher values will cause `TargetBlockFullness` to + /// change the fees more rapidly. This low value causes changes to occur slowly over time. + pub AdjustmentVariable: Multiplier = Multiplier::saturating_from_rational(4, 1_000); + /// Minimum amount of the multiplier. This value cannot be too low. A test case should ensure + /// that combined with `AdjustmentVariable`, we can recover from the minimum. + /// See `multiplier_can_grow_from_zero` in integration_tests.rs. + /// This value is currently only used by pallet-transaction-payment as an assertion that the + /// next multiplier is always > min value. + pub MinimumMultiplier: Multiplier = Multiplier::from(1u128); + /// Maximum multiplier. We pick a value that is expensive but not impossibly so; it should act + /// as a safety net. + pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); + pub PrecompilesValue: MoonbeamPrecompiles = MoonbeamPrecompiles::<_>::new(); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); + /// The amount of gas per pov. A ratio of 4 if we convert ref_time to gas and we compare + /// it with the pov_size for a block. E.g. + /// ceil( + /// (max_extrinsic.ref_time() / max_extrinsic.proof_size()) / WEIGHT_PER_GAS + /// ) + pub const GasLimitPovSizeRatio: u64 = 4; + /// The amount of gas per storage (in bytes): BLOCK_GAS_LIMIT / BLOCK_STORAGE_LIMIT + /// The current definition of BLOCK_STORAGE_LIMIT is 40 KB, resulting in a value of 366. + pub GasLimitStorageGrowthRatio: u64 = 366; +} + +pub struct TransactionPaymentAsGasPrice; +impl FeeCalculator for TransactionPaymentAsGasPrice { + fn min_gas_price() -> (U256, Weight) { + // note: transaction-payment differs from EIP-1559 in that its tip and length fees are not + // scaled by the multiplier, which means its multiplier will be overstated when + // applied to an ethereum transaction + // note: transaction-payment uses both a congestion modifier (next_fee_multiplier, which is + // updated once per block in on_finalize) and a 'WeightToFee' implementation. Our + // runtime implements this as a 'ConstantModifier', so we can get away with a simple + // multiplication here. + // It is imperative that `saturating_mul_int` be performed as late as possible in the + // expression since it involves fixed point multiplication with a division by a fixed + // divisor. This leads to truncation and subsequent precision loss if performed too early. + // This can lead to min_gas_price being same across blocks even if the multiplier changes. + // There's still some precision loss when the final `gas_price` (used_gas * min_gas_price) + // is computed in frontier, but that's currently unavoidable. + let min_gas_price = TransactionPayment::next_fee_multiplier() + .saturating_mul_int(currency::WEIGHT_FEE.saturating_mul(WEIGHT_PER_GAS as u128)); + ( + min_gas_price.into(), + ::DbWeight::get().reads(1), + ) + } +} + +/// Parameterized slow adjusting fee updated based on +/// https://w3f-research.readthedocs.io/en/latest/polkadot/overview/2-token-economics.html#-2.-slow-adjusting-mechanism // editorconfig-checker-disable-line +/// +/// The adjustment algorithm boils down to: +/// +/// diff = (previous_block_weight - target) / maximum_block_weight +/// next_multiplier = prev_multiplier * (1 + (v * diff) + ((v * diff)^2 / 2)) +/// assert(next_multiplier > min) +/// where: v is AdjustmentVariable +/// target is TargetBlockFullness +/// min is MinimumMultiplier +pub type SlowAdjustingFeeUpdate = TargetedFeeAdjustment< + R, + TargetBlockFullness, + AdjustmentVariable, + MinimumMultiplier, + MaximumMultiplier, +>; + +use frame_support::traits::FindAuthor; +//TODO It feels like this shold be able to work for any T: H160, but I tried for +// embarassingly long and couldn't figure that out. + +/// The author inherent provides a AccountId20, but pallet evm needs an H160. +/// This simple adapter makes the conversion. +pub struct FindAuthorAdapter(sp_std::marker::PhantomData); + +impl FindAuthor for FindAuthorAdapter +where + Inner: FindAuthor, +{ + fn find_author<'a, I>(digests: I) -> Option + where + I: 'a + IntoIterator, + { + Inner::find_author(digests).map(Into::into) + } +} + +moonbeam_runtime_common::impl_on_charge_evm_transaction!(); + +impl pallet_evm::Config for Runtime { + type FeeCalculator = TransactionPaymentAsGasPrice; + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; + type CallOrigin = EnsureAddressRoot; + type WithdrawOrigin = EnsureAddressNever; + type AddressMapping = IdentityAddressMapping; + type Currency = Balances; + type RuntimeEvent = RuntimeEvent; + type Runner = pallet_evm::runner::stack::Runner; + type PrecompilesType = MoonbeamPrecompiles; + type PrecompilesValue = PrecompilesValue; + type ChainId = EthereumChainId; + type OnChargeTransaction = OnChargeEVMTransaction>; + type BlockGasLimit = BlockGasLimit; + type FindAuthor = FindAuthorAdapter; + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = Timestamp; + type WeightInfo = moonbeam_weights::pallet_evm::WeightInfo; +} + +parameter_types! { + pub MaximumSchedulerWeight: Weight = NORMAL_DISPATCH_RATIO * RuntimeBlockWeights::get().max_block; +} + +impl pallet_scheduler::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeOrigin = RuntimeOrigin; + type PalletsOrigin = OriginCaller; + type RuntimeCall = RuntimeCall; + type MaximumWeight = MaximumSchedulerWeight; + type ScheduleOrigin = EnsureRoot; + type MaxScheduledPerBlock = ConstU32<50>; + type WeightInfo = moonbeam_weights::pallet_scheduler::WeightInfo; + type OriginPrivilegeCmp = EqualPrivilegeOnly; + type Preimages = Preimage; +} + +parameter_types! { + pub const PreimageBaseDeposit: Balance = 5 * currency::GLMR * currency::SUPPLY_FACTOR ; + pub const PreimageByteDeposit: Balance = currency::STORAGE_BYTE_FEE; + pub const PreimageHoldReason: RuntimeHoldReason = + RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); +} + +impl pallet_preimage::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_preimage::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type ManagerOrigin = EnsureRoot; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const TreasuryId: PalletId = PalletId(*b"py/trsry"); + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +type TreasuryApproveOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, +>; + +type TreasuryRejectOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionMoreThan, +>; + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + // At least three-fifths majority of the council is required (or root) to approve a proposal + type ApproveOrigin = TreasuryApproveOrigin; + // More than half of the council is required (or root) to reject a proposal + type RejectOrigin = TreasuryRejectOrigin; + type RuntimeEvent = RuntimeEvent; + // If spending proposal rejected, transfer proposer bond to treasury + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ConstU128<{ 1 * currency::GLMR * currency::SUPPLY_FACTOR }>; + type SpendPeriod = ConstU32<{ 6 * DAYS }>; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = ConstU32<100>; + type WeightInfo = moonbeam_weights::pallet_treasury::WeightInfo; + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = BenchmarkHelper; +} + +type IdentityForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +type IdentityRegistrarOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_identity::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + // Add one item in storage and take 258 bytes + type BasicDeposit = ConstU128<{ currency::deposit(1, 258) }>; + // Not add any item to the storage but takes 66 bytes + type FieldDeposit = ConstU128<{ currency::deposit(0, 66) }>; + // Add one item in storage and take 53 bytes + type SubAccountDeposit = ConstU128<{ currency::deposit(1, 53) }>; + type MaxSubAccounts = ConstU32<100>; + type MaxAdditionalFields = ConstU32<100>; + type IdentityInformation = pallet_identity::simple::IdentityInfo; + + type MaxRegistrars = ConstU32<20>; + type Slashed = Treasury; + type ForceOrigin = IdentityForceOrigin; + type RegistrarOrigin = IdentityRegistrarOrigin; + type WeightInfo = moonbeam_weights::pallet_identity::WeightInfo; +} + +pub struct TransactionConverter; + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } +} + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> opaque::UncheckedExtrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +impl cumulus_pallet_parachain_system::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnSystemEvent = (); + type SelfParaId = ParachainInfo; + type DmpMessageHandler = MaintenanceMode; + type ReservedDmpWeight = ReservedDmpWeight; + type OutboundXcmpMessageSource = XcmpQueue; + type XcmpMessageHandler = XcmpQueue; + type ReservedXcmpWeight = ReservedXcmpWeight; + type CheckAssociatedRelayNumber = cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; + type ConsensusHook = cumulus_pallet_parachain_system::ExpectParentIncluded; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will immediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +parameter_types! { + pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); + pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); +} + +impl parachain_info::Config for Runtime {} + +pub struct OnNewRound; +impl pallet_parachain_staking::OnNewRound for OnNewRound { + fn on_new_round(round_index: pallet_parachain_staking::RoundIndex) -> Weight { + MoonbeamOrbiters::on_new_round(round_index) + } +} +pub struct PayoutCollatorOrOrbiterReward; +impl pallet_parachain_staking::PayoutCollatorReward for PayoutCollatorOrOrbiterReward { + fn payout_collator_reward( + for_round: pallet_parachain_staking::RoundIndex, + collator_id: AccountId, + amount: Balance, + ) -> Weight { + let extra_weight = if MoonbeamOrbiters::is_orbiter(for_round, collator_id) { + MoonbeamOrbiters::distribute_rewards(for_round, collator_id, amount) + } else { + ParachainStaking::mint_collator_reward(for_round, collator_id, amount) + }; + + ::DbWeight::get() + .reads(1) + .saturating_add(extra_weight) + } +} + +pub struct OnInactiveCollator; +impl pallet_parachain_staking::OnInactiveCollator for OnInactiveCollator { + fn on_inactive_collator( + collator_id: AccountId, + round: pallet_parachain_staking::RoundIndex, + ) -> Result> { + let extra_weight = if !MoonbeamOrbiters::is_orbiter(round, collator_id.clone()) { + ParachainStaking::go_offline_inner(collator_id)?; + ::WeightInfo::go_offline( + pallet_parachain_staking::MAX_CANDIDATES, + ) + } else { + Weight::zero() + }; + + Ok(::DbWeight::get() + .reads(1) + .saturating_add(extra_weight)) + } +} +type MonetaryGovernanceOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_parachain_staking::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type MonetaryGovernanceOrigin = MonetaryGovernanceOrigin; + /// Minimum round length is 2 minutes (10 * 12 second block times) + type MinBlocksPerRound = ConstU32<10>; + /// If a collator doesn't produce any block on this number of rounds, it is notified as inactive + type MaxOfflineRounds = ConstU32<1>; + /// Rounds before the collator leaving the candidates request can be executed + type LeaveCandidatesDelay = ConstU32<{ 4 * 7 }>; + /// Rounds before the candidate bond increase/decrease can be executed + type CandidateBondLessDelay = ConstU32<{ 4 * 7 }>; + /// Rounds before the delegator exit can be executed + type LeaveDelegatorsDelay = ConstU32<{ 4 * 7 }>; + /// Rounds before the delegator revocation can be executed + type RevokeDelegationDelay = ConstU32<{ 4 * 7 }>; + /// Rounds before the delegator bond increase/decrease can be executed + type DelegationBondLessDelay = ConstU32<{ 4 * 7 }>; + /// Rounds before the reward is paid + type RewardPaymentDelay = ConstU32<2>; + /// Minimum collators selected per round, default at genesis and minimum forever after + type MinSelectedCandidates = ConstU32<8>; + /// Maximum top delegations per candidate + type MaxTopDelegationsPerCandidate = ConstU32<300>; + /// Maximum bottom delegations per candidate + type MaxBottomDelegationsPerCandidate = ConstU32<50>; + /// Maximum delegations per delegator + type MaxDelegationsPerDelegator = ConstU32<100>; + /// Minimum stake required to be reserved to be a candidate + type MinCandidateStk = ConstU128<{ 20_000 * currency::GLMR * currency::SUPPLY_FACTOR }>; + /// Minimum stake required to be reserved to be a delegator + type MinDelegation = ConstU128<{ 500 * currency::MILLIGLMR * currency::SUPPLY_FACTOR }>; + type BlockAuthor = AuthorInherent; + type OnCollatorPayout = (); + type PayoutCollatorReward = PayoutCollatorOrOrbiterReward; + type OnInactiveCollator = OnInactiveCollator; + type OnNewRound = OnNewRound; + type WeightInfo = moonbeam_weights::pallet_parachain_staking::WeightInfo; + type MaxCandidates = ConstU32<200>; +} + +impl pallet_author_inherent::Config for Runtime { + type SlotBeacon = RelaychainDataProvider; + type AccountLookup = MoonbeamOrbiters; + type CanAuthor = AuthorFilter; + type AuthorId = AccountId; + type WeightInfo = moonbeam_weights::pallet_author_inherent::WeightInfo; +} + +impl pallet_author_slot_filter::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RandomnessSource = Randomness; + type PotentialAuthors = ParachainStaking; + type WeightInfo = moonbeam_weights::pallet_author_slot_filter::WeightInfo; +} + +parameter_types! { + pub const InitializationPayment: Perbill = Perbill::from_percent(30); + pub const RelaySignaturesThreshold: Perbill = Perbill::from_percent(100); + pub const SignatureNetworkIdentifier: &'static [u8] = b"moonbeam-"; +} + +impl pallet_crowdloan_rewards::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Initialized = ConstBool; + type InitializationPayment = InitializationPayment; + type MaxInitContributors = ConstU32<500>; + type MinimumReward = ConstU128<0>; + type RewardCurrency = Balances; + type RelayChainAccountId = [u8; 32]; + type RewardAddressAssociateOrigin = EnsureSigned; + type RewardAddressChangeOrigin = EnsureSigned; + type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; + type SignatureNetworkIdentifier = SignatureNetworkIdentifier; + type VestingBlockNumber = relay_chain::BlockNumber; + type VestingBlockProvider = RelaychainDataProvider; + type WeightInfo = moonbeam_weights::pallet_crowdloan_rewards::WeightInfo; +} + +// This is a simple session key manager. It should probably either work with, or be replaced +// entirely by pallet sessions +impl pallet_author_mapping::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type DepositCurrency = Balances; + type DepositAmount = ConstU128<{ 100 * currency::GLMR * currency::SUPPLY_FACTOR }>; + type Keys = session_keys_primitives::VrfId; + type WeightInfo = moonbeam_weights::pallet_author_mapping::WeightInfo; +} + +/// The type used to represent the kinds of proxying allowed. +#[derive( + Copy, + Clone, + Eq, + PartialEq, + Ord, + PartialOrd, + Encode, + Decode, + Debug, + MaxEncodedLen, + TypeInfo, + Serialize, + Deserialize, +)] +pub enum ProxyType { + /// All calls can be proxied. This is the trivial/most permissive filter. + Any = 0, + /// Only extrinsics that do not transfer funds. + NonTransfer = 1, + /// Only extrinsics related to governance (democracy and collectives). + Governance = 2, + /// Only extrinsics related to staking. + Staking = 3, + /// Allow to veto an announced proxy call. + CancelProxy = 4, + /// Allow extrinsic related to Balances. + Balances = 5, + /// Allow extrinsic related to AuthorMapping. + AuthorMapping = 6, + /// Allow extrinsic related to IdentityJudgement. + IdentityJudgement = 7, +} + +impl Default for ProxyType { + fn default() -> Self { + Self::Any + } +} + +fn is_governance_precompile(precompile_name: &precompiles::PrecompileName) -> bool { + matches!( + precompile_name, + PrecompileName::DemocracyPrecompile + | PrecompileName::ConvictionVotingPrecompile + | PrecompileName::CouncilInstance + | PrecompileName::PreimagePrecompile + | PrecompileName::ReferendaPrecompile + | PrecompileName::TechCommitteeInstance + | PrecompileName::OpenTechCommitteeInstance + | PrecompileName::TreasuryCouncilInstance + ) +} + +// Be careful: Each time this filter is modified, the substrate filter must also be modified +// consistently. +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType { + fn is_evm_proxy_call_allowed( + &self, + call: &pallet_evm_precompile_proxy::EvmSubCall, + recipient_has_code: bool, + gas: u64, + ) -> precompile_utils::EvmResult { + Ok(match self { + ProxyType::Any => { + match PrecompileName::from_address(call.to.0) { + // Any precompile that can execute a subcall should be forbidden here, + // to ensure that unauthorized smart contract can't be called + // indirectly. + // To be safe, we only allow the precompiles we need. + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile, + ) => true, + Some(ref precompile) if is_governance_precompile(precompile) => true, + // All non-whitelisted precompiles are forbidden + Some(_) => false, + // Allow evm transfer to "simple" account (no code nor precompile) + // For the moment, no smart contract other than precompiles is allowed. + // In the future, we may create a dynamic whitelist to authorize some audited + // smart contracts through governance. + None => { + // If the address is not recognized, allow only evm transfert to "simple" + // accounts (no code nor precompile). + // Note: Checking the presence of the code is not enough because some + // precompiles have no code. + !recipient_has_code + && precompile_utils::precompile_set::is_precompile_or_fail::( + call.to.0, gas, + )? + } + } + } + ProxyType::NonTransfer => { + call.value == U256::zero() + && match PrecompileName::from_address(call.to.0) { + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile, + ) => true, + Some(ref precompile) if is_governance_precompile(precompile) => true, + _ => false, + } + } + ProxyType::Governance => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(ref precompile) if is_governance_precompile(precompile) + ) + } + ProxyType::Staking => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile + ) + ) + } + // The proxy precompile does not contain method cancel_proxy + ProxyType::CancelProxy => false, + ProxyType::Balances => { + // Allow only "simple" accounts as recipient (no code nor precompile). + // Note: Checking the presence of the code is not enough because some precompiles + // have no code. + !recipient_has_code + && !precompile_utils::precompile_set::is_precompile_or_fail::( + call.to.0, gas, + )? + } + ProxyType::AuthorMapping => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(PrecompileName::AuthorMappingPrecompile) + ) + } + // There is no identity precompile + ProxyType::IdentityJudgement => false, + }) + } +} + +// Be careful: Each time this filter is modified, the EVM filter must also be modified consistently. +impl InstanceFilter for ProxyType { + fn filter(&self, c: &RuntimeCall) -> bool { + match self { + ProxyType::Any => true, + ProxyType::NonTransfer => { + matches!( + c, + RuntimeCall::System(..) + | RuntimeCall::ParachainSystem(..) + | RuntimeCall::Timestamp(..) + | RuntimeCall::ParachainStaking(..) + | RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Identity(..) + | RuntimeCall::Utility(..) + | RuntimeCall::Proxy(..) | RuntimeCall::AuthorMapping(..) + | RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::claim { .. } + ) + ) + } + ProxyType::Governance => matches!( + c, + RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Utility(..) + ), + ProxyType::Staking => matches!( + c, + RuntimeCall::ParachainStaking(..) + | RuntimeCall::Utility(..) + | RuntimeCall::AuthorMapping(..) + | RuntimeCall::MoonbeamOrbiters(..) + ), + ProxyType::CancelProxy => matches!( + c, + RuntimeCall::Proxy(pallet_proxy::Call::reject_announcement { .. }) + ), + ProxyType::Balances => { + matches!(c, RuntimeCall::Balances(..) | RuntimeCall::Utility(..)) + } + ProxyType::AuthorMapping => matches!(c, RuntimeCall::AuthorMapping(..)), + ProxyType::IdentityJudgement => matches!( + c, + RuntimeCall::Identity(pallet_identity::Call::provide_judgement { .. }) + | RuntimeCall::Utility(..) + ), + } + } + + fn is_superset(&self, o: &Self) -> bool { + match (self, o) { + (x, y) if x == y => true, + (ProxyType::Any, _) => true, + (_, ProxyType::Any) => false, + _ => false, + } + } +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + // One storage item; key size 32, value size 8 + type ProxyDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 21 bytes (20 bytes AccountId + 1 byte sizeof(ProxyType)). + type ProxyDepositFactor = ConstU128<{ currency::deposit(0, 21) }>; + type MaxProxies = ConstU32<32>; + type WeightInfo = moonbeam_weights::pallet_proxy::WeightInfo; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 56 bytes: + // - 20 bytes AccountId + // - 32 bytes Hasher (Blake2256) + // - 4 bytes BlockNumber (u32) + type AnnouncementDepositFactor = ConstU128<{ currency::deposit(0, 56) }>; +} + +impl pallet_migrations::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type MigrationsList = ( + moonbeam_runtime_common::migrations::CommonMigrations< + Runtime, + CouncilCollective, + TechCommitteeCollective, + TreasuryCouncilCollective, + OpenTechCommitteeCollective, + >, + ); + type XcmExecutionManager = XcmExecutionManager; +} + +/// Maintenance mode Call filter +pub struct MaintenanceFilter; +impl Contains for MaintenanceFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(_) => false, + RuntimeCall::LocalAssets(_) => false, + RuntimeCall::Balances(_) => false, + RuntimeCall::CrowdloanRewards(_) => false, + RuntimeCall::Ethereum(_) => false, + RuntimeCall::EVM(_) => false, + RuntimeCall::Identity(_) => false, + RuntimeCall::XTokens(_) => false, + RuntimeCall::ParachainStaking(_) => false, + RuntimeCall::MoonbeamOrbiters(_) => false, + RuntimeCall::PolkadotXcm(_) => false, + RuntimeCall::Treasury(_) => false, + RuntimeCall::XcmTransactor(_) => false, + RuntimeCall::EthereumXcm(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + _ => true, + } + } +} + +/// Normal Call Filter +/// We dont allow to create nor mint assets, this for now is disabled +/// We only allow transfers. For now creation of assets will go through +/// asset-manager, while minting/burning only happens through xcm messages +/// This can change in the future +pub struct NormalFilter; +impl Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(method) => match method { + pallet_assets::Call::transfer { .. } => true, + pallet_assets::Call::transfer_keep_alive { .. } => true, + pallet_assets::Call::approve_transfer { .. } => true, + pallet_assets::Call::transfer_approved { .. } => true, + pallet_assets::Call::cancel_approval { .. } => true, + pallet_assets::Call::destroy_accounts { .. } => true, + pallet_assets::Call::destroy_approvals { .. } => true, + pallet_assets::Call::finish_destroy { .. } => true, + _ => false, + }, + // We want to disable create, as we dont want users to be choosing the + // assetId of their choice + // We also disable destroy, as we want to route destroy through the + // asset-manager, which guarantees the removal both at the EVM and + // substrate side of things + RuntimeCall::LocalAssets(method) => match method { + pallet_assets::Call::create { .. } => false, + pallet_assets::Call::start_destroy { .. } => false, + _ => true, + }, + // We just want to enable this in case of live chains, since the default version + // is populated at genesis + RuntimeCall::PolkadotXcm(method) => match method { + pallet_xcm::Call::force_default_xcm_version { .. } => true, + _ => false, + }, + // We filter anonymous proxy as they make "reserve" inconsistent + // See: https://github.com/paritytech/substrate/blob/37cca710eed3dadd4ed5364c7686608f5175cce1/frame/proxy/src/lib.rs#L270 // editorconfig-checker-disable-line + RuntimeCall::Proxy(method) => match method { + pallet_proxy::Call::create_pure { .. } => false, + pallet_proxy::Call::kill_pure { .. } => false, + pallet_proxy::Call::proxy { real, .. } => { + !pallet_evm::AccountCodes::::contains_key(H160::from(*real)) + } + _ => true, + }, + // Filtering the EVM prevents possible re-entrancy from the precompiles which could + // lead to unexpected scenarios. + // See https://github.com/PureStake/sr-moonbeam/issues/30 + // Note: It is also assumed that EVM calls are only allowed through `Origin::Root` so + // this can be seen as an additional security + RuntimeCall::EVM(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + RuntimeCall::Treasury( + pallet_treasury::Call::spend { .. } + | pallet_treasury::Call::payout { .. } + | pallet_treasury::Call::check_status { .. } + | pallet_treasury::Call::void_spend { .. }, + ) => false, + _ => true, + } + } +} + +pub struct XcmExecutionManager; +impl moonkit_xcm_primitives::PauseXcmExecution for XcmExecutionManager { + fn suspend_xcm_execution() -> DispatchResult { + XcmpQueue::suspend_xcm_execution(RuntimeOrigin::root()) + } + fn resume_xcm_execution() -> DispatchResult { + XcmpQueue::resume_xcm_execution(RuntimeOrigin::root()) + } +} + +pub struct NormalDmpHandler; +impl DmpMessageHandler for NormalDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + (if Migrations::should_pause_xcm() { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } else { + DmpQueue::handle_dmp_messages(iter, limit) + }) + ::DbWeight::get().reads(1) + } +} + +pub struct MaintenanceDmpHandler; +impl DmpMessageHandler for MaintenanceDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + _limit: Weight, + ) -> Weight { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } +} + +/// The hooks we want to run in Maintenance Mode +pub struct MaintenanceHooks; + +impl OnInitialize for MaintenanceHooks { + fn on_initialize(n: BlockNumber) -> Weight { + AllPalletsWithSystem::on_initialize(n) + } +} + +// return 0 +// For some reason using empty tuple () isnt working +// There exist only two pallets that use onIdle and these are xcmp and dmp queues +// For some reason putting an empty tumple does not work (transaction never finishes) +// We use an empty onIdle, if on the future we want one of the pallets to execute it +// we need to provide it here +impl OnIdle for MaintenanceHooks { + fn on_idle(_n: BlockNumber, _max_weight: Weight) -> Weight { + Weight::zero() + } +} + +impl OnRuntimeUpgrade for MaintenanceHooks { + fn on_runtime_upgrade() -> Weight { + AllPalletsWithSystem::on_runtime_upgrade() + } + + #[cfg(feature = "try-runtime")] + fn try_on_runtime_upgrade(checks: bool) -> Result { + AllPalletsWithSystem::try_on_runtime_upgrade(checks) + } +} + +impl OnFinalize for MaintenanceHooks { + fn on_finalize(n: BlockNumber) { + AllPalletsWithSystem::on_finalize(n) + } +} + +impl OffchainWorker for MaintenanceHooks { + fn offchain_worker(n: BlockNumber) { + AllPalletsWithSystem::offchain_worker(n) + } +} + +impl pallet_maintenance_mode::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type NormalCallFilter = NormalFilter; + type MaintenanceCallFilter = MaintenanceFilter; + type MaintenanceOrigin = + pallet_collective::EnsureProportionAtLeast; + type XcmExecutionManager = XcmExecutionManager; + type NormalDmpHandler = NormalDmpHandler; + type MaintenanceDmpHandler = MaintenanceDmpHandler; + // We use AllPalletsWithSystem because we dont want to change the hooks in normal + // operation + type NormalExecutiveHooks = AllPalletsWithSystem; + type MaintenanceExecutiveHooks = MaintenanceHooks; +} + +impl pallet_proxy_genesis_companion::Config for Runtime { + type ProxyType = ProxyType; +} + +parameter_types! { + pub OrbiterReserveIdentifier: [u8; 4] = [b'o', b'r', b'b', b'i']; +} + +type AddCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; +type DelCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_moonbeam_orbiters::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AccountLookup = AuthorMapping; + type AddCollatorOrigin = AddCollatorOrigin; + type Currency = Balances; + type DelCollatorOrigin = DelCollatorOrigin; + /// Maximum number of orbiters per collator + type MaxPoolSize = ConstU32<8>; + /// Maximum number of round to keep on storage + type MaxRoundArchive = ConstU32<4>; + type OrbiterReserveIdentifier = OrbiterReserveIdentifier; + type RotatePeriod = ConstU32<1>; + /// Round index type. + type RoundIndex = pallet_parachain_staking::RoundIndex; + type WeightInfo = moonbeam_weights::pallet_moonbeam_orbiters::WeightInfo; +} + +/// Only callable after `set_validation_data` is called which forms this proof the same way +fn relay_chain_state_proof() -> RelayChainStateProof { + let relay_storage_root = ParachainSystem::validation_data() + .expect("set in `set_validation_data`") + .relay_parent_storage_root; + let relay_chain_state = + ParachainSystem::relay_state_proof().expect("set in `set_validation_data`"); + RelayChainStateProof::new(ParachainInfo::get(), relay_storage_root, relay_chain_state) + .expect("Invalid relay chain state proof, already constructed in `set_validation_data`") +} + +pub struct BabeDataGetter; +impl pallet_randomness::GetBabeData> for BabeDataGetter { + // Tolerate panic here because only ever called in inherent (so can be omitted) + fn get_epoch_index() -> u64 { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + const BENCHMARKING_NEW_EPOCH: u64 = 10u64; + return BENCHMARKING_NEW_EPOCH; + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::EPOCH_INDEX) + .ok() + .flatten() + .expect("expected to be able to read epoch index from relay chain state proof") + } + fn get_epoch_randomness() -> Option { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + let benchmarking_babe_output = Hash::default(); + return Some(benchmarking_babe_output); + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::ONE_EPOCH_AGO_RANDOMNESS) + .ok() + .flatten() + } +} + +impl pallet_randomness::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AddressMapping = sp_runtime::traits::ConvertInto; + type Currency = Balances; + type BabeDataGetter = BabeDataGetter; + type VrfKeyLookup = AuthorMapping; + type Deposit = ConstU128<{ 1 * currency::GLMR * currency::SUPPLY_FACTOR }>; + type MaxRandomWords = ConstU8<100>; + type MinBlockDelay = ConstU32<2>; + type MaxBlockDelay = ConstU32<2_000>; + type BlockExpirationDelay = ConstU32<10_000>; + type EpochExpirationDelay = ConstU64<10_000>; + type WeightInfo = moonbeam_weights::pallet_randomness::WeightInfo; +} + +impl pallet_root_testing::Config for Runtime {} + +parameter_types! { + // One storage item; key size is 32 + 20; value is size 4+4+16+20 bytes = 44 bytes. + pub const DepositBase: Balance = currency::deposit(1, 96); + // Additional storage item size of 20 bytes. + pub const DepositFactor: Balance = currency::deposit(0, 20); + pub const MaxSignatories: u32 = 100; +} + +impl pallet_multisig::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type DepositBase = DepositBase; + type DepositFactor = DepositFactor; + type MaxSignatories = MaxSignatories; + type WeightInfo = moonbeam_weights::pallet_multisig::WeightInfo; +} + +construct_runtime! { + pub enum Runtime + { + // System support stuff. + System: frame_system::{Pallet, Call, Storage, Config, Event} = 0, + ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Storage, Inherent, Event} = 1, + // Previously 2: pallet_randomness_collective_flip + Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 3, + ParachainInfo: parachain_info::{Pallet, Storage, Config} = 4, + RootTesting: pallet_root_testing::{Pallet, Call, Storage} = 5, + + // Monetary stuff. + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 10, + TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Config, Event} = 11, + + // Consensus support. + ParachainStaking: pallet_parachain_staking::{Pallet, Call, Storage, Event, Config} = 20, + AuthorInherent: pallet_author_inherent::{Pallet, Call, Storage, Inherent} = 21, + AuthorFilter: pallet_author_slot_filter::{Pallet, Call, Storage, Event, Config} = 22, + AuthorMapping: pallet_author_mapping::{Pallet, Call, Config, Storage, Event} = 23, + MoonbeamOrbiters: pallet_moonbeam_orbiters::{Pallet, Call, Storage, Event} = 24, + + // Handy utilities. + Utility: pallet_utility::{Pallet, Call, Event} = 30, + Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 31, + MaintenanceMode: pallet_maintenance_mode::{Pallet, Call, Config, Storage, Event} = 32, + Identity: pallet_identity::{Pallet, Call, Storage, Event} = 33, + Migrations: pallet_migrations::{Pallet, Storage, Config, Event} = 34, + ProxyGenesisCompanion: pallet_proxy_genesis_companion::{Pallet, Config} = 35, + Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 36, + + // Has been permanently removed for safety reasons. + // Sudo: pallet_sudo::{Pallet, Call, Config, Storage, Event} = 40, + + // Ethereum compatibility. + EthereumChainId: pallet_evm_chain_id::{Pallet, Storage, Config} = 50, + EVM: pallet_evm::{Pallet, Config, Call, Storage, Event} = 51, + Ethereum: pallet_ethereum::{Pallet, Call, Storage, Event, Origin, Config} = 52, + + // Governance stuff. + Scheduler: pallet_scheduler::{Pallet, Storage, Event, Call} = 60, + Democracy: pallet_democracy::{Pallet, Storage, Config, Event, Call} = 61, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 62, + ConvictionVoting: pallet_conviction_voting::{Pallet, Call, Storage, Event} = 63, + Referenda: pallet_referenda::{Pallet, Call, Storage, Event} = 64, + Origins: governance::custom_origins::{Origin} = 65, + Whitelist: pallet_whitelist::{Pallet, Call, Storage, Event} = 66, + + // Council stuff. + CouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 70, + TechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 71, + TreasuryCouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 72, + OpenTechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 73, + + // Treasury stuff. + Treasury: pallet_treasury::{Pallet, Storage, Config, Event, Call} = 80, + + // Crowdloan stuff. + CrowdloanRewards: pallet_crowdloan_rewards::{Pallet, Call, Config, Storage, Event} = 90, + + // XCM + XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Storage, Event} = 100, + CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin} = 101, + DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 102, + PolkadotXcm: pallet_xcm::{Pallet, Storage, Call, Event, Origin, Config} = 103, + Assets: pallet_assets::{Pallet, Call, Storage, Event} = 104, + AssetManager: pallet_asset_manager::{Pallet, Call, Storage, Event} = 105, + XTokens: orml_xtokens::{Pallet, Call, Storage, Event} = 106, + XcmTransactor: pallet_xcm_transactor::{Pallet, Call, Storage, Event} = 107, + LocalAssets: pallet_assets::::{Pallet, Call, Storage, Event} = 108, + EthereumXcm: pallet_ethereum_xcm::{Pallet, Call, Storage, Origin} = 109, + Erc20XcmBridge: pallet_erc20_xcm_bridge::{Pallet} = 110, + + + // Randomness + Randomness: pallet_randomness::{Pallet, Call, Storage, Event, Inherent} = 120, + } +} + +#[cfg(feature = "runtime-benchmarks")] +use { + moonbeam_runtime_common::benchmarking::BenchmarkHelper, + moonbeam_xcm_benchmarks::generic::benchmarking as MoonbeamXcmBenchmarks, + MoonbeamXcmBenchmarks::XcmGenericBenchmarks as MoonbeamXcmGenericBench, +}; +#[cfg(feature = "runtime-benchmarks")] +mod benches { + frame_benchmarking::define_benchmarks!( + [pallet_utility, Utility] + [pallet_timestamp, Timestamp] + [pallet_balances, Balances] + [pallet_evm, EVM] + [pallet_assets, Assets] + [pallet_collective, CouncilCollective] + [pallet_parachain_staking, ParachainStaking] + [pallet_scheduler, Scheduler] + [pallet_democracy, Democracy] + [pallet_treasury, Treasury] + [pallet_author_inherent, AuthorInherent] + [pallet_author_slot_filter, AuthorFilter] + [pallet_crowdloan_rewards, CrowdloanRewards] + [pallet_author_mapping, AuthorMapping] + [pallet_proxy, Proxy] + [pallet_identity, Identity] + [cumulus_pallet_xcmp_queue, XcmpQueue] + [pallet_xcm, PolkadotXcm] + [pallet_asset_manager, AssetManager] + [pallet_xcm_transactor, XcmTransactor] + [pallet_moonbeam_orbiters, MoonbeamOrbiters] + [pallet_randomness, Randomness] + [pallet_conviction_voting, ConvictionVoting] + [pallet_referenda, Referenda] + [pallet_preimage, Preimage] + [pallet_whitelist, Whitelist] + [pallet_multisig, Multisig] + [moonbeam_xcm_benchmarks::weights::generic, MoonbeamXcmGenericBench::] + ); +} + +/// Block type as expected by this runtime. +pub type Block = generic::Block; +/// A Block signed with a Justification +pub type SignedBlock = generic::SignedBlock; +/// BlockId type as expected by this runtime. +pub type BlockId = generic::BlockId; + +/// The SignedExtension to the basic transaction logic. +pub type SignedExtra = ( + frame_system::CheckNonZeroSender, + frame_system::CheckSpecVersion, + frame_system::CheckTxVersion, + frame_system::CheckGenesis, + frame_system::CheckEra, + frame_system::CheckNonce, + frame_system::CheckWeight, + pallet_transaction_payment::ChargeTransactionPayment, +); +/// Unchecked extrinsic type as expected by this runtime. +pub type UncheckedExtrinsic = + fp_self_contained::UncheckedExtrinsic; +/// Extrinsic type that has already been checked. +pub type CheckedExtrinsic = + fp_self_contained::CheckedExtrinsic; +/// Executive: handles dispatch to the various pallets. +pub type Executive = frame_executive::Executive< + Runtime, + Block, + frame_system::ChainContext, + Runtime, + pallet_maintenance_mode::ExecutiveHooks, +>; + +// All of our runtimes share most of their Runtime API implementations. +// We use a macro to implement this common part and add runtime-specific additional implementations. +// This macro expands to : +// ``` +// impl_runtime_apis! { +// // All impl blocks shared between all runtimes. +// +// // Specific impls provided to the `impl_runtime_apis_plus_common!` macro. +// } +// ``` +moonbeam_runtime_common::impl_runtime_apis_plus_common! { + impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { + fn validate_transaction( + source: TransactionSource, + xt: ::Extrinsic, + block_hash: ::Hash, + ) -> TransactionValidity { + // Filtered calls should not enter the tx pool as they'll fail if inserted. + // If this call is not allowed, we return early. + if !::BaseCallFilter::contains(&xt.0.function) { + return InvalidTransaction::Call.into(); + } + + // This runtime uses Substrate's pallet transaction payment. This + // makes the chain feel like a standard Substrate chain when submitting + // frame transactions and using Substrate ecosystem tools. It has the downside that + // transaction are not prioritized by gas_price. The following code reprioritizes + // transactions to overcome this. + // + // A more elegant, ethereum-first solution is + // a pallet that replaces pallet transaction payment, and allows users + // to directly specify a gas price rather than computing an effective one. + // #HopefullySomeday + + // First we pass the transactions to the standard FRAME executive. This calculates all the + // necessary tags, longevity and other properties that we will leave unchanged. + // This also assigns some priority that we don't care about and will overwrite next. + let mut intermediate_valid = Executive::validate_transaction(source, xt.clone(), block_hash)?; + + let dispatch_info = xt.get_dispatch_info(); + + // If this is a pallet ethereum transaction, then its priority is already set + // according to gas price from pallet ethereum. If it is any other kind of transaction, + // we modify its priority. + Ok(match &xt.0.function { + RuntimeCall::Ethereum(transact { .. }) => intermediate_valid, + _ if dispatch_info.class != DispatchClass::Normal => intermediate_valid, + _ => { + let tip = match xt.0.signature { + None => 0, + Some((_, _, ref signed_extra)) => { + // Yuck, this depends on the index of charge transaction in Signed Extra + let charge_transaction = &signed_extra.7; + charge_transaction.tip() + } + }; + + // Calculate the fee that will be taken by pallet transaction payment + let fee: u64 = TransactionPayment::compute_fee( + xt.encode().len() as u32, + &dispatch_info, + tip, + ).saturated_into(); + + // Calculate how much gas this effectively uses according to the existing mapping + let effective_gas = + ::GasWeightMapping::weight_to_gas( + dispatch_info.weight + ); + + // Here we calculate an ethereum-style effective gas price using the + // current fee of the transaction. Because the weight -> gas conversion is + // lossy, we have to handle the case where a very low weight maps to zero gas. + let effective_gas_price = if effective_gas > 0 { + fee / effective_gas + } else { + // If the effective gas was zero, we just act like it was 1. + fee + }; + + // Overwrite the original prioritization with this ethereum one + intermediate_valid.priority = effective_gas_price; + intermediate_valid + } + }) + } + } + + impl async_backing_primitives::UnincludedSegmentApi for Runtime { + fn can_build_upon( + _included_hash: ::Hash, + _slot: async_backing_primitives::Slot, + ) -> bool { + // This runtime API can be called only when asynchronous backing is enabled client-side + // We return false here to force the client to not use async backing in moonbeam. + false + } + } +} + +struct CheckInherents; + +// Parity has decided to depreciate this trait, but does not offer a satisfactory replacement, +// see issue: https://github.com/paritytech/polkadot-sdk/issues/2841 +#[allow(deprecated)] +impl cumulus_pallet_parachain_system::CheckInherents for CheckInherents { + fn check_inherents( + block: &Block, + relay_state_proof: &cumulus_pallet_parachain_system::RelayChainStateProof, + ) -> sp_inherents::CheckInherentsResult { + let relay_chain_slot = relay_state_proof + .read_slot() + .expect("Could not read the relay chain slot from the proof"); + let inherent_data = + cumulus_primitives_timestamp::InherentDataProvider::from_relay_chain_slot_and_duration( + relay_chain_slot, + sp_std::time::Duration::from_secs(6), + ) + .create_inherent_data() + .expect("Could not create the timestamp inherent data"); + inherent_data.check_extrinsics(block) + } +} + +// Nimbus's Executive wrapper allows relay validators to verify the seal digest +cumulus_pallet_parachain_system::register_validate_block!( + Runtime = Runtime, + BlockExecutor = pallet_author_inherent::BlockExecutor::, + CheckInherents = CheckInherents, +); + +moonbeam_runtime_common::impl_self_contained_call!(); + +// Shorthand for a Get field of a pallet Config. +#[macro_export] +macro_rules! get { + ($pallet:ident, $name:ident, $type:ty) => { + <<$crate::Runtime as $pallet::Config>::$name as $crate::Get<$type>>::get() + }; +} + +#[cfg(test)] +mod tests { + use super::{currency::*, *}; + + #[test] + // Helps us to identify a Pallet Call in case it exceeds the 1kb limit. + // Hint: this should be a rare case. If that happens, one or more of the dispatchable arguments + // need to be Boxed. + fn call_max_size() { + const CALL_ALIGN: u32 = 1024; + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() + <= CALL_ALIGN as usize + ); + } + + #[test] + fn currency_constants_are_correct() { + assert_eq!(SUPPLY_FACTOR, 100); + + // txn fees + assert_eq!(TRANSACTION_BYTE_FEE, Balance::from(100 * GIGAWEI)); + assert_eq!( + get!(pallet_transaction_payment, OperationalFeeMultiplier, u8), + 5_u8 + ); + assert_eq!(STORAGE_BYTE_FEE, Balance::from(10 * MILLIGLMR)); + + // democracy minimums + assert_eq!( + get!(pallet_democracy, MinimumDeposit, u128), + Balance::from(400 * GLMR) + ); + assert_eq!( + get!(pallet_treasury, ProposalBondMinimum, u128), + Balance::from(100 * GLMR) + ); + + // pallet_identity deposits + assert_eq!( + get!(pallet_identity, BasicDeposit, u128), + Balance::from(10 * GLMR + 2580 * MILLIGLMR) + ); + assert_eq!( + get!(pallet_identity, FieldDeposit, u128), + Balance::from(660 * MILLIGLMR) + ); + assert_eq!( + get!(pallet_identity, SubAccountDeposit, u128), + Balance::from(10 * GLMR + 530 * MILLIGLMR) + ); + + // staking minimums + assert_eq!( + get!(pallet_parachain_staking, MinCandidateStk, u128), + Balance::from(2_000_000 * GLMR) + ); + assert_eq!( + get!(pallet_parachain_staking, MinDelegation, u128), + Balance::from(50 * GLMR) + ); + + // crowdloan min reward + assert_eq!( + get!(pallet_crowdloan_rewards, MinimumReward, u128), + Balance::from(0u128) + ); + + // deposit for AuthorMapping + assert_eq!( + get!(pallet_author_mapping, DepositAmount, u128), + Balance::from(10 * KILOGLMR) + ); + + // proxy deposits + assert_eq!( + get!(pallet_proxy, ProxyDepositBase, u128), + Balance::from(10 * GLMR + 80 * MILLIGLMR) + ); + assert_eq!( + get!(pallet_proxy, ProxyDepositFactor, u128), + Balance::from(210 * MILLIGLMR) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositBase, u128), + Balance::from(10 * GLMR + 80 * MILLIGLMR) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositFactor, u128), + Balance::from(560 * MILLIGLMR) + ); + } + + #[test] + fn max_offline_rounds_lower_or_eq_than_reward_payment_delay() { + assert!( + get!(pallet_parachain_staking, MaxOfflineRounds, u32) + <= get!(pallet_parachain_staking, RewardPaymentDelay, u32) + ); + } + + #[test] + // Required migration is + // pallet_parachain_staking::migrations::IncreaseMaxTopDelegationsPerCandidate + // Purpose of this test is to remind of required migration if constant is ever changed + fn updating_maximum_delegators_per_candidate_requires_configuring_required_migration() { + assert_eq!( + get!(pallet_parachain_staking, MaxTopDelegationsPerCandidate, u32), + 300 + ); + assert_eq!( + get!( + pallet_parachain_staking, + MaxBottomDelegationsPerCandidate, + u32 + ), + 50 + ); + } + + #[test] + fn configured_base_extrinsic_weight_is_evm_compatible() { + let min_ethereum_transaction_weight = WeightPerGas::get() * 21_000; + let base_extrinsic = ::BlockWeights::get() + .get(frame_support::dispatch::DispatchClass::Normal) + .base_extrinsic; + assert!(base_extrinsic.ref_time() <= min_ethereum_transaction_weight.ref_time()); + } + + #[test] + fn test_storage_growth_ratio_is_correct() { + // This is the highest amount of new storage that can be created in a block 40 KB + let block_storage_limit = 40 * 1024; + let expected_storage_growth_ratio = BlockGasLimit::get() + .low_u64() + .saturating_div(block_storage_limit); + let actual_storage_growth_ratio = + ::GasLimitStorageGrowthRatio::get(); + assert_eq!( + expected_storage_growth_ratio, actual_storage_growth_ratio, + "Storage growth ratio is not correct" + ); + } +} diff --git a/tracing/2700/runtime/moonbeam/src/precompiles.rs b/tracing/2700/runtime/moonbeam/src/precompiles.rs new file mode 100644 index 00000000..901618c9 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/precompiles.rs @@ -0,0 +1,274 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use crate::{ + asset_config::{ForeignAssetInstance, LocalAssetInstance}, + xcm_config::XcmExecutorConfig, + CouncilInstance, OpenTechCommitteeInstance, TechCommitteeInstance, TreasuryCouncilInstance, +}; +use frame_support::parameter_types; +use pallet_evm_precompile_author_mapping::AuthorMappingPrecompile; +use pallet_evm_precompile_balances_erc20::{Erc20BalancesPrecompile, Erc20Metadata}; +use pallet_evm_precompile_batch::BatchPrecompile; +use pallet_evm_precompile_blake2::Blake2F; +use pallet_evm_precompile_bn128::{Bn128Add, Bn128Mul, Bn128Pairing}; +use pallet_evm_precompile_call_permit::CallPermitPrecompile; +use pallet_evm_precompile_collective::CollectivePrecompile; +use pallet_evm_precompile_conviction_voting::ConvictionVotingPrecompile; +use pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompile; +use pallet_evm_precompile_democracy::DemocracyPrecompile; +use pallet_evm_precompile_gmp::GmpPrecompile; +use pallet_evm_precompile_identity::IdentityPrecompile; +use pallet_evm_precompile_modexp::Modexp; +use pallet_evm_precompile_parachain_staking::ParachainStakingPrecompile; +use pallet_evm_precompile_preimage::PreimagePrecompile; +use pallet_evm_precompile_proxy::{OnlyIsProxyAndProxy, ProxyPrecompile}; +use pallet_evm_precompile_randomness::RandomnessPrecompile; +use pallet_evm_precompile_referenda::ReferendaPrecompile; +use pallet_evm_precompile_registry::PrecompileRegistry; +use pallet_evm_precompile_relay_encoder::RelayEncoderPrecompile; +use pallet_evm_precompile_sha3fips::Sha3FIPS256; +use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; +use pallet_evm_precompile_xcm_transactor::{ + v1::XcmTransactorPrecompileV1, v2::XcmTransactorPrecompileV2, v3::XcmTransactorPrecompileV3, +}; +use pallet_evm_precompile_xcm_utils::XcmUtilsPrecompile; +use pallet_evm_precompile_xtokens::XtokensPrecompile; +use pallet_evm_precompileset_assets_erc20::{Erc20AssetsPrecompileSet, IsForeign, IsLocal}; +use precompile_utils::precompile_set::*; + +pub struct NativeErc20Metadata; + +/// ERC20 metadata for the native token. +impl Erc20Metadata for NativeErc20Metadata { + /// Returns the name of the token. + fn name() -> &'static str { + "GLMR token" + } + + /// Returns the symbol of the token. + fn symbol() -> &'static str { + "GLMR" + } + + /// Returns the decimals places of the token. + fn decimals() -> u8 { + 18 + } + + /// Must return `true` only if it represents the main native currency of + /// the network. It must be the currency used in `pallet_evm`. + fn is_native_currency() -> bool { + true + } +} + +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as foreign +pub const FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8; 4]; +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as local +pub const LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8, 255u8, 255u8, 254u8]; + +parameter_types! { + pub ForeignAssetPrefix: &'static [u8] = FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX; + pub LocalAssetPrefix: &'static [u8] = LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX; +} + +type EthereumPrecompilesChecks = (AcceptDelegateCall, CallableByContract, CallableByPrecompile); + +#[precompile_utils::precompile_name_from_address] +type MoonbeamPrecompilesAt = ( + // Ethereum precompiles: + // We allow DELEGATECALL to stay compliant with Ethereum behavior. + PrecompileAt, ECRecover, EthereumPrecompilesChecks>, + PrecompileAt, Sha256, EthereumPrecompilesChecks>, + PrecompileAt, Ripemd160, EthereumPrecompilesChecks>, + PrecompileAt, Identity, EthereumPrecompilesChecks>, + PrecompileAt, Modexp, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Add, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Mul, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Pairing, EthereumPrecompilesChecks>, + PrecompileAt, Blake2F, EthereumPrecompilesChecks>, + // Non-Moonbeam specific nor Ethereum precompiles : + PrecompileAt, Sha3FIPS256, (CallableByContract, CallableByPrecompile)>, + RemovedPrecompileAt>, // Dispatch + PrecompileAt, ECRecoverPublicKey, (CallableByContract, CallableByPrecompile)>, + // Moonbeam specific precompiles: + PrecompileAt< + AddressU64<2048>, + ParachainStakingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2049>, + CrowdloanRewardsPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2050>, + Erc20BalancesPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2051>, + DemocracyPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2052>, + XtokensPrecompile, + ( + SubcallWithMaxNesting<1>, + CallableByContract, + CallableByPrecompile, + ), + >, + PrecompileAt< + AddressU64<2053>, + RelayEncoderPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2054>, + XcmTransactorPrecompileV1, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2055>, + AuthorMappingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2056>, + BatchPrecompile, + ( + SubcallWithMaxNesting<2>, + // Batch is the only precompile allowed to call Batch. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2057>, + RandomnessPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2058>, + CallPermitPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2059>, + ProxyPrecompile, + ( + CallableByContract>, + SubcallWithMaxNesting<0>, + // Batch is the only precompile allowed to call Proxy. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2060>, + XcmUtilsPrecompile, + CallableByContract< + pallet_evm_precompile_xcm_utils::AllExceptXcmExecute, + >, + >, + PrecompileAt< + AddressU64<2061>, + XcmTransactorPrecompileV2, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2062>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2063>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2064>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2065>, + ReferendaPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2066>, + ConvictionVotingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2067>, + PreimagePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2068>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2069>, + PrecompileRegistry, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt, GmpPrecompile, SubcallWithMaxNesting<0>>, + PrecompileAt< + AddressU64<2071>, + XcmTransactorPrecompileV3, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2072>, + IdentityPrecompile, + (CallableByContract, CallableByPrecompile), + >, +); + +/// The PrecompileSet installed in the Moonbeam runtime. +/// We include the nine Istanbul precompiles +/// (https://github.com/ethereum/go-ethereum/blob/3c46f557/core/vm/contracts.go#L69) +/// as well as a special precompile for dispatching Substrate extrinsics +/// The following distribution has been decided for the precompiles +/// 0-1023: Ethereum Mainnet Precompiles +/// 1024-2047 Precompiles that are not in Ethereum Mainnet but are neither Moonbeam specific +/// 2048-4095 Moonbeam specific precompiles +pub type MoonbeamPrecompiles = PrecompileSetBuilder< + R, + ( + // Skip precompiles if out of range. + PrecompilesInRangeInclusive<(AddressU64<1>, AddressU64<4095>), MoonbeamPrecompilesAt>, + // Prefixed precompile sets (XC20) + PrecompileSetStartingWith< + ForeignAssetPrefix, + Erc20AssetsPrecompileSet, + (CallableByContract, CallableByPrecompile), + >, + PrecompileSetStartingWith< + LocalAssetPrefix, + Erc20AssetsPrecompileSet, + (CallableByContract, CallableByPrecompile), + >, + ), +>; diff --git a/tracing/2700/runtime/moonbeam/src/xcm_config.rs b/tracing/2700/runtime/moonbeam/src/xcm_config.rs new file mode 100644 index 00000000..0509f8b8 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/src/xcm_config.rs @@ -0,0 +1,694 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! XCM configuration for Moonbase. +//! + +use super::{ + governance, AccountId, AssetId, AssetManager, Assets, Balance, Balances, DealWithFees, + Erc20XcmBridge, LocalAssets, ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, RuntimeCall, + RuntimeEvent, RuntimeOrigin, Treasury, XcmpQueue, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use frame_support::{ + parameter_types, + traits::{EitherOfDiverse, Everything, Nothing, PalletInfoAccess}, +}; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::{ + traits::{Hash as THash, PostDispatchInfoOf}, + DispatchErrorWithPostInfo, +}; +use sp_weights::Weight; + +use frame_system::{EnsureRoot, RawOrigin}; +use sp_core::{ConstU32, H160, H256}; + +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, DescribeAllTerminal, DescribeFamily, EnsureXcmOrigin, + FungiblesAdapter, HashedDescription, NoChecking, ParentIsPreset, RelayChainAsNative, + SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountKey20AsNative, + SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, WeightInfoBounds, + WithComputedOrigin, +}; + +use xcm::latest::prelude::*; +use xcm_executor::traits::{CallDispatcher, ConvertLocation, JustTry}; + +use orml_xcm_support::MultiNativeAsset; +use xcm_primitives::{ + AbsoluteAndRelativeReserve, AccountIdToCurrencyId, AccountIdToMultiLocation, AsAssetType, + FirstAssetTrader, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, XcmTransact, +}; + +use parity_scale_codec::{Decode, Encode}; +use scale_info::TypeInfo; + +use sp_std::{ + convert::{From, Into, TryFrom}, + prelude::*, +}; + +use orml_traits::parameter_type_with_key; + +use crate::governance::referenda::GeneralAdminOrRoot; + +parameter_types! { + // The network Id of the relay + pub const RelayNetwork: NetworkId = NetworkId::Polkadot; + // The relay chain Origin type + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(ParachainInfo::parachain_id().into())); + // Self Reserve location, defines the multilocation identifiying the self-reserve currency + // This is used to match it also against our Balances pallet when we receive such + // a MultiLocation: (Self Balances pallet index) + // We use the RELATIVE multilocation + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // This is the relative view of our local assets. + // Indentified by thix prefix + generalIndex(assetId) + // We use the RELATIVE multilocation + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // If we receive a MultiLocation of type AccountKey20, just generate a native account + AccountKey20Aliases, + // Generate remote accounts according to polkadot standards + HashedDescription>, +); + +/// Wrapper type around `LocationToAccountId` to convert an `AccountId` to type `H160`. +pub struct LocationToH160; +impl ConvertLocation for LocationToH160 { + fn convert_location(location: &MultiLocation) -> Option { + >::convert_location(location) + .map(Into::into) + } +} + +// The non-reserve fungible transactor type +// It will use pallet-assets, and the Id will be matched against AsAssetType +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId20 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +/// The transactor for our own chain currency. +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + xcm_builder::IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets besides the native currency on this chain. +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + // This just tells to convert an assetId into a GeneralIndex junction prepended + // by LocalAssetsPalletLocationNewReanchor + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// We use all transactors +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, + Erc20XcmBridge, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + // Xcm Origins defined by a Multilocation of type AccountKey20 can be converted to a 20 byte- + // account local origin + SignedAccountKey20AsNative, +); + +parameter_types! { + /// The amount of weight an XCM operation takes. This is safe overestimate. + pub UnitWeightCost: Weight = Weight::from_parts(200_000_000u64, 0); + /// Maximum number of instructions in a single XCM fragment. A sanity check against + /// weight caculations getting too crazy. + pub MaxInstructions: u32 = 100; +} + +/// Xcm Weigher shared between multiple Xcm-related configs. +pub type XcmWeigher = WeightInfoBounds< + moonbeam_xcm_benchmarks::weights::XcmWeight, + RuntimeCall, + MaxInstructions, +>; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +/// We do not burn anything because we want to mimic exactly what +/// the sovereign account has +pub type XcmFeesToAccount = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +pub struct SafeCallFilter; +impl frame_support::traits::Contains for SafeCallFilter { + fn contains(_call: &RuntimeCall) -> bool { + // TODO review + // This needs to be addressed at EVM level + true + } +} + +parameter_types! { + pub const MaxAssetsIntoHolding: u32 = xcm_primitives::MAX_ASSETS; +} + +// Our implementation of the Moonbeam Call +// Attachs the right origin in case the call is made to pallet-ethereum-xcm +#[cfg(not(feature = "evm-tracing"))] +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); +#[cfg(feature = "evm-tracing")] +moonbeam_runtime_common::impl_moonbeam_xcm_call_tracing!(); + +moonbeam_runtime_common::impl_evm_runner_precompile_or_eth_xcm!(); + +pub struct XcmExecutorConfig; +impl xcm_executor::Config for XcmExecutorConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + // How to withdraw and deposit an asset. + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + // Filter to the reserve withdraw operations + // Whenever the reserve matches the relative or absolute value + // of our chain, we always return the relative reserve + type IsReserve = MultiNativeAsset>; + type IsTeleporter = (); // No teleport + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = XcmWeigher; + // We use two traders + // When we receive the relative representation of the self-reserve asset, + // we use UsingComponents and the local way of handling fees + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + UsingComponents< + ::WeightToFee, + SelfReserve, + AccountId, + Balances, + DealWithFees, + >, + FirstAssetTrader, + ); + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = pallet_erc20_xcm_bridge::AssetTrapWrapper; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type PalletInstancesInfo = crate::AllPalletsWithSystem; + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type AssetLocker = (); + type AssetExchanger = (); + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = SafeCallFilter; + type Aliasers = Nothing; +} + +type XcmExecutor = pallet_erc20_xcm_bridge::XcmExecutorWrapper< + RuntimeCall, + xcm_executor::XcmExecutor, +>; + +// Converts a Signed Local Origin into a MultiLocation +pub type LocalOriginToLocation = SignedToAccountId20; + +/// The means for routing XCM messages which are not for local execution into the right message +/// queues. +pub type XcmRouter = ( + // Two routers - use UMP to communicate with the relay chain: + cumulus_primitives_utility::ParentAsUmp, + // ..and XCMP to communicate with the sibling chains. + XcmpQueue, +); + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = LocationToAccountId; + type MaxLockers = ConstU32<8>; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + // TODO pallet-xcm weights + type WeightInfo = moonbeam_weights::pallet_xcm::WeightInfo; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; + type AdminOrigin = EnsureRoot; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl cumulus_pallet_xcmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ChannelInfo = ParachainSystem; + type VersionWrapper = PolkadotXcm; + type ExecuteOverweightOrigin = EnsureRoot; + type ControllerOrigin = EnsureRoot; + type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; + type WeightInfo = moonbeam_weights::cumulus_pallet_xcmp_queue::WeightInfo; + type PriceForSiblingDelivery = polkadot_runtime_common::xcm_sender::NoPriceForMessageDelivery< + cumulus_primitives_core::ParaId, + >; +} + +impl cumulus_pallet_dmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ExecuteOverweightOrigin = EnsureRoot; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We simply hash the AssetType and take the lowest 128 bits +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + // Our native token + SelfReserve, + // Assets representing other chains native tokens + ForeignAsset(AssetId), + // Our local assets + LocalAssetReserve(AssetId), + // Erc20 token + Erc20 { contract_address: H160 }, +} + +impl AccountIdToCurrencyId for Runtime { + fn account_to_currency_id(account: AccountId) -> Option { + Some(match account { + // the self-reserve currency is identified by the pallet-balances address + a if a == H160::from_low_u64_be(2050).into() => CurrencyId::SelfReserve, + // the rest of the currencies, by their corresponding erc20 address + _ => match Runtime::account_to_asset_id(account) { + // We distinguish by prefix, and depending on it we create either + // Foreign or Local + Some((prefix, asset_id)) => { + if prefix == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX.to_vec() { + CurrencyId::ForeignAsset(asset_id) + } else { + CurrencyId::LocalAssetReserve(asset_id) + } + } + // If no known prefix is identified, we consider that it's a "real" erc20 token + // (i.e. managed by a real smart contract) + None => CurrencyId::Erc20 { + contract_address: account.into(), + }, + }, + }) + } +} +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: sp_runtime::traits::MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + CurrencyId::SelfReserve => { + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + // No transactor matches this yet, so even if we have this enum variant the transfer will fail + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + CurrencyId::Erc20 { contract_address } => { + let mut location = Erc20XcmBridgePalletLocation::get(); + location + .push_interior(Junction::AccountKey20 { + key: contract_address.0, + network: None, + }) + .ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(200_000_000u64, 0); + pub const MaxAssetsForTransfer: usize = 2; + + // This is how we are going to detect whether the asset is a Reserve asset + // This however is the chain part only + pub SelfLocation: MultiLocation = MultiLocation::here(); + // We need this to be able to catch when someone is trying to execute a non- + // cross-chain transfer in xtokens through the absolute path way + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(ParachainInfo::parachain_id().into()) + ) + }; +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + // Polkadot AssetHub fee + (1, Some(Parachain(1000u32))) => Some(50_000_000u128), + _ => None, + } + }; +} + +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = AbsoluteAndRelativeReserve; +} + +// 1 DOT should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +// For now we only allow to transact in the relay, although this might change in the future +// Transactors just defines the chains in which we allow transactions to be issued through +// xcm +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum Transactors { + Relay, +} + +// Default for benchmarking +#[cfg(feature = "runtime-benchmarks")] +impl Default for Transactors { + fn default() -> Self { + Transactors::Relay + } +} + +impl TryFrom for Transactors { + type Error = (); + fn try_from(value: u8) -> Result { + match value { + 0u8 => Ok(Transactors::Relay), + _ => Err(()), + } + } +} + +impl UtilityEncodeCall for Transactors { + fn encode_call(self, call: UtilityAvailableCalls) -> Vec { + match self { + Transactors::Relay => pallet_xcm_transactor::Pallet::::encode_call( + pallet_xcm_transactor::Pallet(sp_std::marker::PhantomData::), + call, + ), + } + } +} + +impl XcmTransact for Transactors { + fn destination(self) -> MultiLocation { + match self { + Transactors::Relay => MultiLocation::parent(), + } + } +} + +pub type DerivativeAddressRegistrationOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = Transactors; + type DerivativeAddressRegistrationOrigin = DerivativeAddressRegistrationOrigin; + type SovereignAccountDispatcherOrigin = EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type XcmSender = XcmRouter; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = AbsoluteAndRelativeReserve; + type WeightInfo = moonbeam_weights::pallet_xcm_transactor::WeightInfo; + type HrmpManipulatorOrigin = GeneralAdminOrRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + // This is the relative view of erc20 assets. + // Identified by this prefix + AccountKey20(contractAddress) + // We use the RELATIVE multilocation + pub Erc20XcmBridgePalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // To be able to support almost all erc20 implementations, + // we provide a sufficiently hight gas limit. + pub Erc20XcmBridgeTransferGasLimit: u64 = 200_000; +} + +impl pallet_erc20_xcm_bridge::Config for Runtime { + type AccountIdConverter = LocationToH160; + type Erc20MultilocationPrefix = Erc20XcmBridgePalletLocation; + type Erc20TransferGasLimit = Erc20XcmBridgeTransferGasLimit; + type EvmRunner = EvmRunnerPrecompileOrEthXcm; +} + +#[cfg(feature = "runtime-benchmarks")] +mod testing { + use super::*; + + /// This From exists for benchmarking purposes. It has the potential side-effect of calling + /// AssetManager::set_asset_type_asset_id() and should NOT be used in any production code. + impl From for CurrencyId { + fn from(location: MultiLocation) -> CurrencyId { + use xcm_primitives::AssetTypeGetter; + + // If it does not exist, for benchmarking purposes, we create the association + let asset_id = if let Some(asset_id) = + AsAssetType::::convert_location(&location) + { + asset_id + } else { + let asset_type = AssetType::Xcm(location); + let asset_id: AssetId = asset_type.clone().into(); + AssetManager::set_asset_type_asset_id(asset_type, asset_id); + asset_id + }; + + CurrencyId::ForeignAsset(asset_id) + } + } +} diff --git a/tracing/2700/runtime/moonbeam/tests/common/mod.rs b/tracing/2700/runtime/moonbeam/tests/common/mod.rs new file mode 100644 index 00000000..06869560 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/common/mod.rs @@ -0,0 +1,387 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#![allow(dead_code)] + +use cumulus_primitives_parachain_inherent::ParachainInherentData; +use fp_evm::GenesisAccount; +use frame_support::{ + assert_ok, + traits::{OnFinalize, OnInitialize}, +}; +pub use moonbeam_runtime::{ + asset_config::AssetRegistrarMetadata, + currency::{GIGAWEI, GLMR, SUPPLY_FACTOR, WEI}, + xcm_config::AssetType, + AccountId, AssetId, AssetManager, Assets, AuthorInherent, Balance, Balances, CrowdloanRewards, + Ethereum, Executive, Header, InflationInfo, LocalAssets, ParachainStaking, Range, Runtime, + RuntimeCall, RuntimeEvent, System, TransactionConverter, TransactionPaymentAsGasPrice, + UncheckedExtrinsic, HOURS, WEEKS, +}; +use nimbus_primitives::{NimbusId, NIMBUS_ENGINE_ID}; +use sp_core::{Encode, H160}; +use sp_runtime::{traits::Dispatchable, BuildStorage, Digest, DigestItem, Perbill, Percent}; + +use std::collections::BTreeMap; + +use fp_rpc::ConvertTransaction; + +// A valid signed Alice transfer. +pub const VALID_ETH_TX: &str = + "02f869820501808085e8d4a51000825208943cd0a705a2dc65e5b1e1205896baa2be8a07c6e00180c\ + 001a061087911e877a5802142a89a40d231d50913db399eb50839bb2d04e612b22ec8a01aa313efdf2\ + 793bea76da6813bda611444af16a6207a8cfef2d9c8aa8f8012f7"; + +// An invalid signed Alice transfer with a gas limit artifically set to 0. +pub const INVALID_ETH_TX: &str = + "f8628085174876e800809412cb274aad8251c875c0bf6872b67d9983e53fdd01801ba011110796057\ + 0e2d49fcc2afbc582e1abd3eeb027242b92abcebcec7cdefab63ea001732f6fac84acdd5b096554230\ + 75003e7f07430652c3d6722e18f50b3d34e29"; + +pub fn rpc_run_to_block(n: u32) { + while System::block_number() < n { + Ethereum::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + Ethereum::on_initialize(System::block_number()); + } +} + +/// Utility function that advances the chain to the desired block number. +/// If an author is provided, that author information is injected to all the blocks in the meantime. +pub fn run_to_block(n: u32, author: Option) { + // Finalize the first block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + while System::block_number() < n { + // Set the new block number and author + match author { + Some(ref author) => { + let pre_digest = Digest { + logs: vec![DigestItem::PreRuntime(NIMBUS_ENGINE_ID, author.encode())], + }; + System::reset_events(); + System::initialize( + &(System::block_number() + 1), + &System::parent_hash(), + &pre_digest, + ); + } + None => { + System::set_block_number(System::block_number() + 1); + } + } + + // Initialize the new block + AuthorInherent::on_initialize(System::block_number()); + ParachainStaking::on_initialize(System::block_number()); + Ethereum::on_initialize(System::block_number()); + + // Finalize the block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + ParachainStaking::on_finalize(System::block_number()); + } +} + +pub fn last_event() -> RuntimeEvent { + System::events().pop().expect("Event expected").event +} + +// Helper function to give a simple evm context suitable for tests. +// We can remove this once https://github.com/rust-blockchain/evm/pull/35 +// is in our dependency graph. +pub fn evm_test_context() -> fp_evm::Context { + fp_evm::Context { + address: Default::default(), + caller: Default::default(), + apparent_value: From::from(0), + } +} + +// Test struct with the purpose of initializing xcm assets +#[derive(Clone)] +pub struct XcmAssetInitialization { + pub asset_type: AssetType, + pub metadata: AssetRegistrarMetadata, + pub balances: Vec<(AccountId, Balance)>, + pub is_sufficient: bool, +} + +pub struct ExtBuilder { + // [asset, Vec, owner] + local_assets: Vec<(AssetId, Vec<(AccountId, Balance)>, AccountId)>, + // endowed accounts with balances + balances: Vec<(AccountId, Balance)>, + // [collator, amount] + collators: Vec<(AccountId, Balance)>, + // [delegator, collator, nomination_amount] + delegations: Vec<(AccountId, AccountId, Balance, Percent)>, + // per-round inflation config + inflation: InflationInfo, + // AuthorId -> AccountId mappings + mappings: Vec<(NimbusId, AccountId)>, + // Crowdloan fund + crowdloan_fund: Balance, + // Chain id + chain_id: u64, + // EVM genesis accounts + evm_accounts: BTreeMap, + // [assettype, metadata, Vec, is_sufficient] + xcm_assets: Vec, + safe_xcm_version: Option, +} + +impl Default for ExtBuilder { + fn default() -> ExtBuilder { + ExtBuilder { + local_assets: vec![], + balances: vec![], + delegations: vec![], + collators: vec![], + inflation: InflationInfo { + expect: Range { + min: 100_000 * GLMR, + ideal: 200_000 * GLMR, + max: 500_000 * GLMR, + }, + // not used + annual: Range { + min: Perbill::from_percent(50), + ideal: Perbill::from_percent(50), + max: Perbill::from_percent(50), + }, + // unrealistically high parameterization, only for testing + round: Range { + min: Perbill::from_percent(5), + ideal: Perbill::from_percent(5), + max: Perbill::from_percent(5), + }, + }, + mappings: vec![], + crowdloan_fund: 0, + chain_id: CHAIN_ID, + evm_accounts: BTreeMap::new(), + xcm_assets: vec![], + safe_xcm_version: None, + } + } +} + +impl ExtBuilder { + pub fn with_evm_accounts(mut self, accounts: BTreeMap) -> Self { + self.evm_accounts = accounts; + self + } + + pub fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self { + self.balances = balances; + self + } + + pub fn with_collators(mut self, collators: Vec<(AccountId, Balance)>) -> Self { + self.collators = collators; + self + } + + pub fn with_delegations(mut self, delegations: Vec<(AccountId, AccountId, Balance)>) -> Self { + self.delegations = delegations + .into_iter() + .map(|d| (d.0, d.1, d.2, Percent::zero())) + .collect(); + self + } + + pub fn with_crowdloan_fund(mut self, crowdloan_fund: Balance) -> Self { + self.crowdloan_fund = crowdloan_fund; + self + } + + pub fn with_mappings(mut self, mappings: Vec<(NimbusId, AccountId)>) -> Self { + self.mappings = mappings; + self + } + + pub fn with_xcm_assets(mut self, xcm_assets: Vec) -> Self { + self.xcm_assets = xcm_assets; + self + } + + pub fn with_safe_xcm_version(mut self, safe_xcm_version: u32) -> Self { + self.safe_xcm_version = Some(safe_xcm_version); + self + } + + #[allow(dead_code)] + pub fn with_inflation(mut self, inflation: InflationInfo) -> Self { + self.inflation = inflation; + self + } + + pub fn build(self) -> sp_io::TestExternalities { + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: self.balances, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_parachain_staking::GenesisConfig:: { + candidates: self.collators, + delegations: self.delegations, + inflation_config: self.inflation, + collator_commission: Perbill::from_percent(20), + parachain_bond_reserve_percent: Percent::from_percent(30), + blocks_per_round: 6 * HOURS, + num_selected_candidates: 8, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_crowdloan_rewards::GenesisConfig:: { + funded_amount: self.crowdloan_fund, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_author_mapping::GenesisConfig:: { + mappings: self.mappings, + } + .assimilate_storage(&mut t) + .unwrap(); + + let genesis_config = pallet_evm_chain_id::GenesisConfig:: { + chain_id: self.chain_id, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: self.evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_ethereum::GenesisConfig:: { + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_xcm::GenesisConfig:: { + safe_xcm_version: self.safe_xcm_version, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + let local_assets = self.local_assets.clone(); + let xcm_assets = self.xcm_assets.clone(); + ext.execute_with(|| { + // If any local assets specified, we create them here + for (asset_id, balances, owner) in local_assets.clone() { + LocalAssets::force_create(root_origin(), asset_id.into(), owner, true, 1).unwrap(); + for (account, balance) in balances { + LocalAssets::mint(origin_of(owner.into()), asset_id.into(), account, balance) + .unwrap(); + } + } + // If any xcm assets specified, we register them here + for xcm_asset_initialization in xcm_assets { + let asset_id: AssetId = xcm_asset_initialization.asset_type.clone().into(); + AssetManager::register_foreign_asset( + root_origin(), + xcm_asset_initialization.asset_type, + xcm_asset_initialization.metadata, + 1, + xcm_asset_initialization.is_sufficient, + ) + .unwrap(); + for (account, balance) in xcm_asset_initialization.balances { + Assets::mint( + origin_of(AssetManager::account_id()), + asset_id.into(), + account, + balance, + ) + .unwrap(); + } + } + System::set_block_number(1); + }); + ext + } +} + +pub const CHAIN_ID: u64 = 1281; +pub const ALICE: [u8; 20] = [4u8; 20]; +pub const ALICE_NIMBUS: [u8; 32] = [4u8; 32]; +pub const BOB: [u8; 20] = [5u8; 20]; +pub const CHARLIE: [u8; 20] = [6u8; 20]; +pub const DAVE: [u8; 20] = [7u8; 20]; +pub const EVM_CONTRACT: [u8; 20] = [8u8; 20]; + +pub fn origin_of(account_id: AccountId) -> ::RuntimeOrigin { + ::RuntimeOrigin::signed(account_id) +} + +pub fn inherent_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::none() +} + +pub fn root_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::root() +} + +/// Mock the inherent that sets validation data in ParachainSystem, which +/// contains the `relay_chain_block_number`, which is used in `author-filter` as a +/// source of randomness to filter valid authors at each block. +pub fn set_parachain_inherent_data() { + use cumulus_primitives_core::PersistedValidationData; + use cumulus_test_relay_sproof_builder::RelayStateSproofBuilder; + let (relay_parent_storage_root, relay_chain_state) = + RelayStateSproofBuilder::default().into_state_root_and_proof(); + let vfp = PersistedValidationData { + relay_parent_number: 1u32, + relay_parent_storage_root, + ..Default::default() + }; + let parachain_inherent_data = ParachainInherentData { + validation_data: vfp, + relay_chain_state: relay_chain_state, + downward_messages: Default::default(), + horizontal_messages: Default::default(), + }; + assert_ok!(RuntimeCall::ParachainSystem( + cumulus_pallet_parachain_system::Call::::set_validation_data { + data: parachain_inherent_data + } + ) + .dispatch(inherent_origin())); +} + +pub fn unchecked_eth_tx(raw_hex_tx: &str) -> UncheckedExtrinsic { + let converter = TransactionConverter; + converter.convert_transaction(ethereum_transaction(raw_hex_tx)) +} + +pub fn ethereum_transaction(raw_hex_tx: &str) -> pallet_ethereum::Transaction { + let bytes = hex::decode(raw_hex_tx).expect("Transaction bytes."); + let transaction = ethereum::EnvelopedDecodable::decode(&bytes[..]); + assert!(transaction.is_ok()); + transaction.unwrap() +} diff --git a/tracing/2700/runtime/moonbeam/tests/evm_tracing.rs b/tracing/2700/runtime/moonbeam/tests/evm_tracing.rs new file mode 100644 index 00000000..5d241a88 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/evm_tracing.rs @@ -0,0 +1,94 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbeam EVM tracing Integration Tests + +mod common; + +#[cfg(test)] +#[cfg(feature = "evm-tracing")] +mod tests { + use super::common::*; + + use pallet_evm::AddressMapping; + use sp_core::H160; + + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; + use std::str::FromStr; + + #[test] + fn debug_runtime_api_trace_transaction() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * GLMR), + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * GLMR, + } + .into(), + ); + let transaction = ethereum_transaction(VALID_ETH_TX); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + assert!(Runtime::trace_transaction( + vec![non_eth_uxt.clone(), eth_uxt, non_eth_uxt.clone()], + &transaction + ) + .is_ok()); + }); + } + + #[test] + fn debug_runtime_api_trace_block() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * GLMR), + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * GLMR, + } + .into(), + ); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let eth_tx = ethereum_transaction(VALID_ETH_TX); + let eth_extrinsic_hash = eth_tx.hash(); + assert!(Runtime::trace_block( + vec![non_eth_uxt.clone(), eth_uxt.clone(), non_eth_uxt, eth_uxt], + vec![eth_extrinsic_hash, eth_extrinsic_hash] + ) + .is_ok()); + }); + } +} diff --git a/tracing/2700/runtime/moonbeam/tests/integration_test.rs b/tracing/2700/runtime/moonbeam/tests/integration_test.rs new file mode 100644 index 00000000..e4e5fc15 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/integration_test.rs @@ -0,0 +1,2823 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbeam Runtime Integration Tests + +#![cfg(test)] + +mod common; +use common::*; + +use fp_evm::{Context, IsPrecompileResult}; +use frame_support::{ + assert_noop, assert_ok, + dispatch::DispatchClass, + traits::{ + fungible::Inspect, Currency as CurrencyT, EnsureOrigin, PalletInfo, StorageInfo, + StorageInfoTrait, + }, + weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight}, + StorageHasher, Twox128, +}; +use moonbeam_runtime::{ + asset_config::LocalAssetInstance, + currency::GLMR, + xcm_config::{CurrencyId, SelfReserve}, + AccountId, Balances, CouncilCollective, CrowdloanRewards, OpenTechCommitteeCollective, + ParachainStaking, PolkadotXcm, Precompiles, Runtime, RuntimeBlockWeights, RuntimeCall, + RuntimeEvent, System, TechCommitteeCollective, TransactionPayment, TreasuryCouncilCollective, + XTokens, XcmTransactor, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; +use moonbeam_xcm_benchmarks::weights::XcmWeight; +use nimbus_primitives::NimbusId; +use pallet_evm::PrecompileSet; +use pallet_evm_precompileset_assets_erc20::{ + AccountIdAssetIdConversion, IsLocal, SELECTOR_LOG_APPROVAL, SELECTOR_LOG_TRANSFER, +}; +use pallet_transaction_payment::Multiplier; +use pallet_xcm_transactor::{Currency, CurrencyPayment, TransactWeights}; +use parity_scale_codec::Encode; +use polkadot_parachain::primitives::Sibling; +use precompile_utils::{ + precompile_set::{is_precompile_or_fail, IsActivePrecompile}, + prelude::*, + testing::*, +}; +use sha3::{Digest, Keccak256}; +use sp_core::{ByteArray, Pair, H160, U256}; +use sp_runtime::{ + traits::{Convert, Dispatchable}, + BuildStorage, DispatchError, ModuleError, +}; +use std::str::from_utf8; +use xcm::latest::prelude::*; +use xcm::{VersionedMultiAsset, VersionedMultiAssets, VersionedMultiLocation}; +use xcm_builder::{ParentIsPreset, SiblingParachainConvertsVia}; +use xcm_executor::traits::ConvertLocation; + +type BatchPCall = pallet_evm_precompile_batch::BatchPrecompileCall; +type CrowdloanRewardsPCall = + pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompileCall; +type XcmUtilsPCall = pallet_evm_precompile_xcm_utils::XcmUtilsPrecompileCall< + Runtime, + moonbeam_runtime::xcm_config::XcmExecutorConfig, +>; +type XtokensPCall = pallet_evm_precompile_xtokens::XtokensPrecompileCall; +type LocalAssetsPCall = pallet_evm_precompileset_assets_erc20::Erc20AssetsPrecompileSetCall< + Runtime, + IsLocal, + LocalAssetInstance, +>; +type XcmTransactorV2PCall = + pallet_evm_precompile_xcm_transactor::v2::XcmTransactorPrecompileV2Call; + +const BASE_FEE_GENESIS: u128 = 10000 * GIGAWEI; + +#[test] +fn xcmp_queue_controller_origin_is_root() { + // important for the XcmExecutionManager impl of PauseExecution which uses root origin + // to suspend/resume XCM execution in xcmp_queue::on_idle + assert_ok!( + ::ControllerOrigin::ensure_origin(root_origin()) + ); +} + +#[test] +fn fast_track_available() { + assert!(moonbeam_runtime::get!( + pallet_democracy, + InstantAllowed, + bool + )); +} + +#[test] +fn verify_pallet_prefixes() { + fn is_pallet_prefix(name: &str) { + // Compares the unhashed pallet prefix in the `StorageInstance` implementation by every + // storage item in the pallet P. This pallet prefix is used in conjunction with the + // item name to get the unique storage key: hash(PalletPrefix) + hash(StorageName) + // https://github.com/paritytech/substrate/blob/master/frame/support/procedural/src/pallet/ + // expand/storage.rs#L389-L401 + assert_eq!( + ::PalletInfo::name::

(), + Some(name) + ); + } + // TODO: use StorageInfoTrait once https://github.com/paritytech/substrate/pull/9246 + // is pulled in substrate deps. + is_pallet_prefix::("System"); + is_pallet_prefix::("Utility"); + is_pallet_prefix::("ParachainSystem"); + is_pallet_prefix::("TransactionPayment"); + is_pallet_prefix::("ParachainInfo"); + is_pallet_prefix::("EthereumChainId"); + is_pallet_prefix::("EVM"); + is_pallet_prefix::("Ethereum"); + is_pallet_prefix::("ParachainStaking"); + is_pallet_prefix::("Scheduler"); + is_pallet_prefix::("Democracy"); + is_pallet_prefix::("CouncilCollective"); + is_pallet_prefix::("TechCommitteeCollective"); + is_pallet_prefix::( + "OpenTechCommitteeCollective", + ); + is_pallet_prefix::("Treasury"); + is_pallet_prefix::("AuthorInherent"); + is_pallet_prefix::("AuthorFilter"); + is_pallet_prefix::("CrowdloanRewards"); + is_pallet_prefix::("AuthorMapping"); + is_pallet_prefix::("MaintenanceMode"); + is_pallet_prefix::("Identity"); + is_pallet_prefix::("XcmpQueue"); + is_pallet_prefix::("CumulusXcm"); + is_pallet_prefix::("DmpQueue"); + is_pallet_prefix::("PolkadotXcm"); + is_pallet_prefix::("Assets"); + is_pallet_prefix::("XTokens"); + is_pallet_prefix::("AssetManager"); + is_pallet_prefix::("Migrations"); + is_pallet_prefix::("XcmTransactor"); + is_pallet_prefix::("ProxyGenesisCompanion"); + is_pallet_prefix::("LocalAssets"); + is_pallet_prefix::("MoonbeamOrbiters"); + is_pallet_prefix::("TreasuryCouncilCollective"); + let prefix = |pallet_name, storage_name| { + let mut res = [0u8; 32]; + res[0..16].copy_from_slice(&Twox128::hash(pallet_name)); + res[16..32].copy_from_slice(&Twox128::hash(storage_name)); + res.to_vec() + }; + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Timestamp".to_vec(), + storage_name: b"Now".to_vec(), + prefix: prefix(b"Timestamp", b"Now"), + max_values: Some(1), + max_size: Some(8), + }, + StorageInfo { + pallet_name: b"Timestamp".to_vec(), + storage_name: b"DidUpdate".to_vec(), + prefix: prefix(b"Timestamp", b"DidUpdate"), + max_values: Some(1), + max_size: Some(1), + } + ] + ); + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"TotalIssuance".to_vec(), + prefix: prefix(b"Balances", b"TotalIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"InactiveIssuance".to_vec(), + prefix: prefix(b"Balances", b"InactiveIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Account".to_vec(), + prefix: prefix(b"Balances", b"Account"), + max_values: None, + max_size: Some(100), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Locks".to_vec(), + prefix: prefix(b"Balances", b"Locks"), + max_values: None, + max_size: Some(1287), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Reserves".to_vec(), + prefix: prefix(b"Balances", b"Reserves"), + max_values: None, + max_size: Some(1037), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Holds".to_vec(), + prefix: prefix(b"Balances", b"Holds"), + max_values: None, + max_size: Some(55), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Freezes".to_vec(), + prefix: prefix(b"Balances", b"Freezes"), + max_values: None, + max_size: Some(37), + }, + ] + ); + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Proxies".to_vec(), + prefix: prefix(b"Proxy", b"Proxies"), + max_values: None, + max_size: Some(845), + }, + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Announcements".to_vec(), + prefix: prefix(b"Proxy", b"Announcements"), + max_values: None, + max_size: Some(1837), + } + ] + ); + assert_eq!( + ::storage_info(), + vec![StorageInfo { + pallet_name: b"MaintenanceMode".to_vec(), + storage_name: b"MaintenanceMode".to_vec(), + prefix: prefix(b"MaintenanceMode", b"MaintenanceMode"), + max_values: Some(1), + max_size: None, + },] + ); +} + +#[test] +fn test_collectives_storage_item_prefixes() { + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"CouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TechCommitteeCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TreasuryCouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"OpenTechCommitteeCollective".to_vec()); + } +} + +#[test] +fn collective_set_members_root_origin_works() { + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert_ok!(CouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TechCommitteeCollective + assert_ok!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TreasuryCouncilCollective + assert_ok!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // OpenTechCommitteeCollective + assert_ok!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + }); +} + +#[test] +fn collective_set_members_general_admin_origin_works() { + use moonbeam_runtime::{ + governance::custom_origins::Origin as CustomOrigin, OriginCaller, Utility, + }; + + ExtBuilder::default().build().execute_with(|| { + let root_caller = ::RuntimeOrigin::root(); + let alice = AccountId::from(ALICE); + + // CouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TreasuryCouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // OpenTechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller, + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + + assert_eq!( + System::events() + .into_iter() + .filter_map(|r| { + match r.event { + RuntimeEvent::Utility(pallet_utility::Event::DispatchedAs { result }) + if result.is_ok() => + { + Some(true) + } + _ => None, + } + }) + .collect::>() + .len(), + 4 + ) + }); +} + +#[test] +fn collective_set_members_signed_origin_does_not_work() { + let alice = AccountId::from(ALICE); + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert!(CouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![alice, AccountId::from(BOB)], + Some(alice), + 2 + ) + .is_err()); + // TechCommitteeCollective + assert!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // TreasuryCouncilCollective + assert!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // OpenTechCommitteeCollective + assert!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + }); +} + +#[test] +fn verify_pallet_indices() { + fn is_pallet_index(index: usize) { + assert_eq!( + ::PalletInfo::index::

(), + Some(index) + ); + } + + // System support + is_pallet_index::(0); + is_pallet_index::(1); + is_pallet_index::(3); + is_pallet_index::(4); + // Monetary + is_pallet_index::(10); + is_pallet_index::(11); + // Consensus support + is_pallet_index::(20); + is_pallet_index::(21); + is_pallet_index::(22); + is_pallet_index::(23); + is_pallet_index::(24); + // Handy utilities + is_pallet_index::(30); + is_pallet_index::(31); + is_pallet_index::(32); + is_pallet_index::(33); + is_pallet_index::(34); + is_pallet_index::(35); + // Ethereum compatibility + is_pallet_index::(50); + is_pallet_index::(51); + is_pallet_index::(52); + // Governance + is_pallet_index::(60); + is_pallet_index::(61); + // Council + is_pallet_index::(70); + is_pallet_index::(71); + is_pallet_index::(72); + is_pallet_index::(73); + // Treasury + is_pallet_index::(80); + // Crowdloan + is_pallet_index::(90); + // XCM Stuff + is_pallet_index::(100); + is_pallet_index::(101); + is_pallet_index::(102); + is_pallet_index::(103); + is_pallet_index::(104); + is_pallet_index::(105); + is_pallet_index::(106); + is_pallet_index::(107); + is_pallet_index::(108); +} + +#[test] +fn verify_reserved_indices() { + use frame_metadata::*; + let metadata = moonbeam_runtime::Runtime::metadata(); + let metadata = match metadata.1 { + RuntimeMetadata::V14(metadata) => metadata, + _ => panic!("metadata has been bumped, test needs to be updated"), + }; + // 40: Sudo + // 53: BaseFee + let reserved = vec![40, 53]; + let existing = metadata + .pallets + .iter() + .map(|p| p.index) + .collect::>(); + assert!(reserved.iter().all(|index| !existing.contains(index))); +} + +#[test] +fn verify_proxy_type_indices() { + assert_eq!(moonbeam_runtime::ProxyType::Any as u8, 0); + assert_eq!(moonbeam_runtime::ProxyType::NonTransfer as u8, 1); + assert_eq!(moonbeam_runtime::ProxyType::Governance as u8, 2); + assert_eq!(moonbeam_runtime::ProxyType::Staking as u8, 3); + assert_eq!(moonbeam_runtime::ProxyType::CancelProxy as u8, 4); + assert_eq!(moonbeam_runtime::ProxyType::Balances as u8, 5); + assert_eq!(moonbeam_runtime::ProxyType::AuthorMapping as u8, 6); + assert_eq!(moonbeam_runtime::ProxyType::IdentityJudgement as u8, 7); +} + +#[test] +fn join_collator_candidates() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 10_000_000 * GLMR), + (AccountId::from(BOB), 10_000_000 * GLMR), + (AccountId::from(CHARLIE), 10_000_000 * GLMR), + (AccountId::from(DAVE), 10_000_000 * GLMR), + ]) + .with_collators(vec![ + (AccountId::from(ALICE), 2_000_000 * GLMR), + (AccountId::from(BOB), 2_000_000 * GLMR), + ]) + .with_delegations(vec![ + ( + AccountId::from(CHARLIE), + AccountId::from(ALICE), + 5_000 * GLMR, + ), + (AccountId::from(CHARLIE), AccountId::from(BOB), 5_000 * GLMR), + ]) + .build() + .execute_with(|| { + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(ALICE)), + 2_000_000 * GLMR, + 2u32 + ), + pallet_parachain_staking::Error::::CandidateExists + ); + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 2_000_000 * GLMR, + 2u32 + ), + pallet_parachain_staking::Error::::DelegatorExists + ); + assert!(System::events().is_empty()); + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(DAVE)), + 2_000_000 * GLMR, + 2u32 + )); + assert_eq!( + last_event(), + RuntimeEvent::ParachainStaking( + pallet_parachain_staking::Event::JoinedCollatorCandidates { + account: AccountId::from(DAVE), + amount_locked: 2_000_000 * GLMR, + new_total_amt_locked: 6_010_000 * GLMR + } + ) + ); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(ALICE)); + assert_eq!(candidates.0[0].amount, 2_005_000 * GLMR); + assert_eq!(candidates.0[1].owner, AccountId::from(BOB)); + assert_eq!(candidates.0[1].amount, 2_005_000 * GLMR); + assert_eq!(candidates.0[2].owner, AccountId::from(DAVE)); + assert_eq!(candidates.0[2].amount, 2_000_000 * GLMR); + }); +} + +#[test] +fn transfer_through_evm_to_stake() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 10_000_000 * GLMR)]) + .build() + .execute_with(|| { + // Charlie has no balance => fails to stake + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 2_000_000 * GLMR, + 2u32 + ), + DispatchError::Module(ModuleError { + index: 20, + error: [8, 0, 0, 0], + message: Some("InsufficientBalance") + }) + ); + // Alice transfer from free balance 3_000_000 GLMR to Bob + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 3_000_000 * GLMR, + )); + assert_eq!( + Balances::free_balance(AccountId::from(BOB)), + 3_000_000 * GLMR + ); + + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + // Bob transfers 2_000_000 GLMR to Charlie via EVM + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(CHARLIE), + input: vec![], + value: (2_000_000 * GLMR).into(), + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + assert_eq!( + Balances::free_balance(AccountId::from(CHARLIE)), + 2_000_000 * GLMR, + ); + + // Charlie can stake now + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 2_000_000 * GLMR, + 2u32 + ),); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(CHARLIE)); + assert_eq!(candidates.0[0].amount, 2_000_000 * GLMR); + }); +} + +#[test] +fn reward_block_authors() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 10k extra tokens for her mapping deposit + (AccountId::from(ALICE), 10_010_000 * GLMR), + (AccountId::from(BOB), 10_000_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 2_000_000 * GLMR)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + for x in 2..3599 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 8_010_000 * GLMR, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9_950_000 * GLMR, + ); + run_to_block(3601, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 8990978048702400000000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9969521950497200000000000, + ); + }); +} + +#[test] +fn reward_block_authors_with_parachain_bond_reserved() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 10k extra tokens for her mapping deposit + (AccountId::from(ALICE), 10_010_000 * GLMR), + (AccountId::from(BOB), 10_000_000 * GLMR), + (AccountId::from(CHARLIE), 10_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 2_000_000 * GLMR)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + assert_ok!(ParachainStaking::set_parachain_bond_account( + root_origin(), + AccountId::from(CHARLIE), + ),); + for x in 2..3599 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 8_010_000 * GLMR, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9_950_000 * GLMR, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(CHARLIE)), + 10_000 * GLMR, + ); + run_to_block(3601, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 8698492682878000000000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9962207316621500000000000, + ); + // 30% reserved for parachain bond + assert_eq!( + Balances::usable_balance(AccountId::from(CHARLIE)), + 310300000000000000000000, + ); + }); +} + +#[test] +fn initialize_crowdloan_addresses_with_batch_and_pay() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(300_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 150_000_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 150_000_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!( + Balances::balance(&AccountId::from(CHARLIE)), + 45_000_000 * GLMR + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 45_000_000 * GLMR); + let expected = RuntimeEvent::Utility(pallet_utility::Event::BatchCompleted); + assert_eq!(last_event(), expected); + // This one should fail, as we already filled our data + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch { + calls: vec![RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(ALICE)), + 43_200_000 + )] + } + )] + }) + .dispatch(root_origin()) + ); + let expected_fail = RuntimeEvent::Utility(pallet_utility::Event::BatchInterrupted { + index: 0, + error: DispatchError::Module(ModuleError { + index: 90, + error: [8, 0, 0, 0], + message: None, + }), + }); + assert_eq!(last_event(), expected_fail); + // Claim 1 block. + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(CHARLIE)))); + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(DAVE)))); + + let vesting_period = 4 * WEEKS as u128; + let per_block = (105_000_000 * GLMR) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (45_000_000 * GLMR) + per_block + ); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (45_000_000 * GLMR) + per_block + ); + // The total claimed reward should be equal to the account balance at this point. + assert_eq!( + Balances::balance(&AccountId::from(CHARLIE)), + (45_000_000 * GLMR) + per_block + ); + assert_eq!( + Balances::balance(&AccountId::from(DAVE)), + (45_000_000 * GLMR) + per_block + ); + assert_noop!( + CrowdloanRewards::claim(origin_of(AccountId::from(ALICE))), + pallet_crowdloan_rewards::Error::::NoAssociatedClaim + ); + }); +} + +#[test] +fn initialize_crowdloan_address_and_change_with_relay_key_sig() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + + let (pair1, _) = sp_core::sr25519::Pair::generate(); + let (pair2, _) = sp_core::sr25519::Pair::generate(); + + let public1 = pair1.public(); + let public2 = pair2.public(); + + // signature is new_account || previous_account + let mut message = pallet_crowdloan_rewards::WRAPPED_BYTES_PREFIX.to_vec(); + message.append(&mut b"moonbeam-".to_vec()); + message.append(&mut AccountId::from(DAVE).encode()); + message.append(&mut AccountId::from(CHARLIE).encode()); + message.append(&mut pallet_crowdloan_rewards::WRAPPED_BYTES_POSTFIX.to_vec()); + let signature1 = pair1.sign(&message); + let signature2 = pair2.sign(&message); + + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + // two relay accounts pointing at the same reward account + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public1.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public2.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 900_000 * GLMR); + + // this should fail, as we are only providing one signature + assert_noop!( + CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![(public1.into(), signature1.clone().into())] + ), + pallet_crowdloan_rewards::Error::::InsufficientNumberOfValidProofs + ); + + // this should be valid + assert_ok!(CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![ + (public1.into(), signature1.into()), + (public2.into(), signature2.into()) + ] + )); + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (900_000 * GLMR) + ); + }); +} + +#[test] +fn claim_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + assert!(CrowdloanRewards::initialized()); + + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 450_000 * GLMR); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 450_000 * GLMR); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Alice uses the crowdloan precompile to claim through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + + // Construct the call data (selector, amount) + let mut call_data = Vec::::from([0u8; 4]); + call_data[0..4].copy_from_slice(&Keccak256::digest(b"claim()")[0..4]); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let vesting_period = 4 * WEEKS as u128; + let per_block = (1_050_000 * GLMR) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (450_000 * GLMR) + per_block + ); + }) +} + +#[test] +fn is_contributor_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Assert precompile reports Bob is not a contributor + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(AccountId::from(BOB).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(false); + + // Assert precompile reports Charlie is a nominator + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(AccountId::from(CHARLIE).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(true); + }) +} + +#[test] +fn reward_info_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + let expected_total: U256 = (1_500_000 * GLMR).into(); + let expected_claimed: U256 = (450_000 * GLMR).into(); + + // Assert precompile reports correct Charlie reward info. + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::reward_info { + contributor: Address(AccountId::from(CHARLIE).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns((expected_total, expected_claimed)); + }) +} + +#[test] +fn update_reward_address_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * GLMR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * GLMR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Charlie uses the crowdloan precompile to update address through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + + // Construct the input data to check if Bob is a contributor + let mut call_data = Vec::::from([0u8; 36]); + call_data[0..4] + .copy_from_slice(&Keccak256::digest(b"update_reward_address(address)")[0..4]); + call_data[16..36].copy_from_slice(&ALICE); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + assert!(CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)).is_none()); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(ALICE)) + .unwrap() + .claimed_reward, + (450_000 * GLMR) + ); + }) +} + +fn run_with_system_weight(w: Weight, mut assertions: F) +where + F: FnMut() -> (), +{ + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); +} + +#[test] +#[rustfmt::skip] +fn length_fee_is_sensible() { + use sp_runtime::testing::TestXt; + + // tests that length fee is sensible for a few hypothetical transactions + ExtBuilder::default().build().execute_with(|| { + let call = frame_system::Call::remark:: { remark: vec![] }; + let uxt: TestXt<_, ()> = TestXt::new(call, Some((1u64, ()))); + + let calc_fee = |len: u32| -> Balance { + moonbeam_runtime::TransactionPayment::query_fee_details(uxt.clone(), len) + .inclusion_fee + .expect("fee should be calculated") + .len_fee + }; + + // editorconfig-checker-disable + // left: cost of length fee, right: size in bytes + // /------------- proportional component: O(N * 1B) + // | /- exponential component: O(N ** 3) + // | | + assert_eq!( 100_000_000_100, calc_fee(1)); + assert_eq!( 1_000_000_100_000, calc_fee(10)); + assert_eq!( 10_000_100_000_000, calc_fee(100)); + assert_eq!( 100_100_000_000_000, calc_fee(1_000)); + assert_eq!( 1_100_000_000_000_000, calc_fee(10_000)); // inflection point + assert_eq!( 110_000_000_000_000_000, calc_fee(100_000)); + assert_eq!( 100_100_000_000_000_000_000, calc_fee(1_000_000)); // 100 GLMR, ~ 1MB + assert_eq!( 100_001_000_000_000_000_000_000, calc_fee(10_000_000)); + assert_eq!(100_000_010_000_000_000_000_000_000, calc_fee(100_000_000)); + // editorconfig-checker-enable + }); +} + +#[test] +fn multiplier_can_grow_from_zero() { + use frame_support::traits::Get; + + let minimum_multiplier = moonbeam_runtime::MinimumMultiplier::get(); + let target = moonbeam_runtime::TargetBlockFullness::get() + * RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = moonbeam_runtime::SlowAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) +} + +#[test] +fn ethereum_invalid_transaction() { + ExtBuilder::default().build().execute_with(|| { + // Ensure an extrinsic not containing enough gas limit to store the transaction + // on chain is rejected. + assert_eq!( + Executive::apply_extrinsic(unchecked_eth_tx(INVALID_ETH_TX)), + Err( + sp_runtime::transaction_validity::TransactionValidityError::Invalid( + sp_runtime::transaction_validity::InvalidTransaction::Custom(0u8) + ) + ) + ); + }); +} + +#[test] +fn initial_gas_fee_is_correct() { + use fp_evm::FeeCalculator; + + ExtBuilder::default().build().execute_with(|| { + let multiplier = TransactionPayment::next_fee_multiplier(); + assert_eq!(multiplier, Multiplier::from(1u128)); + + assert_eq!( + TransactionPaymentAsGasPrice::min_gas_price(), + ( + 125_000_000_000u128.into(), + Weight::from_parts(25_000_000u64, 0) + ) + ); + }); +} + +#[test] +fn min_gas_fee_is_correct() { + use fp_evm::FeeCalculator; + use frame_support::traits::Hooks; + + ExtBuilder::default().build().execute_with(|| { + pallet_transaction_payment::NextFeeMultiplier::::put(Multiplier::from(0)); + TransactionPayment::on_finalize(System::block_number()); // should trigger min to kick in + + let multiplier = TransactionPayment::next_fee_multiplier(); + assert_eq!(multiplier, Multiplier::from(1u128)); + + assert_eq!( + TransactionPaymentAsGasPrice::min_gas_price(), + ( + 125_000_000_000u128.into(), + Weight::from_parts(25_000_000u64, 0) + ) + ); + }); +} + +#[test] +fn transfer_ed_0_substrate() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), (1 * GLMR) + (1 * WEI)), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // Substrate transfer + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 1 * GLMR, + )); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI); + }); +} + +#[test] +fn transfer_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * GLMR) + (21_000 * BASE_FEE_GENESIS)) + (1 * WEI), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * GLMR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: BASE_FEE_GENESIS.into(), + max_priority_fee_per_gas: Some(BASE_FEE_GENESIS.into()), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI,); + }); +} + +#[test] +fn refund_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * GLMR) + (21_777 * BASE_FEE_GENESIS)), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer that zeroes ALICE + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * GLMR).into(), + gas_limit: 21_777u64, + max_fee_per_gas: BASE_FEE_GENESIS.into(), + max_priority_fee_per_gas: Some(BASE_FEE_GENESIS.into()), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // ALICE is refunded + assert_eq!( + Balances::free_balance(AccountId::from(ALICE)), + 777 * BASE_FEE_GENESIS, + ); + }); +} + +#[test] +fn author_does_not_receive_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * GLMR) + (21_000 * (500 * GIGAWEI)), + )]) + .build() + .execute_with(|| { + // Some block author as seen by pallet-evm. + let author = AccountId::from(>::find_author()); + // Currently the default impl of the evm uses `deposit_into_existing`. + // If we were to use this implementation, and for an author to receive eventual tips, + // the account needs to be somehow initialized, otherwise the deposit would fail. + Balances::make_free_balance_be(&author, 100 * GLMR); + + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * GLMR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(300 * GIGAWEI), + max_priority_fee_per_gas: Some(U256::from(200 * GIGAWEI)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // Author free balance didn't change. + assert_eq!(Balances::free_balance(author), 100 * GLMR,); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_with_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * GLMR) + (21_000 * (200 * GIGAWEI)), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * GLMR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(200 * GIGAWEI), + max_priority_fee_per_gas: Some(U256::from(100 * GIGAWEI)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + // Fee is 100 GWEI base fee + 100 GWEI tip. + let fee = ((200 * GIGAWEI) * 21_000) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonbeam_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_without_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * GLMR) + (21_000 * BASE_FEE_GENESIS), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * GLMR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: BASE_FEE_GENESIS.into(), + max_priority_fee_per_gas: Some(BASE_FEE_GENESIS.into()), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + // Fee is 100 GWEI base fee. + let fee = (BASE_FEE_GENESIS * 21_000) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonbeam_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn root_can_change_default_xcm_vers() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let source_id: moonbeam_runtime::AssetId = source_location.clone().into(); + // Default XCM version is not set yet, so xtokens should fail because it does not + // know with which version to send + assert_noop!( + XTokens::transfer( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest.clone())), + WeightLimit::Limited(4000000000.into()) + ), + orml_xtokens::Error::::XcmExecutionFailed + ); + + // Root sets the defaultXcm + assert_ok!(PolkadotXcm::force_default_xcm_version( + root_origin(), + Some(2) + )); + + // Now transferring does not fail + assert_ok!(XTokens::transfer( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(4000000000.into()) + )); + }) +} + +#[test] +fn asset_can_be_registered() { + ExtBuilder::default().build().execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonbeam_runtime::AssetId = source_location.clone().into(); + let asset_metadata = AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }; + assert_ok!(AssetManager::register_foreign_asset( + moonbeam_runtime::RuntimeOrigin::root(), + source_location, + asset_metadata, + 1u128, + true + )); + assert!(AssetManager::asset_id_type(source_id).is_some()); + }); +} + +#[test] +fn local_assets_cannot_be_create_by_signed_origins() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR * SUPPLY_FACTOR), + (AccountId::from(BOB), 1_000 * GLMR * SUPPLY_FACTOR), + ]) + .build() + .execute_with(|| { + assert_noop!( + RuntimeCall::LocalAssets( + pallet_assets::Call::::create { + id: 11u128.into(), + admin: AccountId::from(ALICE), + min_balance: 1u128 + } + ) + .dispatch(::RuntimeOrigin::signed( + AccountId::from(ALICE) + )), + frame_system::Error::::CallFiltered + ); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_supply_and_balance() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * GLMR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: moonbeam_runtime::AssetId = + AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Assert the asset has been created with the correct supply + assert_eq!(Assets::total_supply(relay_asset_id), 1_000 * GLMR); + + // Access totalSupply through precompile. Important that the context is correct + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::total_supply {}, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * GLMR)); + + // Access balanceOf through precompile + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(ALICE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * GLMR)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * GLMR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: moonbeam_runtime::AssetId = + AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Transfer tokens from Aice to Bob, 400 GLMR. + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::transfer { + to: Address(BOB.into()), + value: { 400 * GLMR }.into(), + }, + ) + .expect_cost(23763) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * GLMR)), + )) + .execute_returns(true); + + // Make sure BOB has 400 GLMR + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(BOB.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * GLMR)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_approve() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * GLMR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: moonbeam_runtime::AssetId = + AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Aprove Bob for spending 400 GLMR from Alice + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::approve { + spender: Address(BOB.into()), + value: { 400 * GLMR }.into(), + }, + ) + .expect_cost(14210) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_APPROVAL, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * GLMR)), + )) + .execute_returns(true); + + // Transfer tokens from Alice to Charlie by using BOB as origin + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::transfer_from { + from: Address(ALICE.into()), + to: Address(CHARLIE.into()), + value: { 400 * GLMR }.into(), + }, + ) + .expect_cost(28991) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(CHARLIE), + solidity::encode_event_data(U256::from(400 * GLMR)), + )) + .execute_returns(true); + + // Make sure CHARLIE has 400 GLMR + Precompiles::new() + .prepare_test( + CHARLIE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(CHARLIE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * GLMR)); + }); +} + +#[test] +fn xtokens_precompile_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: moonbeam_runtime::AssetId = + AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // We use the address of the asset as an identifier of the asset we want to transfer + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer { + currency_address: Address(asset_precompile_address.into()), + amount: 500_000_000_000_000u128.into(), + destination: destination.clone(), + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()) + }) +} + +#[test] +fn xtokens_precompile_transfer_multiasset() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // This time we transfer it through TransferMultiAsset + // Instead of the address, we encode directly the multilocation referencing the asset + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer_multiasset { + // We want to transfer the relay token + asset: MultiLocation::parent(), + amount: 500_000_000_000_000u128.into(), + destination: destination.clone(), + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()); + }) +} + +#[test] +fn make_sure_glmr_can_be_transferred_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + assert_ok!(XTokens::transfer_multiasset( + origin_of(AccountId::from(ALICE)), + Box::new(VersionedMultiAsset::V3(MultiAsset { + id: Concrete(moonbeam_runtime::xcm_config::SelfReserve::get()), + fun: Fungible(1000) + })), + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(40000.into()) + )); + }); +} + +#[test] +fn make_sure_glmr_can_be_transferred() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + assert_ok!(XTokens::transfer( + origin_of(AccountId::from(ALICE)), + CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(40000.into()) + )); + }); +} + +#[test] +fn make_sure_polkadot_xcm_cannot_be_called() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let multiassets: MultiAssets = [MultiAsset { + id: Concrete(moonbeam_runtime::xcm_config::SelfLocation::get()), + fun: Fungible(1000), + }] + .to_vec() + .into(); + assert_noop!( + RuntimeCall::PolkadotXcm(pallet_xcm::Call::::reserve_transfer_assets { + dest: Box::new(VersionedMultiLocation::V3(dest.clone())), + beneficiary: Box::new(VersionedMultiLocation::V3(dest)), + assets: Box::new(VersionedMultiAssets::V3(multiassets)), + fee_asset_item: 0, + }) + .dispatch(::RuntimeOrigin::signed( + AccountId::from(ALICE) + )), + frame_system::Error::::CallFiltered + ); + }); +} + +#[test] +fn transact_through_signed_precompile_works_v2() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::parent(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .expect_cost(17149) + .expect_no_logs() + .execute_returns(()); + }); +} + +#[test] +fn transact_through_signed_cannot_send_to_local_chain() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::here(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .execute_reverts(|output| { + from_utf8(&output) + .unwrap() + .contains("Dispatched call failed with error:") + && from_utf8(&output).unwrap().contains("ErrorValidating") + }); + }); +} + +#[test] +fn transactor_cannot_use_more_than_max_weight() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonbeam_runtime::AssetId = source_location.clone().into(); + assert_ok!(XcmTransactor::register( + root_origin(), + AccountId::from(ALICE), + 0, + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000.into(), + None + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + 1, + )); + + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonbeam_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new( + xcm::VersionedMultiLocation::V3(MultiLocation::parent()) + )), + fee_amount: None + }, + vec![], + // 2000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonbeam_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsCurrencyId(CurrencyId::ForeignAsset(source_id)), + fee_amount: None + }, + vec![], + // 20000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + }) +} + +#[test] +fn call_xtokens_with_fee() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 1_000 * GLMR), + ]) + .with_safe_xcm_version(2) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let source_id: moonbeam_runtime::AssetId = source_location.clone().into(); + + let before_balance = Assets::balance(source_id, &AccountId::from(ALICE)); + + // We are able to transfer with fee + assert_ok!(XTokens::transfer_with_fee( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + 100, + Box::new(xcm::VersionedMultiLocation::V3(dest.clone())), + WeightLimit::Limited(4000000000.into()) + )); + + let after_balance = Assets::balance(source_id, &AccountId::from(ALICE)); + // At least these much (plus fees) should have been charged + assert_eq!(before_balance - 100_000_000_000_000 - 100, after_balance); + }); +} + +#[test] +fn test_xcm_utils_ml_tp_account() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_address_parent: H160 = + ParentIsPreset::::convert_location(&MultiLocation::parent()) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: MultiLocation::parent(), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parent)); + + let parachain_2000_multilocation = MultiLocation::new(1, X1(Parachain(2000))); + let expected_address_parachain: H160 = + SiblingParachainConvertsVia::::convert_location( + ¶chain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parachain)); + + let alice_in_parachain_2000_multilocation = MultiLocation::new( + 1, + X2( + Parachain(2000), + AccountKey20 { + network: None, + key: ALICE, + }, + ), + ); + let expected_address_alice_in_parachain_2000: H160 = + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &alice_in_parachain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: alice_in_parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_alice_in_parachain_2000)); + }); +} + +#[test] +fn test_xcm_utils_weight_message() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_weight = + XcmWeight::::clear_origin().ref_time(); + + let message: Vec = xcm::VersionedXcm::<()>::V3(Xcm(vec![ClearOrigin])).encode(); + + let input = XcmUtilsPCall::weight_message { + message: message.into(), + }; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(0) + .expect_no_logs() + .execute_returns(expected_weight); + }); +} + +#[test] +fn test_xcm_utils_get_units_per_second() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let multilocation = SelfReserve::get(); + + let input = XcmUtilsPCall::get_units_per_second { multilocation }; + + let expected_units = + WEIGHT_REF_TIME_PER_SECOND as u128 * moonbeam_runtime::currency::WEIGHT_FEE; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(expected_units); + }); +} + +#[test] +fn precompile_existence() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let precompile_addresses: std::collections::BTreeSet<_> = vec![ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 1024, 1025, 1026, 2048, 2049, 2050, 2051, 2052, 2053, 2054, + 2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, + 2069, 2070, 2071, 2072, + ] + .into_iter() + .map(H160::from_low_u64_be) + .collect(); + + for i in 0..3000 { + let address = H160::from_low_u64_be(i); + + if precompile_addresses.contains(&address) { + assert!( + is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return true", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_some(), + "execute({},..) should return Some(_)", + i + ); + } else { + assert!( + !is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return false", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_none(), + "execute({},..) should return None", + i + ); + } + } + }); +} + +#[test] +fn removed_precompiles() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let removed_precompiles = [1025]; + + for i in 1..3000 { + let address = H160::from_low_u64_be(i); + + if !is_precompile_or_fail::(address, 100_000u64).expect("to be ok") { + continue; + } + + if !removed_precompiles.contains(&i) { + assert!( + match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} should be an active precompile" + ); + continue; + } + + assert!( + !match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} shouldn't be an active precompile" + ); + + precompiles + .prepare_test(Alice, address, []) + .execute_reverts(|out| out == b"Removed precompile"); + } + }) +} + +#[test] +fn deal_with_fees_handles_tip() { + use frame_support::traits::OnUnbalanced; + use moonbeam_runtime::{DealWithFees, Treasury}; + use pallet_balances::NegativeImbalance; + + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 10_000)]) + .build() + .execute_with(|| { + // Alice has 10_000, which makes inital supply 10_000. + // drop()ing the NegativeImbalance below will cause the total_supply to be decreased + // incorrectly (since there was never a withdraw to begin with), which in this case has + // the desired effect of showing that currency was burned. + let total_supply_before = Balances::total_issuance(); + assert_eq!(total_supply_before, 10_000); + + let fees_then_tips = vec![ + NegativeImbalance::::new(100), + NegativeImbalance::::new(1_000), + ]; + DealWithFees::on_unbalanceds(fees_then_tips.into_iter()); + + // treasury should have received 20% + assert_eq!(Balances::free_balance(&Treasury::account_id()), 220); + + // verify 80% burned + let total_supply_after = Balances::total_issuance(); + assert_eq!(total_supply_before - total_supply_after, 880); + }); +} + +#[test] +fn evm_revert_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + // Batch a transfer followed by an invalid call to batch. + // Thus BatchAll will revert the transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + + input: BatchPCall::batch_all { + to: vec![Address(BOB.into()), Address(batch_precompile_address)].into(), + value: vec![U256::from(1 * GLMR), U256::zero()].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: BASE_FEE_GENESIS.into(), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 0, "there should be no transfer event"); + }); +} + +#[test] +fn evm_success_keeps_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + input: BatchPCall::batch_all { + to: vec![Address(BOB.into())].into(), + value: vec![U256::from(1 * GLMR)].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: BASE_FEE_GENESIS.into(), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 1, "there should be 1 transfer event"); + }); +} + +#[cfg(test)] +mod fee_tests { + use super::*; + use frame_support::{ + traits::ConstU128, + weights::{ConstantMultiplier, WeightToFee}, + }; + use moonbeam_runtime::{ + currency, LengthToFee, MinimumMultiplier, RuntimeBlockWeights, SlowAdjustingFeeUpdate, + TargetBlockFullness, TransactionPayment, + }; + use sp_core::Get; + use sp_runtime::FixedPointNumber; + + fn run_with_system_weight(w: Weight, mut assertions: F) + where + F: FnMut() -> (), + { + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); + } + + #[test] + fn test_multiplier_can_grow_from_zero() { + let minimum_multiplier = MinimumMultiplier::get(); + let target = TargetBlockFullness::get() + * RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = SlowAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) + } + + #[test] + fn test_fee_calculation() { + let base_extrinsic = RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .base_extrinsic; + let multiplier = sp_runtime::FixedU128::from_float(0.999000000000000000); + let extrinsic_len = 100u32; + let extrinsic_weight = 5_000u64; + let tip = 42u128; + type WeightToFeeImpl = ConstantMultiplier>; + type LengthToFeeImpl = LengthToFee; + + // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip + let expected_fee = + WeightToFeeImpl::weight_to_fee(&base_extrinsic) + + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( + &Weight::from_parts(extrinsic_weight, 1), + )) + LengthToFeeImpl::weight_to_fee(&Weight::from_parts(extrinsic_len as u64, 1)) + + tip; + + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier); + let actual_fee = TransactionPayment::compute_fee( + extrinsic_len, + &frame_support::dispatch::DispatchInfo { + class: DispatchClass::Normal, + pays_fee: frame_support::dispatch::Pays::Yes, + weight: Weight::from_parts(extrinsic_weight, 1), + }, + tip, + ); + + assert_eq!( + expected_fee, + actual_fee, + "The actual fee did not match the expected fee, diff {}", + actual_fee - expected_fee + ); + }); + } +} diff --git a/tracing/2700/runtime/moonbeam/tests/runtime_apis.rs b/tracing/2700/runtime/moonbeam/tests/runtime_apis.rs new file mode 100644 index 00000000..26609076 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/runtime_apis.rs @@ -0,0 +1,393 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbeam Runtime Api Integration Tests + +mod common; +use common::*; + +use fp_evm::GenesisAccount; +use frame_support::assert_ok; +use nimbus_primitives::NimbusId; +use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; +use sp_core::{ByteArray, H160, H256, U256}; + +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; +use std::{collections::BTreeMap, str::FromStr}; + +#[test] +fn ethereum_runtime_rpc_api_chain_id() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!(Runtime::chain_id(), CHAIN_ID); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_basic() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * GLMR)]) + .build() + .execute_with(|| { + assert_eq!( + Runtime::account_basic(H160::from(ALICE)), + EVMAccount { + balance: U256::from(2_000 * GLMR), + nonce: U256::zero() + } + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_gas_price() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!( + Runtime::gas_price(), + TransactionPaymentAsGasPrice::min_gas_price().0 + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_code_at() { + let address = H160::from(EVM_CONTRACT); + let code: Vec = vec![1, 2, 3, 4, 5]; + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: code.clone(), + nonce: Default::default(), + storage: Default::default(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::account_code_at(address), code); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_author() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + assert_eq!(Runtime::author(), H160::from(ALICE)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_storage_at() { + let address = H160::from(EVM_CONTRACT); + let mut key = [0u8; 32]; + key[31..32].copy_from_slice(&[6u8][..]); + let mut value = [0u8; 32]; + value[31..32].copy_from_slice(&[7u8][..]); + let item = H256::from_slice(&key[..]); + let mut storage: BTreeMap = BTreeMap::new(); + storage.insert(H256::from_slice(&key[..]), item); + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: Vec::new(), + nonce: Default::default(), + storage: storage.clone(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::storage_at(address, U256::from(6)), item); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_call() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * GLMR), + (AccountId::from(BOB), 2_000 * GLMR), + ]) + .build() + .execute_with(|| { + let execution_result = Runtime::call( + H160::from(ALICE), // from + H160::from(BOB), // to + Vec::new(), // data + U256::from(1000u64), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_create() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * GLMR)]) + .build() + .execute_with(|| { + let execution_result = Runtime::create( + H160::from(ALICE), // from + vec![0, 1, 1, 0], // data + U256::zero(), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_transaction_statuses() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24FF3a9CF04c71Dbc94D0b566f7A27B94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 200_000 * GLMR), + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + + let _result = Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)); + + rpc_run_to_block(2); + let statuses = + Runtime::current_transaction_statuses().expect("Transaction statuses result."); + assert_eq!(statuses.len(), 1); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_block() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + rpc_run_to_block(2); + let block = Runtime::current_block().expect("Block result."); + assert_eq!(block.header.number, U256::from(1u8)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_receipts() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24FF3a9CF04c71Dbc94D0b566f7A27B94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 100_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 200_000 * GLMR), + (AccountId::from(ALICE), 200_000 * GLMR), + (AccountId::from(BOB), 100_000 * GLMR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 50_000 * GLMR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + + let _result = Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)); + + rpc_run_to_block(2); + let receipts = Runtime::current_receipts().expect("Receipts result."); + assert_eq!(receipts.len(), 1); + }); +} + +#[test] +fn txpool_runtime_api_extrinsic_filter() { + ExtBuilder::default().build().execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * GLMR, + } + .into(), + ); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let txpool = >::extrinsic_filter( + vec![eth_uxt.clone(), non_eth_uxt.clone()], + vec![unchecked_eth_tx(VALID_ETH_TX), non_eth_uxt], + ); + assert_eq!(txpool.ready.len(), 1); + assert_eq!(txpool.future.len(), 1); + }); +} + +#[test] +fn can_author_when_selected_is_empty() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 20_000_000 * GLMR), + (AccountId::from(BOB), 10_000_000 * GLMR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 2_000_000 * GLMR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 1); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: Default::default(), + parent_hash: Default::default(), + state_root: Default::default(), + }; + + // Base case: ALICE can author blocks when she is the only candidate + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Remove ALICE from candidate pool, leaving the candidate_pool empty + assert_ok!(ParachainStaking::go_offline(origin_of(AccountId::from( + ALICE + )))); + + // Need to fast forward to right before the next session, which is when selected candidates + // will be updated. We want to test the creation of the first block of the next session. + run_to_block(1799, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1799, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Check that it works as expected after session update + run_to_block(1800, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1800, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + }); +} diff --git a/tracing/2700/runtime/moonbeam/tests/xcm_mock/mod.rs b/tracing/2700/runtime/moonbeam/tests/xcm_mock/mod.rs new file mode 100644 index 00000000..f1441c2e --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/xcm_mock/mod.rs @@ -0,0 +1,272 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +pub mod parachain; +pub mod relay_chain; +pub mod statemint_like; + +use cumulus_primitives_core::ParaId; +use pallet_xcm_transactor::relay_indices::*; +use sp_runtime::traits::AccountIdConversion; +use sp_runtime::{AccountId32, BuildStorage}; +use xcm_simulator::{decl_test_network, decl_test_parachain, decl_test_relay_chain, TestExt}; + +use polkadot_runtime_parachains::configuration::{ + GenesisConfig as ConfigurationGenesisConfig, HostConfiguration, +}; +use polkadot_runtime_parachains::paras::{ + GenesisConfig as ParasGenesisConfig, ParaGenesisArgs, ParaKind, +}; +use sp_core::{H160, U256}; +use std::{collections::BTreeMap, str::FromStr}; + +pub const PARAALICE: [u8; 20] = [1u8; 20]; +pub const RELAYALICE: AccountId32 = AccountId32::new([0u8; 32]); +pub const RELAYBOB: AccountId32 = AccountId32::new([2u8; 32]); + +pub fn para_a_account() -> AccountId32 { + ParaId::from(1).into_account_truncating() +} + +pub fn para_b_account() -> AccountId32 { + ParaId::from(2).into_account_truncating() +} + +pub fn para_a_account_20() -> parachain::AccountId { + ParaId::from(1).into_account_truncating() +} + +pub fn evm_account() -> H160 { + H160::from_str("1000000000000000000000000000000000000001").unwrap() +} + +pub fn mock_para_genesis_info() -> ParaGenesisArgs { + ParaGenesisArgs { + genesis_head: vec![1u8].into(), + validation_code: vec![1u8].into(), + para_kind: ParaKind::Parachain, + } +} + +pub fn mock_relay_config() -> HostConfiguration { + HostConfiguration:: { + hrmp_channel_max_capacity: u32::MAX, + hrmp_channel_max_total_size: u32::MAX, + hrmp_max_parachain_inbound_channels: 10, + hrmp_max_parachain_outbound_channels: 10, + hrmp_channel_max_message_size: u32::MAX, + // Changed to avoid aritmetic errors within hrmp_close + max_downward_message_size: 100_000u32, + ..Default::default() + } +} + +decl_test_parachain! { + pub struct ParaA { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(1), + } +} + +decl_test_parachain! { + pub struct ParaB { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(2), + } +} + +decl_test_parachain! { + pub struct ParaC { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(3), + } +} + +decl_test_parachain! { + pub struct Statemint { + Runtime = statemint_like::Runtime, + XcmpMessageHandler = statemint_like::MsgQueue, + DmpMessageHandler = statemint_like::MsgQueue, + new_ext = statemint_ext(4), + } +} + +decl_test_relay_chain! { + pub struct Relay { + Runtime = relay_chain::Runtime, + RuntimeCall = relay_chain::RuntimeCall, + RuntimeEvent = relay_chain::RuntimeEvent, + XcmConfig = relay_chain::XcmConfig, + MessageQueue = relay_chain::MessageQueue, + System = relay_chain::System, + new_ext = relay_ext(vec![1, 2, 3, 4]), + } +} + +decl_test_network! { + pub struct MockNet { + relay_chain = Relay, + parachains = vec![ + (1, ParaA), + (2, ParaB), + (3, ParaC), + (4, Statemint), + ], + } +} + +pub const INITIAL_BALANCE: u128 = 10_000_000_000_000_000; + +pub const INITIAL_EVM_BALANCE: u128 = 0; +pub const INITIAL_EVM_NONCE: u32 = 1; + +pub fn para_ext(para_id: u32) -> sp_io::TestExternalities { + use parachain::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(PARAALICE.into(), INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_xcm_transactor::GenesisConfig:: { + // match relay runtime construct_runtime order in xcm_mock::relay_chain + relay_indices: RelayChainIndices { + hrmp: 6u8, + init_open_channel: 0u8, + accept_open_channel: 1u8, + close_channel: 2u8, + cancel_open_request: 6u8, + ..Default::default() + }, + ..Default::default() + } + .assimilate_storage(&mut t) + .unwrap(); + + // EVM accounts are self-sufficient. + let mut evm_accounts = BTreeMap::new(); + evm_accounts.insert( + evm_account(), + fp_evm::GenesisAccount { + nonce: U256::from(INITIAL_EVM_NONCE), + balance: U256::from(INITIAL_EVM_BALANCE), + storage: Default::default(), + code: vec![ + 0x00, // STOP + ], + }, + ); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn statemint_ext(para_id: u32) -> sp_io::TestExternalities { + use statemint_like::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![ + (RELAYALICE.into(), INITIAL_BALANCE), + (RELAYBOB.into(), INITIAL_BALANCE), + ], + } + .assimilate_storage(&mut t) + .unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn relay_ext(paras: Vec) -> sp_io::TestExternalities { + use relay_chain::{Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(RELAYALICE, INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + let para_genesis: Vec<(ParaId, ParaGenesisArgs)> = paras + .iter() + .map(|¶_id| (para_id.into(), mock_para_genesis_info())) + .collect(); + + let genesis_config = ConfigurationGenesisConfig:: { + config: mock_relay_config(), + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = ParasGenesisConfig:: { + paras: para_genesis, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + }); + ext +} + +pub type RelayChainPalletXcm = pallet_xcm::Pallet; +pub type Hrmp = polkadot_runtime_parachains::hrmp::Pallet; + +pub type StatemintBalances = pallet_balances::Pallet; +pub type StatemintChainPalletXcm = pallet_xcm::Pallet; +pub type StatemintAssets = pallet_assets::Pallet; + +pub type Assets = pallet_assets::Pallet; +pub type LocalAssets = pallet_assets::Pallet; +pub type Treasury = pallet_treasury::Pallet; +pub type AssetManager = pallet_asset_manager::Pallet; +pub type XTokens = orml_xtokens::Pallet; +pub type RelayBalances = pallet_balances::Pallet; +pub type ParaBalances = pallet_balances::Pallet; +pub type XcmTransactor = pallet_xcm_transactor::Pallet; diff --git a/tracing/2700/runtime/moonbeam/tests/xcm_mock/parachain.rs b/tracing/2700/runtime/moonbeam/tests/xcm_mock/parachain.rs new file mode 100644 index 00000000..2024534f --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/xcm_mock/parachain.rs @@ -0,0 +1,1224 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Parachain runtime mock. + +use frame_support::{ + construct_runtime, + dispatch::GetDispatchInfo, + ensure, parameter_types, + traits::{ + AsEnsureOriginWithArg, ConstU32, Everything, Get, InstanceFilter, Nothing, PalletInfoAccess, + }, + weights::Weight, + PalletId, +}; + +use cumulus_primitives_core::relay_chain::HrmpChannelId; +use frame_system::{pallet_prelude::BlockNumberFor, EnsureNever, EnsureRoot}; +use orml_traits::parameter_type_with_key; +use pallet_xcm::migration::v1::VersionUncheckedMigrateToV1; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use sp_core::H256; +use sp_runtime::{ + traits::{BlakeTwo256, Hash, IdentityLookup, MaybeEquivalence, Zero}, + Permill, +}; +use sp_std::{convert::TryFrom, prelude::*}; +use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; + +use pallet_ethereum::PostLogContent; +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; +use polkadot_parachain::primitives::{Id as ParaId, Sibling}; +use xcm::latest::{ + AssetId as XcmAssetId, Error as XcmError, ExecuteXcm, + Junction::{PalletInstance, Parachain}, + Junctions, MultiLocation, NetworkId, Outcome, Xcm, +}; +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; + +#[cfg(feature = "runtime-benchmarks")] +use moonbeam_runtime_common::benchmarking::BenchmarkHelper as ArgumentsBenchmarkHelper; +use scale_info::TypeInfo; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; + +pub type AccountId = moonbeam_core_primitives::AccountId; +pub type Balance = u128; +pub type AssetId = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 0; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 1; // Does not really matter as this will be only called by root + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + AccountKey20Aliases, + // Generate remote accounts according to polkadot standards + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + SignedAccountKey20AsNative, +); + +parameter_types! { + pub const UnitWeightCost: Weight = Weight::from_parts(1u64, 1u64); + pub MaxInstructions: u32 = 100; +} + +// Instructing how incoming xcm assets will be handled +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId32 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets besides the native currency on this chain. +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// We use all transactors +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, +); +pub type XcmRouter = super::ParachainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +pub type XcmFeesToAccount_ = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +parameter_types! { + // We cannot skip the native trader for some specific tests, so we will have to work with + // a native trader that charges same number of units as weight + pub ParaTokensPerSecond: (XcmAssetId, u128, u128) = + (Concrete(SelfReserve::get()), 1000000000000, 0); +} + +parameter_types! { + pub const RelayNetwork: NetworkId = NetworkId::Polkadot; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + pub const MaxAssetsIntoHolding: u32 = 64; +} + +use frame_system::RawOrigin; +use sp_runtime::traits::PostDispatchInfoOf; +use sp_runtime::DispatchErrorWithPostInfo; +use xcm_executor::traits::CallDispatcher; +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = orml_xcm_support::MultiNativeAsset< + xcm_primitives::AbsoluteAndRelativeReserve, + >; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + // We use two traders + // When we receive the self-reserve asset, + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + FixedRateOfFungible, + xcm_primitives::FirstAssetTrader, + ); + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + SelfReserve, + ForeignAsset(AssetId), + LocalAssetReserve(AssetId), +} + +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + CurrencyId::SelfReserve => { + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxAssetsForTransfer: usize = 2; + pub SelfLocation: MultiLocation = MultiLocation::here(); + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(MsgQueue::parachain_id().into()) + ) + }; +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + (1, Some(Parachain(4u32))) => Some(50u128), + _ => None, + } + }; +} + +// The XCM message wrapper wrapper +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const ProposalBondMinimum: Balance = 0; + pub const SpendPeriod: u32 = 0; + pub const TreasuryId: PalletId = PalletId(*b"pc/trsry"); + pub const MaxApprovals: u32 = 100; + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + type ApproveOrigin = EnsureRoot; + type RejectOrigin = EnsureRoot; + type RuntimeEvent = RuntimeEvent; + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ProposalBondMinimum; + type SpendPeriod = SpendPeriod; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = MaxApprovals; + type WeightInfo = (); + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = ArgumentsBenchmarkHelper; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} + +// Pallet to provide the version, used to test runtime upgrade version changes +#[frame_support::pallet] +pub mod mock_version_changer { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_version)] + pub(super) type CurrentVersion = StorageValue<_, XcmVersion, ValueQuery>; + + impl Get for Pallet { + fn get() -> XcmVersion { + Self::current_version() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + VersionChanged(XcmVersion), + } + + impl Pallet { + pub fn set_version(version: XcmVersion) { + CurrentVersion::::put(version); + Self::deposit_event(Event::VersionChanged(version)); + } + } +} + +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl mock_version_changer::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +pub type LocalOriginToLocation = + xcm_primitives::SignedToAccountId20; + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = frame_support::traits::Nothing; + type XcmExecutor = XcmExecutor; + // Do not allow teleports + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + // We use a custom one to test runtime ugprades + type AdvertisedXcmVersion = XcmVersioner; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} + +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We simply hash the AssetType and take the lowest 128 bits +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::pallet_prelude::DispatchResult; +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset, + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset, + metadata.name, + metadata.symbol, + metadata.decimals, + false, + ) + } + + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + LocalAssets::force_create( + RuntimeOrigin::root(), + asset, + owner, + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(ASSET_PRECOMPILE_ADDRESS_PREFIX, asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + Ok(()) + } + + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + Assets::start_destroy(RuntimeOrigin::root(), asset)?; + + Ok(()) + } + + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + LocalAssets::start_destroy(RuntimeOrigin::root(), asset)?; + + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { + id: asset.into(), + }, + ) + .get_dispatch_info() + .weight + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, +} + +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a local asset counter to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetMetadata; + type ForeignAssetType = AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = EnsureRoot; + type LocalAssetModifierOrigin = EnsureRoot; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = (); +} + +// 1 DOT should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = MockTransactors; + type DerivativeAddressRegistrationOrigin = EnsureRoot; + type SovereignAccountDispatcherOrigin = frame_system::EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type XcmSender = XcmRouter; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; + type WeightInfo = (); + type HrmpManipulatorOrigin = EnsureRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + pub const MinimumPeriod: u64 = 1000; +} +impl pallet_timestamp::Config for Runtime { + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = MinimumPeriod; + type WeightInfo = (); +} + +use sp_core::U256; + +const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; +/// Block storage limit in bytes. Set to 40 KB. +const BLOCK_STORAGE_LIMIT: u64 = 40 * 1024; + +parameter_types! { + pub BlockGasLimit: U256 = U256::from(u64::MAX); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); + pub GasLimitPovSizeRatio: u64 = { + let block_gas_limit = BlockGasLimit::get().min(u64::MAX.into()).low_u64(); + block_gas_limit.saturating_div(MAX_POV_SIZE) + }; + pub GasLimitStorageGrowthRatio: u64 = + BlockGasLimit::get().min(u64::MAX.into()).low_u64().saturating_div(BLOCK_STORAGE_LIMIT); +} + +impl pallet_evm::Config for Runtime { + type FeeCalculator = (); + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + + type CallOrigin = pallet_evm::EnsureAddressRoot; + type WithdrawOrigin = pallet_evm::EnsureAddressNever; + + type AddressMapping = pallet_evm::IdentityAddressMapping; + type Currency = Balances; + type Runner = pallet_evm::runner::stack::Runner; + + type RuntimeEvent = RuntimeEvent; + type PrecompilesType = (); + type PrecompilesValue = (); + type ChainId = (); + type BlockGasLimit = BlockGasLimit; + type OnChargeTransaction = (); + type BlockHashMapping = pallet_evm::SubstrateBlockHashMapping; + type FindAuthor = (); + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = Timestamp; + type WeightInfo = pallet_evm::weights::SubstrateWeight; +} + +pub struct NormalFilter; +impl frame_support::traits::Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + _ => true, + } + } +} + +// We need to use the encoding from the relay mock runtime +#[derive(Encode, Decode)] +pub enum RelayCall { + #[codec(index = 5u8)] + // the index should match the position of the module in `construct_runtime!` + Utility(UtilityCall), + #[codec(index = 6u8)] + // the index should match the position of the module in `construct_runtime!` + Hrmp(HrmpCall), +} + +#[derive(Encode, Decode)] +pub enum UtilityCall { + #[codec(index = 1u8)] + AsDerivative(u16), +} + +// HRMP call encoding, needed for xcm transactor pallet +#[derive(Encode, Decode)] +pub enum HrmpCall { + #[codec(index = 0u8)] + InitOpenChannel(ParaId, u32, u32), + #[codec(index = 1u8)] + AcceptOpenChannel(ParaId), + #[codec(index = 2u8)] + CloseChannel(HrmpChannelId), + #[codec(index = 6u8)] + CancelOpenRequest(HrmpChannelId, u32), +} + +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum MockTransactors { + Relay, +} + +impl xcm_primitives::XcmTransact for MockTransactors { + fn destination(self) -> MultiLocation { + match self { + MockTransactors::Relay => MultiLocation::parent(), + } + } +} + +impl xcm_primitives::UtilityEncodeCall for MockTransactors { + fn encode_call(self, call: xcm_primitives::UtilityAvailableCalls) -> Vec { + match self { + MockTransactors::Relay => match call { + xcm_primitives::UtilityAvailableCalls::AsDerivative(a, b) => { + let mut call = + RelayCall::Utility(UtilityCall::AsDerivative(a.clone())).encode(); + call.append(&mut b.clone()); + call + } + }, + } + } +} + +pub struct MockHrmpEncoder; +impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { + fn hrmp_encode_call( + call: xcm_primitives::HrmpAvailableCalls, + ) -> Result, xcm::latest::Error> { + match call { + xcm_primitives::HrmpAvailableCalls::InitOpenChannel(a, b, c) => Ok(RelayCall::Hrmp( + HrmpCall::InitOpenChannel(a.clone(), b.clone(), c.clone()), + ) + .encode()), + xcm_primitives::HrmpAvailableCalls::AcceptOpenChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::AcceptOpenChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CloseChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::CloseChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CancelOpenRequest(a, b) => { + Ok(RelayCall::Hrmp(HrmpCall::CancelOpenRequest(a.clone(), b.clone())).encode()) + } + } + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +parameter_types! { + pub ReservedXcmpWeight: Weight = Weight::from_parts(u64::max_value(), 0); +} + +#[derive( + Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Encode, Decode, Debug, MaxEncodedLen, TypeInfo, +)] +pub enum ProxyType { + NotAllowed = 0, + Any = 1, +} + +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType {} + +impl InstanceFilter for ProxyType { + fn filter(&self, _c: &RuntimeCall) -> bool { + match self { + ProxyType::NotAllowed => false, + ProxyType::Any => true, + } + } + fn is_superset(&self, _o: &Self) -> bool { + false + } +} + +impl Default for ProxyType { + fn default() -> Self { + Self::NotAllowed + } +} + +parameter_types! { + pub const ProxyCost: u64 = 1; +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + type ProxyDepositBase = ProxyCost; + type ProxyDepositFactor = ProxyCost; + type MaxProxies = ConstU32<32>; + type WeightInfo = pallet_proxy::weights::SubstrateWeight; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ProxyCost; + type AnnouncementDepositFactor = ProxyCost; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will iMmediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +type Block = frame_system::mocking::MockBlockU32; + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + MsgQueue: mock_msg_queue, + XcmVersioner: mock_version_changer, + + PolkadotXcm: pallet_xcm, + Assets: pallet_assets, + CumulusXcm: cumulus_pallet_xcm, + XTokens: orml_xtokens, + AssetManager: pallet_asset_manager, + XcmTransactor: pallet_xcm_transactor, + Treasury: pallet_treasury, + LocalAssets: pallet_assets::, + Proxy: pallet_proxy, + + Timestamp: pallet_timestamp, + EVM: pallet_evm, + Ethereum: pallet_ethereum, + EthereumXcm: pallet_ethereum_xcm, + } +); + +pub(crate) fn para_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::tokens::{PayFromAccount, UnityAssetBalanceConversion}; +use frame_support::traits::{OnFinalize, OnInitialize, OnRuntimeUpgrade}; +pub(crate) fn on_runtime_upgrade() { + VersionUncheckedMigrateToV1::::on_runtime_upgrade(); +} + +pub(crate) fn para_roll_to(n: BlockNumber) { + while System::block_number() < n { + PolkadotXcm::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + PolkadotXcm::on_initialize(System::block_number()); + } +} diff --git a/tracing/2700/runtime/moonbeam/tests/xcm_mock/relay_chain.rs b/tracing/2700/runtime/moonbeam/tests/xcm_mock/relay_chain.rs new file mode 100644 index 00000000..8eeaad46 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/xcm_mock/relay_chain.rs @@ -0,0 +1,415 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, parameter_types, + traits::{Everything, Nothing, ProcessMessage, ProcessMessageError}, +}; +use frame_system::pallet_prelude::BlockNumberFor; +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, IdentityLookup}, + AccountId32, +}; + +use frame_support::weights::{Weight, WeightMeter}; +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_runtime_parachains::{ + configuration, dmp, hrmp, + inclusion::{AggregateMessageOrigin, UmpQueueId}, + origin, paras, shared, +}; +use sp_runtime::transaction_validity::TransactionPriority; +use sp_runtime::Permill; +use xcm::latest::prelude::*; +use xcm_builder::{ + Account32Hash, AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, ChildParachainConvertsVia, + ChildSystemParachainAsSuperuser, CurrencyAdapter as XcmCurrencyAdapter, FixedRateOfFungible, + FixedWeightBounds, IsConcrete, ProcessXcmMessage, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{Config, XcmExecutor}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WeightInfo = (); + type PalletsOrigin = OriginCaller; +} + +impl shared::Config for Runtime {} + +impl configuration::Config for Runtime { + type WeightInfo = configuration::TestWeightInfo; +} + +parameter_types! { + pub KsmLocation: MultiLocation = Here.into(); + pub const KusamaNetwork: NetworkId = NetworkId::Kusama; + pub const AnyNetwork: Option = None; + pub UniversalLocation: InteriorMultiLocation = Here; +} + +pub type SovereignAccountOf = ( + ChildParachainConvertsVia, + AccountId32Aliases, + // Not enabled in the relay per se, but we enable it to test + // the transact_through_signed extrinsic + Account32Hash, +); + +pub type LocalAssetTransactor = + XcmCurrencyAdapter, SovereignAccountOf, AccountId, ()>; + +type LocalOriginConverter = ( + SovereignSignedViaLocation, + ChildParachainAsNative, + SignedAccountId32AsNative, + ChildSystemParachainAsSuperuser, +); + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(1000u64, 1000u64); + pub KsmPerSecond: (AssetId, u128, u128) = (Concrete(KsmLocation::get()), 1, 1); + pub const MaxInstructions: u32 = 100; + pub const MaxAssetsIntoHolding: u32 = 64; + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +pub type XcmRouter = super::RelayChainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + pub Kusama: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(KsmLocation::get()) }); + pub Statemine: MultiLocation = Parachain(4).into(); + pub KusamaForStatemine: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Statemine::get()); +} + +pub type TrustedTeleporters = xcm_builder::Case; + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = LocalAssetTransactor; + type OriginConverter = LocalOriginConverter; + type IsReserve = (); + type IsTeleporter = TrustedTeleporters; + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = XcmPallet; + type AssetTrap = XcmPallet; + type AssetClaims = XcmPallet; + type SubscriptionService = XcmPallet; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +pub type LocalOriginToLocation = SignedToAccountId32; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmRouter = XcmRouter; + // Anyone can execute XCM messages locally... + type ExecuteXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +parameter_types! { + pub const FirstMessageFactorPercent: u64 = 100; +} + +parameter_types! { + pub const ParasUnsignedPriority: TransactionPriority = TransactionPriority::max_value(); +} + +/// A very dumb implementation of `EstimateNextSessionRotation`. At the moment of writing, this +/// is more to satisfy type requirements rather than to test anything. +pub struct TestNextSessionRotation; + +impl frame_support::traits::EstimateNextSessionRotation for TestNextSessionRotation { + fn average_session_length() -> u32 { + 10 + } + + fn estimate_current_session_progress(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } + + fn estimate_next_session_rotation(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } +} + +impl paras::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = paras::TestWeightInfo; + type UnsignedPriority = ParasUnsignedPriority; + type NextSessionRotation = TestNextSessionRotation; + type QueueFootprinter = (); + type OnNewHead = (); +} + +impl dmp::Config for Runtime {} + +impl hrmp::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type WeightInfo = TestHrmpWeightInfo; + type ChannelManager = frame_system::EnsureRoot; +} + +impl frame_system::offchain::SendTransactionTypes for Runtime +where + RuntimeCall: From, +{ + type Extrinsic = UncheckedExtrinsic; + type OverarchingCall = RuntimeCall; +} + +impl origin::Config for Runtime {} + +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +type Block = frame_system::mocking::MockBlockU32; + +parameter_types! { + pub MessageQueueServiceWeight: Weight = Weight::from_parts(1_000_000_000, 1_000_000); + pub const MessageQueueHeapSize: u32 = 65_536; + pub const MessageQueueMaxStale: u32 = 16; +} + +pub struct MessageProcessor; +impl ProcessMessage for MessageProcessor { + type Origin = AggregateMessageOrigin; + + fn process_message( + message: &[u8], + origin: Self::Origin, + meter: &mut WeightMeter, + id: &mut [u8; 32], + ) -> Result { + let para = match origin { + AggregateMessageOrigin::Ump(UmpQueueId::Para(para)) => para, + }; + ProcessXcmMessage::, RuntimeCall>::process_message( + message, + Junction::Parachain(para.into()), + meter, + id, + ) + } +} + +impl pallet_message_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Size = u32; + type HeapSize = MessageQueueHeapSize; + type MaxStale = MessageQueueMaxStale; + type ServiceWeight = MessageQueueServiceWeight; + type MessageProcessor = MessageProcessor; + type QueueChangeHandler = (); + type WeightInfo = (); + type QueuePausedQuery = (); +} + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + ParasOrigin: origin, + MessageQueue: pallet_message_queue, + XcmPallet: pallet_xcm, + Utility: pallet_utility, + Hrmp: hrmp, + Dmp: dmp, + Paras: paras, + Configuration: configuration, + } +); + +pub(crate) fn relay_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::{OnFinalize, OnInitialize}; +pub(crate) fn relay_roll_to(n: BlockNumber) { + while System::block_number() < n { + XcmPallet::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + XcmPallet::on_initialize(System::block_number()); + } +} + +/// A weight info that is only suitable for testing. +pub struct TestHrmpWeightInfo; + +impl hrmp::WeightInfo for TestHrmpWeightInfo { + fn hrmp_accept_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn force_clean_hrmp(_: u32, _: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_close(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_open(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_cancel_open_request(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_close_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_init_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn clean_open_channel_requests(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_open_hrmp_channel(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + + fn establish_system_channel() -> Weight { + Weight::from_parts(1, 0) + } + + fn poke_channel_deposits() -> Weight { + Weight::from_parts(1, 0) + } +} diff --git a/tracing/2700/runtime/moonbeam/tests/xcm_mock/statemint_like.rs b/tracing/2700/runtime/moonbeam/tests/xcm_mock/statemint_like.rs new file mode 100644 index 00000000..987a83ae --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/xcm_mock/statemint_like.rs @@ -0,0 +1,552 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, match_types, parameter_types, + traits::{AsEnsureOriginWithArg, Everything, Nothing}, + weights::Weight, +}; +use frame_system::{EnsureRoot, EnsureSigned}; + +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, Hash, IdentityLookup}, + AccountId32, +}; + +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; + +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_parachain::primitives::Sibling; +use sp_std::convert::TryFrom; +use xcm::latest::prelude::*; +use xcm::VersionedXcm; +use xcm_builder::{ + AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, AsPrefixedGeneralIndex, + ConvertedConcreteId, CurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type AssetId = u128; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 0; // 1 UNIT deposit to create asset + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + /// Key = 32 bytes, Value = 36 bytes (32+1+1+1+1) + // https://github.com/paritytech/substrate/blob/069917b/frame/assets/src/lib.rs#L257L271 + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const ExecutiveBody: BodyId = BodyId::Executive; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = (); + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +parameter_types! { + pub const KsmLocation: MultiLocation = MultiLocation::parent(); + pub const RelayNetwork: NetworkId = NetworkId::Kusama; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + pub Local: MultiLocation = Here.into(); + pub CheckingAccount: AccountId = PolkadotXcm::check_account(); + pub KsmPerSecond: (xcm::latest::prelude::AssetId, u128, u128) = + (Concrete(KsmLocation::get()), 1, 1); +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // Straight up local `AccountId32` origins just alias directly to `AccountId`. + AccountId32Aliases, +); + +/// Means for transacting the native currency on this chain. +pub type CurrencyTransactor = CurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching the given location or name: + IsConcrete, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We don't track any teleports of `Balances`. + (), +>; + +/// Means for transacting assets besides the native currency on this chain. +pub type FungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We only want to allow teleports of known assets. We use non-zero issuance as an indication + // that this asset is known. + NoChecking, + // The account to use for tracking teleports. + CheckingAccount, +>; +/// Means for transacting assets on this chain. +pub type AssetTransactors = (CurrencyTransactor, FungiblesTransactor); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Native signed account converter; this just converts an `AccountId32` origin into a normal + // `RuntimeOrigin::signed` origin of the same 32-byte value. + SignedAccountId32AsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, +); + +parameter_types! { + // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. + pub UnitWeightCost: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxInstructions: u32 = 100; +} + +match_types! { + pub type ParentOrParentsExecutivePlurality: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } + }; +} +match_types! { + pub type ParentOrSiblings: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(_) } + }; +} + +pub type Barrier = ( + TakeWeightCredit, + AllowTopLevelPaidExecutionFrom, + // Parent and its exec plurality get free execution + AllowUnpaidExecutionFrom, + // Expected responses are OK. + AllowKnownQueryResponses, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, +); + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); + pub const MaxAssetsIntoHolding: u32 = 64; +} + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = + orml_xcm_support::MultiNativeAsset; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = Barrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +/// No local origins on this chain are allowed to dispatch XCM sends/executions. +pub type LocalOriginToLocation = SignedToAccountId32; + +pub type XcmRouter = super::ParachainXcmRouter; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Pallet to cover test cases for change https://github.com/paritytech/cumulus/pull/831 +#[frame_support::pallet] +pub mod mock_statemint_prefix { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + #[pallet::without_storage_info] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_prefix)] + pub(super) type CurrentPrefix = StorageValue<_, MultiLocation, ValueQuery>; + + impl Get for Pallet { + fn get() -> MultiLocation { + Self::current_prefix() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // Changed Prefix + PrefixChanged(MultiLocation), + } + + impl Pallet { + pub fn set_prefix(prefix: MultiLocation) { + CurrentPrefix::::put(&prefix); + Self::deposit_event(Event::PrefixChanged(prefix)); + } + } +} + +impl mock_statemint_prefix::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +type Block = frame_system::mocking::MockBlockU32; +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + PolkadotXcm: pallet_xcm, + CumulusXcm: cumulus_pallet_xcm, + MsgQueue: mock_msg_queue, + Assets: pallet_assets, + PrefixChanger: mock_statemint_prefix, + + } +); diff --git a/tracing/2700/runtime/moonbeam/tests/xcm_tests.rs b/tracing/2700/runtime/moonbeam/tests/xcm_tests.rs new file mode 100644 index 00000000..79098a78 --- /dev/null +++ b/tracing/2700/runtime/moonbeam/tests/xcm_tests.rs @@ -0,0 +1,3789 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonbeam Runtime Xcm Tests + +mod xcm_mock; + +use cumulus_primitives_core::relay_chain::HrmpChannelId; +use frame_support::{ + assert_ok, + traits::{PalletInfo, PalletInfoAccess}, + weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight}, + BoundedVec, +}; +use pallet_asset_manager::LocalAssetIdCreator; +use pallet_xcm_transactor::{ + Currency, CurrencyPayment, HrmpInitParams, HrmpOperation, TransactWeights, +}; +use sp_core::ConstU32; +use xcm::latest::prelude::*; +use xcm::{VersionedMultiLocation, WrapVersion}; +use xcm_builder::HashedDescriptionDescribeFamilyAllTerminal; +use xcm_executor::traits::ConvertLocation; +use xcm_mock::parachain; +use xcm_mock::relay_chain; +use xcm_mock::*; +use xcm_primitives::{UtilityEncodeCall, DEFAULT_PROOF_SIZE}; +use xcm_simulator::TestExt; + +// Send a relay asset (like DOT) to a parachain A +#[test] +fn receive_relay_asset_from_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register relay asset in paraA + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // First send relay chain asset to Parachain + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Verify that parachain received the asset + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +// Send relay asset (like DOT) back from Parachain A to relaychain +#[test] +fn send_relay_asset_to_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register relay asset in paraA + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // Free execution + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // First send relay chain asset to Parachain like in previous test + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Lets gather the balance before sending back money + let mut balance_before_sending = 0; + Relay::execute_with(|| { + balance_before_sending = RelayBalances::free_balance(&RELAYALICE); + }); + + // We now send back some money to the relay + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: RELAYALICE.into(), + }), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 123, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The balances in paraAlice should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); + + // Balances in the relay should have been received + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(&RELAYALICE) > balance_before_sending); + }); +} + +#[test] +fn send_relay_asset_to_para_b() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register asset in paraA. Free execution + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Now send relay asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 23); + }); + + // Para B balances should have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_to_para_b() { + MockNet::reset(); + + // This represents the asset in paraA + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // Native token is substracted in paraA + ParaA::execute_with(|| { + // Free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Asset is minted in paraB + ParaB::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_from_para_b_to_para_c() { + MockNet::reset(); + + // Represents para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in parachain B. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register para A asset in parachain C. Free execution + ParaC::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send para A asset from para B to para C + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(3), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The message passed through parachainA so we needed to pay since its the native token + ParaC::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 96); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_and_back_to_para_a() { + MockNet::reset(); + + // para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in para B + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send back para A asset to para A + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // Weight used is 4 + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 4 + ); + }); +} + +#[test] +fn receive_relay_asset_with_trader() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // We are sending 100 tokens from relay. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Therefore with no refund, we should receive 10 tokens less + // Native trader fails for this, and we use the asset trader + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 100).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // non-free execution, not full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // In destination chain, we only need 4 weight + // We put 10 weight, 6 of which should be refunded and 4 of which should go to treasury + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(10u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // We are sending 100 tokens from para A. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Since we set 10 weight in destination chain, 25 will be charged upfront + // 15 of those will be refunded, while 10 will go to treasury as the true weight used + // will be 4 + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader_and_fee() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // With these units per second, 80K weight convrets to 1 asset unit + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 12500000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // we use transfer_with_fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_with_fee( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + 1, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // 100 tokens transferred plus 1 taken from fees + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 - 1 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received because trully the xcm instruction does not cost + // what it is specified + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 101); + }); +} + +#[test] +fn error_when_not_paying_enough() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + // We are sending 100 tokens from relay. + // If we set the dest weight to be 1e7, we know the buy_execution will spend 1e7*1e6/1e12 = 10 + // Therefore with no refund, we should receive 10 tokens less + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 5).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // amount not received as it is not paying enough + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); +} + +#[test] +fn transact_through_derivative_multilocation() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + encoded, + // 400000000 + 3000 we should have taken out 4000003000 tokens from the caller + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000003000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + // 4000000000 + 3000 we should have taken out 4000003000 tokens from the caller + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + false + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 9000 correspond to 4000009000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn transact_through_sovereign() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000003000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000009000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn test_automatic_versioning_on_runtime_upgrade_with_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A and set XCM version to 1 + ParaA::execute_with(|| { + parachain::XcmVersioner::set_version(1); + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let response = Response::Version(2); + let querier: MultiLocation = Here.into(); + + // This is irrelevant, nothing will be done with this message, + // but we need to pass a message as an argument to trigger the storage change + let mock_message: Xcm<()> = Xcm(vec![QueryResponse { + query_id: 0, + response, + max_weight: Weight::zero(), + querier: Some(querier), + }]); + // The router is mocked, and we cannot use WrapVersion in ChildParachainRouter. So we will force + // it directly here + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + Relay::execute_with(|| { + // This sets the default version, for not known destinations + assert_ok!(RelayChainPalletXcm::force_default_xcm_version( + relay_chain::RuntimeOrigin::root(), + Some(2) + )); + + // Wrap version, which sets VersionedStorage + // This is necessary because the mock router does not use wrap_version, but + // this is not necessary in prod + assert_ok!(::wrap_version( + &Parachain(1).into(), + mock_message + )); + + // Transfer assets. Since it is an unknown destination, it will query for version + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + + // Let's advance the relay. This should trigger the subscription message + relay_chain::relay_roll_to(2); + + // queries should have been updated + assert!(RelayChainPalletXcm::query(0).is_some()); + }); + + let expected_supported_version: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 1, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the version change + assert!(relay_chain::relay_events().contains(&expected_supported_version)); + }); + + // ParaA changes version to 2, and calls on_runtime_upgrade. This should notify the targets + // of the new version change + ParaA::execute_with(|| { + // Set version + parachain::XcmVersioner::set_version(2); + // Do runtime upgrade + parachain::on_runtime_upgrade(); + // Initialize block, to call on_initialize and notify targets + parachain::para_roll_to(2); + // Expect the event in the parachain + assert!(parachain::para_events().iter().any(|e| matches!( + e, + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::VersionChangeNotified { + result: 2, + .. + }) + ))); + }); + + // This event should have been seen in the relay + let expected_supported_version_2: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 2, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the new version change + assert!(relay_chain::relay_events().contains(&expected_supported_version_2)); + }); +} + +#[test] +fn receive_asset_with_no_sufficients_not_possible_if_non_existent_account() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should not have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 0); + }); + + // Send native token to fresh_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + fresh_account.into(), + 100 + )); + }); + + // Re-send tokens + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn receive_assets_with_sufficients_true_allows_non_funded_account_to_receive_assets() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn evm_account_receiving_assets_should_handle_sufficients_ref_count() { + MockNet::reset(); + + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + // Evm account is self sufficient + ParaA::execute_with(|| { + assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Evm account sufficient ref count increased by 1. + ParaA::execute_with(|| { + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 2); + }); + + ParaA::execute_with(|| { + // Remove the account from the evm context. + parachain::EVM::remove_account(&evm_account()); + // Evm account sufficient ref count decreased by 1. + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); +} + +#[test] +fn empty_account_should_not_be_reset() { + MockNet::reset(); + + // Test account has nonce 1 on genesis. + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send native token to evm_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + evm_account_id, + 100 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Empty the assets from the account. + // As this makes the account go below the `min_balance`, the account is considered dead + // at eyes of pallet-assets, and the consumer reference is decreased by 1 and is now Zero. + assert_ok!(parachain::Assets::transfer( + parachain::RuntimeOrigin::signed(evm_account_id), + source_id, + PARAALICE.into(), + 123 + )); + // Verify account asset balance is Zero. + assert_eq!( + parachain::Assets::balance(source_id, &evm_account_id.into()), + 0 + ); + // Because we no longer have consumer references, we can set the balance to Zero. + // This would reset the account if our ED were to be > than Zero. + assert_ok!(ParaBalances::force_set_balance( + parachain::RuntimeOrigin::root(), + evm_account_id, + 0, + )); + // Verify account native balance is Zero. + assert_eq!(ParaBalances::free_balance(&evm_account_id), 0); + // Remove the account from the evm context. + // This decreases the sufficients reference by 1 and now is Zero. + parachain::EVM::remove_account(&evm_account()); + // Verify reference count. + let account = parachain::System::account(evm_account_id); + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // account.sufficients shall be 0 + assert_eq!(account.sufficients, 1); + assert_eq!(account.consumers, 0); + assert_eq!(account.providers, 1); + // We expect the account to be alive in a Zero ED context. + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // this shall be changed to 1 + assert_eq!(parachain::System::account_nonce(evm_account_id), 2); + }); +} + +#[test] +fn test_statemint_like() { + MockNet::reset(); + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemint_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + let statemint_asset_a_balances = MultiLocation::new( + 1, + X3( + Parachain(4), + PalletInstance(5), + xcm::latest::prelude::GeneralIndex(0u128), + ), + ); + let source_location = parachain::AssetType::Xcm(statemint_asset_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"StatemintToken".to_vec(), + symbol: b"StatemintToken".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + Statemint::execute_with(|| { + // Set new prefix + statemint_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + + assert_ok!(StatemintAssets::create( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 1 + )); + + assert_ok!(StatemintAssets::mint( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 300000000000000 + )); + + // This is needed, since the asset is created as non-sufficient + assert_ok!(StatemintBalances::transfer_allow_death( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send with new prefix + assert_ok!(StatemintChainPalletXcm::reserve_transfer_assets( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + xcm::latest::prelude::GeneralIndex(0), + ), + 123 + ) + .into() + ), + 0, + )); + }); + + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b() { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location = parachain::AssetType::Xcm(para_a_local_asset); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::LocalAssetReserve(asset_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b_and_send_it_back_together_with_some_glmr() { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location_local_asset = parachain::AssetType::Xcm(para_a_local_asset); + let source_id_local_asset: parachain::AssetId = source_location_local_asset.clone().into(); + + let asset_metadata_local_asset = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location_balances = parachain::AssetType::Xcm(para_a_balances); + let source_id_balances: parachain::AssetId = source_location_balances.clone().into(); + + let asset_metadata_balances = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_local_asset.clone(), + asset_metadata_local_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_local_asset, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_balances.clone(), + asset_metadata_balances, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_balances, + 0u128, + 1 + )); + }); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::LocalAssetReserve(asset_id), 100), + (parachain::CurrencyId::SelfReserve, 1000000) + ], + 0, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + let mut alith_balance_asset_before = 0; + let mut alith_balance_native_token_before = 0; + + ParaA::execute_with(|| { + alith_balance_asset_before = LocalAssets::balance(asset_id, &PARAALICE.into()); + alith_balance_native_token_before = ParaBalances::free_balance(&PARAALICE.into()); + }); + + let new_dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!( + Assets::balance(source_id_local_asset, &PARAALICE.into()), + 100 + ); + assert_eq!( + Assets::balance(source_id_balances, &PARAALICE.into()), + 1000000 + ); + + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::ForeignAsset(source_id_balances), 4), + ( + parachain::CurrencyId::ForeignAsset(source_id_local_asset), + 50 + ) + ], + 0, + Box::new(VersionedMultiLocation::V3(new_dest)), + WeightLimit::Limited(4.into()) + )); + }); + + ParaA::execute_with(|| { + let alith_balance_asset_after = LocalAssets::balance(asset_id, &PARAALICE.into()); + let alith_balance_native_token_after = ParaBalances::free_balance(&PARAALICE.into()); + assert_eq!(alith_balance_asset_after, alith_balance_asset_before + 50); + assert_eq!( + alith_balance_native_token_before, + alith_balance_native_token_after + ); + }); +} + +#[test] +fn send_statemint_asset_from_para_a_to_statemint_with_relay_fee() { + MockNet::reset(); + + // Relay asset + let relay_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_relay_id: parachain::AssetId = relay_location.clone().into(); + + let relay_asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Statemint asset + let statemint_asset = MultiLocation::new( + 1, + X3(Parachain(4u32), PalletInstance(5u8), GeneralIndex(10u128)), + ); + let statemint_location_asset = parachain::AssetType::Xcm(statemint_asset); + let source_statemint_asset_id: parachain::AssetId = statemint_location_asset.clone().into(); + + let asset_metadata_statemint_asset = parachain::AssetMetadata { + name: b"USDC".to_vec(), + symbol: b"USDC".to_vec(), + decimals: 12, + }; + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemint_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + relay_location.clone(), + relay_asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + relay_location, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + statemint_location_asset.clone(), + asset_metadata_statemint_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + statemint_location_asset, + 0u128, + 1 + )); + }); + + let parachain_beneficiary_from_relay: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send relay chain asset to Alice in Parachain A + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_relay) + .clone() + .into() + ), + Box::new((Here, 200).into()), + 0, + )); + }); + + Statemint::execute_with(|| { + // Set new prefix + statemint_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + + assert_ok!(StatemintAssets::create( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 1 + )); + + assert_ok!(StatemintAssets::mint( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 300000000000000 + )); + + // Send some native statemint tokens to sovereign for fees. + // We can't pay fees with USDC as the asset is minted as non-sufficient. + assert_ok!(StatemintBalances::transfer_allow_death( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Send statemint USDC asset to Alice in Parachain A + let parachain_beneficiary_from_statemint: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send with new prefix + assert_ok!(StatemintChainPalletXcm::reserve_transfer_assets( + statemint_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_statemint) + .clone() + .into() + ), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + GeneralIndex(10), + ), + 125 + ) + .into() + ), + 0, + )); + }); + + let statemint_beneficiary = MultiLocation { + parents: 1, + interior: X2( + Parachain(4), + AccountId32 { + network: None, + id: RELAYBOB.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // Alice has received 125 USDC + assert_eq!( + Assets::balance(source_statemint_asset_id, &PARAALICE.into()), + 125 + ); + + // Alice has received 200 Relay assets + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 200); + }); + + Statemint::execute_with(|| { + // Check that BOB's balance is empty before the transfer + assert_eq!(StatemintAssets::account_balances(RELAYBOB), vec![]); + }); + + // Transfer USDC from Parachain A to Statemint using Relay asset as fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + ( + parachain::CurrencyId::ForeignAsset(source_statemint_asset_id), + 100 + ), + (parachain::CurrencyId::ForeignAsset(source_relay_id), 100) + ], + 1, + Box::new(VersionedMultiLocation::V3(statemint_beneficiary)), + WeightLimit::Limited(Weight::from_parts(80_000_000u64, 100_000u64)) + )); + }); + + ParaA::execute_with(|| { + // Alice has 100 USDC less + assert_eq!( + Assets::balance(source_statemint_asset_id, &PARAALICE.into()), + 25 + ); + + // Alice has 100 relay asset less + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 100); + }); + + Statemint::execute_with(|| { + println!("STATEMINT EVENTS: {:?}", parachain::para_events()); + // Check that BOB received 100 USDC on statemint + assert_eq!(StatemintAssets::account_balances(RELAYBOB), vec![(10, 100)]); + }); +} + +#[test] +fn transact_through_signed_multilocation() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4000.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000004000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // 100 transferred + assert_eq!(RelayBalances::free_balance(¶_a_account()), 100); + + // 4000005186 refunded + assert_eq!(RelayBalances::free_balance(&derived), 4000005186); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + assert!(ParaBalances::free_balance(&derived) == 0); + + assert!(ParaBalances::free_balance(¶_a_account_20()) == 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: Some(overall_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + }); + + ParaB::execute_with(|| { + // Check the derived account was refunded + assert_eq!(ParaBalances::free_balance(&derived), 8993); + + // Check the transfer was executed + assert_eq!(ParaBalances::free_balance(¶_a_account_20()), 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact { + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer went through + assert!( + ParaBalances::free_balance(&PARAALICE.into()) + == parachain_b_alice_balances_before + 100 + ); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_no_proxy_fails() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer wasn't executed + assert!(ParaBalances::free_balance(&PARAALICE.into()) == parachain_b_alice_balances_before); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_proxy_succeeds() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let transfer_recipient = evm_account(); + let mut transfer_recipient_balance_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + transfer_recipient_balance_before = ParaBalances::free_balance(&transfer_recipient.into()); + + // Add proxy ALICE -> derived + let _ = parachain::Proxy::add_proxy_delegate( + &PARAALICE.into(), + derived, + parachain::ProxyType::Any, + 0, + ); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V2(xcm_primitives::EthereumXcmTransactionV2 { + gas_limit: U256::from(21000), + action: pallet_ethereum::TransactionAction::Call(transfer_recipient.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer was executed + assert!( + ParaBalances::free_balance(&transfer_recipient.into()) + == transfer_recipient_balance_before + 100 + ); + }); +} + +#[test] +fn hrmp_init_accept_through_root() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_b_account(), + 1000u128 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp init channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::InitOpen(HrmpInitParams { + para_id: 2u32.into(), + proposed_max_capacity: 1, + proposed_max_message_size: 1 + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelRequested { + sender: 1u32.into(), + recipient: 2u32.into(), + proposed_max_capacity: 1u32, + proposed_max_message_size: 1u32, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); + ParaB::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp accept channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Accept { + para_id: 1u32.into() + }, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelAccepted { + sender: 1u32.into(), + recipient: 2u32.into(), + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +#[test] +fn hrmp_close_works() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(Hrmp::force_open_hrmp_channel( + relay_chain::RuntimeOrigin::root(), + 1u32.into(), + 2u32.into(), + 1u32, + 1u32 + )); + assert_ok!(Hrmp::force_process_hrmp_open( + relay_chain::RuntimeOrigin::root(), + 1u32 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp close + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Close(HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into() + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::ChannelClosed { + by_parachain: 1u32.into(), + channel_id: HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into(), + }, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +use parity_scale_codec::{Decode, Encode}; +use sp_io::hashing::blake2_256; + +// Helper to derive accountIds +pub fn derivative_account_id(who: sp_runtime::AccountId32, index: u16) -> sp_runtime::AccountId32 { + let entropy = (b"modlpy/utilisuba", who, index).using_encoded(blake2_256); + sp_runtime::AccountId32::decode(&mut &entropy[..]).expect("valid account id") +} diff --git a/tracing/2700/runtime/moonriver/Cargo.toml b/tracing/2700/runtime/moonriver/Cargo.toml new file mode 100644 index 00000000..8cda4463 --- /dev/null +++ b/tracing/2700/runtime/moonriver/Cargo.toml @@ -0,0 +1,359 @@ +[package] +name = "moonriver-runtime" +authors = { workspace = true } +build = "build.rs" +description = "Moonriver Runtime" +edition = "2021" +homepage = "https://moonbeam.network" +license = "GPL-3.0-only" +version = "0.8.4" + +[dependencies] +hex-literal = { workspace = true, optional = true } +log = { workspace = true } +num_enum = { workspace = true } +rlp = { workspace = true, optional = true } +serde = { workspace = true, features = [ "derive" ] } +sha3 = { workspace = true, optional = true } +smallvec = { workspace = true } +strum = { workspace = true } +strum_macros = { workspace = true } + +# Moonbeam +account = { workspace = true } +moonbeam-core-primitives = { workspace = true } +moonbeam-relay-encoder = { workspace = true } +moonbeam-runtime-common = { workspace = true } +precompile-utils = { workspace = true } +session-keys-primitives = { workspace = true } +xcm-primitives = { workspace = true } + +# Moonbeam pallets +moonbeam-xcm-benchmarks = { workspace = true } +pallet-asset-manager = { workspace = true } +pallet-author-mapping = { workspace = true } +pallet-crowdloan-rewards = { workspace = true } +pallet-erc20-xcm-bridge = { workspace = true } +pallet-evm-chain-id = { workspace = true } +pallet-ethereum-xcm = { workspace = true } +pallet-maintenance-mode = { workspace = true, features = [ "xcm-support" ] } +pallet-migrations = { workspace = true } +pallet-moonbeam-orbiters = { workspace = true } +pallet-parachain-staking = { workspace = true } +pallet-proxy-genesis-companion = { workspace = true } +pallet-randomness = { workspace = true } +pallet-xcm-transactor = { workspace = true } + +# Moonbeam precompiles +pallet-evm-precompile-author-mapping = { workspace = true } +pallet-evm-precompile-balances-erc20 = { workspace = true } +pallet-evm-precompile-batch = { workspace = true } +pallet-evm-precompile-call-permit = { workspace = true } +pallet-evm-precompile-collective = { workspace = true } +pallet-evm-precompile-conviction-voting = { workspace = true } +pallet-evm-precompile-crowdloan-rewards = { workspace = true } +pallet-evm-precompile-democracy = { workspace = true } +pallet-evm-precompile-gmp = { workspace = true } +pallet-evm-precompile-identity = { workspace = true } +pallet-evm-precompile-parachain-staking = { workspace = true } +pallet-evm-precompile-preimage = { workspace = true } +pallet-evm-precompile-proxy = { workspace = true } +pallet-evm-precompile-randomness = { workspace = true } +pallet-evm-precompile-referenda = { workspace = true } +pallet-evm-precompile-registry = { workspace = true } +pallet-evm-precompile-relay-encoder = { workspace = true } +pallet-evm-precompile-xcm-transactor = { workspace = true } +pallet-evm-precompile-xcm-utils = { workspace = true } +pallet-evm-precompile-xtokens = { workspace = true } +pallet-evm-precompileset-assets-erc20 = { workspace = true } + +# Moonbeam tracing +evm-tracing-events = { workspace = true, optional = true } +moonbeam-evm-tracer = { workspace = true, optional = true } +moonbeam-rpc-primitives-debug = { workspace = true } +moonbeam-rpc-primitives-txpool = { workspace = true } + +# Substrate +frame-executive = { workspace = true } +frame-support = { workspace = true } +frame-system = { workspace = true } +frame-system-rpc-runtime-api = { workspace = true } +pallet-assets = { workspace = true } +pallet-balances = { workspace = true, features = [ "insecure_zero_ed" ] } +pallet-collective = { workspace = true } +pallet-conviction-voting = { workspace = true } +pallet-democracy = { workspace = true } +pallet-identity = { workspace = true } +pallet-multisig = { workspace = true } +pallet-preimage = { workspace = true } +pallet-proxy = { workspace = true } +pallet-referenda = { workspace = true } +pallet-root-testing = { workspace = true } +pallet-scheduler = { workspace = true } +pallet-society = { workspace = true } +pallet-timestamp = { workspace = true } +pallet-transaction-payment = { workspace = true } +pallet-transaction-payment-rpc-runtime-api = { workspace = true } +pallet-treasury = { workspace = true } +pallet-utility = { workspace = true } +pallet-whitelist = { workspace = true } +parity-scale-codec = { workspace = true, features = [ + "derive", + "max-encoded-len", + "chain-error", +] } +scale-info = { workspace = true, features = [ "derive" ] } +sp-api = { workspace = true } +sp-block-builder = { workspace = true } +sp-core = { workspace = true } +sp-debug-derive = { workspace = true } +sp-inherents = { workspace = true } +sp-io = { workspace = true, features = [ "improved_panic_error_reporting" ] } +sp-offchain = { workspace = true } +sp-runtime = { workspace = true } +sp-session = { workspace = true } +sp-std = { workspace = true } +sp-transaction-pool = { workspace = true } +sp-version = { workspace = true } +sp-weights = { workspace = true } + +# Frontier +fp-evm = { workspace = true } +fp-rpc = { workspace = true } +fp-self-contained = { workspace = true, features = [ "serde" ] } +pallet-base-fee = { workspace = true } +pallet-ethereum = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm = { workspace = true, features = [ "forbid-evm-reentrancy" ] } +pallet-evm-precompile-blake2 = { workspace = true } +pallet-evm-precompile-bn128 = { workspace = true } +pallet-evm-precompile-dispatch = { workspace = true } +pallet-evm-precompile-modexp = { workspace = true } +pallet-evm-precompile-sha3fips = { workspace = true } +pallet-evm-precompile-simple = { workspace = true } + +# Polkadot / XCM +orml-traits = { workspace = true } +orml-xcm-support = { workspace = true } +orml-xtokens = { workspace = true } +pallet-xcm = { workspace = true } +pallet-xcm-benchmarks = { workspace = true, optional = true } +polkadot-core-primitives = { workspace = true } +polkadot-parachain = { workspace = true } +polkadot-runtime-common = { workspace = true } +xcm = { workspace = true } +xcm-builder = { workspace = true } +xcm-executor = { workspace = true } + +# Cumulus +cumulus-pallet-dmp-queue = { workspace = true } +cumulus-pallet-parachain-system = { workspace = true } +cumulus-pallet-xcm = { workspace = true } +cumulus-pallet-xcmp-queue = { workspace = true } +cumulus-primitives-core = { workspace = true } +cumulus-primitives-timestamp = { workspace = true } +cumulus-primitives-utility = { workspace = true } +parachain-info = { workspace = true } + +# Moonkit +async-backing-primitives = { workspace = true } +moonkit-xcm-primitives = { workspace = true } +nimbus-primitives = { workspace = true } +pallet-author-inherent = { workspace = true } +pallet-author-slot-filter = { workspace = true } + +# Benchmarking +frame-benchmarking = { workspace = true, optional = true } +frame-system-benchmarking = { workspace = true, optional = true } +frame-try-runtime = { workspace = true, optional = true } + +[build-dependencies] +substrate-wasm-builder = { workspace = true } + +[features] +default = [ "std" , "evm-tracing"] +std = [ + "account/std", + "async-backing-primitives/std", + "cumulus-pallet-dmp-queue/std", + "cumulus-pallet-parachain-system/std", + "cumulus-pallet-xcm/std", + "cumulus-pallet-xcmp-queue/std", + "cumulus-primitives-core/std", + "cumulus-primitives-timestamp/std", + "evm-tracing-events/std", + "fp-evm/std", + "fp-rpc/std", + "fp-self-contained/std", + "frame-benchmarking/std", + "frame-executive/std", + "frame-support/std", + "frame-system-rpc-runtime-api/std", + "frame-system/std", + "moonbeam-core-primitives/std", + "moonbeam-evm-tracer/std", + "moonbeam-relay-encoder/std", + "moonbeam-rpc-primitives-debug/std", + "moonbeam-rpc-primitives-txpool/std", + "moonbeam-runtime-common/std", + "moonbeam-xcm-benchmarks/std", + "moonkit-xcm-primitives/std", + "nimbus-primitives/std", + "orml-xtokens/std", + "pallet-asset-manager/std", + "pallet-assets/std", + "pallet-author-inherent/std", + "pallet-author-mapping/std", + "pallet-author-slot-filter/std", + "pallet-balances/std", + "pallet-base-fee/std", + "pallet-collective/std", + "pallet-conviction-voting/std", + "pallet-crowdloan-rewards/std", + "pallet-democracy/std", + "pallet-erc20-xcm-bridge/std", + "pallet-evm-chain-id/std", + "pallet-ethereum-xcm/std", + "pallet-ethereum/std", + "pallet-evm-precompile-author-mapping/std", + "pallet-evm-precompile-balances-erc20/std", + "pallet-evm-precompile-batch/std", + "pallet-evm-precompile-call-permit/std", + "pallet-evm-precompile-collective/std", + "pallet-evm-precompile-conviction-voting/std", + "pallet-evm-precompile-democracy/std", + "pallet-evm-precompile-parachain-staking/std", + "pallet-evm-precompile-preimage/std", + "pallet-evm-precompile-randomness/std", + "pallet-evm-precompile-referenda/std", + "pallet-evm-precompile-xcm-transactor/std", + "pallet-evm-precompile-xcm-utils/std", + "pallet-evm-precompile-xtokens/std", + "pallet-evm/std", + "pallet-identity/std", + "pallet-maintenance-mode/std", + "pallet-migrations/std", + "pallet-moonbeam-orbiters/std", + "pallet-multisig/std", + "pallet-parachain-staking/std", + "pallet-preimage/std", + "pallet-proxy-genesis-companion/std", + "pallet-proxy/std", + "pallet-randomness/std", + "pallet-referenda/std", + "pallet-root-testing/std", + "pallet-scheduler/std", + "pallet-society/std", + "pallet-timestamp/std", + "pallet-transaction-payment-rpc-runtime-api/std", + "pallet-transaction-payment/std", + "pallet-treasury/std", + "pallet-utility/std", + "pallet-whitelist/std", + "pallet-xcm-transactor/std", + "pallet-xcm/std", + "parachain-info/std", + "parity-scale-codec/std", + "precompile-utils/std", + "scale-info/std", + "session-keys-primitives/std", + "sp-api/std", + "sp-block-builder/std", + "sp-core/std", + "sp-inherents/std", + "sp-io/std", + "sp-offchain/std", + "sp-runtime/std", + "sp-session/std", + "sp-std/std", + "sp-transaction-pool/std", + "sp-version/std", + "strum/std", + "xcm-builder/std", + "xcm-executor/std", + "xcm-primitives/std", + "xcm/std", +] + +# Must be enabled for tracing runtimes only +evm-tracing = [ "evm-tracing-events", "moonbeam-evm-tracer", "rlp", "sha3" ] + +# Allow to print logs details (no wasm:stripped) +force-debug = [ "sp-debug-derive/force-debug" ] + +# Will be enabled by the `wasm-builder` when building the runtime for WASM. +runtime-wasm = [] + +# A feature that should be enabled when the runtime should be build for on-chain +# deployment. This will disable stuff that shouldn't be part of the on-chain wasm +# to make it smaller like logging for example. +on-chain-release-build = [ "sp-api/disable-logging" ] + +runtime-benchmarks = [ + "cumulus-pallet-parachain-system/runtime-benchmarks", + "frame-benchmarking", + "frame-benchmarking/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "frame-system-benchmarking/runtime-benchmarks", + "frame-system/runtime-benchmarks", + "hex-literal", + "moonbeam-relay-encoder/runtime-benchmarks", + "moonbeam-runtime-common/runtime-benchmarks", + "moonbeam-xcm-benchmarks/runtime-benchmarks", + "pallet-asset-manager/runtime-benchmarks", + "pallet-assets/runtime-benchmarks", + "pallet-author-inherent/runtime-benchmarks", + "pallet-author-mapping/runtime-benchmarks", + "pallet-author-slot-filter/runtime-benchmarks", + "pallet-balances/runtime-benchmarks", + "pallet-collective/runtime-benchmarks", + "pallet-conviction-voting/runtime-benchmarks", + "pallet-crowdloan-rewards/runtime-benchmarks", + "pallet-ethereum-xcm/runtime-benchmarks", + "pallet-ethereum/runtime-benchmarks", + "pallet-evm/runtime-benchmarks", + "pallet-identity/runtime-benchmarks", + "pallet-migrations/runtime-benchmarks", + "pallet-moonbeam-orbiters/runtime-benchmarks", + "pallet-multisig/runtime-benchmarks", + "pallet-parachain-staking/runtime-benchmarks", + "pallet-preimage/runtime-benchmarks", + "pallet-proxy/runtime-benchmarks", + "pallet-randomness/runtime-benchmarks", + "pallet-referenda/runtime-benchmarks", + "pallet-scheduler/runtime-benchmarks", + "pallet-society/runtime-benchmarks", + "pallet-timestamp/runtime-benchmarks", + "pallet-treasury/runtime-benchmarks", + "pallet-utility/runtime-benchmarks", + "pallet-whitelist/runtime-benchmarks", + "pallet-xcm-benchmarks", + "pallet-xcm-transactor/runtime-benchmarks", + "pallet-xcm/runtime-benchmarks", + "session-keys-primitives/runtime-benchmarks", + "sp-runtime/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", +] +try-runtime = [ + "fp-self-contained/try-runtime", + "frame-executive/try-runtime", + "frame-system/try-runtime", + "frame-try-runtime", + "moonbeam-runtime-common/try-runtime", + "pallet-asset-manager/try-runtime", + "pallet-author-mapping/try-runtime", + "pallet-author-slot-filter/try-runtime", + "pallet-balances/try-runtime", + "pallet-collective/try-runtime", + "pallet-conviction-voting/try-runtime", + "pallet-democracy/try-runtime", + "pallet-maintenance-mode/try-runtime", + "pallet-migrations/try-runtime", + "pallet-parachain-staking/try-runtime", + "pallet-preimage/try-runtime", + "pallet-referenda/try-runtime", + "pallet-root-testing/try-runtime", + "pallet-scheduler/try-runtime", + "pallet-society/try-runtime", + "pallet-timestamp/try-runtime", + "pallet-whitelist/try-runtime", +] diff --git a/tracing/2700/runtime/moonriver/build.rs b/tracing/2700/runtime/moonriver/build.rs new file mode 100644 index 00000000..3934b9c5 --- /dev/null +++ b/tracing/2700/runtime/moonriver/build.rs @@ -0,0 +1,25 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use substrate_wasm_builder::WasmBuilder; + +fn main() { + WasmBuilder::new() + .with_current_project() + .export_heap_base() + .import_memory() + .build() +} diff --git a/tracing/2700/runtime/moonriver/src/asset_config.rs b/tracing/2700/runtime/moonriver/src/asset_config.rs new file mode 100644 index 00000000..f475e9ec --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/asset_config.rs @@ -0,0 +1,343 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Asset configuration for Moonbase. +//! + +use super::{ + currency, governance, xcm_config, AccountId, AssetId, AssetManager, Assets, Balance, Balances, + CouncilInstance, LocalAssets, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::traits::Hash as THash; + +use frame_support::{ + dispatch::GetDispatchInfo, + parameter_types, + traits::{AsEnsureOriginWithArg, ConstU128, ConstU32, EitherOfDiverse}, + weights::Weight, +}; +use frame_system::{EnsureNever, EnsureRoot}; +use sp_core::{H160, H256}; + +use parity_scale_codec::{Compact, Decode, Encode}; +use scale_info::TypeInfo; + +use sp_std::{ + convert::{From, Into}, + prelude::*, +}; + +// Number of items that can be destroyed with our configured max extrinsic proof size. +// x = (a - b) / c where: +// a: maxExtrinsic proof size +// b: base proof size for destroy_accounts in pallet_assets weights +// c: proof size for each item +// 656.87 = (3_407_872 - 8232) / 5180 +const REMOVE_ITEMS_LIMIT: u32 = 656; + +// Not to disrupt the previous asset instance, we assign () to Foreign +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// For foreign assets, these parameters dont matter much +// as this will only be called by root with the forced arguments +// No deposit is substracted with those methods +// For local assets, they do matter. We use similar parameters +// to those in statemine (except for approval) +parameter_types! { + pub const AssetDeposit: Balance = 100 * currency::MOVR * currency::SUPPLY_FACTOR; + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = currency::deposit(1,68); + pub const MetadataDepositPerByte: Balance = currency::deposit(0, 1); +} + +/// We allow root and Chain council to execute privileged asset operations. +pub type AssetsForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +// Foreign assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = AssetsForceOrigin; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// Local assets +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureNever; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = ConstU128<{ currency::deposit(1, 18) }>; + type WeightInfo = moonbeam_weights::pallet_assets::WeightInfo; + type RemoveItemsLimit = ConstU32<{ REMOVE_ITEMS_LIMIT }>; + type AssetIdParameter = Compact; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::{pallet_prelude::DispatchResult, transactional}; + +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + #[transactional] + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetRegistrarMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset.into(), + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + + // Lastly, the metadata + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset.into(), + metadata.name, + metadata.symbol, + metadata.decimals, + metadata.is_frozen, + ) + } + + #[transactional] + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + // We create with root, because we need to decide whether we want to create the asset + // as sufficient. Take into account this does not hold any reserved amount + // in pallet-assets + LocalAssets::force_create( + RuntimeOrigin::root(), + asset.into(), + owner, + is_sufficient, + min_balance, + )?; + + // No metadata needs to be set, as this can be set through regular calls + + // TODO: should we put the revert code? + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + ); + Ok(()) + } + + #[transactional] + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + Assets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + #[transactional] + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + LocalAssets::start_destroy(RuntimeOrigin::root(), asset.into())?; + + // We remove the EVM revert code + // This does not panick even if there is no code in the address + let precompile_address: H160 = + Runtime::asset_id_to_account(LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, asset).into(); + pallet_evm::AccountCodes::::remove(precompile_address); + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + // For us both of them (Foreign and Local) have the same annotated weight for a given + // witness + // We need to take the dispatch info from the destroy call, which is already annotated in + // the assets pallet + // Additionally, we need to add a DB write for removing the precompile revert code in the + // EVM + + // This is the dispatch info of destroy + let call_weight = RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { + id: asset.into(), + }, + ) + .get_dispatch_info() + .weight; + + // This is the db write + call_weight.saturating_add(::DbWeight::get().writes(1)) + } +} + +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a local asset counter to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetRegistrarMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, + pub is_frozen: bool, +} + +pub type ForeignAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +pub type LocalAssetModifierOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetRegistrarMetadata; + type ForeignAssetType = xcm_config::AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = ForeignAssetModifierOrigin; + type LocalAssetModifierOrigin = LocalAssetModifierOrigin; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = moonbeam_weights::pallet_asset_manager::WeightInfo; +} + +// Instruct how to go from an H160 to an AssetID +// We just take the lowest 128 bits +impl AccountIdAssetIdConversion for Runtime { + /// The way to convert an account to assetId is by ensuring that the prefix is 0XFFFFFFFF + /// and by taking the lowest 128 bits as the assetId + fn account_to_asset_id(account: AccountId) -> Option<(Vec, AssetId)> { + let h160_account: H160 = account.into(); + let mut data = [0u8; 16]; + let (prefix_part, id_part) = h160_account.as_fixed_bytes().split_at(4); + if prefix_part == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX + || prefix_part == LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX + { + data.copy_from_slice(id_part); + let asset_id: AssetId = u128::from_be_bytes(data).into(); + Some((prefix_part.to_vec(), asset_id)) + } else { + None + } + } + + // The opposite conversion + fn asset_id_to_account(prefix: &[u8], asset_id: AssetId) -> AccountId { + let mut data = [0u8; 20]; + data[0..4].copy_from_slice(prefix); + data[4..20].copy_from_slice(&asset_id.to_be_bytes()); + AccountId::from(data) + } +} diff --git a/tracing/2700/runtime/moonriver/src/governance/councils.rs b/tracing/2700/runtime/moonriver/src/governance/councils.rs new file mode 100644 index 00000000..694962a1 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/councils.rs @@ -0,0 +1,97 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Councils for Gov1 and Gov2 + +use super::*; + +pub type CouncilInstance = pallet_collective::Instance1; +pub type TechCommitteeInstance = pallet_collective::Instance2; +pub type TreasuryCouncilInstance = pallet_collective::Instance3; +pub type OpenTechCommitteeInstance = pallet_collective::Instance4; + +parameter_types! { + // TODO: Check value of this parameter + pub MaxProposalWeight: Weight = Perbill::from_percent(50) * RuntimeBlockWeights::get().max_block; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the council at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of council members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for treasury council members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 3 * DAYS }>; + /// The maximum number of proposals that can be open in the treasury council at once. + type MaxProposals = ConstU32<20>; + /// The maximum number of treasury council members. + type MaxMembers = ConstU32<9>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} + +impl pallet_collective::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Proposal = RuntimeCall; + /// The maximum amount of time (in blocks) for technical committee members to vote on motions. + /// Motions may end in fewer blocks if enough votes are cast to determine the result. + type MotionDuration = ConstU32<{ 14 * DAYS }>; + /// The maximum number of proposals that can be open in the technical committee at once. + type MaxProposals = ConstU32<100>; + /// The maximum number of technical committee members. + type MaxMembers = ConstU32<100>; + type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type WeightInfo = moonbeam_weights::pallet_collective::WeightInfo; + type SetMembersOrigin = referenda::GeneralAdminOrRoot; + type MaxProposalWeight = MaxProposalWeight; +} diff --git a/tracing/2700/runtime/moonriver/src/governance/democracy.rs b/tracing/2700/runtime/moonriver/src/governance/democracy.rs new file mode 100644 index 00000000..fcaefbbe --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/democracy.rs @@ -0,0 +1,77 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Democracy config for Gov1 + +use super::councils::*; +use crate::*; + +// The purpose of this offset is to ensure that a democratic proposal will not apply in the same +// block as a round change. +const ENACTMENT_OFFSET: u32 = 300; + +impl pallet_democracy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type EnactmentPeriod = ConstU32<{ 1 * DAYS + ENACTMENT_OFFSET }>; + type LaunchPeriod = ConstU32<{ 1 * DAYS }>; + type VotingPeriod = ConstU32<{ 5 * DAYS }>; + + type VoteLockingPeriod = ConstU32<{ 1 * DAYS }>; + type FastTrackVotingPeriod = ConstU32<{ 3 * HOURS }>; + type MinimumDeposit = ConstU128<{ 4 * currency::MOVR * currency::SUPPLY_FACTOR }>; + /// To decide what their next motion is. + type ExternalOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight majority-carries vote. + type ExternalMajorityOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To have the next scheduled referendum be a straight default-carries (NTB) vote. + type ExternalDefaultOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To allow a shorter voting/enactment period for external proposals. + type FastTrackOrigin = + pallet_collective::EnsureProportionAtLeast; + /// To instant fast track. + type InstantOrigin = + pallet_collective::EnsureProportionAtLeast; + // To cancel a proposal which has been passed. + type CancellationOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + // To cancel a proposal before it has been passed. + type CancelProposalOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, + >; + type BlacklistOrigin = EnsureRoot; + // Any single technical committee member may veto a coming council proposal, however they can + // only do it once and it lasts only for the cooloff period. + type VetoOrigin = pallet_collective::EnsureMember; + type CooloffPeriod = ConstU32<{ 7 * DAYS }>; + type Slash = (); + type InstantAllowed = ConstBool; + type Scheduler = Scheduler; + type MaxVotes = ConstU32<100>; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_democracy::WeightInfo; + type MaxProposals = ConstU32<100>; + type Preimages = Preimage; + type MaxDeposits = ConstU32<100>; + type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; +} diff --git a/tracing/2700/runtime/moonriver/src/governance/mod.rs b/tracing/2700/runtime/moonriver/src/governance/mod.rs new file mode 100644 index 00000000..0367cdf0 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/mod.rs @@ -0,0 +1,30 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Governance configurations + +pub mod councils; +mod democracy; +pub mod referenda; + +use super::*; + +mod origins; +pub use origins::{ + custom_origins, GeneralAdmin, ReferendumCanceller, ReferendumKiller, WhitelistedCaller, +}; +mod tracks; +pub use tracks::TracksInfo; diff --git a/tracing/2700/runtime/moonriver/src/governance/origins.rs b/tracing/2700/runtime/moonriver/src/governance/origins.rs new file mode 100644 index 00000000..a8a5a537 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/origins.rs @@ -0,0 +1,82 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +//! Custom origins for governance interventions. +#![cfg_attr(not(feature = "std"), no_std)] + +pub use custom_origins::*; + +#[frame_support::pallet] +pub mod custom_origins { + use frame_support::pallet_prelude::*; + use strum_macros::EnumString; + + #[pallet::config] + pub trait Config: frame_system::Config {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[derive( + PartialEq, Eq, Clone, MaxEncodedLen, Encode, Decode, TypeInfo, RuntimeDebug, EnumString, + )] + #[strum(serialize_all = "snake_case")] + #[pallet::origin] + pub enum Origin { + /// Origin able to dispatch a whitelisted call. + WhitelistedCaller, + /// General admin + GeneralAdmin, + /// Origin able to cancel referenda. + ReferendumCanceller, + /// Origin able to kill referenda. + ReferendumKiller, + } + + macro_rules! decl_unit_ensures { + ( $name:ident: $success_type:ty = $success:expr ) => { + pub struct $name; + impl> + From> + EnsureOrigin for $name + { + type Success = $success_type; + fn try_origin(o: O) -> Result { + o.into().and_then(|o| match o { + Origin::$name => Ok($success), + r => Err(O::from(r)), + }) + } + #[cfg(feature = "runtime-benchmarks")] + fn try_successful_origin() -> Result { + Ok(O::from(Origin::$name)) + } + } + }; + ( $name:ident ) => { decl_unit_ensures! { $name : () = () } }; + ( $name:ident: $success_type:ty = $success:expr, $( $rest:tt )* ) => { + decl_unit_ensures! { $name: $success_type = $success } + decl_unit_ensures! { $( $rest )* } + }; + ( $name:ident, $( $rest:tt )* ) => { + decl_unit_ensures! { $name } + decl_unit_ensures! { $( $rest )* } + }; + () => {} + } + decl_unit_ensures!( + ReferendumCanceller, + ReferendumKiller, + WhitelistedCaller, + GeneralAdmin + ); +} diff --git a/tracing/2700/runtime/moonriver/src/governance/referenda.rs b/tracing/2700/runtime/moonriver/src/governance/referenda.rs new file mode 100644 index 00000000..48a326f7 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/referenda.rs @@ -0,0 +1,98 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! # Gov2 config +//! Includes runtime configs for these substrate pallets: +//! 1. pallet-conviction-voting +//! 2. pallet-whitelist +//! 3. pallet-referenda + +use super::*; +use crate::currency::*; +use frame_support::traits::{EitherOf, MapSuccess}; +use frame_system::EnsureRootWithSuccess; +use sp_runtime::traits::Replace; + +parameter_types! { + pub const VoteLockingPeriod: BlockNumber = 1 * DAYS; +} + +impl pallet_conviction_voting::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_conviction_voting::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type Polls = Referenda; + type MaxTurnout = frame_support::traits::TotalIssuanceOf; + // Maximum number of concurrent votes an account may have + type MaxVotes = ConstU32<20>; + // Minimum period of vote locking + type VoteLockingPeriod = VoteLockingPeriod; +} + +parameter_types! { + pub const AlarmInterval: BlockNumber = 1; + pub const SubmissionDeposit: Balance = 10 * MOVR * SUPPLY_FACTOR; + pub const UndecidingTimeout: BlockNumber = 21 * DAYS; +} + +// Origin for general admin or root +pub type GeneralAdminOrRoot = EitherOf, origins::GeneralAdmin>; + +impl custom_origins::Config for Runtime {} + +// The purpose of this pallet is to queue calls to be dispatched as by root later => the Dispatch +// origin corresponds to the Gov2 Whitelist track. +impl pallet_whitelist::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_whitelist::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WhitelistOrigin = EitherOf< + EnsureRootWithSuccess>, + MapSuccess< + pallet_collective::EnsureProportionAtLeast< + Self::AccountId, + OpenTechCommitteeInstance, + 5, + 9, + >, + Replace>, + >, + >; + type DispatchWhitelistedOrigin = EitherOf, WhitelistedCaller>; + type Preimages = Preimage; +} + +pallet_referenda::impl_tracksinfo_get!(TracksInfo, Balance, BlockNumber); + +impl pallet_referenda::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_referenda::WeightInfo; + type RuntimeCall = RuntimeCall; + type RuntimeEvent = RuntimeEvent; + type Scheduler = Scheduler; + type Currency = Balances; + type SubmitOrigin = frame_system::EnsureSigned; + type CancelOrigin = EitherOf, ReferendumCanceller>; + type KillOrigin = EitherOf, ReferendumKiller>; + type Slash = Treasury; + type Votes = pallet_conviction_voting::VotesOf; + type Tally = pallet_conviction_voting::TallyOf; + type SubmissionDeposit = SubmissionDeposit; + type MaxQueued = ConstU32<100>; + type UndecidingTimeout = UndecidingTimeout; + type AlarmInterval = AlarmInterval; + type Tracks = TracksInfo; + type Preimages = Preimage; +} diff --git a/tracing/2700/runtime/moonriver/src/governance/tracks.rs b/tracing/2700/runtime/moonriver/src/governance/tracks.rs new file mode 100644 index 00000000..b4e23ba0 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/governance/tracks.rs @@ -0,0 +1,179 @@ +// Copyright 2022 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Track configurations for governance. + +use super::*; +use crate::currency::{KILOMOVR, MOVR, SUPPLY_FACTOR}; +use sp_std::str::FromStr; + +const fn percent(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 100) +} +const fn permill(x: i32) -> sp_runtime::FixedI64 { + sp_runtime::FixedI64::from_rational(x as u128, 1000) +} + +use pallet_referenda::Curve; +const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 5] = [ + ( + 0, + pallet_referenda::TrackInfo { + // Name of this track. + name: "root", + // A limit for the number of referenda on this track that can be being decided at once. + // For Root origin this should generally be just one. + max_deciding: 5, + // Amount that must be placed on deposit before a decision can be made. + decision_deposit: 100 * KILOMOVR * SUPPLY_FACTOR, + // Amount of time this must be submitted for before a decision can be made. + prepare_period: 1 * DAYS, + // Amount of time that a decision may take to be approved prior to cancellation. + decision_period: 14 * DAYS, + // Amount of time that the approval criteria must hold before it can be approved. + confirm_period: 1 * DAYS, + // Minimum amount of time that an approved proposal must be in the dispatch queue. + min_enactment_period: 1 * DAYS, + // Minimum aye votes as percentage of overall conviction-weighted votes needed for + // approval as a function of time into decision period. + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + // Minimum pre-conviction aye-votes ("support") as percentage of overall population that + // is needed for approval as a function of time into decision period. + min_support: Curve::make_linear(14, 14, permill(5), percent(25)), + }, + ), + ( + 1, + pallet_referenda::TrackInfo { + name: "whitelisted_caller", + max_deciding: 100, + decision_deposit: 10 * KILOMOVR * SUPPLY_FACTOR, + prepare_period: 10 * MINUTES, + decision_period: 14 * DAYS, + confirm_period: 10 * MINUTES, + min_enactment_period: 30 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14 * 24, percent(1), percent(0), percent(2)), + }, + ), + ( + 2, + pallet_referenda::TrackInfo { + name: "general_admin", + max_deciding: 10, + decision_deposit: 500 * MOVR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 1 * DAYS, + min_enactment_period: 1 * DAYS, + min_approval: Curve::make_reciprocal(4, 14, percent(80), percent(50), percent(100)), + min_support: Curve::make_reciprocal(7, 14, percent(10), percent(0), percent(50)), + }, + ), + ( + 3, + pallet_referenda::TrackInfo { + name: "referendum_canceller", + max_deciding: 20, + decision_deposit: 10 * KILOMOVR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(10)), + }, + ), + ( + 4, + pallet_referenda::TrackInfo { + name: "referendum_killer", + max_deciding: 100, + decision_deposit: 20 * KILOMOVR * SUPPLY_FACTOR, + prepare_period: 1 * HOURS, + decision_period: 14 * DAYS, + confirm_period: 3 * HOURS, + min_enactment_period: 10 * MINUTES, + min_approval: Curve::make_reciprocal(1, 14, percent(96), percent(50), percent(100)), + min_support: Curve::make_reciprocal(1, 14, percent(1), percent(0), percent(10)), + }, + ), +]; + +pub struct TracksInfo; +impl pallet_referenda::TracksInfo for TracksInfo { + type Id = u16; + type RuntimeOrigin = ::PalletsOrigin; + fn tracks() -> &'static [(Self::Id, pallet_referenda::TrackInfo)] { + &TRACKS_DATA[..] + } + fn track_for(id: &Self::RuntimeOrigin) -> Result { + if let Ok(system_origin) = frame_system::RawOrigin::try_from(id.clone()) { + match system_origin { + frame_system::RawOrigin::Root => { + if let Some((track_id, _)) = Self::tracks() + .into_iter() + .find(|(_, track)| track.name == "root") + { + Ok(*track_id) + } else { + Err(()) + } + } + _ => Err(()), + } + } else if let Ok(custom_origin) = custom_origins::Origin::try_from(id.clone()) { + if let Some((track_id, _)) = Self::tracks().into_iter().find(|(_, track)| { + if let Ok(track_custom_origin) = custom_origins::Origin::from_str(track.name) { + track_custom_origin == custom_origin + } else { + false + } + }) { + Ok(*track_id) + } else { + Err(()) + } + } else { + Err(()) + } + } +} + +#[test] +/// To ensure voters are always locked into their vote +fn vote_locking_always_longer_than_enactment_period() { + for (_, track) in TRACKS_DATA { + assert!( + ::VoteLockingPeriod::get() + >= track.min_enactment_period, + "Track {} has enactment period {} < vote locking period {}", + track.name, + track.min_enactment_period, + ::VoteLockingPeriod::get(), + ); + } +} + +#[test] +fn all_tracks_have_origins() { + for (_, track) in TRACKS_DATA { + // check name.into() is successful either converts into "root" or custom origin + let track_is_root = track.name == "root"; + let track_has_custom_origin = custom_origins::Origin::from_str(track.name).is_ok(); + assert!(track_is_root || track_has_custom_origin); + } +} diff --git a/tracing/2700/runtime/moonriver/src/lib.rs b/tracing/2700/runtime/moonriver/src/lib.rs new file mode 100644 index 00000000..ee0a90e0 --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/lib.rs @@ -0,0 +1,1853 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! The Moonriver Runtime. +//! +//! Primary features of this runtime include: +//! * Ethereum compatibility +//! * Moonriver tokenomics + +#![cfg_attr(not(feature = "std"), no_std)] +// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. +#![recursion_limit = "256"] + +// Make the WASM binary available. +#[cfg(feature = "std")] +include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); + +use account::AccountId20; +use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainDataProvider}; +use cumulus_primitives_core::relay_chain; +use fp_rpc::TransactionStatus; + +// Re-export required by get! macro. +#[cfg(feature = "std")] +pub use fp_evm::GenesisAccount; +pub use frame_support::traits::Get; +use frame_support::{ + construct_runtime, + dispatch::{DispatchClass, GetDispatchInfo, PostDispatchInfo}, + ensure, + pallet_prelude::DispatchResult, + parameter_types, + traits::{ + fungible::HoldConsideration, + tokens::{PayFromAccount, UnityAssetBalanceConversion}, + ConstBool, ConstU128, ConstU16, ConstU32, ConstU64, ConstU8, Contains, + Currency as CurrencyT, EitherOfDiverse, EqualPrivilegeOnly, Imbalance, InstanceFilter, + LinearStoragePrice, OffchainWorker, OnFinalize, OnIdle, OnInitialize, OnRuntimeUpgrade, + OnUnbalanced, + }, + weights::{ + constants::{RocksDbWeight, WEIGHT_REF_TIME_PER_SECOND}, + ConstantMultiplier, Weight, WeightToFeeCoefficient, WeightToFeeCoefficients, + WeightToFeePolynomial, + }, + PalletId, +}; +use frame_system::{EnsureRoot, EnsureSigned}; +pub use moonbeam_core_primitives::{ + AccountId, AccountIndex, Address, AssetId, Balance, BlockNumber, DigestItem, Hash, Header, + Index, Signature, +}; +use moonbeam_rpc_primitives_txpool::TxPoolResponse; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_balances::NegativeImbalance; +use pallet_ethereum::Call::transact; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; +use pallet_evm::{ + Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, + FeeCalculator, GasWeightMapping, IdentityAddressMapping, + OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, +}; +pub use pallet_parachain_staking::{weights::WeightInfo, InflationInfo, Range}; +use pallet_transaction_payment::{CurrencyAdapter, Multiplier, TargetedFeeAdjustment}; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use scale_info::TypeInfo; +use sp_api::impl_runtime_apis; +use sp_core::{OpaqueMetadata, H160, H256, U256}; +#[cfg(feature = "try-runtime")] +use sp_runtime::TryRuntimeError; +use sp_runtime::{ + create_runtime_str, generic, impl_opaque_keys, + serde::{Deserialize, Serialize}, + traits::{ + BlakeTwo256, Block as BlockT, DispatchInfoOf, Dispatchable, IdentityLookup, + PostDispatchInfoOf, UniqueSaturatedInto, Zero, + }, + transaction_validity::{ + InvalidTransaction, TransactionSource, TransactionValidity, TransactionValidityError, + }, + ApplyExtrinsicResult, DispatchErrorWithPostInfo, FixedPointNumber, Perbill, Permill, + Perquintill, SaturatedConversion, +}; +use sp_std::{convert::TryFrom, prelude::*}; + +use cumulus_primitives_core::{relay_chain::BlockNumber as RelayBlockNumber, DmpMessageHandler}; +use smallvec::smallvec; +#[cfg(feature = "std")] +use sp_version::NativeVersion; +use sp_version::RuntimeVersion; + +use nimbus_primitives::CanAuthor; + +mod precompiles; +pub use precompiles::{ + MoonriverPrecompiles, PrecompileName, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +#[cfg(any(feature = "std", test))] +pub use sp_runtime::BuildStorage; + +pub type Precompiles = MoonriverPrecompiles; + +pub mod asset_config; +pub mod governance; +pub mod xcm_config; +use governance::councils::*; + +pub use governance::councils::*; + +/// MOVR, the native token, uses 18 decimals of precision. +pub mod currency { + use super::Balance; + + // Provide a common factor between runtimes based on a supply of 10_000_000 tokens. + pub const SUPPLY_FACTOR: Balance = 1; + + pub const WEI: Balance = 1; + pub const KILOWEI: Balance = 1_000; + pub const MEGAWEI: Balance = 1_000_000; + pub const GIGAWEI: Balance = 1_000_000_000; + pub const MICROMOVR: Balance = 1_000_000_000_000; + pub const MILLIMOVR: Balance = 1_000_000_000_000_000; + pub const MOVR: Balance = 1_000_000_000_000_000_000; + pub const KILOMOVR: Balance = 1_000_000_000_000_000_000_000; + + pub const TRANSACTION_BYTE_FEE: Balance = 1 * GIGAWEI * SUPPLY_FACTOR; + pub const STORAGE_BYTE_FEE: Balance = 100 * MICROMOVR * SUPPLY_FACTOR; + pub const WEIGHT_FEE: Balance = 50 * KILOWEI * SUPPLY_FACTOR; + + pub const fn deposit(items: u32, bytes: u32) -> Balance { + items as Balance * 1 * MOVR * SUPPLY_FACTOR + (bytes as Balance) * STORAGE_BYTE_FEE + } +} + +/// Maximum weight per block +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) + .saturating_div(2) + .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); + +pub const MILLISECS_PER_BLOCK: u64 = 12000; +pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); +pub const HOURS: BlockNumber = MINUTES * 60; +pub const DAYS: BlockNumber = HOURS * 24; +pub const WEEKS: BlockNumber = DAYS * 7; +/// Opaque types. These are used by the CLI to instantiate machinery that don't need to know +/// the specifics of the runtime. They can then be made to be agnostic over specific formats +/// of data like extrinsics, allowing for them to continue syncing the network through upgrades +/// to even the core datastructures. +pub mod opaque { + use super::*; + + pub use sp_runtime::OpaqueExtrinsic as UncheckedExtrinsic; + pub type Block = generic::Block; + + impl_opaque_keys! { + pub struct SessionKeys { + pub nimbus: AuthorInherent, + pub vrf: session_keys_primitives::VrfSessionKey, + } + } +} + +/// This runtime version. +/// The spec_version is composed of 2x2 digits. The first 2 digits represent major changes +/// that can't be skipped, such as data migration upgrades. The last 2 digits represent minor +/// changes which can be skipped. +#[sp_version::runtime_version] +pub const VERSION: RuntimeVersion = RuntimeVersion { + spec_name: create_runtime_str!("moonriver"), + impl_name: create_runtime_str!("moonriver"), + authoring_version: 3, + spec_version: 2700, + impl_version: 0, + apis: RUNTIME_API_VERSIONS, + transaction_version: 2, + state_version: 0, +}; + +/// The version information used to identify this runtime when compiled natively. +#[cfg(feature = "std")] +pub fn native_version() -> NativeVersion { + NativeVersion { + runtime_version: VERSION, + can_author_with: Default::default(), + } +} + +const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); +pub const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturating_div(4); +// Here we assume Ethereum's base fee of 21000 gas and convert to weight, but we +// subtract roughly the cost of a balance transfer from it (about 1/3 the cost) +// and some cost to account for per-byte-fee. +// TODO: we should use benchmarking's overhead feature to measure this +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); + +pub struct RuntimeBlockWeights; +impl Get for RuntimeBlockWeights { + fn get() -> frame_system::limits::BlockWeights { + frame_system::limits::BlockWeights::builder() + .for_class(DispatchClass::Normal, |weights| { + weights.base_extrinsic = EXTRINSIC_BASE_WEIGHT; + weights.max_total = NORMAL_WEIGHT.into(); + }) + .for_class(DispatchClass::Operational, |weights| { + weights.max_total = MAXIMUM_BLOCK_WEIGHT.into(); + weights.reserved = (MAXIMUM_BLOCK_WEIGHT - NORMAL_WEIGHT).into(); + }) + .avg_block_initialization(Perbill::from_percent(10)) + .build() + .expect("Provided BlockWeight definitions are valid, qed") + } +} + +parameter_types! { + pub const Version: RuntimeVersion = VERSION; + /// We allow for 5 MB blocks. + pub BlockLength: frame_system::limits::BlockLength = frame_system::limits::BlockLength + ::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); +} + +impl frame_system::Config for Runtime { + /// The identifier used to distinguish between accounts. + type AccountId = AccountId; + /// The aggregated dispatch type that is available for extrinsics. + type RuntimeCall = RuntimeCall; + /// The lookup mechanism to get account ID from whatever is passed in dispatchers. + type Lookup = IdentityLookup; + /// The index type for storing how many extrinsics an account has signed. + type Nonce = Index; + /// The index type for blocks. + type Block = Block; + /// The hashing algorithm used. + type Hashing = BlakeTwo256; + /// The output of the `Hashing` function. + type Hash = H256; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + /// The ubiquitous origin type. + type RuntimeOrigin = RuntimeOrigin; + /// Maximum number of block number to block hash mappings to keep (oldest pruned first). + type BlockHashCount = ConstU32<256>; + /// Maximum weight of each block. With a default weight system of 1byte == 1weight, 4mb is ok. + type BlockWeights = RuntimeBlockWeights; + /// Maximum size of all encoded transactions (in bytes) that are allowed in one block. + type BlockLength = BlockLength; + /// Runtime version. + type Version = Version; + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = RocksDbWeight; + type BaseCallFilter = MaintenanceMode; + type SystemWeightInfo = (); + /// This is used as an identifier of the chain. 42 is the generic substrate prefix. + type SS58Prefix = ConstU16<1285>; + type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type PalletsOrigin = OriginCaller; + type WeightInfo = moonbeam_weights::pallet_utility::WeightInfo; +} + +impl pallet_timestamp::Config for Runtime { + /// A timestamp: milliseconds since the unix epoch. + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = ConstU64<6000>; + type WeightInfo = moonbeam_weights::pallet_timestamp::WeightInfo; +} + +impl pallet_balances::Config for Runtime { + type MaxReserves = ConstU32<50>; + type ReserveIdentifier = [u8; 4]; + type MaxLocks = ConstU32<50>; + /// The type for recording an account's balance. + type Balance = Balance; + /// The ubiquitous event type. + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ConstU128<0>; + type AccountStore = System; + type FreezeIdentifier = (); + type MaxFreezes = ConstU32<0>; + type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; + type MaxHolds = ConstU32<1>; + type WeightInfo = moonbeam_weights::pallet_balances::WeightInfo; +} + +pub struct DealWithFees(sp_std::marker::PhantomData); +impl OnUnbalanced> for DealWithFees +where + R: pallet_balances::Config + pallet_treasury::Config, + pallet_treasury::Pallet: OnUnbalanced>, +{ + // this seems to be called for substrate-based transactions + fn on_unbalanceds(mut fees_then_tips: impl Iterator>) { + if let Some(fees) = fees_then_tips.next() { + // for fees, 80% are burned, 20% to the treasury + let (_, to_treasury) = fees.ration(80, 20); + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + + // handle tip if there is one + if let Some(tip) = fees_then_tips.next() { + // for now we use the same burn/treasury strategy used for regular fees + let (_, to_treasury) = tip.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } + } + } + + // this is called from pallet_evm for Ethereum-based transactions + // (technically, it calls on_unbalanced, which calls this when non-zero) + fn on_nonzero_unbalanced(amount: NegativeImbalance) { + // Balances pallet automatically burns dropped Negative Imbalances by decreasing + // total_supply accordingly + let (_, to_treasury) = amount.ration(80, 20); + as OnUnbalanced<_>>::on_unbalanced(to_treasury); + } +} + +pub struct LengthToFee; +impl WeightToFeePolynomial for LengthToFee { + type Balance = Balance; + + fn polynomial() -> WeightToFeeCoefficients { + smallvec![ + WeightToFeeCoefficient { + degree: 1, + coeff_frac: Perbill::zero(), + coeff_integer: currency::TRANSACTION_BYTE_FEE, + negative: false, + }, + WeightToFeeCoefficient { + degree: 3, + coeff_frac: Perbill::zero(), + coeff_integer: 1 * currency::SUPPLY_FACTOR, + negative: false, + }, + ] + } +} + +impl pallet_transaction_payment::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnChargeTransaction = CurrencyAdapter>; + type OperationalFeeMultiplier = ConstU8<5>; + type WeightToFee = ConstantMultiplier>; + type LengthToFee = LengthToFee; + type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; +} + +impl pallet_evm_chain_id::Config for Runtime {} + +/// Current approximation of the gas/s consumption considering +/// EVM execution over compiled WASM (on 4.4Ghz CPU). +/// Given the 500ms Weight, from which 75% only are used for transactions, +/// the total EVM execution gas limit is: GAS_PER_SECOND * 0.500 * 0.75 ~= 15_000_000. +pub const GAS_PER_SECOND: u64 = 40_000_000; + +/// Approximate ratio of the amount of Weight per Gas. +/// u64 works for approximations because Weight is a very small unit compared to gas. +pub const WEIGHT_PER_GAS: u64 = WEIGHT_REF_TIME_PER_SECOND / GAS_PER_SECOND; + +parameter_types! { + pub BlockGasLimit: U256 + = U256::from(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT.ref_time() / WEIGHT_PER_GAS); + /// The portion of the `NORMAL_DISPATCH_RATIO` that we adjust the fees with. Blocks filled less + /// than this will decrease the weight and more will increase. + pub const TargetBlockFullness: Perquintill = Perquintill::from_percent(25); + /// The adjustment variable of the runtime. Higher values will cause `TargetBlockFullness` to + /// change the fees more rapidly. This low value causes changes to occur slowly over time. + pub AdjustmentVariable: Multiplier = Multiplier::saturating_from_rational(4, 1_000); + /// Minimum amount of the multiplier. This value cannot be too low. A test case should ensure + /// that combined with `AdjustmentVariable`, we can recover from the minimum. + /// See `multiplier_can_grow_from_zero` in integration_tests.rs. + /// This value is currently only used by pallet-transaction-payment as an assertion that the + /// next multiplier is always > min value. + pub MinimumMultiplier: Multiplier = Multiplier::from(1u128); + /// Maximum multiplier. We pick a value that is expensive but not impossibly so; it should act + /// as a safety net. + pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); + pub PrecompilesValue: MoonriverPrecompiles = MoonriverPrecompiles::<_>::new(); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); + /// The amount of gas per pov. A ratio of 4 if we convert ref_time to gas and we compare + /// it with the pov_size for a block. E.g. + /// ceil( + /// (max_extrinsic.ref_time() / max_extrinsic.proof_size()) / WEIGHT_PER_GAS + /// ) + pub const GasLimitPovSizeRatio: u64 = 4; + /// The amount of gas per storage (in bytes): BLOCK_GAS_LIMIT / BLOCK_STORAGE_LIMIT + /// The current definition of BLOCK_STORAGE_LIMIT is 40 KB, resulting in a value of 366. + pub GasLimitStorageGrowthRatio: u64 = 366; +} + +pub struct TransactionPaymentAsGasPrice; +impl FeeCalculator for TransactionPaymentAsGasPrice { + fn min_gas_price() -> (U256, Weight) { + // note: transaction-payment differs from EIP-1559 in that its tip and length fees are not + // scaled by the multiplier, which means its multiplier will be overstated when + // applied to an ethereum transaction + // note: transaction-payment uses both a congestion modifier (next_fee_multiplier, which is + // updated once per block in on_finalize) and a 'WeightToFee' implementation. Our + // runtime implements this as a 'ConstantModifier', so we can get away with a simple + // multiplication here. + // It is imperative that `saturating_mul_int` be performed as late as possible in the + // expression since it involves fixed point multiplication with a division by a fixed + // divisor. This leads to truncation and subsequent precision loss if performed too early. + // This can lead to min_gas_price being same across blocks even if the multiplier changes. + // There's still some precision loss when the final `gas_price` (used_gas * min_gas_price) + // is computed in frontier, but that's currently unavoidable. + let min_gas_price = TransactionPayment::next_fee_multiplier() + .saturating_mul_int(currency::WEIGHT_FEE.saturating_mul(WEIGHT_PER_GAS as u128)); + ( + min_gas_price.into(), + ::DbWeight::get().reads(1), + ) + } +} + +/// Parameterized slow adjusting fee updated based on +/// https://w3f-research.readthedocs.io/en/latest/polkadot/overview/2-token-economics.html#-2.-slow-adjusting-mechanism // editorconfig-checker-disable-line +/// +/// The adjustment algorithm boils down to: +/// +/// diff = (previous_block_weight - target) / maximum_block_weight +/// next_multiplier = prev_multiplier * (1 + (v * diff) + ((v * diff)^2 / 2)) +/// assert(next_multiplier > min) +/// where: v is AdjustmentVariable +/// target is TargetBlockFullness +/// min is MinimumMultiplier +pub type SlowAdjustingFeeUpdate = TargetedFeeAdjustment< + R, + TargetBlockFullness, + AdjustmentVariable, + MinimumMultiplier, + MaximumMultiplier, +>; + +use frame_support::traits::FindAuthor; +//TODO It feels like this shold be able to work for any T: H160, but I tried for +// embarassingly long and couldn't figure that out. + +/// The author inherent provides a AccountId20, but pallet evm needs an H160. +/// This simple adapter makes the conversion. +pub struct FindAuthorAdapter(sp_std::marker::PhantomData); + +impl FindAuthor for FindAuthorAdapter +where + Inner: FindAuthor, +{ + fn find_author<'a, I>(digests: I) -> Option + where + I: 'a + IntoIterator, + { + Inner::find_author(digests).map(Into::into) + } +} + +moonbeam_runtime_common::impl_on_charge_evm_transaction!(); + +impl pallet_evm::Config for Runtime { + type FeeCalculator = TransactionPaymentAsGasPrice; + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; + type CallOrigin = EnsureAddressRoot; + type WithdrawOrigin = EnsureAddressNever; + type AddressMapping = IdentityAddressMapping; + type Currency = Balances; + type RuntimeEvent = RuntimeEvent; + type Runner = pallet_evm::runner::stack::Runner; + type PrecompilesType = MoonriverPrecompiles; + type PrecompilesValue = PrecompilesValue; + type ChainId = EthereumChainId; + type OnChargeTransaction = OnChargeEVMTransaction>; + type BlockGasLimit = BlockGasLimit; + type FindAuthor = FindAuthorAdapter; + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = Timestamp; + type WeightInfo = moonbeam_weights::pallet_evm::WeightInfo; +} + +parameter_types! { + pub MaximumSchedulerWeight: Weight = NORMAL_DISPATCH_RATIO * RuntimeBlockWeights::get().max_block; +} + +impl pallet_scheduler::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeOrigin = RuntimeOrigin; + type PalletsOrigin = OriginCaller; + type RuntimeCall = RuntimeCall; + type MaximumWeight = MaximumSchedulerWeight; + type ScheduleOrigin = EnsureRoot; + type MaxScheduledPerBlock = ConstU32<50>; + type WeightInfo = moonbeam_weights::pallet_scheduler::WeightInfo; + type OriginPrivilegeCmp = EqualPrivilegeOnly; + type Preimages = Preimage; +} + +parameter_types! { + pub const PreimageBaseDeposit: Balance = 5 * currency::MOVR * currency::SUPPLY_FACTOR ; + pub const PreimageByteDeposit: Balance = currency::STORAGE_BYTE_FEE; + pub const PreimageHoldReason: RuntimeHoldReason = + RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); +} + +impl pallet_preimage::Config for Runtime { + type WeightInfo = moonbeam_weights::pallet_preimage::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type ManagerOrigin = EnsureRoot; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const TreasuryId: PalletId = PalletId(*b"py/trsry"); + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +type TreasuryApproveOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionAtLeast, +>; + +type TreasuryRejectOrigin = EitherOfDiverse< + EnsureRoot, + pallet_collective::EnsureProportionMoreThan, +>; + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + // At least three-fifths majority of the council is required (or root) to approve a proposal + type ApproveOrigin = TreasuryApproveOrigin; + // More than half of the council is required (or root) to reject a proposal + type RejectOrigin = TreasuryRejectOrigin; + type RuntimeEvent = RuntimeEvent; + // If spending proposal rejected, transfer proposer bond to treasury + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ConstU128<{ 1 * currency::MOVR * currency::SUPPLY_FACTOR }>; + type SpendPeriod = ConstU32<{ 6 * DAYS }>; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = ConstU32<100>; + type WeightInfo = moonbeam_weights::pallet_treasury::WeightInfo; + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = BenchmarkHelper; +} + +type IdentityForceOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; +type IdentityRegistrarOrigin = EitherOfDiverse< + EnsureRoot, + EitherOfDiverse< + pallet_collective::EnsureProportionMoreThan, + governance::custom_origins::GeneralAdmin, + >, +>; + +impl pallet_identity::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + // Add one item in storage and take 258 bytes + type BasicDeposit = ConstU128<{ currency::deposit(1, 258) }>; + // Not add any item to the storage but takes 66 bytes + type FieldDeposit = ConstU128<{ currency::deposit(0, 66) }>; + // Add one item in storage and take 53 bytes + type SubAccountDeposit = ConstU128<{ currency::deposit(1, 53) }>; + type MaxSubAccounts = ConstU32<100>; + type MaxAdditionalFields = ConstU32<100>; + type IdentityInformation = pallet_identity::simple::IdentityInfo; + + type MaxRegistrars = ConstU32<20>; + type Slashed = Treasury; + type ForceOrigin = IdentityForceOrigin; + type RegistrarOrigin = IdentityRegistrarOrigin; + type WeightInfo = moonbeam_weights::pallet_identity::WeightInfo; +} + +pub struct TransactionConverter; + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } +} + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> opaque::UncheckedExtrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will immediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +parameter_types! { + pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); + pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); +} + +impl cumulus_pallet_parachain_system::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OnSystemEvent = (); + type SelfParaId = ParachainInfo; + type DmpMessageHandler = MaintenanceMode; + type ReservedDmpWeight = ReservedDmpWeight; + type OutboundXcmpMessageSource = XcmpQueue; + type XcmpMessageHandler = XcmpQueue; + type ReservedXcmpWeight = ReservedXcmpWeight; + type CheckAssociatedRelayNumber = cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; + type ConsensusHook = cumulus_pallet_parachain_system::ExpectParentIncluded; +} + +impl parachain_info::Config for Runtime {} + +pub struct OnNewRound; +impl pallet_parachain_staking::OnNewRound for OnNewRound { + fn on_new_round(round_index: pallet_parachain_staking::RoundIndex) -> Weight { + MoonbeamOrbiters::on_new_round(round_index) + } +} +pub struct PayoutCollatorOrOrbiterReward; +impl pallet_parachain_staking::PayoutCollatorReward for PayoutCollatorOrOrbiterReward { + fn payout_collator_reward( + for_round: pallet_parachain_staking::RoundIndex, + collator_id: AccountId, + amount: Balance, + ) -> Weight { + let extra_weight = if MoonbeamOrbiters::is_orbiter(for_round, collator_id) { + MoonbeamOrbiters::distribute_rewards(for_round, collator_id, amount) + } else { + ParachainStaking::mint_collator_reward(for_round, collator_id, amount) + }; + + ::DbWeight::get() + .reads(1) + .saturating_add(extra_weight) + } +} + +pub struct OnInactiveCollator; +impl pallet_parachain_staking::OnInactiveCollator for OnInactiveCollator { + fn on_inactive_collator( + collator_id: AccountId, + round: pallet_parachain_staking::RoundIndex, + ) -> Result> { + let extra_weight = if !MoonbeamOrbiters::is_orbiter(round, collator_id.clone()) { + ParachainStaking::go_offline_inner(collator_id)?; + ::WeightInfo::go_offline( + pallet_parachain_staking::MAX_CANDIDATES, + ) + } else { + Weight::zero() + }; + + Ok(::DbWeight::get() + .reads(1) + .saturating_add(extra_weight)) + } +} + +type MonetaryGovernanceOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_parachain_staking::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type MonetaryGovernanceOrigin = MonetaryGovernanceOrigin; + /// Minimum round length is 2 minutes (10 * 12 second block times) + type MinBlocksPerRound = ConstU32<10>; + /// If a collator doesn't produce any block on this number of rounds, it is notified as inactive + type MaxOfflineRounds = ConstU32<2>; + /// Rounds before the collator leaving the candidates request can be executed + type LeaveCandidatesDelay = ConstU32<24>; + /// Rounds before the candidate bond increase/decrease can be executed + type CandidateBondLessDelay = ConstU32<24>; + /// Rounds before the delegator exit can be executed + type LeaveDelegatorsDelay = ConstU32<24>; + /// Rounds before the delegator revocation can be executed + type RevokeDelegationDelay = ConstU32<24>; + /// Rounds before the delegator bond increase/decrease can be executed + type DelegationBondLessDelay = ConstU32<24>; + /// Rounds before the reward is paid + type RewardPaymentDelay = ConstU32<2>; + /// Minimum collators selected per round, default at genesis and minimum forever after + type MinSelectedCandidates = ConstU32<8>; + /// Maximum top delegations per candidate + type MaxTopDelegationsPerCandidate = ConstU32<300>; + /// Maximum bottom delegations per candidate + type MaxBottomDelegationsPerCandidate = ConstU32<50>; + /// Maximum delegations per delegator + type MaxDelegationsPerDelegator = ConstU32<100>; + /// Minimum stake required to be reserved to be a candidate + type MinCandidateStk = ConstU128<{ 500 * currency::MOVR * currency::SUPPLY_FACTOR }>; + /// Minimum stake required to be reserved to be a delegator + type MinDelegation = ConstU128<{ 5 * currency::MOVR * currency::SUPPLY_FACTOR }>; + type BlockAuthor = AuthorInherent; + type OnCollatorPayout = (); + type PayoutCollatorReward = PayoutCollatorOrOrbiterReward; + type OnInactiveCollator = OnInactiveCollator; + type OnNewRound = OnNewRound; + type WeightInfo = moonbeam_weights::pallet_parachain_staking::WeightInfo; + type MaxCandidates = ConstU32<200>; +} + +impl pallet_author_inherent::Config for Runtime { + type SlotBeacon = RelaychainDataProvider; + type AccountLookup = MoonbeamOrbiters; + type CanAuthor = AuthorFilter; + type AuthorId = AccountId; + type WeightInfo = moonbeam_weights::pallet_author_inherent::WeightInfo; +} + +impl pallet_author_slot_filter::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RandomnessSource = Randomness; + type PotentialAuthors = ParachainStaking; + type WeightInfo = moonbeam_weights::pallet_author_slot_filter::WeightInfo; +} + +parameter_types! { + pub const InitializationPayment: Perbill = Perbill::from_percent(30); + pub const RelaySignaturesThreshold: Perbill = Perbill::from_percent(100); + pub const SignatureNetworkIdentifier: &'static [u8] = b"moonriver-"; + +} + +impl pallet_crowdloan_rewards::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Initialized = ConstBool; + type InitializationPayment = InitializationPayment; + type MaxInitContributors = ConstU32<500>; + type MinimumReward = ConstU128<0>; + type RewardCurrency = Balances; + type RelayChainAccountId = [u8; 32]; + type RewardAddressAssociateOrigin = EnsureSigned; + type RewardAddressChangeOrigin = EnsureSigned; + type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; + type SignatureNetworkIdentifier = SignatureNetworkIdentifier; + type VestingBlockNumber = relay_chain::BlockNumber; + type VestingBlockProvider = RelaychainDataProvider; + type WeightInfo = moonbeam_weights::pallet_crowdloan_rewards::WeightInfo; +} + +// This is a simple session key manager. It should probably either work with, or be replaced +// entirely by pallet sessions +impl pallet_author_mapping::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type DepositCurrency = Balances; + type DepositAmount = ConstU128<{ 100 * currency::MOVR * currency::SUPPLY_FACTOR }>; + type Keys = session_keys_primitives::VrfId; + type WeightInfo = moonbeam_weights::pallet_author_mapping::WeightInfo; +} + +/// The type used to represent the kinds of proxying allowed. +#[derive( + Copy, + Clone, + Eq, + PartialEq, + Ord, + PartialOrd, + Encode, + Decode, + Debug, + MaxEncodedLen, + TypeInfo, + Serialize, + Deserialize, +)] +pub enum ProxyType { + /// All calls can be proxied. This is the trivial/most permissive filter. + Any = 0, + /// Only extrinsics that do not transfer funds. + NonTransfer = 1, + /// Only extrinsics related to governance (democracy and collectives). + Governance = 2, + /// Only extrinsics related to staking. + Staking = 3, + /// Allow to veto an announced proxy call. + CancelProxy = 4, + /// Allow extrinsic related to Balances. + Balances = 5, + /// Allow extrinsic related to AuthorMapping. + AuthorMapping = 6, + /// Allow extrinsic related to IdentityJudgement. + IdentityJudgement = 7, +} + +impl Default for ProxyType { + fn default() -> Self { + Self::Any + } +} + +fn is_governance_precompile(precompile_name: &precompiles::PrecompileName) -> bool { + matches!( + precompile_name, + PrecompileName::DemocracyPrecompile + | PrecompileName::CouncilInstance + | PrecompileName::TechCommitteeInstance + | PrecompileName::TreasuryCouncilInstance + | PrecompileName::PreimagePrecompile + | PrecompileName::ReferendaPrecompile + | PrecompileName::ConvictionVotingPrecompile + | PrecompileName::OpenTechCommitteeInstance + ) +} + +// Be careful: Each time this filter is modified, the substrate filter must also be modified +// consistently. +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType { + fn is_evm_proxy_call_allowed( + &self, + call: &pallet_evm_precompile_proxy::EvmSubCall, + recipient_has_code: bool, + gas: u64, + ) -> precompile_utils::EvmResult { + Ok(match self { + ProxyType::Any => { + match PrecompileName::from_address(call.to.0) { + // Any precompile that can execute a subcall should be forbidden here, + // to ensure that unauthorized smart contract can't be called + // indirectly. + // To be safe, we only allow the precompiles we need. + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile, + ) => true, + Some(ref precompile) if is_governance_precompile(precompile) => true, + // All non-whitelisted precompiles are forbidden + Some(_) => false, + // Allow evm transfer to "simple" account (no code nor precompile) + // For the moment, no smart contract other than precompiles is allowed. + // In the future, we may create a dynamic whitelist to authorize some audited + // smart contracts through governance. + None => { + // If the address is not recognized, allow only evm transfert to "simple" + // accounts (no code nor precompile). + // Note: Checking the presence of the code is not enough because some + // precompiles have no code. + !recipient_has_code + && !precompile_utils::precompile_set::is_precompile_or_fail::( + call.to.0, gas, + )? + } + } + } + ProxyType::NonTransfer => { + call.value == U256::zero() + && match PrecompileName::from_address(call.to.0) { + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile, + ) => true, + Some(ref precompile) if is_governance_precompile(precompile) => true, + _ => false, + } + } + ProxyType::Governance => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(ref precompile) if is_governance_precompile(precompile) + ) + } + ProxyType::Staking => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some( + PrecompileName::AuthorMappingPrecompile + | PrecompileName::ParachainStakingPrecompile + ) + ) + } + // The proxy precompile does not contain method cancel_proxy + ProxyType::CancelProxy => false, + ProxyType::Balances => { + // Allow only "simple" accounts as recipient (no code nor precompile). + // Note: Checking the presence of the code is not enough because some precompiles + // have no code. + !recipient_has_code + && !precompile_utils::precompile_set::is_precompile_or_fail::( + call.to.0, gas, + )? + } + ProxyType::AuthorMapping => { + call.value == U256::zero() + && matches!( + PrecompileName::from_address(call.to.0), + Some(PrecompileName::AuthorMappingPrecompile) + ) + } + // There is no identity precompile + ProxyType::IdentityJudgement => false, + }) + } +} + +// Be careful: Each time this filter is modified, the EVM filter must also be modified consistently. +impl InstanceFilter for ProxyType { + fn filter(&self, c: &RuntimeCall) -> bool { + match self { + ProxyType::Any => true, + ProxyType::NonTransfer => { + matches!( + c, + RuntimeCall::System(..) + | RuntimeCall::ParachainSystem(..) + | RuntimeCall::Timestamp(..) + | RuntimeCall::ParachainStaking(..) + | RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Identity(..) + | RuntimeCall::Utility(..) + | RuntimeCall::Proxy(..) | RuntimeCall::AuthorMapping(..) + | RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::claim { .. } + ) + ) + } + ProxyType::Governance => matches!( + c, + RuntimeCall::Democracy(..) + | RuntimeCall::Referenda(..) + | RuntimeCall::Preimage(..) + | RuntimeCall::ConvictionVoting(..) + | RuntimeCall::CouncilCollective(..) + | RuntimeCall::TreasuryCouncilCollective(..) + | RuntimeCall::TechCommitteeCollective(..) + | RuntimeCall::OpenTechCommitteeCollective(..) + | RuntimeCall::Utility(..) + ), + ProxyType::Staking => matches!( + c, + RuntimeCall::ParachainStaking(..) + | RuntimeCall::Utility(..) + | RuntimeCall::AuthorMapping(..) + | RuntimeCall::MoonbeamOrbiters(..) + ), + ProxyType::CancelProxy => matches!( + c, + RuntimeCall::Proxy(pallet_proxy::Call::reject_announcement { .. }) + ), + ProxyType::Balances => { + matches!(c, RuntimeCall::Balances(..) | RuntimeCall::Utility(..)) + } + ProxyType::AuthorMapping => matches!(c, RuntimeCall::AuthorMapping(..)), + ProxyType::IdentityJudgement => matches!( + c, + RuntimeCall::Identity(pallet_identity::Call::provide_judgement { .. }) + | RuntimeCall::Utility(..) + ), + } + } + + fn is_superset(&self, o: &Self) -> bool { + match (self, o) { + (x, y) if x == y => true, + (ProxyType::Any, _) => true, + (_, ProxyType::Any) => false, + _ => false, + } + } +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + // One storage item; key size 32, value size 8 + type ProxyDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 21 bytes (20 bytes AccountId + 1 byte sizeof(ProxyType)). + type ProxyDepositFactor = ConstU128<{ currency::deposit(0, 21) }>; + type MaxProxies = ConstU32<32>; + type WeightInfo = moonbeam_weights::pallet_proxy::WeightInfo; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ConstU128<{ currency::deposit(1, 8) }>; + // Additional storage item size of 56 bytes: + // - 20 bytes AccountId + // - 32 bytes Hasher (Blake2256) + // - 4 bytes BlockNumber (u32) + type AnnouncementDepositFactor = ConstU128<{ currency::deposit(0, 56) }>; +} + +impl pallet_migrations::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type MigrationsList = ( + moonbeam_runtime_common::migrations::CommonMigrations< + Runtime, + CouncilCollective, + TechCommitteeCollective, + TreasuryCouncilCollective, + OpenTechCommitteeCollective, + >, + ); + type XcmExecutionManager = XcmExecutionManager; +} + +/// Maintenance mode Call filter +pub struct MaintenanceFilter; +impl Contains for MaintenanceFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(_) => false, + RuntimeCall::LocalAssets(_) => false, + RuntimeCall::Balances(_) => false, + RuntimeCall::CrowdloanRewards(_) => false, + RuntimeCall::Ethereum(_) => false, + RuntimeCall::EVM(_) => false, + RuntimeCall::Identity(_) => false, + RuntimeCall::XTokens(_) => false, + RuntimeCall::ParachainStaking(_) => false, + RuntimeCall::MoonbeamOrbiters(_) => false, + RuntimeCall::PolkadotXcm(_) => false, + RuntimeCall::Treasury(_) => false, + RuntimeCall::XcmTransactor(_) => false, + RuntimeCall::EthereumXcm(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + _ => true, + } + } +} + +/// Normal Call Filter +/// We dont allow to create nor mint assets, this for now is disabled +/// We only allow transfers. For now creation of assets will go through +/// asset-manager, while minting/burning only happens through xcm messages +/// This can change in the future +pub struct NormalFilter; +impl Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + RuntimeCall::Assets(method) => match method { + pallet_assets::Call::transfer { .. } => true, + pallet_assets::Call::transfer_keep_alive { .. } => true, + pallet_assets::Call::approve_transfer { .. } => true, + pallet_assets::Call::transfer_approved { .. } => true, + pallet_assets::Call::cancel_approval { .. } => true, + pallet_assets::Call::destroy_accounts { .. } => true, + pallet_assets::Call::destroy_approvals { .. } => true, + pallet_assets::Call::finish_destroy { .. } => true, + _ => false, + }, + // We want to disable create, as we dont want users to be choosing the + // assetId of their choice + // We also disable destroy, as we want to route destroy through the + // asset-manager, which guarantees the removal both at the EVM and + // substrate side of things + RuntimeCall::LocalAssets(method) => match method { + pallet_assets::Call::create { .. } => false, + pallet_assets::Call::start_destroy { .. } => false, + _ => true, + }, + // We just want to enable this in case of live chains, since the default version + // is populated at genesis + RuntimeCall::PolkadotXcm(method) => match method { + pallet_xcm::Call::force_default_xcm_version { .. } => true, + _ => false, + }, + // We filter anonymous proxy as they make "reserve" inconsistent + // See: https://github.com/paritytech/substrate/blob/37cca710eed3dadd4ed5364c7686608f5175cce1/frame/proxy/src/lib.rs#L270 // editorconfig-checker-disable-line + RuntimeCall::Proxy(method) => match method { + pallet_proxy::Call::create_pure { .. } => false, + pallet_proxy::Call::kill_pure { .. } => false, + pallet_proxy::Call::proxy { real, .. } => { + !pallet_evm::AccountCodes::::contains_key(H160::from(*real)) + } + _ => true, + }, + // Filtering the EVM prevents possible re-entrancy from the precompiles which could + // lead to unexpected scenarios. + // See https://github.com/PureStake/sr-moonbeam/issues/30 + // Note: It is also assumed that EVM calls are only allowed through `Origin::Root` so + // this can be seen as an additional security + RuntimeCall::EVM(_) => false, + RuntimeCall::Democracy(pallet_democracy::Call::propose { .. }) => false, + RuntimeCall::Treasury( + pallet_treasury::Call::spend { .. } + | pallet_treasury::Call::payout { .. } + | pallet_treasury::Call::check_status { .. } + | pallet_treasury::Call::void_spend { .. }, + ) => false, + _ => true, + } + } +} + +pub struct XcmExecutionManager; +impl moonkit_xcm_primitives::PauseXcmExecution for XcmExecutionManager { + fn suspend_xcm_execution() -> DispatchResult { + XcmpQueue::suspend_xcm_execution(RuntimeOrigin::root()) + } + fn resume_xcm_execution() -> DispatchResult { + XcmpQueue::resume_xcm_execution(RuntimeOrigin::root()) + } +} + +pub struct NormalDmpHandler; +impl DmpMessageHandler for NormalDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + (if Migrations::should_pause_xcm() { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } else { + DmpQueue::handle_dmp_messages(iter, limit) + }) + ::DbWeight::get().reads(1) + } +} + +pub struct MaintenanceDmpHandler; +impl DmpMessageHandler for MaintenanceDmpHandler { + // This implementation makes messages be queued + // Since the limit is 0, messages are queued for next iteration + fn handle_dmp_messages( + iter: impl Iterator)>, + _limit: Weight, + ) -> Weight { + DmpQueue::handle_dmp_messages(iter, Weight::zero()) + } +} + +/// The hooks we wantt to run in Maintenance Mode +pub struct MaintenanceHooks; + +impl OnInitialize for MaintenanceHooks { + fn on_initialize(n: BlockNumber) -> Weight { + AllPalletsWithSystem::on_initialize(n) + } +} + +// return 0 +// For some reason using empty tuple () isnt working +// There exist only two pallets that use onIdle and these are xcmp and dmp queues +// For some reason putting an empty tumple does not work (transaction never finishes) +// We use an empty onIdle, if on the future we want one of the pallets to execute it +// we need to provide it here +impl OnIdle for MaintenanceHooks { + fn on_idle(_n: BlockNumber, _max_weight: Weight) -> Weight { + Weight::zero() + } +} + +impl OnRuntimeUpgrade for MaintenanceHooks { + fn on_runtime_upgrade() -> Weight { + AllPalletsWithSystem::on_runtime_upgrade() + } + + #[cfg(feature = "try-runtime")] + fn try_on_runtime_upgrade(checks: bool) -> Result { + AllPalletsWithSystem::try_on_runtime_upgrade(checks) + } +} + +impl OnFinalize for MaintenanceHooks { + fn on_finalize(n: BlockNumber) { + AllPalletsWithSystem::on_finalize(n) + } +} + +impl OffchainWorker for MaintenanceHooks { + fn offchain_worker(n: BlockNumber) { + AllPalletsWithSystem::offchain_worker(n) + } +} + +impl pallet_maintenance_mode::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type NormalCallFilter = NormalFilter; + type MaintenanceCallFilter = MaintenanceFilter; + type MaintenanceOrigin = + pallet_collective::EnsureProportionAtLeast; + type XcmExecutionManager = XcmExecutionManager; + type NormalDmpHandler = NormalDmpHandler; + type MaintenanceDmpHandler = MaintenanceDmpHandler; + // We use AllPalletsWithSystem because we dont want to change the hooks in normal + // operation + type NormalExecutiveHooks = AllPalletsWithSystem; + type MaintenanceExecutiveHooks = MaintenanceHooks; +} + +impl pallet_proxy_genesis_companion::Config for Runtime { + type ProxyType = ProxyType; +} + +parameter_types! { + pub OrbiterReserveIdentifier: [u8; 4] = [b'o', b'r', b'b', b'i']; +} + +type AddCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; +type DelCollatorOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_moonbeam_orbiters::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AccountLookup = AuthorMapping; + type AddCollatorOrigin = AddCollatorOrigin; + type Currency = Balances; + type DelCollatorOrigin = DelCollatorOrigin; + /// Maximum number of orbiters per collator + type MaxPoolSize = ConstU32<8>; + /// Maximum number of round to keep on storage + type MaxRoundArchive = ConstU32<4>; + type OrbiterReserveIdentifier = OrbiterReserveIdentifier; + type RotatePeriod = ConstU32<3>; + /// Round index type. + type RoundIndex = pallet_parachain_staking::RoundIndex; + type WeightInfo = moonbeam_weights::pallet_moonbeam_orbiters::WeightInfo; +} + +/// Only callable after `set_validation_data` is called which forms this proof the same way +fn relay_chain_state_proof() -> RelayChainStateProof { + let relay_storage_root = ParachainSystem::validation_data() + .expect("set in `set_validation_data`") + .relay_parent_storage_root; + let relay_chain_state = + ParachainSystem::relay_state_proof().expect("set in `set_validation_data`"); + RelayChainStateProof::new(ParachainInfo::get(), relay_storage_root, relay_chain_state) + .expect("Invalid relay chain state proof, already constructed in `set_validation_data`") +} + +pub struct BabeDataGetter; +impl pallet_randomness::GetBabeData> for BabeDataGetter { + // Tolerate panic here because only ever called in inherent (so can be omitted) + fn get_epoch_index() -> u64 { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + const BENCHMARKING_NEW_EPOCH: u64 = 10u64; + return BENCHMARKING_NEW_EPOCH; + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::EPOCH_INDEX) + .ok() + .flatten() + .expect("expected to be able to read epoch index from relay chain state proof") + } + fn get_epoch_randomness() -> Option { + if cfg!(feature = "runtime-benchmarks") { + // storage reads as per actual reads + let _relay_storage_root = ParachainSystem::validation_data(); + let _relay_chain_state = ParachainSystem::relay_state_proof(); + let benchmarking_babe_output = Hash::default(); + return Some(benchmarking_babe_output); + } + relay_chain_state_proof() + .read_optional_entry(relay_chain::well_known_keys::ONE_EPOCH_AGO_RANDOMNESS) + .ok() + .flatten() + } +} + +impl pallet_randomness::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type AddressMapping = sp_runtime::traits::ConvertInto; + type Currency = Balances; + type BabeDataGetter = BabeDataGetter; + type VrfKeyLookup = AuthorMapping; + type Deposit = ConstU128<{ 1 * currency::MOVR * currency::SUPPLY_FACTOR }>; + type MaxRandomWords = ConstU8<100>; + type MinBlockDelay = ConstU32<2>; + type MaxBlockDelay = ConstU32<2_000>; + type BlockExpirationDelay = ConstU32<10_000>; + type EpochExpirationDelay = ConstU64<10_000>; + type WeightInfo = moonbeam_weights::pallet_randomness::WeightInfo; +} + +impl pallet_root_testing::Config for Runtime {} + +parameter_types! { + // One storage item; key size is 32 + 20; value is size 4+4+16+20 bytes = 44 bytes. + pub const DepositBase: Balance = currency::deposit(1, 96); + // Additional storage item size of 20 bytes. + pub const DepositFactor: Balance = currency::deposit(0, 20); + pub const MaxSignatories: u32 = 100; +} + +impl pallet_multisig::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type DepositBase = DepositBase; + type DepositFactor = DepositFactor; + type MaxSignatories = MaxSignatories; + type WeightInfo = moonbeam_weights::pallet_multisig::WeightInfo; +} + +construct_runtime! { + pub enum Runtime + { + // System support stuff. + System: frame_system::{Pallet, Call, Storage, Config, Event} = 0, + ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Storage, Inherent, Event} = 1, + // Previously 2: pallet_randomness_collective_flip + Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 3, + ParachainInfo: parachain_info::{Pallet, Storage, Config} = 4, + RootTesting: pallet_root_testing::{Pallet, Call, Storage} = 5, + + // Monetary stuff. + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 10, + TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Config, Event} = 11, + + // Consensus support. + ParachainStaking: pallet_parachain_staking::{Pallet, Call, Storage, Event, Config} = 20, + AuthorInherent: pallet_author_inherent::{Pallet, Call, Storage, Inherent} = 21, + AuthorFilter: pallet_author_slot_filter::{Pallet, Call, Storage, Event, Config} = 22, + AuthorMapping: pallet_author_mapping::{Pallet, Call, Config, Storage, Event} = 23, + MoonbeamOrbiters: pallet_moonbeam_orbiters::{Pallet, Call, Storage, Event} = 24, + + // Handy utilities. + Utility: pallet_utility::{Pallet, Call, Event} = 30, + Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 31, + MaintenanceMode: pallet_maintenance_mode::{Pallet, Call, Config, Storage, Event} = 32, + Identity: pallet_identity::{Pallet, Call, Storage, Event} = 33, + Migrations: pallet_migrations::{Pallet, Storage, Config, Event} = 34, + ProxyGenesisCompanion: pallet_proxy_genesis_companion::{Pallet, Config} = 35, + Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 36, + + // Sudo was previously index 40 + + // Ethereum compatibility + EthereumChainId: pallet_evm_chain_id::{Pallet, Storage, Config} = 50, + EVM: pallet_evm::{Pallet, Config, Call, Storage, Event} = 51, + Ethereum: pallet_ethereum::{Pallet, Call, Storage, Event, Origin, Config} = 52, + + // Governance stuff. + Scheduler: pallet_scheduler::{Pallet, Storage, Event, Call} = 60, + Democracy: pallet_democracy::{Pallet, Storage, Config, Event, Call} = 61, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 62, + ConvictionVoting: pallet_conviction_voting::{Pallet, Call, Storage, Event} = 63, + Referenda: pallet_referenda::{Pallet, Call, Storage, Event} = 64, + Origins: governance::custom_origins::{Origin} = 65, + Whitelist: pallet_whitelist::{Pallet, Call, Storage, Event} = 66, + + // Council stuff. + CouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 70, + TechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 71, + TreasuryCouncilCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 72, + OpenTechCommitteeCollective: + pallet_collective::::{Pallet, Call, Storage, Event, Origin, Config} = 73, + + // Treasury stuff. + Treasury: pallet_treasury::{Pallet, Storage, Config, Event, Call} = 80, + + // Crowdloan stuff. + CrowdloanRewards: pallet_crowdloan_rewards::{Pallet, Call, Config, Storage, Event} = 90, + + // XCM Stuff + XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Storage, Event} = 100, + CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin} = 101, + DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 102, + PolkadotXcm: pallet_xcm::{Pallet, Storage, Call, Event, Origin, Config} = 103, + Assets: pallet_assets::{Pallet, Call, Storage, Event} = 104, + AssetManager: pallet_asset_manager::{Pallet, Call, Storage, Event} = 105, + XTokens: orml_xtokens::{Pallet, Call, Storage, Event} = 106, + XcmTransactor: pallet_xcm_transactor::{Pallet, Call, Storage, Event} = 107, + LocalAssets: pallet_assets::::{Pallet, Call, Storage, Event} = 108, + EthereumXcm: pallet_ethereum_xcm::{Pallet, Call, Storage, Origin} = 109, + Erc20XcmBridge: pallet_erc20_xcm_bridge::{Pallet} = 110, + + // Randomness + Randomness: pallet_randomness::{Pallet, Call, Storage, Event, Inherent} = 120, + } +} + +#[cfg(feature = "runtime-benchmarks")] +use { + moonbeam_runtime_common::benchmarking::BenchmarkHelper, + moonbeam_xcm_benchmarks::generic::benchmarking as MoonbeamXcmBenchmarks, + MoonbeamXcmBenchmarks::XcmGenericBenchmarks as MoonbeamXcmGenericBench, +}; +#[cfg(feature = "runtime-benchmarks")] +mod benches { + frame_benchmarking::define_benchmarks!( + [pallet_utility, Utility] + [pallet_timestamp, Timestamp] + [pallet_balances, Balances] + [pallet_evm, EVM] + [pallet_assets, Assets] + [pallet_collective, CouncilCollective] + [pallet_parachain_staking, ParachainStaking] + [pallet_scheduler, Scheduler] + [pallet_democracy, Democracy] + [pallet_treasury, Treasury] + [pallet_author_inherent, AuthorInherent] + [pallet_author_slot_filter, AuthorFilter] + [pallet_crowdloan_rewards, CrowdloanRewards] + [pallet_author_mapping, AuthorMapping] + [pallet_proxy, Proxy] + [pallet_identity, Identity] + [cumulus_pallet_xcmp_queue, XcmpQueue] + [pallet_xcm, PolkadotXcm] + [pallet_asset_manager, AssetManager] + [pallet_xcm_transactor, XcmTransactor] + [pallet_moonbeam_orbiters, MoonbeamOrbiters] + [pallet_randomness, Randomness] + [pallet_conviction_voting, ConvictionVoting] + [pallet_referenda, Referenda] + [pallet_preimage, Preimage] + [pallet_whitelist, Whitelist] + [pallet_multisig, Multisig] + [moonbeam_xcm_benchmarks::weights::generic, MoonbeamXcmGenericBench::] + ); +} + +/// Block type as expected by this runtime. +pub type Block = generic::Block; +/// A Block signed with a Justification +pub type SignedBlock = generic::SignedBlock; +/// BlockId type as expected by this runtime. +pub type BlockId = generic::BlockId; + +/// The SignedExtension to the basic transaction logic. +pub type SignedExtra = ( + frame_system::CheckNonZeroSender, + frame_system::CheckSpecVersion, + frame_system::CheckTxVersion, + frame_system::CheckGenesis, + frame_system::CheckEra, + frame_system::CheckNonce, + frame_system::CheckWeight, + pallet_transaction_payment::ChargeTransactionPayment, +); +/// Unchecked extrinsic type as expected by this runtime. +pub type UncheckedExtrinsic = + fp_self_contained::UncheckedExtrinsic; +/// Extrinsic type that has already been checked. +pub type CheckedExtrinsic = + fp_self_contained::CheckedExtrinsic; +/// Executive: handles dispatch to the various pallets. +pub type Executive = frame_executive::Executive< + Runtime, + Block, + frame_system::ChainContext, + Runtime, + pallet_maintenance_mode::ExecutiveHooks, +>; + +// All of our runtimes share most of their Runtime API implementations. +// We use a macro to implement this common part and add runtime-specific additional implementations. +// This macro expands to : +// ``` +// impl_runtime_apis! { +// // All impl blocks shared between all runtimes. +// +// // Specific impls provided to the `impl_runtime_apis_plus_common!` macro. +// } +// ``` +moonbeam_runtime_common::impl_runtime_apis_plus_common! { + impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { + fn validate_transaction( + source: TransactionSource, + xt: ::Extrinsic, + block_hash: ::Hash, + ) -> TransactionValidity { + // Filtered calls should not enter the tx pool as they'll fail if inserted. + // If this call is not allowed, we return early. + if !::BaseCallFilter::contains(&xt.0.function) { + return InvalidTransaction::Call.into(); + } + + // This runtime uses Substrate's pallet transaction payment. This + // makes the chain feel like a standard Substrate chain when submitting + // frame transactions and using Substrate ecosystem tools. It has the downside that + // transaction are not prioritized by gas_price. The following code reprioritizes + // transactions to overcome this. + // + // A more elegant, ethereum-first solution is + // a pallet that replaces pallet transaction payment, and allows users + // to directly specify a gas price rather than computing an effective one. + // #HopefullySomeday + + // First we pass the transactions to the standard FRAME executive. This calculates all the + // necessary tags, longevity and other properties that we will leave unchanged. + // This also assigns some priority that we don't care about and will overwrite next. + let mut intermediate_valid = Executive::validate_transaction(source, xt.clone(), block_hash)?; + + let dispatch_info = xt.get_dispatch_info(); + + // If this is a pallet ethereum transaction, then its priority is already set + // according to gas price from pallet ethereum. If it is any other kind of transaction, + // we modify its priority. + Ok(match &xt.0.function { + RuntimeCall::Ethereum(transact { .. }) => intermediate_valid, + _ if dispatch_info.class != DispatchClass::Normal => intermediate_valid, + _ => { + let tip = match xt.0.signature { + None => 0, + Some((_, _, ref signed_extra)) => { + // Yuck, this depends on the index of charge transaction in Signed Extra + let charge_transaction = &signed_extra.7; + charge_transaction.tip() + } + }; + + // Calculate the fee that will be taken by pallet transaction payment + let fee: u64 = TransactionPayment::compute_fee( + xt.encode().len() as u32, + &dispatch_info, + tip, + ).saturated_into(); + + // Calculate how much gas this effectively uses according to the existing mapping + let effective_gas = + ::GasWeightMapping::weight_to_gas( + dispatch_info.weight + ); + + // Here we calculate an ethereum-style effective gas price using the + // current fee of the transaction. Because the weight -> gas conversion is + // lossy, we have to handle the case where a very low weight maps to zero gas. + let effective_gas_price = if effective_gas > 0 { + fee / effective_gas + } else { + // If the effective gas was zero, we just act like it was 1. + fee + }; + + // Overwrite the original prioritization with this ethereum one + intermediate_valid.priority = effective_gas_price; + intermediate_valid + } + }) + } + } + + impl async_backing_primitives::UnincludedSegmentApi for Runtime { + fn can_build_upon( + _included_hash: ::Hash, + _slot: async_backing_primitives::Slot, + ) -> bool { + // This runtime API can be called only when asynchronous backing is enabled client-side + // We return false here to force the client to not use async backing in moonriver. + false + } + } +} + +struct CheckInherents; + +// Parity has decided to depreciate this trait, but does not offer a satisfactory replacement, +// see issue: https://github.com/paritytech/polkadot-sdk/issues/2841 +#[allow(deprecated)] +impl cumulus_pallet_parachain_system::CheckInherents for CheckInherents { + fn check_inherents( + block: &Block, + relay_state_proof: &cumulus_pallet_parachain_system::RelayChainStateProof, + ) -> sp_inherents::CheckInherentsResult { + let relay_chain_slot = relay_state_proof + .read_slot() + .expect("Could not read the relay chain slot from the proof"); + let inherent_data = + cumulus_primitives_timestamp::InherentDataProvider::from_relay_chain_slot_and_duration( + relay_chain_slot, + sp_std::time::Duration::from_secs(6), + ) + .create_inherent_data() + .expect("Could not create the timestamp inherent data"); + inherent_data.check_extrinsics(block) + } +} + +// Nimbus's Executive wrapper allows relay validators to verify the seal digest +cumulus_pallet_parachain_system::register_validate_block!( + Runtime = Runtime, + BlockExecutor = pallet_author_inherent::BlockExecutor::, + CheckInherents = CheckInherents, +); + +moonbeam_runtime_common::impl_self_contained_call!(); + +// Shorthand for a Get field of a pallet Config. +#[macro_export] +macro_rules! get { + ($pallet:ident, $name:ident, $type:ty) => { + <<$crate::Runtime as $pallet::Config>::$name as $crate::Get<$type>>::get() + }; +} + +#[cfg(test)] +mod tests { + use super::{currency::*, *}; + + #[test] + // Helps us to identify a Pallet Call in case it exceeds the 1kb limit. + // Hint: this should be a rare case. If that happens, one or more of the dispatchable arguments + // need to be Boxed. + fn call_max_size() { + const CALL_ALIGN: u32 = 1024; + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() <= CALL_ALIGN as usize + ); + assert!(std::mem::size_of::>() <= CALL_ALIGN as usize); + assert!( + std::mem::size_of::>() + <= CALL_ALIGN as usize + ); + } + + #[test] + fn currency_constants_are_correct() { + assert_eq!(SUPPLY_FACTOR, 1); + + // txn fees + assert_eq!(TRANSACTION_BYTE_FEE, Balance::from(1 * GIGAWEI)); + assert_eq!( + get!(pallet_transaction_payment, OperationalFeeMultiplier, u8), + 5_u8 + ); + assert_eq!(STORAGE_BYTE_FEE, Balance::from(100 * MICROMOVR)); + + // democracy minimums + assert_eq!( + get!(pallet_democracy, MinimumDeposit, u128), + Balance::from(4 * MOVR) + ); + assert_eq!( + get!(pallet_treasury, ProposalBondMinimum, u128), + Balance::from(1 * MOVR) + ); + + // pallet_identity deposits + assert_eq!( + get!(pallet_identity, BasicDeposit, u128), + Balance::from(1 * MOVR + 25800 * MICROMOVR) + ); + assert_eq!( + get!(pallet_identity, FieldDeposit, u128), + Balance::from(6600 * MICROMOVR) + ); + assert_eq!( + get!(pallet_identity, SubAccountDeposit, u128), + Balance::from(1 * MOVR + 5300 * MICROMOVR) + ); + + // staking minimums + assert_eq!( + get!(pallet_parachain_staking, MinCandidateStk, u128), + Balance::from(500 * MOVR) + ); + assert_eq!( + get!(pallet_parachain_staking, MinDelegation, u128), + Balance::from(5 * MOVR) + ); + + // crowdloan min reward + assert_eq!( + get!(pallet_crowdloan_rewards, MinimumReward, u128), + Balance::from(0u128) + ); + + // deposit for AuthorMapping + assert_eq!( + get!(pallet_author_mapping, DepositAmount, u128), + Balance::from(100 * MOVR) + ); + + // proxy deposits + assert_eq!( + get!(pallet_proxy, ProxyDepositBase, u128), + Balance::from(1 * MOVR + 800 * MICROMOVR) + ); + assert_eq!( + get!(pallet_proxy, ProxyDepositFactor, u128), + Balance::from(2100 * MICROMOVR) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositBase, u128), + Balance::from(1 * MOVR + 800 * MICROMOVR) + ); + assert_eq!( + get!(pallet_proxy, AnnouncementDepositFactor, u128), + Balance::from(5600 * MICROMOVR) + ); + } + + #[test] + fn max_offline_rounds_lower_or_eq_than_reward_payment_delay() { + assert!( + get!(pallet_parachain_staking, MaxOfflineRounds, u32) + <= get!(pallet_parachain_staking, RewardPaymentDelay, u32) + ); + } + + #[test] + // Required migration is + // pallet_parachain_staking::migrations::IncreaseMaxTopDelegationsPerCandidate + // Purpose of this test is to remind of required migration if constant is ever changed + fn updating_maximum_delegators_per_candidate_requires_configuring_required_migration() { + assert_eq!( + get!(pallet_parachain_staking, MaxTopDelegationsPerCandidate, u32), + 300 + ); + assert_eq!( + get!( + pallet_parachain_staking, + MaxBottomDelegationsPerCandidate, + u32 + ), + 50 + ); + } + + #[test] + fn configured_base_extrinsic_weight_is_evm_compatible() { + let min_ethereum_transaction_weight = WeightPerGas::get() * 21_000; + let base_extrinsic = ::BlockWeights::get() + .get(frame_support::dispatch::DispatchClass::Normal) + .base_extrinsic; + assert!(base_extrinsic.ref_time() <= min_ethereum_transaction_weight.ref_time()); + } + + #[test] + fn test_storage_growth_ratio_is_correct() { + // This is the highest amount of new storage that can be created in a block 40 KB + let block_storage_limit = 40 * 1024; + let expected_storage_growth_ratio = BlockGasLimit::get() + .low_u64() + .saturating_div(block_storage_limit); + let actual_storage_growth_ratio = + ::GasLimitStorageGrowthRatio::get(); + assert_eq!( + expected_storage_growth_ratio, actual_storage_growth_ratio, + "Storage growth ratio is not correct" + ); + } +} diff --git a/tracing/2700/runtime/moonriver/src/precompiles.rs b/tracing/2700/runtime/moonriver/src/precompiles.rs new file mode 100644 index 00000000..d07a30ee --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/precompiles.rs @@ -0,0 +1,273 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +use crate::{ + asset_config::{ForeignAssetInstance, LocalAssetInstance}, + xcm_config::XcmExecutorConfig, + CouncilInstance, OpenTechCommitteeInstance, TechCommitteeInstance, TreasuryCouncilInstance, +}; +use frame_support::parameter_types; +use pallet_evm_precompile_author_mapping::AuthorMappingPrecompile; +use pallet_evm_precompile_balances_erc20::{Erc20BalancesPrecompile, Erc20Metadata}; +use pallet_evm_precompile_batch::BatchPrecompile; +use pallet_evm_precompile_blake2::Blake2F; +use pallet_evm_precompile_bn128::{Bn128Add, Bn128Mul, Bn128Pairing}; +use pallet_evm_precompile_call_permit::CallPermitPrecompile; +use pallet_evm_precompile_collective::CollectivePrecompile; +use pallet_evm_precompile_conviction_voting::ConvictionVotingPrecompile; +use pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompile; +use pallet_evm_precompile_democracy::DemocracyPrecompile; +use pallet_evm_precompile_gmp::GmpPrecompile; +use pallet_evm_precompile_identity::IdentityPrecompile; +use pallet_evm_precompile_modexp::Modexp; +use pallet_evm_precompile_parachain_staking::ParachainStakingPrecompile; +use pallet_evm_precompile_preimage::PreimagePrecompile; +use pallet_evm_precompile_proxy::{OnlyIsProxyAndProxy, ProxyPrecompile}; +use pallet_evm_precompile_randomness::RandomnessPrecompile; +use pallet_evm_precompile_referenda::ReferendaPrecompile; +use pallet_evm_precompile_registry::PrecompileRegistry; +use pallet_evm_precompile_relay_encoder::RelayEncoderPrecompile; +use pallet_evm_precompile_sha3fips::Sha3FIPS256; +use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; +use pallet_evm_precompile_xcm_transactor::{ + v1::XcmTransactorPrecompileV1, v2::XcmTransactorPrecompileV2, v3::XcmTransactorPrecompileV3, +}; +use pallet_evm_precompile_xcm_utils::XcmUtilsPrecompile; +use pallet_evm_precompile_xtokens::XtokensPrecompile; +use pallet_evm_precompileset_assets_erc20::{Erc20AssetsPrecompileSet, IsForeign, IsLocal}; +use precompile_utils::precompile_set::*; + +pub struct NativeErc20Metadata; + +/// ERC20 metadata for the native token. +impl Erc20Metadata for NativeErc20Metadata { + /// Returns the name of the token. + fn name() -> &'static str { + "MOVR token" + } + + /// Returns the symbol of the token. + fn symbol() -> &'static str { + "MOVR" + } + + /// Returns the decimals places of the token. + fn decimals() -> u8 { + 18 + } + + /// Must return `true` only if it represents the main native currency of + /// the network. It must be the currency used in `pallet_evm`. + fn is_native_currency() -> bool { + true + } +} + +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as foreign +pub const FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8; 4]; +/// The asset precompile address prefix. Addresses that match against this prefix will be routed +/// to Erc20AssetsPrecompileSet being marked as local +pub const LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX: &[u8] = &[255u8, 255u8, 255u8, 254u8]; + +parameter_types! { + pub ForeignAssetPrefix: &'static [u8] = FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX; + pub LocalAssetPrefix: &'static [u8] = LOCAL_ASSET_PRECOMPILE_ADDRESS_PREFIX; +} + +type EthereumPrecompilesChecks = (AcceptDelegateCall, CallableByContract, CallableByPrecompile); + +#[precompile_utils::precompile_name_from_address] +type MoonriverPrecompilesAt = ( + // Ethereum precompiles: + // We allow DELEGATECALL to stay compliant with Ethereum behavior. + PrecompileAt, ECRecover, EthereumPrecompilesChecks>, + PrecompileAt, Sha256, EthereumPrecompilesChecks>, + PrecompileAt, Ripemd160, EthereumPrecompilesChecks>, + PrecompileAt, Identity, EthereumPrecompilesChecks>, + PrecompileAt, Modexp, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Add, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Mul, EthereumPrecompilesChecks>, + PrecompileAt, Bn128Pairing, EthereumPrecompilesChecks>, + PrecompileAt, Blake2F, EthereumPrecompilesChecks>, + // Non-Moonbeam specific nor Ethereum precompiles : + PrecompileAt, Sha3FIPS256, (CallableByContract, CallableByPrecompile)>, + RemovedPrecompileAt>, // Dispatch + PrecompileAt, ECRecoverPublicKey, (CallableByContract, CallableByPrecompile)>, + // Moonbeam specific precompiles: + PrecompileAt< + AddressU64<2048>, + ParachainStakingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2049>, + CrowdloanRewardsPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2050>, + Erc20BalancesPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2051>, + DemocracyPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2052>, + XtokensPrecompile, + ( + SubcallWithMaxNesting<1>, + CallableByContract, + CallableByPrecompile, + ), + >, + PrecompileAt< + AddressU64<2053>, + RelayEncoderPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2054>, + XcmTransactorPrecompileV1, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2055>, + AuthorMappingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2056>, + BatchPrecompile, + ( + SubcallWithMaxNesting<2>, + // Batch is the only precompile allowed to call Batch. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2057>, + RandomnessPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2058>, + CallPermitPrecompile, + (SubcallWithMaxNesting<0>, CallableByContract), + >, + PrecompileAt< + AddressU64<2059>, + ProxyPrecompile, + ( + CallableByContract>, + SubcallWithMaxNesting<0>, + // Batch is the only precompile allowed to call Proxy. + CallableByPrecompile>>, + ), + >, + PrecompileAt< + AddressU64<2060>, + XcmUtilsPrecompile, + CallableByContract< + pallet_evm_precompile_xcm_utils::AllExceptXcmExecute, + >, + >, + PrecompileAt< + AddressU64<2061>, + XcmTransactorPrecompileV2, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2062>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2063>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2064>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2065>, + ReferendaPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2066>, + ConvictionVotingPrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2067>, + PreimagePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2068>, + CollectivePrecompile, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2069>, + PrecompileRegistry, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt, GmpPrecompile, SubcallWithMaxNesting<0>>, + PrecompileAt< + AddressU64<2071>, + XcmTransactorPrecompileV3, + (CallableByContract, CallableByPrecompile), + >, + PrecompileAt< + AddressU64<2072>, + IdentityPrecompile, + (CallableByContract, CallableByPrecompile), + >, +); + +/// The PrecompileSet installed in the Moonriver runtime. +/// We include the nine Istanbul precompiles +/// (https://github.com/ethereum/go-ethereum/blob/3c46f557/core/vm/contracts.go#L69) +/// The following distribution has been decided for the precompiles +/// 0-1023: Ethereum Mainnet Precompiles +/// 1024-2047 Precompiles that are not in Ethereum Mainnet but are neither Moonbeam specific +/// 2048-4095 Moonbeam specific precompiles +pub type MoonriverPrecompiles = PrecompileSetBuilder< + R, + ( + // Skip precompiles if out of range. + PrecompilesInRangeInclusive<(AddressU64<1>, AddressU64<4095>), MoonriverPrecompilesAt>, + // Prefixed precompile sets (XC20) + PrecompileSetStartingWith< + ForeignAssetPrefix, + Erc20AssetsPrecompileSet, + CallableByContract, + >, + PrecompileSetStartingWith< + LocalAssetPrefix, + Erc20AssetsPrecompileSet, + CallableByContract, + >, + ), +>; diff --git a/tracing/2700/runtime/moonriver/src/xcm_config.rs b/tracing/2700/runtime/moonriver/src/xcm_config.rs new file mode 100644 index 00000000..18c828cb --- /dev/null +++ b/tracing/2700/runtime/moonriver/src/xcm_config.rs @@ -0,0 +1,707 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! XCM configuration for Moonbase. +//! + +use super::{ + governance, AccountId, AssetId, AssetManager, Assets, Balance, Balances, DealWithFees, + Erc20XcmBridge, LocalAssets, ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, RuntimeCall, + RuntimeEvent, RuntimeOrigin, Treasury, XcmpQueue, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; + +use frame_support::{ + parameter_types, + traits::{EitherOfDiverse, Everything, Nothing, PalletInfoAccess}, +}; +use moonbeam_runtime_common::weights as moonbeam_weights; +use pallet_evm_precompileset_assets_erc20::AccountIdAssetIdConversion; +use sp_runtime::{ + traits::{Hash as THash, MaybeEquivalence, PostDispatchInfoOf}, + DispatchErrorWithPostInfo, +}; +use sp_weights::Weight; + +use frame_system::{EnsureRoot, RawOrigin}; +use sp_core::{ConstU32, H160, H256}; + +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, DescribeAllTerminal, DescribeFamily, EnsureXcmOrigin, + FungiblesAdapter, HashedDescription, NoChecking, ParentIsPreset, RelayChainAsNative, + SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountKey20AsNative, + SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, WeightInfoBounds, + WithComputedOrigin, +}; + +use xcm::latest::prelude::*; +use xcm_executor::traits::{CallDispatcher, ConvertLocation, JustTry}; + +use orml_xcm_support::MultiNativeAsset; +use xcm_primitives::{ + AbsoluteAndRelativeReserve, AccountIdToCurrencyId, AccountIdToMultiLocation, AsAssetType, + FirstAssetTrader, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, XcmTransact, +}; + +use parity_scale_codec::{Decode, Encode}; +use scale_info::TypeInfo; + +use sp_std::{ + convert::{From, Into, TryFrom}, + prelude::*, +}; + +use orml_traits::parameter_type_with_key; + +use crate::governance::referenda::GeneralAdminOrRoot; + +parameter_types! { + // The network Id of the relay + pub const RelayNetwork: NetworkId = NetworkId::Kusama; + // The relay chain Origin type + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + // The universal location within the global consensus system + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(ParachainInfo::parachain_id().into())); + + // Self Reserve location, defines the multilocation identifiying the self-reserve currency + // This is used to match it also against our Balances pallet when we receive such + // a MultiLocation: (Self Balances pallet index) + // We use the RELATIVE multilocation + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // This is the relative view of our local assets. + // Indentified by thix prefix + generalIndex(assetId) + // We use the RELATIVE multilocation + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // If we receive a MultiLocation of type AccountKey20, just generate a native account + AccountKey20Aliases, + // Generate remote accounts according to polkadot standards + HashedDescription>, +); + +/// Wrapper type around `LocationToAccountId` to convert an `AccountId` to type `H160`. +pub struct LocationToH160; +impl ConvertLocation for LocationToH160 { + fn convert_location(location: &MultiLocation) -> Option { + >::convert_location(location) + .map(Into::into) + } +} + +// The non-reserve fungible transactor type +// It will use pallet-assets, and the Id will be matched against AsAssetType +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId20 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +/// The transactor for our own chain currency. +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + xcm_builder::IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets besides the native currency on this chain. +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + // This just tells to convert an assetId into a GeneralIndex junction prepended + // by LocalAssetsPalletLocationNewReanchor + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// We use all transactors +// These correspond to +// SelfReserve asset, both pre and post 0.9.16 +// Foreign assets +// Local assets, both pre and post 0.9.16 +// We can remove the Old reanchor once +// we import https://github.com/open-web3-stack/open-runtime-module-library/pull/708 +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, + Erc20XcmBridge, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + // Xcm Origins defined by a Multilocation of type AccountKey20 can be converted to a 20 byte- + // account local origin + SignedAccountKey20AsNative, +); + +parameter_types! { + /// The amount of weight an XCM operation takes. This is safe overestimate. + pub UnitWeightCost: Weight = Weight::from_parts(200_000_000u64, 0); + /// Maximum number of instructions in a single XCM fragment. A sanity check against + /// weight caculations getting too crazy. + pub MaxInstructions: u32 = 100; +} + +/// Xcm Weigher shared between multiple Xcm-related configs. +pub type XcmWeigher = WeightInfoBounds< + moonbeam_xcm_benchmarks::weights::XcmWeight, + RuntimeCall, + MaxInstructions, +>; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +/// We do not burn anything because we want to mimic exactly what +/// the sovereign account has +pub type XcmFeesToAccount = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +pub struct SafeCallFilter; +impl frame_support::traits::Contains for SafeCallFilter { + fn contains(_call: &RuntimeCall) -> bool { + // TODO review + // This needs to be addressed at EVM level + true + } +} + +parameter_types! { + pub const MaxAssetsIntoHolding: u32 = xcm_primitives::MAX_ASSETS; +} + +// Our implementation of the Moonbeam Call +// Attachs the right origin in case the call is made to pallet-ethereum-xcm +#[cfg(not(feature = "evm-tracing"))] +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); +#[cfg(feature = "evm-tracing")] +moonbeam_runtime_common::impl_moonbeam_xcm_call_tracing!(); + +moonbeam_runtime_common::impl_evm_runner_precompile_or_eth_xcm!(); + +pub struct XcmExecutorConfig; +impl xcm_executor::Config for XcmExecutorConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + // How to withdraw and deposit an asset. + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + // Filter to the reserve withdraw operations + // Whenever the reserve matches the relative or absolute value + // of our chain, we always return the relative reserve + type IsReserve = MultiNativeAsset>; + type IsTeleporter = (); // No teleport + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = XcmWeigher; + // We use two traders + // When we receive the relative representation of the self-reserve asset, + // we use UsingComponents and the local way of handling fees + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + UsingComponents< + ::WeightToFee, + SelfReserve, + AccountId, + Balances, + DealWithFees, + >, + FirstAssetTrader, + ); + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = pallet_erc20_xcm_bridge::AssetTrapWrapper; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type PalletInstancesInfo = crate::AllPalletsWithSystem; + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type AssetLocker = (); + type AssetExchanger = (); + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = SafeCallFilter; + type Aliasers = Nothing; +} + +type XcmExecutor = pallet_erc20_xcm_bridge::XcmExecutorWrapper< + RuntimeCall, + xcm_executor::XcmExecutor, +>; + +// Converts a Signed Local Origin into a MultiLocation +pub type LocalOriginToLocation = SignedToAccountId20; + +/// The means for routing XCM messages which are not for local execution into the right message +/// queues. +pub type XcmRouter = ( + // Two routers - use UMP to communicate with the relay chain: + cumulus_primitives_utility::ParentAsUmp, + // ..and XCMP to communicate with the sibling chains. + XcmpQueue, +); + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = LocationToAccountId; + type MaxLockers = ConstU32<8>; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + // TODO pallet-xcm weights + type WeightInfo = moonbeam_weights::pallet_xcm::WeightInfo; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; + type AdminOrigin = EnsureRoot; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl cumulus_pallet_xcmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ChannelInfo = ParachainSystem; + type VersionWrapper = PolkadotXcm; + type ExecuteOverweightOrigin = EnsureRoot; + type ControllerOrigin = EnsureRoot; + type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; + type WeightInfo = moonbeam_weights::cumulus_pallet_xcmp_queue::WeightInfo; + type PriceForSiblingDelivery = polkadot_runtime_common::xcm_sender::NoPriceForMessageDelivery< + cumulus_primitives_core::ParaId, + >; +} + +impl cumulus_pallet_dmp_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; + type ExecuteOverweightOrigin = EnsureRoot; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We simply hash the AssetType and take the lowest 128 bits +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + // Our native token + SelfReserve, + // Assets representing other chains native tokens + ForeignAsset(AssetId), + // Our local assets + LocalAssetReserve(AssetId), + // Erc20 token + Erc20 { contract_address: H160 }, +} + +impl AccountIdToCurrencyId for Runtime { + fn account_to_currency_id(account: AccountId) -> Option { + Some(match account { + // the self-reserve currency is identified by the pallet-balances address + a if a == H160::from_low_u64_be(2050).into() => CurrencyId::SelfReserve, + // the rest of the currencies, by their corresponding erc20 address + _ => match Runtime::account_to_asset_id(account) { + // We distinguish by prefix, and depending on it we create either + // Foreign or Local + Some((prefix, asset_id)) => { + if prefix == FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX.to_vec() { + CurrencyId::ForeignAsset(asset_id) + } else { + CurrencyId::LocalAssetReserve(asset_id) + } + } + // If no known prefix is identified, we consider that it's a "real" erc20 token + // (i.e. managed by a real smart contract) + None => CurrencyId::Erc20 { + contract_address: account.into(), + }, + }, + }) + } +} + +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + // For now and until Xtokens is adapted to handle 0.9.16 version we use + // the old anchoring here + // This is not a problem in either cases, since the view of the destination + // chain does not change + // TODO! change this to NewAnchoringSelfReserve once xtokens is adapted for it + CurrencyId::SelfReserve => { + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + CurrencyId::Erc20 { contract_address } => { + let mut location = Erc20XcmBridgePalletLocation::get(); + location + .push_interior(Junction::AccountKey20 { + key: contract_address.0, + network: None, + }) + .ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(200_000_000u64, 0); + pub const MaxAssetsForTransfer: usize = 2; + + // This is how we are going to detect whether the asset is a Reserve asset + // This however is the chain part only + pub SelfLocation: MultiLocation = MultiLocation::here(); + // We need this to be able to catch when someone is trying to execute a non- + // cross-chain transfer in xtokens through the absolute path way + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(ParachainInfo::parachain_id().into()) + ) + }; +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + // Kusama AssetHub fee + (1, Some(Parachain(1000u32))) => Some(50_000_000u128), + _ => None, + } + }; +} + +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = AbsoluteAndRelativeReserve; +} + +// 1 KSM should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +// For now we only allow to transact in the relay, although this might change in the future +// Transactors just defines the chains in which we allow transactions to be issued through +// xcm +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum Transactors { + Relay, +} + +// Default for benchmarking +#[cfg(feature = "runtime-benchmarks")] +impl Default for Transactors { + fn default() -> Self { + Transactors::Relay + } +} + +impl TryFrom for Transactors { + type Error = (); + fn try_from(value: u8) -> Result { + match value { + 0u8 => Ok(Transactors::Relay), + _ => Err(()), + } + } +} + +impl UtilityEncodeCall for Transactors { + fn encode_call(self, call: UtilityAvailableCalls) -> Vec { + match self { + Transactors::Relay => pallet_xcm_transactor::Pallet::::encode_call( + pallet_xcm_transactor::Pallet(sp_std::marker::PhantomData::), + call, + ), + } + } +} + +impl XcmTransact for Transactors { + fn destination(self) -> MultiLocation { + match self { + Transactors::Relay => MultiLocation::parent(), + } + } +} + +pub type DerivativeAddressRegistrationOrigin = + EitherOfDiverse, governance::custom_origins::GeneralAdmin>; + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = Transactors; + type DerivativeAddressRegistrationOrigin = DerivativeAddressRegistrationOrigin; + type SovereignAccountDispatcherOrigin = EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type XcmSender = XcmRouter; + type SelfLocation = SelfLocation; + type Weigher = XcmWeigher; + type UniversalLocation = UniversalLocation; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = AbsoluteAndRelativeReserve; + type WeightInfo = moonbeam_weights::pallet_xcm_transactor::WeightInfo; + type HrmpManipulatorOrigin = GeneralAdminOrRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + // This is the relative view of erc20 assets. + // Identified by this prefix + AccountKey20(contractAddress) + // We use the RELATIVE multilocation + pub Erc20XcmBridgePalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // To be able to support almost all erc20 implementations, + // we provide a sufficiently hight gas limit. + pub Erc20XcmBridgeTransferGasLimit: u64 = 200_000; +} + +impl pallet_erc20_xcm_bridge::Config for Runtime { + type AccountIdConverter = LocationToH160; + type Erc20MultilocationPrefix = Erc20XcmBridgePalletLocation; + type Erc20TransferGasLimit = Erc20XcmBridgeTransferGasLimit; + type EvmRunner = EvmRunnerPrecompileOrEthXcm; +} + +#[cfg(feature = "runtime-benchmarks")] +mod testing { + use super::*; + + /// This From exists for benchmarking purposes. It has the potential side-effect of calling + /// AssetManager::set_asset_type_asset_id() and should NOT be used in any production code. + impl From for CurrencyId { + fn from(location: MultiLocation) -> CurrencyId { + use xcm_primitives::AssetTypeGetter; + + // If it does not exist, for benchmarking purposes, we create the association + let asset_id = if let Some(asset_id) = + AsAssetType::::convert_location(&location) + { + asset_id + } else { + let asset_type = AssetType::Xcm(location); + let asset_id: AssetId = asset_type.clone().into(); + AssetManager::set_asset_type_asset_id(asset_type, asset_id); + asset_id + }; + + CurrencyId::ForeignAsset(asset_id) + } + } +} diff --git a/tracing/2700/runtime/moonriver/tests/common/mod.rs b/tracing/2700/runtime/moonriver/tests/common/mod.rs new file mode 100644 index 00000000..8c20a49b --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/common/mod.rs @@ -0,0 +1,394 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +#![allow(dead_code)] + +use cumulus_primitives_parachain_inherent::ParachainInherentData; +use fp_evm::GenesisAccount; +use frame_support::{ + assert_ok, + traits::{OnFinalize, OnInitialize}, +}; +pub use moonriver_runtime::{ + asset_config::AssetRegistrarMetadata, + currency::{GIGAWEI, MOVR, SUPPLY_FACTOR, WEI}, + xcm_config::AssetType, + AccountId, AssetId, AssetManager, Assets, AuthorInherent, Balance, Balances, CrowdloanRewards, + Ethereum, Executive, Header, InflationInfo, LocalAssets, ParachainStaking, Range, Runtime, + RuntimeCall, RuntimeEvent, System, TransactionConverter, TransactionPaymentAsGasPrice, + UncheckedExtrinsic, HOURS, WEEKS, +}; +use nimbus_primitives::{NimbusId, NIMBUS_ENGINE_ID}; +use sp_core::{Encode, H160}; +use sp_runtime::{traits::Dispatchable, BuildStorage, Digest, DigestItem, Perbill, Percent}; + +use std::collections::BTreeMap; + +use fp_rpc::ConvertTransaction; +use pallet_transaction_payment::Multiplier; + +// A valid signed Alice transfer. +pub const VALID_ETH_TX: &str = + "02f86d8205018085174876e80085e8d4a5100082520894f24ff3a9cf04c71dbc94d0b566f7a27b9456\ + 6cac8080c001a0e1094e1a52520a75c0255db96132076dd0f1263089f838bea548cbdbfc64a4d19f031c\ + 92a8cb04e2d68d20a6158d542a07ac440cc8d07b6e36af02db046d92df"; + +// An invalid signed Alice transfer with a gas limit artifically set to 0. +pub const INVALID_ETH_TX: &str = + "f86180843b9aca00809412cb274aad8251c875c0bf6872b67d9983e53fdd01801ca00e28ba2dd3c5a\ + 3fd467d4afd7aefb4a34b373314fff470bb9db743a84d674a0aa06e5994f2d07eafe1c37b4ce5471ca\ + ecec29011f6f5bf0b1a552c55ea348df35f"; + +pub fn rpc_run_to_block(n: u32) { + while System::block_number() < n { + Ethereum::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + Ethereum::on_initialize(System::block_number()); + } +} + +/// Utility function that advances the chain to the desired block number. +/// If an author is provided, that author information is injected to all the blocks in the meantime. +pub fn run_to_block(n: u32, author: Option) { + // Finalize the first block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + while System::block_number() < n { + // Set the new block number and author + match author { + Some(ref author) => { + let pre_digest = Digest { + logs: vec![DigestItem::PreRuntime(NIMBUS_ENGINE_ID, author.encode())], + }; + System::reset_events(); + System::initialize( + &(System::block_number() + 1), + &System::parent_hash(), + &pre_digest, + ); + } + None => { + System::set_block_number(System::block_number() + 1); + } + } + + // Initialize the new block + AuthorInherent::on_initialize(System::block_number()); + ParachainStaking::on_initialize(System::block_number()); + Ethereum::on_initialize(System::block_number()); + + // Finalize the block + Ethereum::on_finalize(System::block_number()); + AuthorInherent::on_finalize(System::block_number()); + ParachainStaking::on_finalize(System::block_number()); + } +} + +pub fn last_event() -> RuntimeEvent { + System::events().pop().expect("Event expected").event +} + +// Helper function to give a simple evm context suitable for tests. +// We can remove this once https://github.com/rust-blockchain/evm/pull/35 +// is in our dependency graph. +pub fn evm_test_context() -> fp_evm::Context { + fp_evm::Context { + address: Default::default(), + caller: Default::default(), + apparent_value: From::from(0), + } +} + +// Test struct with the purpose of initializing xcm assets +#[derive(Clone)] +pub struct XcmAssetInitialization { + pub asset_type: AssetType, + pub metadata: AssetRegistrarMetadata, + pub balances: Vec<(AccountId, Balance)>, + pub is_sufficient: bool, +} + +pub struct ExtBuilder { + // [asset, Vec, owner] + local_assets: Vec<(AssetId, Vec<(AccountId, Balance)>, AccountId)>, + // endowed accounts with balances + balances: Vec<(AccountId, Balance)>, + // [collator, amount] + collators: Vec<(AccountId, Balance)>, + // [delegator, collator, nomination_amount] + delegations: Vec<(AccountId, AccountId, Balance, Percent)>, + // per-round inflation config + inflation: InflationInfo, + // AuthorId -> AccoutId mappings + mappings: Vec<(NimbusId, AccountId)>, + // Crowdloan fund + crowdloan_fund: Balance, + // Chain id + chain_id: u64, + // EVM genesis accounts + evm_accounts: BTreeMap, + // [assettype, metadata, Vec, is_sufficient] + xcm_assets: Vec, + safe_xcm_version: Option, +} + +impl Default for ExtBuilder { + fn default() -> ExtBuilder { + ExtBuilder { + local_assets: vec![], + balances: vec![], + delegations: vec![], + collators: vec![], + inflation: InflationInfo { + expect: Range { + min: 100_000 * MOVR, + ideal: 200_000 * MOVR, + max: 500_000 * MOVR, + }, + // not used + annual: Range { + min: Perbill::from_percent(50), + ideal: Perbill::from_percent(50), + max: Perbill::from_percent(50), + }, + // unrealistically high parameterization, only for testing + round: Range { + min: Perbill::from_percent(5), + ideal: Perbill::from_percent(5), + max: Perbill::from_percent(5), + }, + }, + mappings: vec![], + crowdloan_fund: 0, + chain_id: CHAIN_ID, + evm_accounts: BTreeMap::new(), + xcm_assets: vec![], + safe_xcm_version: None, + } + } +} + +impl ExtBuilder { + pub fn with_evm_accounts(mut self, accounts: BTreeMap) -> Self { + self.evm_accounts = accounts; + self + } + + pub fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self { + self.balances = balances; + self + } + + pub fn with_collators(mut self, collators: Vec<(AccountId, Balance)>) -> Self { + self.collators = collators; + self + } + + pub fn with_delegations(mut self, delegations: Vec<(AccountId, AccountId, Balance)>) -> Self { + self.delegations = delegations + .into_iter() + .map(|d| (d.0, d.1, d.2, Percent::zero())) + .collect(); + self + } + + pub fn with_crowdloan_fund(mut self, crowdloan_fund: Balance) -> Self { + self.crowdloan_fund = crowdloan_fund; + self + } + + pub fn with_mappings(mut self, mappings: Vec<(NimbusId, AccountId)>) -> Self { + self.mappings = mappings; + self + } + + #[allow(dead_code)] + pub fn with_inflation(mut self, inflation: InflationInfo) -> Self { + self.inflation = inflation; + self + } + + pub fn with_xcm_assets(mut self, xcm_assets: Vec) -> Self { + self.xcm_assets = xcm_assets; + self + } + + pub fn with_safe_xcm_version(mut self, safe_xcm_version: u32) -> Self { + self.safe_xcm_version = Some(safe_xcm_version); + self + } + + pub fn build(self) -> sp_io::TestExternalities { + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: self.balances, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_parachain_staking::GenesisConfig:: { + candidates: self.collators, + delegations: self.delegations, + inflation_config: self.inflation, + collator_commission: Perbill::from_percent(20), + parachain_bond_reserve_percent: Percent::from_percent(30), + blocks_per_round: 2 * HOURS, + num_selected_candidates: 8, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_crowdloan_rewards::GenesisConfig:: { + funded_amount: self.crowdloan_fund, + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_author_mapping::GenesisConfig:: { + mappings: self.mappings, + } + .assimilate_storage(&mut t) + .unwrap(); + + let genesis_config = pallet_evm_chain_id::GenesisConfig:: { + chain_id: self.chain_id, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: self.evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_ethereum::GenesisConfig:: { + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_xcm::GenesisConfig:: { + safe_xcm_version: self.safe_xcm_version, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = pallet_transaction_payment::GenesisConfig:: { + multiplier: Multiplier::from(10u128), + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + let local_assets = self.local_assets.clone(); + let xcm_assets = self.xcm_assets.clone(); + ext.execute_with(|| { + // If any local assets specified, we create them here + for (asset_id, balances, owner) in local_assets.clone() { + LocalAssets::force_create(root_origin(), asset_id.into(), owner, true, 1).unwrap(); + for (account, balance) in balances { + LocalAssets::mint(origin_of(owner.into()), asset_id.into(), account, balance) + .unwrap(); + } + } + // If any xcm assets specified, we register them here + for xcm_asset_initialization in xcm_assets { + let asset_id: AssetId = xcm_asset_initialization.asset_type.clone().into(); + AssetManager::register_foreign_asset( + root_origin(), + xcm_asset_initialization.asset_type, + xcm_asset_initialization.metadata, + 1, + xcm_asset_initialization.is_sufficient, + ) + .unwrap(); + for (account, balance) in xcm_asset_initialization.balances { + Assets::mint( + origin_of(AssetManager::account_id()), + asset_id.into(), + account, + balance, + ) + .unwrap(); + } + } + System::set_block_number(1); + }); + ext + } +} + +pub const CHAIN_ID: u64 = 1281; +pub const ALICE: [u8; 20] = [4u8; 20]; +pub const ALICE_NIMBUS: [u8; 32] = [4u8; 32]; +pub const BOB: [u8; 20] = [5u8; 20]; +pub const CHARLIE: [u8; 20] = [6u8; 20]; +pub const DAVE: [u8; 20] = [7u8; 20]; +pub const EVM_CONTRACT: [u8; 20] = [8u8; 20]; + +pub fn origin_of(account_id: AccountId) -> ::RuntimeOrigin { + ::RuntimeOrigin::signed(account_id) +} + +pub fn inherent_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::none() +} + +pub fn root_origin() -> ::RuntimeOrigin { + ::RuntimeOrigin::root() +} + +/// Mock the inherent that sets validation data in ParachainSystem, which +/// contains the `relay_chain_block_number`, which is used in `author-filter` as a +/// source of randomness to filter valid authors at each block. +pub fn set_parachain_inherent_data() { + use cumulus_primitives_core::PersistedValidationData; + use cumulus_test_relay_sproof_builder::RelayStateSproofBuilder; + let (relay_parent_storage_root, relay_chain_state) = + RelayStateSproofBuilder::default().into_state_root_and_proof(); + let vfp = PersistedValidationData { + relay_parent_number: 1u32, + relay_parent_storage_root, + ..Default::default() + }; + let parachain_inherent_data = ParachainInherentData { + validation_data: vfp, + relay_chain_state: relay_chain_state, + downward_messages: Default::default(), + horizontal_messages: Default::default(), + }; + assert_ok!(RuntimeCall::ParachainSystem( + cumulus_pallet_parachain_system::Call::::set_validation_data { + data: parachain_inherent_data + } + ) + .dispatch(inherent_origin())); +} + +pub fn unchecked_eth_tx(raw_hex_tx: &str) -> UncheckedExtrinsic { + let converter = TransactionConverter; + converter.convert_transaction(ethereum_transaction(raw_hex_tx)) +} + +pub fn ethereum_transaction(raw_hex_tx: &str) -> pallet_ethereum::Transaction { + let bytes = hex::decode(raw_hex_tx).expect("Transaction bytes."); + let transaction = ethereum::EnvelopedDecodable::decode(&bytes[..]); + assert!(transaction.is_ok()); + transaction.unwrap() +} diff --git a/tracing/2700/runtime/moonriver/tests/evm_tracing.rs b/tracing/2700/runtime/moonriver/tests/evm_tracing.rs new file mode 100644 index 00000000..c8db27d0 --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/evm_tracing.rs @@ -0,0 +1,94 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonriver EVM tracing Integration Tests + +mod common; + +#[cfg(test)] +#[cfg(feature = "evm-tracing")] +mod tests { + use super::common::*; + + use pallet_evm::AddressMapping; + use sp_core::H160; + + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; + use std::str::FromStr; + + #[test] + fn debug_runtime_api_trace_transaction() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * MOVR), + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * MOVR, + } + .into(), + ); + let transaction = ethereum_transaction(VALID_ETH_TX); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + assert!(Runtime::trace_transaction( + vec![non_eth_uxt.clone(), eth_uxt, non_eth_uxt.clone()], + &transaction + ) + .is_ok()); + }); + } + + #[test] + fn debug_runtime_api_trace_block() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("6be02d1d3665660d22ff9624b7be0551ee1ac91b") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_balances(vec![ + (alith, 2_000 * MOVR), + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .build() + .execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * MOVR, + } + .into(), + ); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let eth_tx = ethereum_transaction(VALID_ETH_TX); + let eth_extrinsic_hash = eth_tx.hash(); + assert!(Runtime::trace_block( + vec![non_eth_uxt.clone(), eth_uxt.clone(), non_eth_uxt, eth_uxt], + vec![eth_extrinsic_hash, eth_extrinsic_hash] + ) + .is_ok()); + }); + } +} diff --git a/tracing/2700/runtime/moonriver/tests/integration_test.rs b/tracing/2700/runtime/moonriver/tests/integration_test.rs new file mode 100644 index 00000000..d35b1698 --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/integration_test.rs @@ -0,0 +1,2726 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonriver Runtime Integration Tests + +#![cfg(test)] + +mod common; +use common::*; + +use fp_evm::{Context, IsPrecompileResult}; +use frame_support::{ + assert_noop, assert_ok, + dispatch::DispatchClass, + traits::{ + fungible::Inspect, Currency as CurrencyT, EnsureOrigin, PalletInfo, StorageInfo, + StorageInfoTrait, + }, + weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight}, + StorageHasher, Twox128, +}; +use moonbeam_xcm_benchmarks::weights::XcmWeight; +use moonriver_runtime::{ + asset_config::LocalAssetInstance, + xcm_config::{CurrencyId, SelfReserve}, + AssetId, CouncilCollective, OpenTechCommitteeCollective, PolkadotXcm, Precompiles, + RuntimeBlockWeights, TechCommitteeCollective, TransactionPayment, TreasuryCouncilCollective, + XTokens, XcmTransactor, FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, +}; +use nimbus_primitives::NimbusId; +use pallet_evm::PrecompileSet; +use pallet_evm_precompileset_assets_erc20::{ + AccountIdAssetIdConversion, IsLocal, SELECTOR_LOG_APPROVAL, SELECTOR_LOG_TRANSFER, +}; +use pallet_transaction_payment::Multiplier; +use pallet_xcm_transactor::{Currency, CurrencyPayment, TransactWeights}; +use parity_scale_codec::Encode; +use polkadot_parachain::primitives::Sibling; +use precompile_utils::{ + precompile_set::{is_precompile_or_fail, IsActivePrecompile}, + prelude::*, + testing::*, +}; +use sha3::{Digest, Keccak256}; +use sp_core::{ByteArray, Pair, H160, U256}; +use sp_runtime::{ + traits::{Convert, Dispatchable}, + BuildStorage, DispatchError, ModuleError, +}; +use std::str::from_utf8; +use xcm::latest::prelude::*; +use xcm::{VersionedMultiAssets, VersionedMultiLocation}; +use xcm_builder::{ParentIsPreset, SiblingParachainConvertsVia}; +use xcm_executor::traits::ConvertLocation; + +type BatchPCall = pallet_evm_precompile_batch::BatchPrecompileCall; +type CrowdloanRewardsPCall = + pallet_evm_precompile_crowdloan_rewards::CrowdloanRewardsPrecompileCall; +type XcmUtilsPCall = pallet_evm_precompile_xcm_utils::XcmUtilsPrecompileCall< + Runtime, + moonriver_runtime::xcm_config::XcmExecutorConfig, +>; +type XtokensPCall = pallet_evm_precompile_xtokens::XtokensPrecompileCall; +type LocalAssetsPCall = pallet_evm_precompileset_assets_erc20::Erc20AssetsPrecompileSetCall< + Runtime, + IsLocal, + LocalAssetInstance, +>; +type XcmTransactorV2PCall = + pallet_evm_precompile_xcm_transactor::v2::XcmTransactorPrecompileV2Call; + +const BASE_FEE_GENESIS: u128 = 100 * GIGAWEI; + +#[test] +fn xcmp_queue_controller_origin_is_root() { + // important for the XcmExecutionManager impl of PauseExecution which uses root origin + // to suspend/resume XCM execution in xcmp_queue::on_idle + assert_ok!( + ::ControllerOrigin::ensure_origin(root_origin()) + ); +} + +#[test] +fn fast_track_available() { + assert!(moonriver_runtime::get!( + pallet_democracy, + InstantAllowed, + bool + )); +} + +#[test] +fn verify_pallet_prefixes() { + fn is_pallet_prefix(name: &str) { + // Compares the unhashed pallet prefix in the `StorageInstance` implementation by every + // storage item in the pallet P. This pallet prefix is used in conjunction with the + // item name to get the unique storage key: hash(PalletPrefix) + hash(StorageName) + // https://github.com/paritytech/substrate/blob/master/frame/support/procedural/src/pallet/ + // expand/storage.rs#L389-L401 + assert_eq!( + ::PalletInfo::name::

(), + Some(name) + ); + } + // TODO: use StorageInfoTrait from https://github.com/paritytech/substrate/pull/9246 + // This is now available with polkadot-v0.9.9 dependencies + is_pallet_prefix::("System"); + is_pallet_prefix::("Utility"); + is_pallet_prefix::("ParachainSystem"); + is_pallet_prefix::("TransactionPayment"); + is_pallet_prefix::("ParachainInfo"); + is_pallet_prefix::("EthereumChainId"); + is_pallet_prefix::("EVM"); + is_pallet_prefix::("Ethereum"); + is_pallet_prefix::("ParachainStaking"); + is_pallet_prefix::("MaintenanceMode"); + is_pallet_prefix::("Scheduler"); + is_pallet_prefix::("Democracy"); + is_pallet_prefix::("CouncilCollective"); + is_pallet_prefix::("TechCommitteeCollective"); + is_pallet_prefix::( + "OpenTechCommitteeCollective", + ); + is_pallet_prefix::("Treasury"); + is_pallet_prefix::("AuthorInherent"); + is_pallet_prefix::("AuthorFilter"); + is_pallet_prefix::("CrowdloanRewards"); + is_pallet_prefix::("AuthorMapping"); + is_pallet_prefix::("Identity"); + is_pallet_prefix::("XcmpQueue"); + is_pallet_prefix::("CumulusXcm"); + is_pallet_prefix::("DmpQueue"); + is_pallet_prefix::("PolkadotXcm"); + is_pallet_prefix::("Assets"); + is_pallet_prefix::("XTokens"); + is_pallet_prefix::("AssetManager"); + is_pallet_prefix::("Migrations"); + is_pallet_prefix::("XcmTransactor"); + is_pallet_prefix::("ProxyGenesisCompanion"); + is_pallet_prefix::("LocalAssets"); + is_pallet_prefix::("MoonbeamOrbiters"); + is_pallet_prefix::("TreasuryCouncilCollective"); + + let prefix = |pallet_name, storage_name| { + let mut res = [0u8; 32]; + res[0..16].copy_from_slice(&Twox128::hash(pallet_name)); + res[16..32].copy_from_slice(&Twox128::hash(storage_name)); + res.to_vec() + }; + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Timestamp".to_vec(), + storage_name: b"Now".to_vec(), + prefix: prefix(b"Timestamp", b"Now"), + max_values: Some(1), + max_size: Some(8), + }, + StorageInfo { + pallet_name: b"Timestamp".to_vec(), + storage_name: b"DidUpdate".to_vec(), + prefix: prefix(b"Timestamp", b"DidUpdate"), + max_values: Some(1), + max_size: Some(1), + } + ] + ); + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"TotalIssuance".to_vec(), + prefix: prefix(b"Balances", b"TotalIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"InactiveIssuance".to_vec(), + prefix: prefix(b"Balances", b"InactiveIssuance"), + max_values: Some(1), + max_size: Some(16), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Account".to_vec(), + prefix: prefix(b"Balances", b"Account"), + max_values: None, + max_size: Some(100), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Locks".to_vec(), + prefix: prefix(b"Balances", b"Locks"), + max_values: None, + max_size: Some(1287), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Reserves".to_vec(), + prefix: prefix(b"Balances", b"Reserves"), + max_values: None, + max_size: Some(1037), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Holds".to_vec(), + prefix: prefix(b"Balances", b"Holds"), + max_values: None, + max_size: Some(55), + }, + StorageInfo { + pallet_name: b"Balances".to_vec(), + storage_name: b"Freezes".to_vec(), + prefix: prefix(b"Balances", b"Freezes"), + max_values: None, + max_size: Some(37), + }, + ] + ); + assert_eq!( + ::storage_info(), + vec![ + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Proxies".to_vec(), + prefix: prefix(b"Proxy", b"Proxies"), + max_values: None, + max_size: Some(845), + }, + StorageInfo { + pallet_name: b"Proxy".to_vec(), + storage_name: b"Announcements".to_vec(), + prefix: prefix(b"Proxy", b"Announcements"), + max_values: None, + max_size: Some(1837), + } + ] + ); + assert_eq!( + ::storage_info(), + vec![StorageInfo { + pallet_name: b"MaintenanceMode".to_vec(), + storage_name: b"MaintenanceMode".to_vec(), + prefix: prefix(b"MaintenanceMode", b"MaintenanceMode"), + max_values: Some(1), + max_size: None, + },] + ); +} + +#[test] +fn test_collectives_storage_item_prefixes() { + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"CouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TechCommitteeCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"TreasuryCouncilCollective".to_vec()); + } + + for StorageInfo { pallet_name, .. } in + ::storage_info() + { + assert_eq!(pallet_name, b"OpenTechCommitteeCollective".to_vec()); + } +} + +#[test] +fn collective_set_members_root_origin_works() { + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert_ok!(CouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TechCommitteeCollective + assert_ok!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // TreasuryCouncilCollective + assert_ok!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + // OpenTechCommitteeCollective + assert_ok!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::root(), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + )); + }); +} + +#[test] +fn collective_set_members_general_admin_origin_works() { + use moonriver_runtime::{ + governance::custom_origins::Origin as CustomOrigin, OriginCaller, Utility, + }; + + ExtBuilder::default().build().execute_with(|| { + let root_caller = ::RuntimeOrigin::root(); + let alice = AccountId::from(ALICE); + + // CouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // TreasuryCouncilCollective + let _ = Utility::dispatch_as( + root_caller.clone(), + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + // OpenTechCommitteeCollective + let _ = Utility::dispatch_as( + root_caller, + Box::new(OriginCaller::Origins(CustomOrigin::GeneralAdmin)), + Box::new( + pallet_collective::Call::::set_members { + new_members: vec![alice, AccountId::from(BOB)], + prime: Some(alice), + old_count: 2, + } + .into(), + ), + ); + + assert_eq!( + System::events() + .into_iter() + .filter_map(|r| { + match r.event { + RuntimeEvent::Utility(pallet_utility::Event::DispatchedAs { result }) + if result.is_ok() => + { + Some(true) + } + _ => None, + } + }) + .collect::>() + .len(), + 4 + ) + }); +} + +#[test] +fn collective_set_members_signed_origin_does_not_work() { + let alice = AccountId::from(ALICE); + ExtBuilder::default().build().execute_with(|| { + // CouncilCollective + assert!(CouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![alice, AccountId::from(BOB)], + Some(alice), + 2 + ) + .is_err()); + // TechCommitteeCollective + assert!(TechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // TreasuryCouncilCollective + assert!(TreasuryCouncilCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + // OpenTechCommitteeCollective + assert!(OpenTechCommitteeCollective::set_members( + ::RuntimeOrigin::signed(alice), + vec![AccountId::from(ALICE), AccountId::from(BOB)], + Some(AccountId::from(ALICE)), + 2 + ) + .is_err()); + }); +} + +#[test] +fn verify_pallet_indices() { + fn is_pallet_index(index: usize) { + assert_eq!( + ::PalletInfo::index::

(), + Some(index) + ); + } + // System support + is_pallet_index::(0); + is_pallet_index::(1); + is_pallet_index::(3); + is_pallet_index::(4); + // Monetary + is_pallet_index::(10); + is_pallet_index::(11); + // Consensus support + is_pallet_index::(20); + is_pallet_index::(21); + is_pallet_index::(22); + is_pallet_index::(23); + is_pallet_index::(24); + // Handy utilities + is_pallet_index::(30); + is_pallet_index::(31); + is_pallet_index::(32); + is_pallet_index::(33); + is_pallet_index::(34); + is_pallet_index::(35); + // Ethereum compatibility + is_pallet_index::(50); + is_pallet_index::(51); + is_pallet_index::(52); + // Governance + is_pallet_index::(60); + is_pallet_index::(61); + // Council + is_pallet_index::(70); + is_pallet_index::(71); + is_pallet_index::(72); + is_pallet_index::(73); + // Treasury + is_pallet_index::(80); + // Crowdloan + is_pallet_index::(90); + // XCM Stuff + is_pallet_index::(100); + is_pallet_index::(101); + is_pallet_index::(102); + is_pallet_index::(103); + is_pallet_index::(104); + is_pallet_index::(105); + is_pallet_index::(106); + is_pallet_index::(107); + is_pallet_index::(108); +} + +#[test] +fn verify_reserved_indices() { + use frame_metadata::*; + let metadata = moonriver_runtime::Runtime::metadata(); + let metadata = match metadata.1 { + RuntimeMetadata::V14(metadata) => metadata, + _ => panic!("metadata has been bumped, test needs to be updated"), + }; + // 40: Sudo + // 53: BaseFee + let reserved = vec![40, 53]; + let existing = metadata + .pallets + .iter() + .map(|p| p.index) + .collect::>(); + assert!(reserved.iter().all(|index| !existing.contains(index))); +} + +#[test] +fn verify_proxy_type_indices() { + assert_eq!(moonriver_runtime::ProxyType::Any as u8, 0); + assert_eq!(moonriver_runtime::ProxyType::NonTransfer as u8, 1); + assert_eq!(moonriver_runtime::ProxyType::Governance as u8, 2); + assert_eq!(moonriver_runtime::ProxyType::Staking as u8, 3); + assert_eq!(moonriver_runtime::ProxyType::CancelProxy as u8, 4); + assert_eq!(moonriver_runtime::ProxyType::Balances as u8, 5); + assert_eq!(moonriver_runtime::ProxyType::AuthorMapping as u8, 6); + assert_eq!(moonriver_runtime::ProxyType::IdentityJudgement as u8, 7); +} + +#[test] +fn join_collator_candidates() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 20_000 * MOVR), + (AccountId::from(BOB), 20_000 * MOVR), + (AccountId::from(CHARLIE), 10_100 * MOVR), + (AccountId::from(DAVE), 10_000 * MOVR), + ]) + .with_collators(vec![ + (AccountId::from(ALICE), 10_000 * MOVR), + (AccountId::from(BOB), 10_000 * MOVR), + ]) + .with_delegations(vec![ + (AccountId::from(CHARLIE), AccountId::from(ALICE), 50 * MOVR), + (AccountId::from(CHARLIE), AccountId::from(BOB), 50 * MOVR), + ]) + .build() + .execute_with(|| { + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(ALICE)), + 10_000 * MOVR, + 2u32 + ), + pallet_parachain_staking::Error::::CandidateExists + ); + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 10_000 * MOVR, + 2u32 + ), + pallet_parachain_staking::Error::::DelegatorExists + ); + assert!(System::events().is_empty()); + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(DAVE)), + 10_000 * MOVR, + 2u32 + )); + assert_eq!( + last_event(), + RuntimeEvent::ParachainStaking( + pallet_parachain_staking::Event::JoinedCollatorCandidates { + account: AccountId::from(DAVE), + amount_locked: 10_000 * MOVR, + new_total_amt_locked: 30_100 * MOVR + } + ) + ); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(ALICE)); + assert_eq!(candidates.0[0].amount, 10_050 * MOVR); + assert_eq!(candidates.0[1].owner, AccountId::from(BOB)); + assert_eq!(candidates.0[1].amount, 10_050 * MOVR); + assert_eq!(candidates.0[2].owner, AccountId::from(DAVE)); + assert_eq!(candidates.0[2].amount, 10_000 * MOVR); + }); +} + +#[test] +fn transfer_through_evm_to_stake() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 20_000 * MOVR)]) + .build() + .execute_with(|| { + // Charlie has no balance => fails to stake + assert_noop!( + ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 10_000 * MOVR, + 2u32 + ), + DispatchError::Module(ModuleError { + index: 20, + error: [8, 0, 0, 0], + message: Some("InsufficientBalance") + }) + ); + // Alice transfer from free balance 20000 MOVR to Bob + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 20_000 * MOVR, + )); + assert_eq!(Balances::free_balance(AccountId::from(BOB)), 20_000 * MOVR); + + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + // Bob transfers 10000 MOVR to Charlie via EVM + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(CHARLIE), + input: vec![], + value: (10_000 * MOVR).into(), + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + assert_eq!( + Balances::free_balance(AccountId::from(CHARLIE)), + 10_000 * MOVR, + ); + + // Charlie can stake now + assert_ok!(ParachainStaking::join_candidates( + origin_of(AccountId::from(CHARLIE)), + 10_000 * MOVR, + 2u32, + ),); + let candidates = ParachainStaking::candidate_pool(); + assert_eq!(candidates.0[0].owner, AccountId::from(CHARLIE)); + assert_eq!(candidates.0[0].amount, 10_000 * MOVR); + }); +} + +#[test] +fn reward_block_authors() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 100 extra tokens for her mapping deposit + (AccountId::from(ALICE), 20_100 * MOVR), + (AccountId::from(BOB), 10_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 10_000 * MOVR)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + for x in 2..1199 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 10_100 * MOVR, + ); + assert_eq!(Balances::usable_balance(AccountId::from(BOB)), 9500 * MOVR,); + run_to_block(1201, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 11547666666208000000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9557333332588000000000, + ); + }); +} + +#[test] +fn reward_block_authors_with_parachain_bond_reserved() { + ExtBuilder::default() + .with_balances(vec![ + // Alice gets 100 extra tokens for her mapping deposit + (AccountId::from(ALICE), 20_100 * MOVR), + (AccountId::from(BOB), 10_000 * MOVR), + (AccountId::from(CHARLIE), MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 10_000 * MOVR)]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + assert_ok!(ParachainStaking::set_parachain_bond_account( + root_origin(), + AccountId::from(CHARLIE), + ),); + for x in 2..1199 { + run_to_block(x, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + } + // no rewards doled out yet + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 10_100 * MOVR, + ); + assert_eq!(Balances::usable_balance(AccountId::from(BOB)), 9500 * MOVR,); + assert_eq!(Balances::usable_balance(AccountId::from(CHARLIE)), MOVR,); + run_to_block(1201, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + // rewards minted and distributed + assert_eq!( + Balances::usable_balance(AccountId::from(ALICE)), + 11117700475903800000000, + ); + assert_eq!( + Balances::usable_balance(AccountId::from(BOB)), + 9535834523343675000000, + ); + // 30% reserved for parachain bond + assert_eq!( + Balances::usable_balance(AccountId::from(CHARLIE)), + 452515000000000000000, + ); + }); +} + +#[test] +fn initialize_crowdloan_addresses_with_batch_and_pay() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 48 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 450_000 * MOVR); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 450_000 * MOVR); + let expected = RuntimeEvent::Utility(pallet_utility::Event::BatchCompleted); + assert_eq!(last_event(), expected); + // This one should fail, as we already filled our data + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch { + calls: vec![RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![([4u8; 32].into(), Some(AccountId::from(ALICE)), 432000)] + } + )] + }) + .dispatch(root_origin()) + ); + let expected_fail = RuntimeEvent::Utility(pallet_utility::Event::BatchInterrupted { + index: 0, + error: DispatchError::Module(ModuleError { + index: 90, + error: [8, 0, 0, 0], + message: None, + }), + }); + assert_eq!(last_event(), expected_fail); + // Claim 1 block. + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(CHARLIE)))); + assert_ok!(CrowdloanRewards::claim(origin_of(AccountId::from(DAVE)))); + + let vesting_period = 48 * WEEKS as u128; + let per_block = (1_050_000 * MOVR) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (450_000 * MOVR) + per_block + ); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (450_000 * MOVR) + per_block + ); + // The total claimed reward should be equal to the account balance at this point. + assert_eq!( + Balances::balance(&AccountId::from(CHARLIE)), + (450_000 * MOVR) + per_block + ); + assert_eq!( + Balances::balance(&AccountId::from(DAVE)), + (450_000 * MOVR) + per_block + ); + assert_noop!( + CrowdloanRewards::claim(origin_of(AccountId::from(ALICE))), + pallet_crowdloan_rewards::Error::::NoAssociatedClaim + ); + }); +} + +#[test] +fn initialize_crowdloan_address_and_change_with_relay_key_sig() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + + let (pair1, _) = sp_core::sr25519::Pair::generate(); + let (pair2, _) = sp_core::sr25519::Pair::generate(); + + let public1 = pair1.public(); + let public2 = pair2.public(); + + // signature: + // WRAP_BYTES|| NetworkIdentifier|| new_account || previous_account || WRAP_BYTES + let mut message = pallet_crowdloan_rewards::WRAPPED_BYTES_PREFIX.to_vec(); + message.append(&mut b"moonriver-".to_vec()); + message.append(&mut AccountId::from(DAVE).encode()); + message.append(&mut AccountId::from(CHARLIE).encode()); + message.append(&mut pallet_crowdloan_rewards::WRAPPED_BYTES_POSTFIX.to_vec()); + let signature1 = pair1.sign(&message); + let signature2 = pair2.sign(&message); + + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + // two relay accounts pointing at the same reward account + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public1.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + public2.into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 900_000 * MOVR); + + // this should fail, as we are only providing one signature + assert_noop!( + CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![(public1.into(), signature1.clone().into())] + ), + pallet_crowdloan_rewards::Error::::InsufficientNumberOfValidProofs + ); + + // this should be valid + assert_ok!(CrowdloanRewards::change_association_with_relay_keys( + origin_of(AccountId::from(CHARLIE)), + AccountId::from(DAVE), + AccountId::from(CHARLIE), + vec![ + (public1.into(), signature1.into()), + (public2.into(), signature2.into()) + ] + )); + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(DAVE)) + .unwrap() + .claimed_reward, + (900_000 * MOVR) + ); + }); +} + +#[test] +fn claim_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + assert!(CrowdloanRewards::initialized()); + + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(CHARLIE)), 450_000 * MOVR); + // 30 percent initial payout + assert_eq!(Balances::balance(&AccountId::from(DAVE)), 450_000 * MOVR); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Alice uses the crowdloan precompile to claim through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + + // Construct the call data (selector, amount) + let mut call_data = Vec::::from([0u8; 4]); + call_data[0..4].copy_from_slice(&Keccak256::digest(b"claim()")[0..4]); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let vesting_period = 4 * WEEKS as u128; + let per_block = (1_050_000 * MOVR) / vesting_period; + + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)) + .unwrap() + .claimed_reward, + (450_000 * MOVR) + per_block + ); + }) +} + +#[test] +fn is_contributor_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Assert precompile reports Bob is not a contributor + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(AccountId::from(BOB).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(false); + + // Assert precompile reports Charlie is a nominator + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::is_contributor { + contributor: Address(AccountId::from(CHARLIE).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(true); + }) +} + +#[test] +fn reward_info_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + let expected_total: U256 = (1_500_000 * MOVR).into(); + let expected_claimed: U256 = (450_000 * MOVR).into(); + + // Assert precompile reports correct Charlie reward info. + Precompiles::new() + .prepare_test( + ALICE, + crowdloan_precompile_address, + CrowdloanRewardsPCall::reward_info { + contributor: Address(AccountId::from(CHARLIE).into()), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns((expected_total, expected_claimed)); + }) +} + +#[test] +fn update_reward_address_via_precompile() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_crowdloan_fund(3_000_000 * MOVR) + .build() + .execute_with(|| { + // set parachain inherent data + set_parachain_inherent_data(); + let init_block = CrowdloanRewards::init_vesting_block(); + // This matches the previous vesting + let end_block = init_block + 4 * WEEKS; + // Batch calls always succeed. We just need to check the inner event + assert_ok!( + RuntimeCall::Utility(pallet_utility::Call::::batch_all { + calls: vec![ + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [4u8; 32].into(), + Some(AccountId::from(CHARLIE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::initialize_reward_vec { + rewards: vec![( + [5u8; 32].into(), + Some(AccountId::from(DAVE)), + 1_500_000 * MOVR + )] + } + ), + RuntimeCall::CrowdloanRewards( + pallet_crowdloan_rewards::Call::::complete_initialization { + lease_ending_block: end_block + } + ) + ] + }) + .dispatch(root_origin()) + ); + + let crowdloan_precompile_address = H160::from_low_u64_be(2049); + + // Charlie uses the crowdloan precompile to update address through the EVM + let gas_limit = 100000u64; + let gas_price: U256 = BASE_FEE_GENESIS.into(); + + // Construct the input data to check if Bob is a contributor + let mut call_data = Vec::::from([0u8; 36]); + call_data[0..4] + .copy_from_slice(&Keccak256::digest(b"update_reward_address(address)")[0..4]); + call_data[16..36].copy_from_slice(&ALICE); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(CHARLIE), + target: crowdloan_precompile_address, + input: call_data, + value: U256::zero(), // No value sent in EVM + gas_limit, + max_fee_per_gas: gas_price, + max_priority_fee_per_gas: None, + nonce: None, // Use the next nonce + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + assert!(CrowdloanRewards::accounts_payable(&AccountId::from(CHARLIE)).is_none()); + assert_eq!( + CrowdloanRewards::accounts_payable(&AccountId::from(ALICE)) + .unwrap() + .claimed_reward, + (450_000 * MOVR) + ); + }) +} + +fn run_with_system_weight(w: Weight, mut assertions: F) +where + F: FnMut() -> (), +{ + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); +} + +#[test] +#[rustfmt::skip] +fn length_fee_is_sensible() { + use sp_runtime::testing::TestXt; + + // tests that length fee is sensible for a few hypothetical transactions + ExtBuilder::default().build().execute_with(|| { + let call = frame_system::Call::remark:: { remark: vec![] }; + let uxt: TestXt<_, ()> = TestXt::new(call, Some((1u64, ()))); + + let calc_fee = |len: u32| -> Balance { + moonriver_runtime::TransactionPayment::query_fee_details(uxt.clone(), len) + .inclusion_fee + .expect("fee should be calculated") + .len_fee + }; + + // editorconfig-checker-disable + // left: cost of length fee, right: size in bytes + // /------------- proportional component: O(N * 1B) + // | /- exponential component: O(N ** 3) + // | | + assert_eq!( 1_000_000_001, calc_fee(1)); + assert_eq!( 10_000_001_000, calc_fee(10)); + assert_eq!( 100_001_000_000, calc_fee(100)); + assert_eq!( 1_001_000_000_000, calc_fee(1_000)); + assert_eq!( 11_000_000_000_000, calc_fee(10_000)); // inflection point + assert_eq!( 1_100_000_000_000_000, calc_fee(100_000)); + assert_eq!( 1_001_000_000_000_000_000, calc_fee(1_000_000)); // one MOVR, ~ 1MB + assert_eq!( 1_000_010_000_000_000_000_000, calc_fee(10_000_000)); + assert_eq!(1_000_000_100_000_000_000_000_000, calc_fee(100_000_000)); + // editorconfig-checker-enable + }); +} + +#[test] +fn multiplier_can_grow_from_zero() { + use frame_support::traits::Get; + + let minimum_multiplier = moonriver_runtime::MinimumMultiplier::get(); + let target = moonriver_runtime::TargetBlockFullness::get() + * RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = + moonriver_runtime::SlowAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) +} + +#[test] +fn ethereum_invalid_transaction() { + ExtBuilder::default().build().execute_with(|| { + // Ensure an extrinsic not containing enough gas limit to store the transaction + // on chain is rejected. + assert_eq!( + Executive::apply_extrinsic(unchecked_eth_tx(INVALID_ETH_TX)), + Err( + sp_runtime::transaction_validity::TransactionValidityError::Invalid( + sp_runtime::transaction_validity::InvalidTransaction::Custom(0u8) + ) + ) + ); + }); +} + +#[test] +fn initial_gas_fee_is_correct() { + use fp_evm::FeeCalculator; + + ExtBuilder::default().build().execute_with(|| { + let multiplier = TransactionPayment::next_fee_multiplier(); + assert_eq!(multiplier, Multiplier::from(10u128)); + + assert_eq!( + TransactionPaymentAsGasPrice::min_gas_price(), + ( + 12_500_000_000u128.into(), + Weight::from_parts(25_000_000u64, 0) + ) + ); + }); +} + +#[test] +fn min_gas_fee_is_correct() { + use fp_evm::FeeCalculator; + use frame_support::traits::Hooks; + + ExtBuilder::default().build().execute_with(|| { + pallet_transaction_payment::NextFeeMultiplier::::put(Multiplier::from(0)); + TransactionPayment::on_finalize(System::block_number()); // should trigger min to kick in + + let multiplier = TransactionPayment::next_fee_multiplier(); + assert_eq!(multiplier, Multiplier::from(1u128)); + + assert_eq!( + TransactionPaymentAsGasPrice::min_gas_price(), + ( + 1_250_000_000u128.into(), + Weight::from_parts(25_000_000u64, 0) + ) + ); + }); +} + +#[test] +fn transfer_ed_0_substrate() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), (1 * MOVR) + (1 * WEI)), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // Substrate transfer + assert_ok!(Balances::transfer_allow_death( + origin_of(AccountId::from(ALICE)), + AccountId::from(BOB), + 1 * MOVR, + )); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI); + }); +} + +#[test] +fn transfer_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * MOVR) + (21_000 * BASE_FEE_GENESIS)) + (1 * WEI), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * MOVR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(BASE_FEE_GENESIS), + max_priority_fee_per_gas: Some(U256::from(BASE_FEE_GENESIS)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // 1 WEI is left in the account + assert_eq!(Balances::free_balance(AccountId::from(ALICE)), 1 * WEI,); + }); +} + +#[test] +fn refund_ed_0_evm() { + ExtBuilder::default() + .with_balances(vec![ + ( + AccountId::from(ALICE), + ((1 * MOVR) + (21_777 * BASE_FEE_GENESIS)), + ), + (AccountId::from(BOB), 0), + ]) + .build() + .execute_with(|| { + // EVM transfer that zeroes ALICE + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(ALICE), + target: H160::from(BOB), + input: Vec::new(), + value: (1 * MOVR).into(), + gas_limit: 21_777u64, + max_fee_per_gas: U256::from(BASE_FEE_GENESIS), + max_priority_fee_per_gas: Some(U256::from(BASE_FEE_GENESIS)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // ALICE is refunded + assert_eq!( + Balances::free_balance(AccountId::from(ALICE)), + 777 * BASE_FEE_GENESIS, + ); + }); +} + +#[test] +fn author_does_not_receive_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * MOVR) + (21_000 * (500 * GIGAWEI)), + )]) + .build() + .execute_with(|| { + // Some block author as seen by pallet-evm. + let author = AccountId::from(>::find_author()); + // Currently the default impl of the evm uses `deposit_into_existing`. + // If we were to use this implementation, and for an author to receive eventual tips, + // the account needs to be somehow initialized, otherwise the deposit would fail. + Balances::make_free_balance_be(&author, 100 * MOVR); + + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * MOVR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(300 * GIGAWEI), + max_priority_fee_per_gas: Some(U256::from(200 * GIGAWEI)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + // Author free balance didn't change. + assert_eq!(Balances::free_balance(author), 100 * MOVR,); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_with_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * MOVR) + (21_000 * (2 * BASE_FEE_GENESIS)), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * MOVR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(2u128 * BASE_FEE_GENESIS), + max_priority_fee_per_gas: Some(U256::from(2u128 * BASE_FEE_GENESIS)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + let fee = ((2 * BASE_FEE_GENESIS) * 21_000) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonriver_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn total_issuance_after_evm_transaction_without_priority_fee() { + ExtBuilder::default() + .with_balances(vec![( + AccountId::from(BOB), + (1 * MOVR) + (21_000 * (2 * BASE_FEE_GENESIS)), + )]) + .build() + .execute_with(|| { + let issuance_before = ::Currency::total_issuance(); + // EVM transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::::call { + source: H160::from(BOB), + target: H160::from(ALICE), + input: Vec::new(), + value: (1 * MOVR).into(), + gas_limit: 21_000u64, + max_fee_per_gas: U256::from(BASE_FEE_GENESIS), + max_priority_fee_per_gas: Some(U256::from(BASE_FEE_GENESIS)), + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let issuance_after = ::Currency::total_issuance(); + let fee = ((1 * BASE_FEE_GENESIS) * 21_000) as f64; + // 80% was burned. + let expected_burn = (fee * 0.8) as u128; + assert_eq!(issuance_after, issuance_before - expected_burn,); + // 20% was sent to treasury. + let expected_treasury = (fee * 0.2) as u128; + assert_eq!(moonriver_runtime::Treasury::pot(), expected_treasury); + }); +} + +#[test] +fn root_can_change_default_xcm_vers() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let source_id: moonriver_runtime::AssetId = source_location.clone().into(); + // Default XCM version is not set yet, so xtokens should fail because it does not + // know with which version to send + assert_noop!( + XTokens::transfer( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest.clone())), + WeightLimit::Limited(4000000000.into()) + ), + orml_xtokens::Error::::XcmExecutionFailed + ); + + // Root sets the defaultXcm + assert_ok!(PolkadotXcm::force_default_xcm_version( + root_origin(), + Some(2) + )); + + // Now transferring does not fail + assert_ok!(XTokens::transfer( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + Box::new(xcm::VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(4000000000.into()) + )); + }) +} + +#[test] +fn asset_can_be_registered() { + ExtBuilder::default().build().execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonriver_runtime::AssetId = source_location.clone().into(); + let asset_metadata = AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }; + assert_ok!(AssetManager::register_foreign_asset( + moonriver_runtime::RuntimeOrigin::root(), + source_location, + asset_metadata, + 1u128, + true + )); + assert!(AssetManager::asset_id_type(source_id).is_some()); + }); +} + +#[test] +fn local_assets_cannot_be_create_by_signed_origins() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR * SUPPLY_FACTOR), + (AccountId::from(BOB), 1_000 * MOVR * SUPPLY_FACTOR), + ]) + .build() + .execute_with(|| { + assert_noop!( + RuntimeCall::LocalAssets( + pallet_assets::Call::::create { + id: 11u128.into(), + admin: AccountId::from(ALICE), + min_balance: 1u128 + } + ) + .dispatch(::RuntimeOrigin::signed( + AccountId::from(ALICE) + )), + frame_system::Error::::CallFiltered + ); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_supply_and_balance() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * MOVR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Assert the asset has been created with the correct supply + assert_eq!(Assets::total_supply(relay_asset_id), 1_000 * MOVR); + + // Access totalSupply through precompile. Important that the context is correct + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::total_supply {}, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * MOVR)); + + // Access balanceOf through precompile + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(ALICE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(1000 * MOVR)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * MOVR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Transfer tokens from Aice to Bob, 400 MOVR. + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::transfer { + to: Address(BOB.into()), + value: { 400 * MOVR }.into(), + }, + ) + .expect_cost(23763) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * MOVR)), + )) + .execute_returns(true); + + // Make sure BOB has 400 MOVR + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(BOB.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * MOVR)); + }); +} + +#[test] +fn xcm_asset_erc20_precompiles_approve() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000 * MOVR)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .build() + .execute_with(|| { + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: AssetId = AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Aprove Bob for spending 400 MOVR from Alice + Precompiles::new() + .prepare_test( + ALICE, + asset_precompile_address, + LocalAssetsPCall::approve { + spender: Address(BOB.into()), + value: { 400 * MOVR }.into(), + }, + ) + .expect_cost(14210) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_APPROVAL, + H160::from(ALICE), + H160::from(BOB), + solidity::encode_event_data(U256::from(400 * MOVR)), + )) + .execute_returns(true); + + // Transfer tokens from Alice to Charlie by using BOB as origin + Precompiles::new() + .prepare_test( + BOB, + asset_precompile_address, + LocalAssetsPCall::transfer_from { + from: Address(ALICE.into()), + to: Address(CHARLIE.into()), + value: { 400 * MOVR }.into(), + }, + ) + .expect_cost(28991) + .expect_log(log3( + asset_precompile_address, + SELECTOR_LOG_TRANSFER, + H160::from(ALICE), + H160::from(CHARLIE), + solidity::encode_event_data(U256::from(400 * MOVR)), + )) + .execute_returns(true); + + // Make sure CHARLIE has 400 MOVR + Precompiles::new() + .prepare_test( + CHARLIE, + asset_precompile_address, + LocalAssetsPCall::balance_of { + who: Address(CHARLIE.into()), + }, + ) + .expect_cost(2000) + .expect_no_logs() + .execute_returns(U256::from(400 * MOVR)); + }); +} + +#[test] +fn xtokens_precompiles_transfer() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // We have the assetId that corresponds to the relay chain registered + let relay_asset_id: moonriver_runtime::AssetId = + AssetType::Xcm(MultiLocation::parent()).into(); + + // Its address is + let asset_precompile_address = Runtime::asset_id_to_account( + FOREIGN_ASSET_PRECOMPILE_ADDRESS_PREFIX, + relay_asset_id, + ); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // We use the address of the asset as an identifier of the asset we want to transferS + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer { + currency_address: Address(asset_precompile_address.into()), + amount: 500_000_000_000_000u128.into(), + destination: destination.clone(), + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()) + }) +} + +#[test] +fn xtokens_precompiles_transfer_multiasset() { + ExtBuilder::default() + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + let xtokens_precompile_address = H160::from_low_u64_be(2052); + + // Alice has 1000 tokens. She should be able to send through precompile + let destination = MultiLocation::new( + 1, + Junctions::X1(Junction::AccountId32 { + network: None, + id: [1u8; 32], + }), + ); + + // This time we transfer it through TransferMultiAsset + // Instead of the address, we encode directly the multilocation referencing the asset + Precompiles::new() + .prepare_test( + ALICE, + xtokens_precompile_address, + XtokensPCall::transfer_multiasset { + // We want to transfer the relay token + asset: MultiLocation::parent(), + amount: 500_000_000_000_000u128.into(), + destination, + weight: 4_000_000, + }, + ) + .expect_cost(57639) + .expect_no_logs() + .execute_returns(()); + }) +} + +#[test] +fn make_sure_polkadot_xcm_cannot_be_called() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let multiassets: MultiAssets = [MultiAsset { + id: Concrete(moonriver_runtime::xcm_config::SelfLocation::get()), + fun: Fungible(1000), + }] + .to_vec() + .into(); + assert_noop!( + RuntimeCall::PolkadotXcm(pallet_xcm::Call::::reserve_transfer_assets { + dest: Box::new(VersionedMultiLocation::V3(dest.clone())), + beneficiary: Box::new(VersionedMultiLocation::V3(dest)), + assets: Box::new(VersionedMultiAssets::V3(multiassets)), + fee_asset_item: 0, + }) + .dispatch(::RuntimeOrigin::signed( + AccountId::from(ALICE) + )), + frame_system::Error::::CallFiltered + ); + }); +} + +#[test] +fn transactor_cannot_use_more_than_max_weight() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let source_id: moonriver_runtime::AssetId = source_location.clone().into(); + assert_ok!(XcmTransactor::register( + root_origin(), + AccountId::from(ALICE), + 0, + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000.into(), + None + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + root_origin(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + 1 + )); + + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonriver_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new( + xcm::VersionedMultiLocation::V3(MultiLocation::parent()) + )), + fee_amount: None + }, + vec![], + // 2000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + assert_noop!( + XcmTransactor::transact_through_derivative( + origin_of(AccountId::from(ALICE)), + moonriver_runtime::xcm_config::Transactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsCurrencyId(CurrencyId::ForeignAsset(source_id)), + fee_amount: None + }, + vec![], + // 20000 is the max + TransactWeights { + transact_required_weight_at_most: 17001.into(), + overall_weight: None + }, + false + ), + pallet_xcm_transactor::Error::::MaxWeightTransactReached + ); + }) +} + +#[test] +fn transact_through_signed_precompile_works_v2() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::parent(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .expect_cost(17149) + .expect_no_logs() + .execute_returns(()); + }); +} + +#[test] +fn transact_through_signed_cannot_send_to_local_chain() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_safe_xcm_version(2) + .build() + .execute_with(|| { + // Destination + let dest = MultiLocation::here(); + + let fee_payer_asset = MultiLocation::parent(); + + let bytes = vec![1u8, 2u8, 3u8]; + + let total_weight = 1_000_000_000u64; + + let xcm_transactor_v2_precompile_address = H160::from_low_u64_be(2061); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_transactor_v2_precompile_address, + XcmTransactorV2PCall::transact_through_signed_multilocation { + dest, + fee_asset: fee_payer_asset, + weight: 4_000_000, + call: bytes.into(), + fee_amount: u128::from(total_weight).into(), + overall_weight: total_weight, + }, + ) + .execute_reverts(|output| { + from_utf8(&output) + .unwrap() + .contains("Dispatched call failed with error:") + && from_utf8(&output).unwrap().contains("ErrorValidating") + }); + }); +} + +#[test] +fn call_xtokens_with_fee() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_safe_xcm_version(2) + .with_xcm_assets(vec![XcmAssetInitialization { + asset_type: AssetType::Xcm(MultiLocation::parent()), + metadata: AssetRegistrarMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + is_frozen: false, + }, + balances: vec![(AccountId::from(ALICE), 1_000_000_000_000_000)], + is_sufficient: true, + }]) + .build() + .execute_with(|| { + let source_location = AssetType::Xcm(MultiLocation::parent()); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: [1u8; 32], + }), + }; + let source_id: moonriver_runtime::AssetId = source_location.clone().into(); + + let before_balance = Assets::balance(source_id, &AccountId::from(ALICE)); + + // We are able to transfer with fee + assert_ok!(XTokens::transfer_with_fee( + origin_of(AccountId::from(ALICE)), + CurrencyId::ForeignAsset(source_id), + 100_000_000_000_000, + 100, + Box::new(xcm::VersionedMultiLocation::V3(dest.clone())), + WeightLimit::Limited(4000000000.into()) + ),); + + let after_balance = Assets::balance(source_id, &AccountId::from(ALICE)); + // At least these much (plus fees) should have been charged + assert_eq!(before_balance - 100_000_000_000_000 - 100, after_balance); + }); +} + +#[test] +fn test_xcm_utils_ml_tp_account() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_address_parent: H160 = + ParentIsPreset::::convert_location(&MultiLocation::parent()) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: MultiLocation::parent(), + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parent)); + + let parachain_2000_multilocation = MultiLocation::new(1, X1(Parachain(2000))); + let expected_address_parachain: H160 = + SiblingParachainConvertsVia::::convert_location( + ¶chain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_parachain)); + + let alice_in_parachain_2000_multilocation = MultiLocation::new( + 1, + X2( + Parachain(2000), + AccountKey20 { + network: None, + key: ALICE, + }, + ), + ); + let expected_address_alice_in_parachain_2000: H160 = + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &alice_in_parachain_2000_multilocation, + ) + .unwrap() + .into(); + + Precompiles::new() + .prepare_test( + ALICE, + xcm_utils_precompile_address, + XcmUtilsPCall::multilocation_to_address { + multilocation: alice_in_parachain_2000_multilocation, + }, + ) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(Address(expected_address_alice_in_parachain_2000)); + }); +} + +#[test] +fn test_xcm_utils_weight_message() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let expected_weight = + XcmWeight::::clear_origin().ref_time(); + + let message: Vec = xcm::VersionedXcm::<()>::V3(Xcm(vec![ClearOrigin])).encode(); + + let input = XcmUtilsPCall::weight_message { + message: message.into(), + }; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(0) + .expect_no_logs() + .execute_returns(expected_weight); + }); +} + +#[test] +fn test_xcm_utils_get_units_per_second() { + ExtBuilder::default().build().execute_with(|| { + let xcm_utils_precompile_address = H160::from_low_u64_be(2060); + let multilocation = SelfReserve::get(); + + let input = XcmUtilsPCall::get_units_per_second { multilocation }; + + let expected_units = + WEIGHT_REF_TIME_PER_SECOND as u128 * moonriver_runtime::currency::WEIGHT_FEE; + + Precompiles::new() + .prepare_test(ALICE, xcm_utils_precompile_address, input) + .expect_cost(1000) + .expect_no_logs() + .execute_returns(expected_units); + }); +} + +#[test] +fn precompile_existence() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let precompile_addresses: std::collections::BTreeSet<_> = vec![ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 1024, 1025, 1026, 2048, 2049, 2050, 2051, 2052, 2053, 2054, + 2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, + 2069, 2070, 2071, 2072, + ] + .into_iter() + .map(H160::from_low_u64_be) + .collect(); + + for i in 0..3000 { + let address = H160::from_low_u64_be(i); + + if precompile_addresses.contains(&address) { + assert!( + is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return true", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_some(), + "execute({},..) should return Some(_)", + i + ); + } else { + assert!( + !is_precompile_or_fail::(address, 100_000u64).expect("to be ok"), + "is_precompile({}) should return false", + i + ); + + assert!( + precompiles + .execute(&mut MockHandle::new( + address, + Context { + address, + caller: H160::zero(), + apparent_value: U256::zero() + } + ),) + .is_none(), + "execute({},..) should return None", + i + ); + } + } + }); +} + +#[test] +fn removed_precompiles() { + ExtBuilder::default().build().execute_with(|| { + let precompiles = Precompiles::new(); + let removed_precompiles = [1025]; + + for i in 1..3000 { + let address = H160::from_low_u64_be(i); + + if !is_precompile_or_fail::(address, 100_000u64).expect("to be ok") { + continue; + } + + if !removed_precompiles.contains(&i) { + assert!( + match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} should be an active precompile" + ); + continue; + } + + assert!( + !match precompiles.is_active_precompile(address, 100_000u64) { + IsPrecompileResult::Answer { is_precompile, .. } => is_precompile, + _ => false, + }, + "{i} shouldn't be an active precompile" + ); + + precompiles + .prepare_test(Alice, address, []) + .execute_reverts(|out| out == b"Removed precompile"); + } + }) +} + +#[test] +fn deal_with_fees_handles_tip() { + use frame_support::traits::OnUnbalanced; + use moonriver_runtime::{DealWithFees, Treasury}; + use pallet_balances::NegativeImbalance; + + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 10_000)]) + .build() + .execute_with(|| { + // Alice has 10_000, which makes inital supply 10_000. + // drop()ing the NegativeImbalance below will cause the total_supply to be decreased + // incorrectly (since there was never a withdraw to begin with), which in this case has + // the desired effect of showing that currency was burned. + let total_supply_before = Balances::total_issuance(); + assert_eq!(total_supply_before, 10_000); + + let fees_then_tips = vec![ + NegativeImbalance::::new(100), + NegativeImbalance::::new(1_000), + ]; + DealWithFees::on_unbalanceds(fees_then_tips.into_iter()); + + // treasury should have received 20% + assert_eq!(Balances::free_balance(&Treasury::account_id()), 220); + + // verify 80% burned + let total_supply_after = Balances::total_issuance(); + assert_eq!(total_supply_before - total_supply_after, 880); + }); +} + +#[test] +fn evm_revert_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + // Batch a transfer followed by an invalid call to batch. + // Thus BatchAll will revert the transfer. + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + input: BatchPCall::batch_all { + to: vec![Address(BOB.into()), Address(batch_precompile_address)].into(), + value: vec![U256::from(1 * MOVR), U256::zero()].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: U256::from(BASE_FEE_GENESIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 0, "there should be no transfer event"); + }); +} + +#[test] +fn evm_success_keeps_substrate_events() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .build() + .execute_with(|| { + let batch_precompile_address = H160::from_low_u64_be(2056); + + assert_ok!(RuntimeCall::EVM(pallet_evm::Call::call { + source: ALICE.into(), + target: batch_precompile_address, + input: BatchPCall::batch_all { + to: vec![Address(BOB.into())].into(), + value: vec![U256::from(1 * MOVR)].into(), + call_data: vec![].into(), + gas_limit: vec![].into() + } + .into(), + value: U256::zero(), // No value sent in EVM + gas_limit: 500_000, + max_fee_per_gas: U256::from(BASE_FEE_GENESIS), + max_priority_fee_per_gas: None, + nonce: Some(U256::from(0)), + access_list: Vec::new(), + }) + .dispatch(::RuntimeOrigin::root())); + + let transfer_count = System::events() + .iter() + .filter(|r| match r.event { + RuntimeEvent::Balances(pallet_balances::Event::Transfer { .. }) => true, + _ => false, + }) + .count(); + + assert_eq!(transfer_count, 1, "there should be 1 transfer event"); + }); +} + +#[cfg(test)] +mod fee_tests { + use super::*; + use frame_support::{ + traits::ConstU128, + weights::{ConstantMultiplier, WeightToFee}, + }; + use moonriver_runtime::{ + currency, LengthToFee, MinimumMultiplier, RuntimeBlockWeights, SlowAdjustingFeeUpdate, + TargetBlockFullness, TransactionPayment, + }; + use sp_core::Get; + use sp_runtime::FixedPointNumber; + + fn run_with_system_weight(w: Weight, mut assertions: F) + where + F: FnMut() -> (), + { + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + System::set_block_consumed_resources(w, 0); + assertions() + }); + } + + #[test] + fn test_multiplier_can_grow_from_zero() { + let minimum_multiplier = MinimumMultiplier::get(); + let target = TargetBlockFullness::get() + * RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .max_total + .unwrap(); + // if the min is too small, then this will not change, and we are doomed forever. + // the weight is 1/100th bigger than target. + run_with_system_weight(target * 101 / 100, || { + let next = SlowAdjustingFeeUpdate::::convert(minimum_multiplier); + assert!( + next > minimum_multiplier, + "{:?} !>= {:?}", + next, + minimum_multiplier + ); + }) + } + + #[test] + fn test_fee_calculation() { + let base_extrinsic = RuntimeBlockWeights::get() + .get(DispatchClass::Normal) + .base_extrinsic; + let multiplier = sp_runtime::FixedU128::from_float(0.999000000000000000); + let extrinsic_len = 100u32; + let extrinsic_weight = Weight::from_parts(5_000u64, 1); + let tip = 42u128; + type WeightToFeeImpl = ConstantMultiplier>; + type LengthToFeeImpl = LengthToFee; + + // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip + let expected_fee = WeightToFeeImpl::weight_to_fee(&base_extrinsic) + + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee(&extrinsic_weight)) + + LengthToFeeImpl::weight_to_fee(&(Weight::from_parts(extrinsic_len as u64, 1))) + + tip; + + let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap() + .into(); + t.execute_with(|| { + pallet_transaction_payment::NextFeeMultiplier::::set(multiplier); + let actual_fee = TransactionPayment::compute_fee( + extrinsic_len, + &frame_support::dispatch::DispatchInfo { + class: DispatchClass::Normal, + pays_fee: frame_support::dispatch::Pays::Yes, + weight: extrinsic_weight, + }, + tip, + ); + + assert_eq!( + expected_fee, + actual_fee, + "The actual fee did not match the expected fee, diff {}", + actual_fee - expected_fee + ); + }); + } +} diff --git a/tracing/2700/runtime/moonriver/tests/runtime_apis.rs b/tracing/2700/runtime/moonriver/tests/runtime_apis.rs new file mode 100644 index 00000000..020ae32f --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/runtime_apis.rs @@ -0,0 +1,396 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonriver Runtime Api Integration Tests + +mod common; +use common::*; + +use fp_evm::GenesisAccount; +use frame_support::assert_ok; +use nimbus_primitives::NimbusId; +use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; +use sp_core::{ByteArray, H160, H256, U256}; + +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; +use std::{collections::BTreeMap, str::FromStr}; + +#[test] +fn ethereum_runtime_rpc_api_chain_id() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!(Runtime::chain_id(), CHAIN_ID); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_basic() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * MOVR)]) + .build() + .execute_with(|| { + assert_eq!( + Runtime::account_basic(H160::from(ALICE)), + EVMAccount { + balance: U256::from(2_000 * MOVR), + nonce: U256::zero() + } + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_gas_price() { + ExtBuilder::default().build().execute_with(|| { + assert_eq!( + Runtime::gas_price(), + TransactionPaymentAsGasPrice::min_gas_price().0 + ); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_account_code_at() { + let address = H160::from(EVM_CONTRACT); + let code: Vec = vec![1, 2, 3, 4, 5]; + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: code.clone(), + nonce: Default::default(), + storage: Default::default(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::account_code_at(address), code); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_author() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + assert_eq!(Runtime::author(), H160::from(ALICE)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_storage_at() { + let address = H160::from(EVM_CONTRACT); + let mut key = [0u8; 32]; + key[31..32].copy_from_slice(&[6u8][..]); + let mut value = [0u8; 32]; + value[31..32].copy_from_slice(&[7u8][..]); + let item = H256::from_slice(&key[..]); + let mut storage: BTreeMap = BTreeMap::new(); + storage.insert(H256::from_slice(&key[..]), item); + ExtBuilder::default() + .with_evm_accounts({ + let mut map = BTreeMap::new(); + map.insert( + address, + GenesisAccount { + balance: U256::zero(), + code: Vec::new(), + nonce: Default::default(), + storage: storage.clone(), + }, + ); + map + }) + .build() + .execute_with(|| { + assert_eq!(Runtime::storage_at(address, U256::from(6)), item); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_call() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 2_000 * MOVR), + ]) + .build() + .execute_with(|| { + let execution_result = Runtime::call( + H160::from(ALICE), // from + H160::from(BOB), // to + Vec::new(), // data + U256::from(1000u64), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_create() { + ExtBuilder::default() + .with_balances(vec![(AccountId::from(ALICE), 2_000 * MOVR)]) + .build() + .execute_with(|| { + let execution_result = Runtime::create( + H160::from(ALICE), // from + vec![0, 1, 1, 0], // data + U256::zero(), // value + U256::from(100000u64), // gas_limit + None, // max_fee_per_gas + None, // max_priority_fee_per_gas + None, // nonce + false, // estimate + None, // access_list + ); + assert!(execution_result.is_ok()); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_transaction_statuses() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24ff3a9cf04c71dbc94d0b566f7a27b94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 2_000 * MOVR), + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + // set_author(NimbusId::from_slice(&ALICE_NIMBUS)); + let result = + Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)).expect("Apply result."); + assert_eq!(result, Ok(())); + rpc_run_to_block(2); + let statuses = + Runtime::current_transaction_statuses().expect("Transaction statuses result."); + assert_eq!(statuses.len(), 1); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_block() { + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + // set_author(NimbusId::from_slice(&ALICE_NIMBUS)); + rpc_run_to_block(2); + let block = Runtime::current_block().expect("Block result."); + assert_eq!(block.header.number, U256::from(1u8)); + }); +} + +#[test] +fn ethereum_runtime_rpc_api_current_receipts() { + let alith = ::AddressMapping::into_account_id( + H160::from_str("f24ff3a9cf04c71dbc94d0b566f7a27b94566cac") + .expect("internal H160 is valid; qed"), + ); + ExtBuilder::default() + .with_collators(vec![(AccountId::from(ALICE), 1_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .with_balances(vec![ + (alith, 2_000 * MOVR), + (AccountId::from(ALICE), 2_000 * MOVR), + (AccountId::from(BOB), 1_000 * MOVR), + ]) + .with_delegations(vec![( + AccountId::from(BOB), + AccountId::from(ALICE), + 500 * MOVR, + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + // set_author(NimbusId::from_slice(&ALICE_NIMBUS)); + let result = + Executive::apply_extrinsic(unchecked_eth_tx(VALID_ETH_TX)).expect("Apply result."); + assert_eq!(result, Ok(())); + rpc_run_to_block(2); + let receipts = Runtime::current_receipts().expect("Receipts result."); + assert_eq!(receipts.len(), 1); + }); +} + +#[test] +fn txpool_runtime_api_extrinsic_filter() { + ExtBuilder::default().build().execute_with(|| { + let non_eth_uxt = UncheckedExtrinsic::new_unsigned( + pallet_balances::Call::::transfer_allow_death { + dest: AccountId::from(BOB), + value: 1 * MOVR, + } + .into(), + ); + let eth_uxt = unchecked_eth_tx(VALID_ETH_TX); + let txpool = >::extrinsic_filter( + vec![eth_uxt.clone(), non_eth_uxt.clone()], + vec![unchecked_eth_tx(VALID_ETH_TX), non_eth_uxt], + ); + assert_eq!(txpool.ready.len(), 1); + assert_eq!(txpool.future.len(), 1); + }); +} + +#[test] +fn can_author_when_selected_is_empty() { + ExtBuilder::default() + .with_balances(vec![ + (AccountId::from(ALICE), 20_000_000 * MOVR), + (AccountId::from(BOB), 10_000_000 * MOVR), + ]) + .with_collators(vec![(AccountId::from(ALICE), 2_000_000 * MOVR)]) + .with_mappings(vec![( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + AccountId::from(ALICE), + )]) + .build() + .execute_with(|| { + set_parachain_inherent_data(); + run_to_block(2, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 1); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: Default::default(), + parent_hash: Default::default(), + state_root: Default::default(), + }; + + // Base case: ALICE can author blocks when she is the only candidate + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Remove ALICE from candidate pool, leaving the candidate_pool empty + assert_ok!(ParachainStaking::go_offline(origin_of(AccountId::from( + ALICE + )))); + + // Need to fast forward to right before the next session, which is when selected candidates + // will be updated. We want to test the creation of the first block of the next session. + run_to_block(1799, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1799, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + + // Check that it works as expected after session update + run_to_block(1800, Some(NimbusId::from_slice(&ALICE_NIMBUS).unwrap())); + + assert_eq!(ParachainStaking::candidate_pool().0.len(), 0); + + let slot_number = 0; + let parent = Header { + digest: Default::default(), + extrinsics_root: Default::default(), + number: 1800, + parent_hash: Default::default(), + state_root: Default::default(), + }; + + let can_author_block = Runtime::can_author( + NimbusId::from_slice(&ALICE_NIMBUS).unwrap(), + slot_number, + &parent, + ); + + assert!(can_author_block); + }); +} diff --git a/tracing/2700/runtime/moonriver/tests/xcm_mock/mod.rs b/tracing/2700/runtime/moonriver/tests/xcm_mock/mod.rs new file mode 100644 index 00000000..b2910d17 --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/xcm_mock/mod.rs @@ -0,0 +1,275 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +pub mod parachain; +pub mod relay_chain; +pub mod statemine_like; + +use cumulus_primitives_core::ParaId; +use pallet_xcm_transactor::relay_indices::*; +use sp_runtime::traits::AccountIdConversion; +use sp_runtime::{AccountId32, BuildStorage}; +use xcm_simulator::{decl_test_network, decl_test_parachain, decl_test_relay_chain, TestExt}; + +use polkadot_runtime_parachains::configuration::{ + GenesisConfig as ConfigurationGenesisConfig, HostConfiguration, +}; +use polkadot_runtime_parachains::paras::{ + GenesisConfig as ParasGenesisConfig, ParaGenesisArgs, ParaKind, +}; +use sp_core::{H160, U256}; +use std::{collections::BTreeMap, str::FromStr}; + +pub const PARAALICE: [u8; 20] = [1u8; 20]; +pub const RELAYALICE: AccountId32 = AccountId32::new([0u8; 32]); +pub const RELAYBOB: AccountId32 = AccountId32::new([2u8; 32]); + +pub fn para_a_account() -> AccountId32 { + ParaId::from(1).into_account_truncating() +} + +pub fn para_b_account() -> AccountId32 { + ParaId::from(2).into_account_truncating() +} + +pub fn para_a_account_20() -> parachain::AccountId { + ParaId::from(1).into_account_truncating() +} + +pub fn evm_account() -> H160 { + H160::from_str("1000000000000000000000000000000000000001").unwrap() +} + +pub fn mock_para_genesis_info() -> ParaGenesisArgs { + ParaGenesisArgs { + genesis_head: vec![1u8].into(), + validation_code: vec![1u8].into(), + para_kind: ParaKind::Parachain, + } +} + +pub fn mock_relay_config() -> HostConfiguration { + HostConfiguration:: { + hrmp_channel_max_capacity: u32::MAX, + hrmp_channel_max_total_size: u32::MAX, + hrmp_max_parachain_inbound_channels: 10, + hrmp_max_parachain_outbound_channels: 10, + hrmp_channel_max_message_size: u32::MAX, + // Changed to avoid aritmetic errors within hrmp_close + max_downward_message_size: 100_000u32, + ..Default::default() + } +} + +decl_test_parachain! { + pub struct ParaA { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(1), + } +} + +decl_test_parachain! { + pub struct ParaB { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(2), + } +} + +decl_test_parachain! { + pub struct ParaC { + Runtime = parachain::Runtime, + XcmpMessageHandler = parachain::MsgQueue, + DmpMessageHandler = parachain::MsgQueue, + new_ext = para_ext(3), + } +} + +decl_test_parachain! { + pub struct Statemine { + Runtime = statemine_like::Runtime, + XcmpMessageHandler = statemine_like::MsgQueue, + DmpMessageHandler = statemine_like::MsgQueue, + new_ext = statemine_ext(4), + } +} + +decl_test_relay_chain! { + pub struct Relay { + Runtime = relay_chain::Runtime, + RuntimeCall = relay_chain::RuntimeCall, + RuntimeEvent = relay_chain::RuntimeEvent, + XcmConfig = relay_chain::XcmConfig, + MessageQueue = relay_chain::MessageQueue, + System = relay_chain::System, + new_ext = relay_ext(vec![1, 2, 3, 4]), + } +} + +decl_test_network! { + pub struct MockNet { + relay_chain = Relay, + parachains = vec![ + (1, ParaA), + (2, ParaB), + (3, ParaC), + (4, Statemine), + ], + } +} + +pub const INITIAL_BALANCE: u128 = 10_000_000_000_000_000; + +pub const INITIAL_EVM_BALANCE: u128 = 0; +pub const INITIAL_EVM_NONCE: u32 = 1; + +pub fn para_ext(para_id: u32) -> sp_io::TestExternalities { + use parachain::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(PARAALICE.into(), INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + pallet_xcm_transactor::GenesisConfig:: { + // match relay runtime construct_runtime order in xcm_mock::relay_chain + relay_indices: RelayChainIndices { + hrmp: 6u8, + init_open_channel: 0u8, + accept_open_channel: 1u8, + close_channel: 2u8, + cancel_open_request: 6u8, + ..Default::default() + }, + ..Default::default() + } + .assimilate_storage(&mut t) + .unwrap(); + + // EVM accounts are self-sufficient. + let mut evm_accounts = BTreeMap::new(); + evm_accounts.insert( + evm_account(), + fp_evm::GenesisAccount { + nonce: U256::from(INITIAL_EVM_NONCE), + balance: U256::from(INITIAL_EVM_BALANCE), + storage: Default::default(), + code: vec![ + 0x00, // STOP + ], + }, + ); + + let genesis_config = pallet_evm::GenesisConfig:: { + accounts: evm_accounts, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn statemine_ext(para_id: u32) -> sp_io::TestExternalities { + use statemine_like::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![ + (RELAYALICE.into(), INITIAL_BALANCE), + (RELAYBOB.into(), INITIAL_BALANCE), + ], + } + .assimilate_storage(&mut t) + .unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} + +pub fn relay_ext(paras: Vec) -> sp_io::TestExternalities { + use relay_chain::{Runtime, System}; + + let mut t = frame_system::GenesisConfig::::default() + .build_storage() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(RELAYALICE, INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + let para_genesis: Vec<(ParaId, ParaGenesisArgs)> = paras + .iter() + .map(|¶_id| (para_id.into(), mock_para_genesis_info())) + .collect(); + + let genesis_config = ConfigurationGenesisConfig:: { + config: mock_relay_config(), + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let genesis_config = ParasGenesisConfig:: { + paras: para_genesis, + ..Default::default() + }; + genesis_config.assimilate_storage(&mut t).unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + }); + ext +} + +pub type RelayChainPalletXcm = pallet_xcm::Pallet; +pub type Hrmp = polkadot_runtime_parachains::hrmp::Pallet; + +pub type StatemineBalances = pallet_balances::Pallet; +pub type StatemineChainPalletXcm = pallet_xcm::Pallet; +pub type StatemineAssets = pallet_assets::Pallet; + +pub type ParachainPalletXcm = pallet_xcm::Pallet; +pub type Assets = pallet_assets::Pallet; +pub type LocalAssets = pallet_assets::Pallet; + +pub type Balances = pallet_balances::Pallet; +pub type Treasury = pallet_treasury::Pallet; +pub type AssetManager = pallet_asset_manager::Pallet; +pub type XTokens = orml_xtokens::Pallet; +pub type RelayBalances = pallet_balances::Pallet; +pub type ParaBalances = pallet_balances::Pallet; +pub type XcmTransactor = pallet_xcm_transactor::Pallet; diff --git a/tracing/2700/runtime/moonriver/tests/xcm_mock/parachain.rs b/tracing/2700/runtime/moonriver/tests/xcm_mock/parachain.rs new file mode 100644 index 00000000..3e5b1f32 --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/xcm_mock/parachain.rs @@ -0,0 +1,1234 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Parachain runtime mock. + +use frame_support::{ + construct_runtime, + dispatch::GetDispatchInfo, + ensure, parameter_types, + traits::{ + AsEnsureOriginWithArg, ConstU32, Everything, Get, InstanceFilter, Nothing, PalletInfoAccess, + }, + weights::Weight, + PalletId, +}; +use frame_system::{pallet_prelude::BlockNumberFor, EnsureNever, EnsureRoot}; +use pallet_xcm::migration::v1::VersionUncheckedMigrateToV1; +use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; +use sp_core::H256; +use sp_runtime::{ + traits::{BlakeTwo256, Hash, IdentityLookup, MaybeEquivalence, Zero}, + Permill, +}; +use sp_std::{convert::TryFrom, prelude::*}; +use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; + +use cumulus_primitives_core::relay_chain::HrmpChannelId; +use orml_traits::parameter_type_with_key; +use pallet_ethereum::PostLogContent; +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; +use polkadot_parachain::primitives::{Id as ParaId, Sibling}; +use xcm::latest::{ + AssetId as XcmAssetId, Error as XcmError, ExecuteXcm, + Junction::{PalletInstance, Parachain}, + Junctions, MultiLocation, NetworkId, Outcome, Xcm, +}; +use xcm_builder::{ + AccountKey20Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AsPrefixedGeneralIndex, ConvertedConcreteId, + CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; + +#[cfg(feature = "runtime-benchmarks")] +use moonbeam_runtime_common::benchmarking::BenchmarkHelper as ArgumentsBenchmarkHelper; +use scale_info::TypeInfo; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; + +pub type AccountId = moonbeam_core_primitives::AccountId; +pub type Balance = u128; +pub type AssetId = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 0; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +pub type ForeignAssetInstance = (); +pub type LocalAssetInstance = pallet_assets::Instance1; + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 1; // Does not really matter as this will be only called by root + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = pallet_assets::weights::SubstrateWeight; + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + AccountKey20Aliases, + // Generate remote accounts according to polkadot standards + xcm_builder::HashedDescriptionDescribeFamilyAllTerminal, +); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, + SignedAccountKey20AsNative, +); + +parameter_types! { + pub const UnitWeightCost: Weight = Weight::from_parts(1u64, 1u64); + pub MaxInstructions: u32 = 100; +} + +// Instructing how incoming xcm assets will be handled +pub type ForeignFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + // Do a simple punn to convert an AccountId32 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleports. + NoChecking, + // We dont track any teleports + (), +>; + +pub type LocalAssetTransactor = XcmCurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching any of the locations in + // SelfReserveRepresentations + IsConcrete, + // We can convert the MultiLocations with our converter above: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont allow teleport + (), +>; + +/// Means for transacting local assets besides the native currency on this chain. +pub type LocalFungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + LocalAssets, + // Use this currency when it is a fungible asset matching the given location or name: + ( + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + ), + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We dont want to allow teleporting assets + NoChecking, + // The account to use for tracking teleports. + (), +>; + +// We use both transactors +pub type AssetTransactors = ( + LocalAssetTransactor, + ForeignFungiblesTransactor, + LocalFungiblesTransactor, +); + +pub type XcmRouter = super::ParachainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + /// Xcm fees will go to the treasury account + pub XcmFeesAccount: AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +pub type XcmFeesToAccount_ = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + AccountId, + XcmFeesAccount, +>; + +parameter_types! { + // We cannot skip the native trader for some specific tests, so we will have to work with + // a native trader that charges same number of units as weight + pub ParaTokensPerSecond: (XcmAssetId, u128, u128) = ( + Concrete(SelfReserve::get()), + 1000000000000, + 0, + ); +} + +parameter_types! { + pub const RelayNetwork: NetworkId = NetworkId::Polkadot; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + + pub LocalAssetsPalletLocation: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + + // This is used to match it against our Balances pallet when we receive such a MultiLocation + // (Parent, Self Para Id, Self Balances pallet index) + pub SelfReserve: MultiLocation = MultiLocation { + parents:0, + interior: Junctions::X1( + PalletInstance(::index() as u8) + ) + }; + pub const MaxAssetsIntoHolding: u32 = 64; +} + +use frame_system::RawOrigin; +use sp_runtime::traits::PostDispatchInfoOf; +use sp_runtime::DispatchErrorWithPostInfo; +use xcm_executor::traits::CallDispatcher; +moonbeam_runtime_common::impl_moonbeam_xcm_call!(); + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = orml_xcm_support::MultiNativeAsset< + xcm_primitives::AbsoluteAndRelativeReserve, + >; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + // We use three traders + // When we receive either representation of the self-reserve asset, + // When we receive a non-reserve asset, we use AssetManager to fetch how many + // units per second we should charge + type Trader = ( + FixedRateOfFungible, + xcm_primitives::FirstAssetTrader, + ); + + type ResponseHandler = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type CallDispatcher = MoonbeamCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Our currencyId. We distinguish for now between SelfReserve, and Others, defined by their Id. +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum CurrencyId { + SelfReserve, + ForeignAsset(AssetId), + LocalAssetReserve(AssetId), +} + +// How to convert from CurrencyId to MultiLocation +pub struct CurrencyIdtoMultiLocation(sp_std::marker::PhantomData); +impl sp_runtime::traits::Convert> + for CurrencyIdtoMultiLocation +where + AssetXConverter: MaybeEquivalence, +{ + fn convert(currency: CurrencyId) -> Option { + match currency { + CurrencyId::SelfReserve => { + // For now and until Xtokens is adapted to handle 0.9.16 version we use + // the old anchoring here + // This is not a problem in either cases, since the view of the destination + // chain does not change + // TODO! change this to NewAnchoringSelfReserve once xtokens is adapted for it + let multi: MultiLocation = SelfReserve::get(); + Some(multi) + } + CurrencyId::ForeignAsset(asset) => AssetXConverter::convert_back(&asset), + CurrencyId::LocalAssetReserve(asset) => { + let mut location = LocalAssetsPalletLocation::get(); + location.push_interior(Junction::GeneralIndex(asset)).ok(); + Some(location) + } + } + } +} + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxAssetsForTransfer: usize = 2; + pub SelfLocation: MultiLocation = MultiLocation::here(); + pub SelfLocationAbsolute: MultiLocation = MultiLocation { + parents:1, + interior: Junctions::X1( + Parachain(MsgQueue::parachain_id().into()) + ) + }; +} + +parameter_type_with_key! { + pub ParachainMinFee: |location: MultiLocation| -> Option { + match (location.parents, location.first_interior()) { + (1, Some(Parachain(4u32))) => Some(50u128), + _ => None, + } + }; +} + +// The XCM message wrapper wrapper +impl orml_xtokens::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdConvert = + CurrencyIdtoMultiLocation>; + type XcmExecutor = XcmExecutor; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type BaseXcmWeight = BaseXcmWeight; + type UniversalLocation = UniversalLocation; + type MaxAssetsForTransfer = MaxAssetsForTransfer; + type MinXcmFee = ParachainMinFee; + type MultiLocationsFilter = Everything; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const ProposalBondMinimum: Balance = 0; + pub const SpendPeriod: u32 = 0; + pub const TreasuryId: PalletId = PalletId(*b"pc/trsry"); + pub const MaxApprovals: u32 = 100; + pub TreasuryAccount: AccountId = Treasury::account_id(); +} + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + type ApproveOrigin = EnsureRoot; + type RejectOrigin = EnsureRoot; + type RuntimeEvent = RuntimeEvent; + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ProposalBondMinimum; + type SpendPeriod = SpendPeriod; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = MaxApprovals; + type WeightInfo = (); + type SpendFunds = (); + type ProposalBondMaximum = (); + type SpendOrigin = frame_support::traits::NeverEnsureOrigin; // Same as Polkadot + type AssetKind = (); + type Beneficiary = AccountId; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayFromAccount; + type BalanceConverter = UnityAssetBalanceConversion; + type PayoutPeriod = ConstU32<0>; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = ArgumentsBenchmarkHelper; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} + +// Pallet to provide the version, used to test runtime upgrade version changes +#[frame_support::pallet] +pub mod mock_version_changer { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_version)] + pub(super) type CurrentVersion = StorageValue<_, XcmVersion, ValueQuery>; + + impl Get for Pallet { + fn get() -> XcmVersion { + Self::current_version() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + VersionChanged(XcmVersion), + } + + impl Pallet { + pub fn set_version(version: XcmVersion) { + CurrentVersion::::put(version); + Self::deposit_event(Event::VersionChanged(version)); + } + } +} + +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +impl mock_version_changer::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +pub type LocalOriginToLocation = + xcm_primitives::SignedToAccountId20; + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = frame_support::traits::Nothing; + type XcmExecutor = XcmExecutor; + // Do not allow teleports + type XcmTeleportFilter = Nothing; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + // We use a custom one to test runtime ugprades + type AdvertisedXcmVersion = XcmVersioner; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +// Our AssetType. For now we only handle Xcm Assets +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum AssetType { + Xcm(MultiLocation), +} +impl Default for AssetType { + fn default() -> Self { + Self::Xcm(MultiLocation::here()) + } +} + +impl From for AssetType { + fn from(location: MultiLocation) -> Self { + Self::Xcm(location) + } +} + +impl Into> for AssetType { + fn into(self) -> Option { + match self { + Self::Xcm(location) => Some(location), + } + } +} + +// Implementation on how to retrieve the AssetId from an AssetType +// We simply hash the AssetType and take the lowest 128 bits +impl From for AssetId { + fn from(asset: AssetType) -> AssetId { + match asset { + AssetType::Xcm(id) => { + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = id.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } + } + } +} + +// We instruct how to register the Assets +// In this case, we tell it to Create an Asset in pallet-assets +pub struct AssetRegistrar; +use frame_support::pallet_prelude::DispatchResult; +impl pallet_asset_manager::AssetRegistrar for AssetRegistrar { + fn create_foreign_asset( + asset: AssetId, + min_balance: Balance, + metadata: AssetMetadata, + is_sufficient: bool, + ) -> DispatchResult { + Assets::force_create( + RuntimeOrigin::root(), + asset, + AssetManager::account_id(), + is_sufficient, + min_balance, + )?; + + Assets::force_set_metadata( + RuntimeOrigin::root(), + asset, + metadata.name, + metadata.symbol, + metadata.decimals, + false, + ) + } + + fn create_local_asset( + asset: AssetId, + _creator: AccountId, + min_balance: Balance, + is_sufficient: bool, + owner: AccountId, + ) -> DispatchResult { + LocalAssets::force_create( + RuntimeOrigin::root(), + asset, + owner, + is_sufficient, + min_balance, + )?; + + // TODO uncomment when we feel comfortable + /* + // The asset has been created. Let's put the revert code in the precompile address + let precompile_address = Runtime::asset_id_to_account(ASSET_PRECOMPILE_ADDRESS_PREFIX, asset); + pallet_evm::AccountCodes::::insert( + precompile_address, + vec![0x60, 0x00, 0x60, 0x00, 0xfd], + );*/ + Ok(()) + } + fn destroy_foreign_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + Assets::start_destroy(RuntimeOrigin::root(), asset)?; + + Ok(()) + } + + fn destroy_local_asset(asset: AssetId) -> DispatchResult { + // Mark the asset as destroying + LocalAssets::start_destroy(RuntimeOrigin::root(), asset)?; + + Ok(()) + } + + fn destroy_asset_dispatch_info_weight(asset: AssetId) -> Weight { + RuntimeCall::Assets( + pallet_assets::Call::::start_destroy { id: asset }, + ) + .get_dispatch_info() + .weight + } +} + +#[derive(Clone, Default, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub struct AssetMetadata { + pub name: Vec, + pub symbol: Vec, + pub decimals: u8, +} +pub struct LocalAssetIdCreator; +impl pallet_asset_manager::LocalAssetIdCreator for LocalAssetIdCreator { + fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { + // Our means of converting a creator to an assetId + // We basically hash (local asset counter) + let mut result: [u8; 16] = [0u8; 16]; + let hash: H256 = + local_asset_counter.using_encoded(::Hashing::hash); + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) + } +} + +impl pallet_asset_manager::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type AssetRegistrarMetadata = AssetMetadata; + type ForeignAssetType = AssetType; + type AssetRegistrar = AssetRegistrar; + type ForeignAssetModifierOrigin = EnsureRoot; + type LocalAssetModifierOrigin = EnsureRoot; + type LocalAssetIdCreator = LocalAssetIdCreator; + type Currency = Balances; + type LocalAssetDeposit = AssetDeposit; + type WeightInfo = (); +} + +// 1 KSM should be enough +parameter_types! { + pub MaxHrmpRelayFee: MultiAsset = (MultiLocation::parent(), 1_000_000_000_000u128).into(); +} + +impl pallet_xcm_transactor::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Transactor = MockTransactors; + type DerivativeAddressRegistrationOrigin = EnsureRoot; + type SovereignAccountDispatcherOrigin = frame_system::EnsureRoot; + type CurrencyId = CurrencyId; + type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type CurrencyIdToMultiLocation = + CurrencyIdtoMultiLocation>; + type SelfLocation = SelfLocation; + type Weigher = xcm_builder::FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type XcmSender = XcmRouter; + type BaseXcmWeight = BaseXcmWeight; + type AssetTransactor = AssetTransactors; + type ReserveProvider = xcm_primitives::AbsoluteAndRelativeReserve; + type WeightInfo = (); + type HrmpManipulatorOrigin = EnsureRoot; + type MaxHrmpFee = xcm_builder::Case; +} + +parameter_types! { + pub const MinimumPeriod: u64 = 1000; +} +impl pallet_timestamp::Config for Runtime { + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = MinimumPeriod; + type WeightInfo = (); +} + +use sp_core::U256; + +const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; +/// Block storage limit in bytes. Set to 40 KB. +const BLOCK_STORAGE_LIMIT: u64 = 40 * 1024; + +parameter_types! { + pub BlockGasLimit: U256 = U256::from(u64::MAX); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); + pub GasLimitPovSizeRatio: u64 = { + let block_gas_limit = BlockGasLimit::get().min(u64::MAX.into()).low_u64(); + block_gas_limit.saturating_div(MAX_POV_SIZE) + }; + pub GasLimitStorageGrowthRatio: u64 = + BlockGasLimit::get().min(u64::MAX.into()).low_u64().saturating_div(BLOCK_STORAGE_LIMIT); +} + +impl pallet_evm::Config for Runtime { + type FeeCalculator = (); + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + + type CallOrigin = pallet_evm::EnsureAddressRoot; + type WithdrawOrigin = pallet_evm::EnsureAddressNever; + + type AddressMapping = pallet_evm::IdentityAddressMapping; + type Currency = Balances; + type Runner = pallet_evm::runner::stack::Runner; + + type RuntimeEvent = RuntimeEvent; + type PrecompilesType = (); + type PrecompilesValue = (); + type ChainId = (); + type BlockGasLimit = BlockGasLimit; + type OnChargeTransaction = (); + type BlockHashMapping = pallet_evm::SubstrateBlockHashMapping; + type FindAuthor = (); + type OnCreate = (); + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = ConstU32<0>; + type GasLimitStorageGrowthRatio = GasLimitStorageGrowthRatio; + type Timestamp = Timestamp; + type WeightInfo = pallet_evm::weights::SubstrateWeight; +} + +pub struct NormalFilter; +impl frame_support::traits::Contains for NormalFilter { + fn contains(c: &RuntimeCall) -> bool { + match c { + _ => true, + } + } +} + +// We need to use the encoding from the relay mock runtime +#[derive(Encode, Decode)] +pub enum RelayCall { + #[codec(index = 5u8)] + // the index should match the position of the module in `construct_runtime!` + Utility(UtilityCall), + #[codec(index = 6u8)] + // the index should match the position of the module in `construct_runtime!` + Hrmp(HrmpCall), +} + +#[derive(Encode, Decode)] +pub enum UtilityCall { + #[codec(index = 1u8)] + AsDerivative(u16), +} + +// HRMP call encoding, needed for xcm transactor pallet +#[derive(Encode, Decode)] +pub enum HrmpCall { + #[codec(index = 0u8)] + InitOpenChannel(ParaId, u32, u32), + #[codec(index = 1u8)] + AcceptOpenChannel(ParaId), + #[codec(index = 2u8)] + CloseChannel(HrmpChannelId), + #[codec(index = 6u8)] + CancelOpenRequest(HrmpChannelId, u32), +} + +#[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] +pub enum MockTransactors { + Relay, +} + +impl xcm_primitives::XcmTransact for MockTransactors { + fn destination(self) -> MultiLocation { + match self { + MockTransactors::Relay => MultiLocation::parent(), + } + } +} + +impl xcm_primitives::UtilityEncodeCall for MockTransactors { + fn encode_call(self, call: xcm_primitives::UtilityAvailableCalls) -> Vec { + match self { + MockTransactors::Relay => match call { + xcm_primitives::UtilityAvailableCalls::AsDerivative(a, b) => { + let mut call = + RelayCall::Utility(UtilityCall::AsDerivative(a.clone())).encode(); + call.append(&mut b.clone()); + call + } + }, + } + } +} + +pub struct MockHrmpEncoder; +impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { + fn hrmp_encode_call( + call: xcm_primitives::HrmpAvailableCalls, + ) -> Result, xcm::latest::Error> { + match call { + xcm_primitives::HrmpAvailableCalls::InitOpenChannel(a, b, c) => Ok(RelayCall::Hrmp( + HrmpCall::InitOpenChannel(a.clone(), b.clone(), c.clone()), + ) + .encode()), + xcm_primitives::HrmpAvailableCalls::AcceptOpenChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::AcceptOpenChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CloseChannel(a) => { + Ok(RelayCall::Hrmp(HrmpCall::CloseChannel(a.clone())).encode()) + } + xcm_primitives::HrmpAvailableCalls::CancelOpenRequest(a, b) => { + Ok(RelayCall::Hrmp(HrmpCall::CancelOpenRequest(a.clone(), b.clone())).encode()) + } + } + } +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +parameter_types! { + pub ReservedXcmpWeight: Weight = Weight::from_parts(u64::max_value(), 0); +} + +#[derive( + Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Encode, Decode, Debug, MaxEncodedLen, TypeInfo, +)] +pub enum ProxyType { + NotAllowed = 0, + Any = 1, +} + +impl pallet_evm_precompile_proxy::EvmProxyCallFilter for ProxyType {} + +impl InstanceFilter for ProxyType { + fn filter(&self, _c: &RuntimeCall) -> bool { + match self { + ProxyType::NotAllowed => false, + ProxyType::Any => true, + } + } + fn is_superset(&self, _o: &Self) -> bool { + false + } +} + +impl Default for ProxyType { + fn default() -> Self { + Self::NotAllowed + } +} + +parameter_types! { + pub const ProxyCost: u64 = 1; +} + +impl pallet_proxy::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type Currency = Balances; + type ProxyType = ProxyType; + type ProxyDepositBase = ProxyCost; + type ProxyDepositFactor = ProxyCost; + type MaxProxies = ConstU32<32>; + type WeightInfo = pallet_proxy::weights::SubstrateWeight; + type MaxPending = ConstU32<32>; + type CallHasher = BlakeTwo256; + type AnnouncementDepositBase = ProxyCost; + type AnnouncementDepositFactor = ProxyCost; +} + +pub struct EthereumXcmEnsureProxy; +impl xcm_primitives::EnsureProxy for EthereumXcmEnsureProxy { + fn ensure_ok(delegator: AccountId, delegatee: AccountId) -> Result<(), &'static str> { + // The EVM implicitely contains an Any proxy, so we only allow for "Any" proxies + let def: pallet_proxy::ProxyDefinition = + pallet_proxy::Pallet::::find_proxy( + &delegator, + &delegatee, + Some(ProxyType::Any), + ) + .map_err(|_| "proxy error: expected `ProxyType::Any`")?; + // We only allow to use it for delay zero proxies, as the call will iMmediatly be executed + ensure!(def.delay.is_zero(), "proxy delay is Non-zero`"); + Ok(()) + } +} + +impl pallet_ethereum_xcm::Config for Runtime { + type InvalidEvmTransactionError = pallet_ethereum::InvalidTransactionWrapper; + type ValidatedTransaction = pallet_ethereum::ValidatedTransaction; + type XcmEthereumOrigin = pallet_ethereum_xcm::EnsureXcmEthereumTransaction; + type ReservedXcmpWeight = ReservedXcmpWeight; + type EnsureProxy = EthereumXcmEnsureProxy; + type ControllerOrigin = EnsureRoot; +} + +type Block = frame_system::mocking::MockBlockU32; + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + MsgQueue: mock_msg_queue, + XcmVersioner: mock_version_changer, + + PolkadotXcm: pallet_xcm, + Assets: pallet_assets, + CumulusXcm: cumulus_pallet_xcm, + XTokens: orml_xtokens, + AssetManager: pallet_asset_manager, + XcmTransactor: pallet_xcm_transactor, + Treasury: pallet_treasury, + LocalAssets: pallet_assets::, + Proxy: pallet_proxy, + + Timestamp: pallet_timestamp, + EVM: pallet_evm, + Ethereum: pallet_ethereum, + EthereumXcm: pallet_ethereum_xcm, + } +); + +pub(crate) fn para_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::tokens::{PayFromAccount, UnityAssetBalanceConversion}; +use frame_support::traits::{OnFinalize, OnInitialize, OnRuntimeUpgrade}; +pub(crate) fn on_runtime_upgrade() { + VersionUncheckedMigrateToV1::::on_runtime_upgrade(); +} + +pub(crate) fn para_roll_to(n: BlockNumber) { + while System::block_number() < n { + PolkadotXcm::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + PolkadotXcm::on_initialize(System::block_number()); + } +} diff --git a/tracing/2700/runtime/moonriver/tests/xcm_mock/relay_chain.rs b/tracing/2700/runtime/moonriver/tests/xcm_mock/relay_chain.rs new file mode 100644 index 00000000..8eeaad46 --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/xcm_mock/relay_chain.rs @@ -0,0 +1,415 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, parameter_types, + traits::{Everything, Nothing, ProcessMessage, ProcessMessageError}, +}; +use frame_system::pallet_prelude::BlockNumberFor; +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, IdentityLookup}, + AccountId32, +}; + +use frame_support::weights::{Weight, WeightMeter}; +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_runtime_parachains::{ + configuration, dmp, hrmp, + inclusion::{AggregateMessageOrigin, UmpQueueId}, + origin, paras, shared, +}; +use sp_runtime::transaction_validity::TransactionPriority; +use sp_runtime::Permill; +use xcm::latest::prelude::*; +use xcm_builder::{ + Account32Hash, AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, ChildParachainConvertsVia, + ChildSystemParachainAsSuperuser, CurrencyAdapter as XcmCurrencyAdapter, FixedRateOfFungible, + FixedWeightBounds, IsConcrete, ProcessXcmMessage, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, WithComputedOrigin, +}; +use xcm_executor::{Config, XcmExecutor}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type BlockNumber = BlockNumberFor; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +impl pallet_utility::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type RuntimeCall = RuntimeCall; + type WeightInfo = (); + type PalletsOrigin = OriginCaller; +} + +impl shared::Config for Runtime {} + +impl configuration::Config for Runtime { + type WeightInfo = configuration::TestWeightInfo; +} + +parameter_types! { + pub KsmLocation: MultiLocation = Here.into(); + pub const KusamaNetwork: NetworkId = NetworkId::Kusama; + pub const AnyNetwork: Option = None; + pub UniversalLocation: InteriorMultiLocation = Here; +} + +pub type SovereignAccountOf = ( + ChildParachainConvertsVia, + AccountId32Aliases, + // Not enabled in the relay per se, but we enable it to test + // the transact_through_signed extrinsic + Account32Hash, +); + +pub type LocalAssetTransactor = + XcmCurrencyAdapter, SovereignAccountOf, AccountId, ()>; + +type LocalOriginConverter = ( + SovereignSignedViaLocation, + ChildParachainAsNative, + SignedAccountId32AsNative, + ChildSystemParachainAsSuperuser, +); + +parameter_types! { + pub const BaseXcmWeight: Weight = Weight::from_parts(1000u64, 1000u64); + pub KsmPerSecond: (AssetId, u128, u128) = (Concrete(KsmLocation::get()), 1, 1); + pub const MaxInstructions: u32 = 100; + pub const MaxAssetsIntoHolding: u32 = 64; + pub MatcherLocation: MultiLocation = MultiLocation::here(); +} + +pub type XcmRouter = super::RelayChainXcmRouter; + +pub type XcmBarrier = ( + // Weight that is paid for may be consumed. + TakeWeightCredit, + // Expected responses are OK. + AllowKnownQueryResponses, + WithComputedOrigin< + ( + // If the message is one that immediately attemps to pay for execution, then allow it. + AllowTopLevelPaidExecutionFrom, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, + ), + UniversalLocation, + ConstU32<8>, + >, +); + +parameter_types! { + pub Kusama: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(KsmLocation::get()) }); + pub Statemine: MultiLocation = Parachain(4).into(); + pub KusamaForStatemine: (MultiAssetFilter, MultiLocation) = (Kusama::get(), Statemine::get()); +} + +pub type TrustedTeleporters = xcm_builder::Case; + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = LocalAssetTransactor; + type OriginConverter = LocalOriginConverter; + type IsReserve = (); + type IsTeleporter = TrustedTeleporters; + type UniversalLocation = UniversalLocation; + type Barrier = XcmBarrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = XcmPallet; + type AssetTrap = XcmPallet; + type AssetClaims = XcmPallet; + type SubscriptionService = XcmPallet; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +pub type LocalOriginToLocation = SignedToAccountId32; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmRouter = XcmRouter; + // Anyone can execute XCM messages locally... + type ExecuteXcmOrigin = xcm_builder::EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = (); + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +parameter_types! { + pub const FirstMessageFactorPercent: u64 = 100; +} + +parameter_types! { + pub const ParasUnsignedPriority: TransactionPriority = TransactionPriority::max_value(); +} + +/// A very dumb implementation of `EstimateNextSessionRotation`. At the moment of writing, this +/// is more to satisfy type requirements rather than to test anything. +pub struct TestNextSessionRotation; + +impl frame_support::traits::EstimateNextSessionRotation for TestNextSessionRotation { + fn average_session_length() -> u32 { + 10 + } + + fn estimate_current_session_progress(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } + + fn estimate_next_session_rotation(_now: u32) -> (Option, Weight) { + (None, Weight::zero()) + } +} + +impl paras::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = paras::TestWeightInfo; + type UnsignedPriority = ParasUnsignedPriority; + type NextSessionRotation = TestNextSessionRotation; + type QueueFootprinter = (); + type OnNewHead = (); +} + +impl dmp::Config for Runtime {} + +impl hrmp::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type WeightInfo = TestHrmpWeightInfo; + type ChannelManager = frame_system::EnsureRoot; +} + +impl frame_system::offchain::SendTransactionTypes for Runtime +where + RuntimeCall: From, +{ + type Extrinsic = UncheckedExtrinsic; + type OverarchingCall = RuntimeCall; +} + +impl origin::Config for Runtime {} + +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +type Block = frame_system::mocking::MockBlockU32; + +parameter_types! { + pub MessageQueueServiceWeight: Weight = Weight::from_parts(1_000_000_000, 1_000_000); + pub const MessageQueueHeapSize: u32 = 65_536; + pub const MessageQueueMaxStale: u32 = 16; +} + +pub struct MessageProcessor; +impl ProcessMessage for MessageProcessor { + type Origin = AggregateMessageOrigin; + + fn process_message( + message: &[u8], + origin: Self::Origin, + meter: &mut WeightMeter, + id: &mut [u8; 32], + ) -> Result { + let para = match origin { + AggregateMessageOrigin::Ump(UmpQueueId::Para(para)) => para, + }; + ProcessXcmMessage::, RuntimeCall>::process_message( + message, + Junction::Parachain(para.into()), + meter, + id, + ) + } +} + +impl pallet_message_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Size = u32; + type HeapSize = MessageQueueHeapSize; + type MaxStale = MessageQueueMaxStale; + type ServiceWeight = MessageQueueServiceWeight; + type MessageProcessor = MessageProcessor; + type QueueChangeHandler = (); + type WeightInfo = (); + type QueuePausedQuery = (); +} + +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + ParasOrigin: origin, + MessageQueue: pallet_message_queue, + XcmPallet: pallet_xcm, + Utility: pallet_utility, + Hrmp: hrmp, + Dmp: dmp, + Paras: paras, + Configuration: configuration, + } +); + +pub(crate) fn relay_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::{OnFinalize, OnInitialize}; +pub(crate) fn relay_roll_to(n: BlockNumber) { + while System::block_number() < n { + XcmPallet::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + XcmPallet::on_initialize(System::block_number()); + } +} + +/// A weight info that is only suitable for testing. +pub struct TestHrmpWeightInfo; + +impl hrmp::WeightInfo for TestHrmpWeightInfo { + fn hrmp_accept_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn force_clean_hrmp(_: u32, _: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_close(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_process_hrmp_open(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_cancel_open_request(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_close_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn hrmp_init_open_channel() -> Weight { + Weight::from_parts(1, 0) + } + fn clean_open_channel_requests(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + fn force_open_hrmp_channel(_: u32) -> Weight { + Weight::from_parts(1, 0) + } + + fn establish_system_channel() -> Weight { + Weight::from_parts(1, 0) + } + + fn poke_channel_deposits() -> Weight { + Weight::from_parts(1, 0) + } +} diff --git a/tracing/2700/runtime/moonriver/tests/xcm_mock/statemine_like.rs b/tracing/2700/runtime/moonriver/tests/xcm_mock/statemine_like.rs new file mode 100644 index 00000000..1046428f --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/xcm_mock/statemine_like.rs @@ -0,0 +1,553 @@ +// Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, match_types, parameter_types, + traits::{AsEnsureOriginWithArg, Everything, Nothing}, + weights::Weight, +}; +use frame_system::{EnsureRoot, EnsureSigned}; + +use sp_core::H256; +use sp_runtime::{ + traits::{ConstU32, Hash, IdentityLookup}, + AccountId32, +}; + +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; + +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_parachain::primitives::Sibling; +use sp_std::convert::TryFrom; +use xcm::latest::prelude::*; +use xcm::VersionedXcm; +use xcm_builder::{ + AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, AsPrefixedGeneralIndex, + ConvertedConcreteId, CurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, + FungiblesAdapter, IsConcrete, NoChecking, ParentAsSuperuser, ParentIsPreset, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, + SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, +}; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type AssetId = u128; + +parameter_types! { + pub const BlockHashCount: u32 = 250; +} + +impl frame_system::Config for Runtime { + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Nonce = u64; + type Block = Block; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type RuntimeEvent = RuntimeEvent; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; + type RuntimeHoldReason = (); + type FreezeIdentifier = (); + type MaxHolds = (); + type MaxFreezes = (); + type RuntimeFreezeReason = (); +} + +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + +parameter_types! { + pub const AssetDeposit: Balance = 0; // 1 UNIT deposit to create asset + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + /// Key = 32 bytes, Value = 36 bytes (32+1+1+1+1) + // https://github.com/paritytech/substrate/blob/069917b/frame/assets/src/lib.rs#L257L271 + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const ExecutiveBody: BodyId = BodyId::Executive; + pub const AssetAccountDeposit: Balance = 0; +} + +impl pallet_assets::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type AssetAccountDeposit = AssetAccountDeposit; + type WeightInfo = (); + type RemoveItemsLimit = ConstU32<656>; + type AssetIdParameter = AssetId; + type CreateOrigin = AsEnsureOriginWithArg>; + type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } +} + +parameter_types! { + pub const KsmLocation: MultiLocation = MultiLocation::parent(); + pub const RelayNetwork: NetworkId = NetworkId::Kusama; + pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); + pub UniversalLocation: InteriorMultiLocation = + X2(GlobalConsensus(RelayNetwork::get()), Parachain(MsgQueue::parachain_id().into())); + pub Local: MultiLocation = Here.into(); + pub CheckingAccount: AccountId = PolkadotXcm::check_account(); + pub KsmPerSecond: (xcm::latest::prelude::AssetId, u128, u128) = + (Concrete(KsmLocation::get()), 1, 1); +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsPreset, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // Straight up local `AccountId32` origins just alias directly to `AccountId`. + AccountId32Aliases, +); + +/// Means for transacting the native currency on this chain. +pub type CurrencyTransactor = CurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching the given location or name: + IsConcrete, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We don't track any teleports of `Balances`. + (), +>; + +/// Means for transacting assets besides the native currency on this chain. +pub type FungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ConvertedConcreteId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We only want to allow teleports of known assets. We use non-zero issuance as an indication + // that this asset is known. + NoChecking, + // The account to use for tracking teleports. + CheckingAccount, +>; +/// Means for transacting assets on this chain. +pub type AssetTransactors = (CurrencyTransactor, FungiblesTransactor); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Native signed account converter; this just converts an `AccountId32` origin into a normal + // `Origin::Signed` origin of the same 32-byte value. + SignedAccountId32AsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, +); + +parameter_types! { + // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. + pub UnitWeightCost: Weight = Weight::from_parts(100u64, 100u64); + pub const MaxInstructions: u32 = 100; +} + +match_types! { + pub type ParentOrParentsExecutivePlurality: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } + }; +} +match_types! { + pub type ParentOrSiblings: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(_) } + }; +} + +pub type Barrier = ( + TakeWeightCredit, + AllowTopLevelPaidExecutionFrom, + // Parent and its exec plurality get free execution + AllowUnpaidExecutionFrom, + // Expected responses are OK. + AllowKnownQueryResponses, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, +); + +parameter_types! { + pub MatcherLocation: MultiLocation = MultiLocation::here(); + pub const MaxAssetsIntoHolding: u32 = 64; +} + +pub struct XcmConfig; +impl Config for XcmConfig { + type RuntimeCall = RuntimeCall; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = + orml_xcm_support::MultiNativeAsset; + type IsTeleporter = (); + type UniversalLocation = UniversalLocation; + type Barrier = Barrier; + type Weigher = FixedWeightBounds; + type Trader = FixedRateOfFungible; + type ResponseHandler = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type SubscriptionService = PolkadotXcm; + type CallDispatcher = RuntimeCall; + type AssetLocker = (); + type AssetExchanger = (); + type PalletInstancesInfo = (); + type MaxAssetsIntoHolding = MaxAssetsIntoHolding; + type FeeManager = (); + type MessageExporter = (); + type UniversalAliases = Nothing; + type SafeCallFilter = Everything; + type Aliasers = Nothing; +} + +/// No local origins on this chain are allowed to dispatch XCM sends/executions. +pub type LocalOriginToLocation = SignedToAccountId32; + +pub type XcmRouter = super::ParachainXcmRouter; + +#[cfg(feature = "runtime-benchmarks")] +parameter_types! { + pub ReachableDest: Option = Some(Parent.into()); +} + +impl pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type UniversalLocation = UniversalLocation; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; + type Currency = Balances; + type CurrencyMatcher = IsConcrete; + type TrustedLockers = (); + type SovereignAccountOf = (); + type MaxLockers = ConstU32<8>; + type WeightInfo = pallet_xcm::TestWeightInfo; + type MaxRemoteLockConsumers = ConstU32<0>; + type RemoteLockConsumerIdentifier = (); + type AdminOrigin = frame_system::EnsureRoot; + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = ReachableDest; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + let mut id = [0u8; 32]; + id.copy_from_slice(hash.as_ref()); + match T::XcmExecutor::execute_xcm(location, xcm, id, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = + VersionedXcm::::decode(&mut remaining_fragments) + { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = VersionedXcm::::decode(&mut &data[..]) + .map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, id, limit); + + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} +impl mock_msg_queue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type XcmExecutor = XcmExecutor; +} + +// Pallet to cover test cases for change https://github.com/paritytech/cumulus/pull/831 +#[frame_support::pallet] +pub mod mock_statemine_prefix { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + #[pallet::without_storage_info] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn current_prefix)] + pub(super) type CurrentPrefix = StorageValue<_, MultiLocation, ValueQuery>; + + impl Get for Pallet { + fn get() -> MultiLocation { + Self::current_prefix() + } + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // Changed Prefix + PrefixChanged(MultiLocation), + } + + impl Pallet { + pub fn set_prefix(prefix: MultiLocation) { + CurrentPrefix::::put(&prefix); + Self::deposit_event(Event::PrefixChanged(prefix)); + } + } +} + +impl mock_statemine_prefix::Config for Runtime { + type RuntimeEvent = RuntimeEvent; +} + +type Block = frame_system::mocking::MockBlockU32; +construct_runtime!( + pub enum Runtime { + System: frame_system, + Balances: pallet_balances, + PolkadotXcm: pallet_xcm, + CumulusXcm: cumulus_pallet_xcm, + MsgQueue: mock_msg_queue, + Assets: pallet_assets, + PrefixChanger: mock_statemine_prefix, + + } +); diff --git a/tracing/2700/runtime/moonriver/tests/xcm_tests.rs b/tracing/2700/runtime/moonriver/tests/xcm_tests.rs new file mode 100644 index 00000000..fb60951c --- /dev/null +++ b/tracing/2700/runtime/moonriver/tests/xcm_tests.rs @@ -0,0 +1,4095 @@ +// Copyright 2019-2022 PureStake Inc. +// This file is part of Moonbeam. + +// Moonbeam is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Moonbeam is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Moonbeam. If not, see . + +//! Moonriver Runtime Xcm Tests + +mod xcm_mock; +use frame_support::{ + assert_ok, + traits::{PalletInfo, PalletInfoAccess}, + weights::{constants::WEIGHT_REF_TIME_PER_SECOND, Weight}, + BoundedVec, +}; +use pallet_asset_manager::LocalAssetIdCreator; +use sp_core::ConstU32; +use xcm::latest::prelude::*; +use xcm::{VersionedMultiLocation, WrapVersion}; +use xcm_builder::HashedDescriptionDescribeFamilyAllTerminal; +use xcm_executor::traits::ConvertLocation; +use xcm_mock::parachain; +use xcm_mock::relay_chain; +use xcm_mock::*; +use xcm_simulator::TestExt; +mod common; +use common::ExtBuilder; +use cumulus_primitives_core::relay_chain::HrmpChannelId; +use pallet_xcm_transactor::{ + Currency, CurrencyPayment, HrmpInitParams, HrmpOperation, TransactWeights, +}; +use xcm_primitives::{UtilityEncodeCall, DEFAULT_PROOF_SIZE}; + +// Send a relay asset (like DOT) to a parachain A +#[test] +fn receive_relay_asset_from_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // Register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Verify that parachain received the asset + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +// Send relay asset (like DOT) back from Parachain A to relaychain +#[test] +fn send_relay_asset_to_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register relay asset in paraA + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // free execution + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // First send relay chain asset to Parachain like in previous test + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Lets gather the balance before sending back money + let mut balance_before_sending = 0; + Relay::execute_with(|| { + balance_before_sending = RelayBalances::free_balance(&RELAYALICE); + }); + + // We now send back some money to the relay + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: RELAYALICE.into(), + }), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 123, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The balances in paraAlice should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); + + // Balances in the relay should have been received + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(&RELAYALICE) > balance_before_sending); + }); +} + +#[test] +fn send_relay_asset_to_para_b() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Register asset in paraA. Free execution + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // First send relay chain asset to Parachain A like in previous test + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); + + // Now send relay asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances should have been substracted + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 23); + }); + + // Para B balances should have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_to_para_b() { + MockNet::reset(); + + // This represents the asset in paraA + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register asset in paraB. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset from para A to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Native token is substracted in paraA + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Asset is minted in paraB + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); +} + +#[test] +fn send_para_a_asset_from_para_b_to_para_c() { + MockNet::reset(); + + // Represents para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in parachain B. Free execution + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location.clone(), + 0u128, + 0 + )); + }); + + // Register para A asset in parachain C. Free execution + ParaC::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send para A asset from para B to para C + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(3), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // The message passed through parachainA so we needed to pay since its the native token + ParaC::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 96); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_and_back_to_para_a() { + MockNet::reset(); + + // Para A asset + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + // Register para A asset in para B + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send para A asset to para B + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Balances have been substracted + ParaA::execute_with(|| { + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // Para B balances have been credited + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // Send back para A asset to para A + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaB::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + // Para A asset has been credited + ParaA::execute_with(|| { + // Weight used is 4 + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 4 + ); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_and_back_to_para_a_with_new_reanchoring() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // Free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + ParaB::execute_with(|| { + // Free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // This time we will force the new reanchoring by manually sending the + // Message through polkadotXCM pallet + + let dest = MultiLocation { + parents: 1, + interior: X1(Parachain(1)), + }; + + let reanchored_para_a_balances = MultiLocation::new(0, X1(PalletInstance(1u8))); + + let message = xcm::VersionedXcm::<()>::V3(Xcm(vec![ + WithdrawAsset((reanchored_para_a_balances.clone(), 100).into()), + ClearOrigin, + BuyExecution { + fees: (reanchored_para_a_balances, 100).into(), + weight_limit: Limited(80.into()), + }, + DepositAsset { + assets: All.into(), + beneficiary: MultiLocation::new( + 0, + X1(AccountKey20 { + network: None, + key: PARAALICE, + }), + ), + }, + ])); + ParaB::execute_with(|| { + // Send a message to the sovereign account in ParaA to withdraw + // and deposit asset + assert_ok!(ParachainPalletXcm::send( + parachain::RuntimeOrigin::root(), + Box::new(dest.into()), + Box::new(message), + )); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // This time we will force the new reanchoring by manually sending the + // Message through polkadotXCM pallet + + let dest = MultiLocation { + parents: 1, + interior: X1(Parachain(1)), + }; + + let reanchored_para_a_balances = MultiLocation::new(0, X1(PalletInstance(1u8))); + + let message = xcm::VersionedXcm::<()>::V3(Xcm(vec![ + WithdrawAsset((reanchored_para_a_balances.clone(), 100).into()), + ClearOrigin, + BuyExecution { + fees: (reanchored_para_a_balances, 100).into(), + weight_limit: Limited(80.into()), + }, + DepositAsset { + assets: All.into(), + beneficiary: MultiLocation::new( + 0, + X1(AccountKey20 { + network: None, + key: PARAALICE, + }), + ), + }, + ])); + ParaB::execute_with(|| { + // Send a message to the sovereign account in ParaA to withdraw + // and deposit asset + assert_ok!(ParachainPalletXcm::send( + parachain::RuntimeOrigin::root(), + Box::new(dest.into()), + Box::new(message), + )); + }); + + ParaA::execute_with(|| { + // Weight used is 4 + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 4 + ); + }); +} + +#[test] +fn receive_relay_asset_with_trader() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // We are sending 100 tokens from relay. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Therefore with no refund, we should receive 10 tokens less + // Native trader fails for this, and we use the asset trader + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 100).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // non-free execution, not full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // In destination chain, we only need 4 weight + // We put 10 weight, 6 of which should be refunded and 4 of which should go to treasury + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(10u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // We are sending 100 tokens from para A. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Since we set 10 weight in destination chain, 25 will be charged upfront + // 15 of those will be refunded, while 10 will go to treasury as the true weight used + // will be 4 + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader_and_fee() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + // With these units per second, 80K weight convrets to 1 asset unit + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 12500000u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + // we use transfer_with_fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_with_fee( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + 1, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + ParaA::execute_with(|| { + // 100 tokens transferred plus 1 taken from fees + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 - 1 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received because trully the xcm instruction does not cost + // what it is specified + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 101); + }); +} + +#[test] +fn error_when_not_paying_enough() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + let dest: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + // This time we are gonna put a rather high number of units per second + // we know later we will divide by 1e12 + // Lets put 1e6 as units per second + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 2500000000000u128, + 0 + )); + }); + + // We are sending 100 tokens from relay. + // If we set the dest weight to be 1e7, we know the buy_execution will spend 1e7*1e6/1e12 = 10 + // Therefore with no refund, we should receive 10 tokens less + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 5).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // amount not received as it is not paying enough + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 0); + }); +} + +#[test] +fn transact_through_derivative_multilocation() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + encoded, + // 4000000000 + 3000 we should have taken out 4000003000 tokens from the caller + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 3000 correspond to 4000003000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000003000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + // 4000000000 + 3000 we should have taken out 4000003000 tokens from the caller + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + false + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_derivative_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + // Let's construct the call to know how much weight it is going to require + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + // 4000000000 transact + 9000 correspond to 4000009000 tokens. 100 more for the transfer call + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_derivative( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::MockTransactors::Relay, + 0, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee weight mapping + fee_amount: Some(overall_weight as u128) + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + let event_found: Option = parachain::para_events() + .iter() + .find_map(|event| match event.clone() { + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::AssetsTrapped { + .. + }) => Some(event.clone()), + _ => None, + }); + // Assert that the events do not contain the assets being trapped + assert!(event_found.is_none()); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn transact_through_sovereign() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + None + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000003100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000003000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000003000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000003000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(®istered_address) == 0); + }); +} + +#[test] +fn transact_through_sovereign_with_custom_fee_weight_refund() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 1u128, + 0 + )); + }); + + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 4000009100u128).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009100); + }); + + // Register address + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::register( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + 0, + )); + }); + + // Send to registered address + let registered_address = derivative_account_id(para_a_account(), 0); + let dest = MultiLocation { + parents: 1, + interior: X1(AccountId32 { + network: None, + id: registered_address.clone().into(), + }), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::ForeignAsset(source_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(40000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 4000009000); + }); + + // What we will do now is transfer this relay tokens from the derived account to the sovereign + // again + Relay::execute_with(|| { + // free execution,x full amount received + assert!(RelayBalances::free_balance(¶_a_account()) == 4000009000); + 0 + }); + + // We send the xcm transact operation to parent + let dest = MultiLocation { + parents: 1, + interior: Here, + }; + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let utility_bytes = parachain::MockTransactors::Relay.encode_call( + xcm_primitives::UtilityAvailableCalls::AsDerivative(0, encoded), + ); + + let total_weight = 4000009000u64; + // Root can directly pass the execution byes to the sovereign + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_sovereign( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(dest)), + PARAALICE.into(), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + // 1-1 fee-weight mapping + fee_amount: Some(total_weight as u128) + }, + utility_bytes, + OriginKind::SovereignAccount, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // free execution,x full amount received + // 4000005186 refunded + 100 transferred = 4000005286 + assert_eq!(RelayBalances::free_balance(¶_a_account()), 4000005286); + + assert_eq!(RelayBalances::free_balance(®istered_address), 0); + }); +} + +#[test] +fn test_automatic_versioning_on_runtime_upgrade_with_relay() { + MockNet::reset(); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A and set XCM version to 1 + ParaA::execute_with(|| { + parachain::XcmVersioner::set_version(1); + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let response = Response::Version(2); + let querier: MultiLocation = Here.into(); + + // This is irrelevant, nothing will be done with this message, + // but we need to pass a message as an argument to trigger the storage change + let mock_message: Xcm<()> = Xcm(vec![QueryResponse { + query_id: 0, + response, + max_weight: Weight::zero(), + querier: Some(querier), + }]); + // The router is mocked, and we cannot use WrapVersion in ChildParachainRouter. So we will force + // it directly here + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + Relay::execute_with(|| { + // This sets the default version, for not known destinations + assert_ok!(RelayChainPalletXcm::force_default_xcm_version( + relay_chain::RuntimeOrigin::root(), + Some(2) + )); + + // Wrap version, which sets VersionedStorage + // This is necessary because the mock router does not use wrap_version, but + // this is not necessary in prod + assert_ok!(::wrap_version( + &Parachain(1).into(), + mock_message + )); + + // Transfer assets. Since it is an unknown destination, it will query for version + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + + // Let's advance the relay. This should trigger the subscription message + relay_chain::relay_roll_to(2); + + // queries should have been updated + assert!(RelayChainPalletXcm::query(0).is_some()); + }); + + let expected_supported_version: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 1, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the version change + assert!(relay_chain::relay_events().contains(&expected_supported_version)); + }); + + // ParaA changes version to 2, and calls on_runtime_upgrade. This should notify the targets + // of the new version change + ParaA::execute_with(|| { + // Set version + parachain::XcmVersioner::set_version(2); + // Do runtime upgrade + parachain::on_runtime_upgrade(); + // Initialize block, to call on_initialize and notify targets + parachain::para_roll_to(2); + // Expect the event in the parachain + assert!(parachain::para_events().iter().any(|e| matches!( + e, + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::VersionChangeNotified { + result: 2, + .. + }) + ))); + }); + + // This event should have been seen in the relay + let expected_supported_version_2: relay_chain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 0, + interior: X1(Parachain(1)), + }, + version: 2, + } + .into(); + + Relay::execute_with(|| { + // Assert that the events vector contains the new version change + assert!(relay_chain::relay_events().contains(&expected_supported_version_2)); + }); +} + +#[test] +fn test_automatic_versioning_on_runtime_upgrade_with_para_b() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + let response = Response::Version(2); + let querier: MultiLocation = Here.into(); + + // This is irrelevant, nothing will be done with this message, + // but we need to pass a message as an argument to trigger the storage change + let mock_message: Xcm<()> = Xcm(vec![QueryResponse { + query_id: 0, + response, + max_weight: Weight::zero(), + querier: Some(querier), + }]); + + ParaA::execute_with(|| { + // advertised version + parachain::XcmVersioner::set_version(2); + }); + + ParaB::execute_with(|| { + // Let's try with v0 + parachain::XcmVersioner::set_version(0); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + ParaA::execute_with(|| { + // This sets the default version, for not known destinations + assert_ok!(ParachainPalletXcm::force_default_xcm_version( + parachain::RuntimeOrigin::root(), + Some(2) + )); + // Wrap version, which sets VersionedStorage + assert_ok!(::wrap_version( + &MultiLocation::new(1, X1(Parachain(2))).into(), + mock_message + )); + + parachain::para_roll_to(2); + + // queries should have been updated + assert!(ParachainPalletXcm::query(0).is_some()); + }); + + let expected_supported_version: parachain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 1, + interior: X1(Parachain(2)), + }, + version: 0, + } + .into(); + + ParaA::execute_with(|| { + // Assert that the events vector contains the version change + assert!(parachain::para_events().contains(&expected_supported_version)); + }); + + // Let's ensure talking in v0 works + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(80u64, DEFAULT_PROOF_SIZE)) + )); + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + + // ParaB changes version to 2, and calls on_runtime_upgrade. This should notify the targets + // of the new version change + ParaB::execute_with(|| { + // Set version + parachain::XcmVersioner::set_version(2); + // Do runtime upgrade + parachain::on_runtime_upgrade(); + // Initialize block, to call on_initialize and notify targets + parachain::para_roll_to(2); + // Expect the event in the parachain + assert!(parachain::para_events().iter().any(|e| matches!( + e, + parachain::RuntimeEvent::PolkadotXcm(pallet_xcm::Event::VersionChangeNotified { + result: 2, + .. + }) + ))); + }); + + // This event should have been seen in para A + let expected_supported_version_2: parachain::RuntimeEvent = + pallet_xcm::Event::SupportedVersionChanged { + location: MultiLocation { + parents: 1, + interior: X1(Parachain(2)), + }, + version: 2, + } + .into(); + + // Para A should have received the version change + ParaA::execute_with(|| { + // Assert that the events vector contains the new version change + assert!(parachain::para_events().contains(&expected_supported_version_2)); + }); +} + +#[test] +fn receive_asset_with_no_sufficients_not_possible_if_non_existent_account() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should not have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 0); + }); + + // Send native token to fresh_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + fresh_account.into(), + 100 + )); + }); + + // Re-send tokens + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn receive_assets_with_sufficients_true_allows_non_funded_account_to_receive_assets() { + MockNet::reset(); + + let fresh_account = [2u8; 20]; + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: fresh_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // parachain should have received assets + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &fresh_account.into()), 123); + }); +} + +#[test] +fn evm_account_receiving_assets_should_handle_sufficients_ref_count() { + MockNet::reset(); + + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + // Evm account is self sufficient + ParaA::execute_with(|| { + assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + // Evm account sufficient ref count increased by 1. + ParaA::execute_with(|| { + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 2); + }); + + ParaA::execute_with(|| { + // Remove the account from the evm context. + parachain::EVM::remove_account(&evm_account()); + // Evm account sufficient ref count decreased by 1. + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // assert_eq!(parachain::System::account(evm_account_id).sufficients, 1); + }); +} + +#[test] +fn empty_account_should_not_be_reset() { + MockNet::reset(); + + // Test account has nonce 1 on genesis. + let mut sufficient_account = [0u8; 20]; + sufficient_account[0..20].copy_from_slice(&evm_account()[..]); + + let evm_account_id = parachain::AccountId::from(sufficient_account); + + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_id: parachain::AssetId = source_location.clone().into(); + let asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + // register relay asset in parachain A + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + false + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + // Send native token to evm_account + ParaA::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + evm_account_id, + 100 + )); + }); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: sufficient_account, + } + .into(); + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new(VersionedMultiLocation::V3(dest.clone()).clone().into()), + Box::new((Here, 123).into()), + 0, + )); + }); + + ParaA::execute_with(|| { + // Empty the assets from the account. + // As this makes the account go below the `min_balance`, the account is considered dead + // at eyes of pallet-assets, and the consumer reference is decreased by 1 and is now Zero. + assert_ok!(parachain::Assets::transfer( + parachain::RuntimeOrigin::signed(evm_account_id), + source_id, + PARAALICE.into(), + 123 + )); + // Verify account asset balance is Zero. + assert_eq!( + parachain::Assets::balance(source_id, &evm_account_id.into()), + 0 + ); + // Because we no longer have consumer references, we can set the balance to Zero. + // This would reset the account if our ED were to be > than Zero. + assert_ok!(ParaBalances::force_set_balance( + parachain::RuntimeOrigin::root(), + evm_account_id, + 0, + )); + // Verify account native balance is Zero. + assert_eq!(ParaBalances::free_balance(&evm_account_id), 0); + // Remove the account from the evm context. + // This decreases the sufficients reference by 1 and now is Zero. + parachain::EVM::remove_account(&evm_account()); + // Verify reference count. + let account = parachain::System::account(evm_account_id); + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // revert account.sufficients to 0 + assert_eq!(account.sufficients, 1); + assert_eq!(account.consumers, 0); + assert_eq!(account.providers, 1); + // We expect the account to be alive in a Zero ED context. + // TODO: since the suicided logic was introduced an smart contract account + // is not deleted completely until it's data is deleted. Data deletion + // will be implemented in a future release + // the following needs to be 1 + assert_eq!(parachain::System::account_nonce(evm_account_id), 2); + }); +} + +#[test] +fn test_statemine_like() { + MockNet::reset(); + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemine_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + let statemine_asset_a_balances = MultiLocation::new( + 1, + X3( + Parachain(4), + PalletInstance(5), + xcm::latest::prelude::GeneralIndex(0u128), + ), + ); + let source_location = parachain::AssetType::Xcm(statemine_asset_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"StatemineToken".to_vec(), + symbol: b"StatemineToken".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + Statemine::execute_with(|| { + // Set new prefix + statemine_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + assert_ok!(StatemineAssets::create( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 1 + )); + + assert_ok!(StatemineAssets::mint( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + 0, + RELAYALICE, + 300000000000000 + )); + + // This is needed, since the asset is created as non-sufficient + assert_ok!(StatemineBalances::transfer_allow_death( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send with new prefix + assert_ok!(StatemineChainPalletXcm::reserve_transfer_assets( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new(VersionedMultiLocation::V3(dest).clone().into()), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + xcm::latest::prelude::GeneralIndex(0), + ), + 123 + ) + .into() + ), + 0, + )); + }); + + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b() { + ExtBuilder::default().build().execute_with(|| { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location = parachain::AssetType::Xcm(para_a_local_asset); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location.clone(), + asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location, + 0u128, + 0 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + parachain::CurrencyId::LocalAssetReserve(asset_id), + 100, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 100); + }); + }); +} + +#[test] +fn send_para_a_local_asset_to_para_b_and_send_it_back_together_with_some_dev() { + ExtBuilder::default().build().execute_with(|| { + MockNet::reset(); + + let asset_id = parachain::LocalAssetIdCreator::create_asset_id_from_metadata(0); + let para_a_local_asset = MultiLocation::new( + 1, + X3(Parachain(1), PalletInstance(11u8), GeneralIndex(asset_id)), + ); + let source_location_local_asset = parachain::AssetType::Xcm(para_a_local_asset); + let source_id_local_asset: parachain::AssetId = source_location_local_asset.clone().into(); + + let asset_metadata_local_asset = parachain::AssetMetadata { + name: b"ParaALocalAsset".to_vec(), + symbol: b"ParaALocalAsset".to_vec(), + decimals: 12, + }; + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location_balances = parachain::AssetType::Xcm(para_a_balances); + let source_id_balances: parachain::AssetId = source_location_balances.clone().into(); + + let asset_metadata_balances = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_local_asset.clone(), + asset_metadata_local_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_local_asset, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + source_location_balances.clone(), + asset_metadata_balances, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + source_location_balances, + 0u128, + 1 + )); + }); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_local_asset( + parachain::RuntimeOrigin::root(), + PARAALICE.into(), + PARAALICE.into(), + true, + 1 + )); + + assert_ok!(LocalAssets::mint( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + asset_id, + PARAALICE.into(), + 300000000000000 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::LocalAssetReserve(asset_id), 100), + (parachain::CurrencyId::SelfReserve, 1000000) + ], + 0, + Box::new(VersionedMultiLocation::V3(dest)), + WeightLimit::Limited(Weight::from_parts(800000u64, DEFAULT_PROOF_SIZE)) + )); + }); + + let mut alith_balance_asset_before = 0; + let mut alith_balance_native_token_before = 0; + + ParaA::execute_with(|| { + alith_balance_asset_before = LocalAssets::balance(asset_id, &PARAALICE.into()); + alith_balance_native_token_before = Balances::free_balance(&PARAALICE.into()); + }); + + let new_dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(1), + AccountKey20 { + network: None, + key: PARAALICE.into(), + }, + ), + }; + + ParaB::execute_with(|| { + // free execution, full amount received + assert_eq!( + Assets::balance(source_id_local_asset, &PARAALICE.into()), + 100 + ); + assert_eq!( + Assets::balance(source_id_balances, &PARAALICE.into()), + 1000000 + ); + + // free execution, full amount received + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + (parachain::CurrencyId::ForeignAsset(source_id_balances), 4), + ( + parachain::CurrencyId::ForeignAsset(source_id_local_asset), + 50 + ) + ], + 0, + Box::new(VersionedMultiLocation::V3(new_dest)), + WeightLimit::Limited(Weight::from_parts(4u64, DEFAULT_PROOF_SIZE)) + )); + }); + + ParaA::execute_with(|| { + let alith_balance_asset_after = LocalAssets::balance(asset_id, &PARAALICE.into()); + let alith_balance_native_token_after = Balances::free_balance(&PARAALICE.into()); + assert_eq!(alith_balance_asset_after, alith_balance_asset_before + 50); + assert_eq!( + alith_balance_native_token_before, + alith_balance_native_token_after + ); + }); + }); +} + +#[test] +fn send_statemint_asset_from_para_a_to_statemine_with_relay_fee() { + MockNet::reset(); + + // Relay asset + let relay_location = parachain::AssetType::Xcm(MultiLocation::parent()); + let source_relay_id: parachain::AssetId = relay_location.clone().into(); + + let relay_asset_metadata = parachain::AssetMetadata { + name: b"RelayToken".to_vec(), + symbol: b"Relay".to_vec(), + decimals: 12, + }; + + // Statemine asset + let statemine_asset = MultiLocation::new( + 1, + X3(Parachain(4u32), PalletInstance(5u8), GeneralIndex(10u128)), + ); + let statemine_location_asset = parachain::AssetType::Xcm(statemine_asset); + let source_statemine_asset_id: parachain::AssetId = statemine_location_asset.clone().into(); + + let asset_metadata_statemine_asset = parachain::AssetMetadata { + name: b"USDC".to_vec(), + symbol: b"USDC".to_vec(), + decimals: 12, + }; + + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemine_like::AccountId, + >::convert_location(&dest_para) + .unwrap(); + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + relay_location.clone(), + relay_asset_metadata, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + relay_location, + 0u128, + 0 + )); + + assert_ok!(AssetManager::register_foreign_asset( + parachain::RuntimeOrigin::root(), + statemine_location_asset.clone(), + asset_metadata_statemine_asset, + 1u128, + true + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::RuntimeOrigin::root(), + statemine_location_asset, + 0u128, + 1 + )); + }); + + let parachain_beneficiary_from_relay: MultiLocation = Junction::AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send relay chain asset to Alice in Parachain A + Relay::execute_with(|| { + assert_ok!(RelayChainPalletXcm::reserve_transfer_assets( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + Box::new(Parachain(1).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_relay) + .clone() + .into() + ), + Box::new((Here, 200).into()), + 0, + )); + }); + + Statemine::execute_with(|| { + // Set new prefix + statemine_like::PrefixChanger::set_prefix( + PalletInstance(::index() as u8).into(), + ); + + assert_ok!(StatemineAssets::create( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 1 + )); + + assert_ok!(StatemineAssets::mint( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + 10, + RELAYALICE, + 300000000000000 + )); + + // Send some native statemine tokens to sovereign for fees. + // We can't pay fees with USDC as the asset is minted as non-sufficient. + assert_ok!(StatemineBalances::transfer_allow_death( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + sov, + 100000000000000 + )); + + // Send statemine USDC asset to Alice in Parachain A + let parachain_beneficiary_from_statemint: MultiLocation = AccountKey20 { + network: None, + key: PARAALICE, + } + .into(); + + // Send with new prefix + assert_ok!(StatemineChainPalletXcm::reserve_transfer_assets( + statemine_like::RuntimeOrigin::signed(RELAYALICE), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), + Box::new( + VersionedMultiLocation::V3(parachain_beneficiary_from_statemint) + .clone() + .into() + ), + Box::new( + ( + X2( + xcm::latest::prelude::PalletInstance( + ::index() as u8 + ), + GeneralIndex(10), + ), + 125 + ) + .into() + ), + 0, + )); + }); + + let statemine_beneficiary = MultiLocation { + parents: 1, + interior: X2( + Parachain(4), + AccountId32 { + network: None, + id: RELAYBOB.into(), + }, + ), + }; + + ParaA::execute_with(|| { + // Alice has received 125 USDC + assert_eq!( + Assets::balance(source_statemine_asset_id, &PARAALICE.into()), + 125 + ); + + // Alice has received 200 Relay assets + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 200); + }); + + Statemine::execute_with(|| { + // Check that BOB's balance is empty before the transfer + assert_eq!(StatemineAssets::account_balances(RELAYBOB), vec![]); + }); + + // Transfer USDC from Parachain A to Statemine using Relay asset as fee + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer_multicurrencies( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + vec![ + ( + parachain::CurrencyId::ForeignAsset(source_statemine_asset_id), + 100 + ), + (parachain::CurrencyId::ForeignAsset(source_relay_id), 100) + ], + 1, + Box::new(VersionedMultiLocation::V3(statemine_beneficiary)), + WeightLimit::Limited(Weight::from_parts(80_000_000u64, 100_000u64)) + )); + }); + + ParaA::execute_with(|| { + // Alice has 100 USDC less + assert_eq!( + Assets::balance(source_statemine_asset_id, &PARAALICE.into()), + 25 + ); + + // Alice has 100 relay asset less + assert_eq!(Assets::balance(source_relay_id, &PARAALICE.into()), 100); + }); + + Statemine::execute_with(|| { + // Check that BOB received 100 USDC on statemine + assert_eq!(StatemineAssets::account_balances(RELAYBOB), vec![(10, 100)]); + }); +} + +#[test] +fn transact_through_signed_multilocation() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + // Relay charges 1000 for every instruction, and we have 3, so 3000 + 3000.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4000.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + WEIGHT_REF_TIME_PER_SECOND as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000004100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000004100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000004000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + false + )); + }); + + Relay::execute_with(|| { + assert!(RelayBalances::free_balance(¶_a_account()) == 100); + + assert!(RelayBalances::free_balance(&derived) == 0); + }); +} + +#[test] +fn transact_through_signed_multilocation_custom_fee_and_weight_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + ParaA::execute_with(|| { + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the relay will see instead of us + descend_origin_multilocation + .reanchor(&MultiLocation::parent(), ancestry.interior) + .unwrap(); + + let derived = xcm_builder::Account32Hash::< + relay_chain::KusamaNetwork, + relay_chain::AccountId, + >::convert_location(&descend_origin_multilocation) + .unwrap(); + + Relay::execute_with(|| { + // free execution, full amount received + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(RelayBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(RelayBalances::free_balance(¶_a_account()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = ::PalletInfo::index::< + relay_chain::Balances, + >() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let total_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(MultiLocation::parent())), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(total_weight.into())) + }, + true + )); + }); + + Relay::execute_with(|| { + // 100 transferred + assert_eq!(RelayBalances::free_balance(¶_a_account()), 100); + + // 4000005186 refunded + assert_eq!(RelayBalances::free_balance(&derived), 4000005186); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + assert!(ParaBalances::free_balance(&derived) == 0); + + assert!(ParaBalances::free_balance(¶_a_account_20()) == 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_refund() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + ParaB::execute_with(|| { + // free execution, full amount received + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000009100u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000009100); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + // Then call bytes + let mut call_bytes = pallet_balances::Call::::transfer_allow_death { + // 100 to sovereign + dest: para_a_account_20(), + value: 100u32.into(), + } + .encode(); + encoded.append(&mut call_bytes); + + let overall_weight = 4000009000u64; + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: Some(overall_weight as u128) + }, + encoded, + // 4000000000 for transfer + 9000 for XCM + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: Some(Limited(overall_weight.into())) + }, + true + )); + }); + + ParaB::execute_with(|| { + // Check the derived account was refunded + assert_eq!(ParaBalances::free_balance(&derived), 8993); + + // Check the transfer was executed + assert_eq!(ParaBalances::free_balance(¶_a_account_20()), 100); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact { + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + // 4000000000 for transfer + 4000 for XCM + // 1-1 to fee + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer went through + assert!( + ParaBalances::free_balance(&PARAALICE.into()) + == parachain_b_alice_balances_before + 100 + ); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_no_proxy_fails() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let mut parachain_b_alice_balances_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + parachain_b_alice_balances_before = ParaBalances::free_balance(&PARAALICE.into()) + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V1(xcm_primitives::EthereumXcmTransactionV1 { + gas_limit: U256::from(21000), + fee_payment: xcm_primitives::EthereumXcmFee::Auto, + action: pallet_ethereum::TransactionAction::Call(PARAALICE.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer wasn't executed + assert!(ParaBalances::free_balance(&PARAALICE.into()) == parachain_b_alice_balances_before); + }); +} + +#[test] +fn transact_through_signed_multilocation_para_to_para_ethereum_proxy_succeeds() { + MockNet::reset(); + let mut ancestry = MultiLocation::parent(); + + let para_b_location = MultiLocation::new(1, X1(Parachain(2))); + + let para_b_balances = MultiLocation::new(1, X2(Parachain(2), PalletInstance(1u8))); + + ParaA::execute_with(|| { + // Root can set transact info + assert_ok!(XcmTransactor::set_transact_info( + parachain::RuntimeOrigin::root(), + // ParaB + Box::new(xcm::VersionedMultiLocation::V3(para_b_location.clone())), + // Para charges 1000 for every instruction, and we have 3, so 3 + 3.into(), + 20000000000.into(), + // 4 instructions in transact through signed + Some(4.into()) + )); + // Root can set transact info + assert_ok!(XcmTransactor::set_fee_per_second( + parachain::RuntimeOrigin::root(), + Box::new(xcm::VersionedMultiLocation::V3(para_b_balances.clone())), + parachain::ParaTokensPerSecond::get().1 as u128, + )); + ancestry = parachain::UniversalLocation::get().into(); + }); + + // Let's construct the Junction that we will append with DescendOrigin + let signed_origin: Junctions = X1(AccountKey20 { + network: None, + key: PARAALICE, + }); + + let mut descend_origin_multilocation = parachain::SelfLocation::get(); + descend_origin_multilocation + .append_with(signed_origin) + .unwrap(); + + // To convert it to what the paraB will see instead of us + descend_origin_multilocation + .reanchor(¶_b_location, ancestry.interior) + .unwrap(); + + let derived = + HashedDescriptionDescribeFamilyAllTerminal::::convert_location( + &descend_origin_multilocation, + ) + .unwrap(); + + let transfer_recipient = evm_account(); + let mut transfer_recipient_balance_before = 0; + ParaB::execute_with(|| { + assert_ok!(ParaBalances::transfer_allow_death( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + derived.clone(), + 4000000104u128, + )); + // derived account has all funds + assert!(ParaBalances::free_balance(&derived) == 4000000104); + // sovereign account has 0 funds + assert!(ParaBalances::free_balance(¶_a_account_20()) == 0); + + transfer_recipient_balance_before = ParaBalances::free_balance(&transfer_recipient.into()); + + // Add proxy ALICE -> derived + let _ = parachain::Proxy::add_proxy_delegate( + &PARAALICE.into(), + derived, + parachain::ProxyType::Any, + 0, + ); + }); + + // Encode the call. Balances transact to para_a_account + // First index + let mut encoded: Vec = Vec::new(); + let index = + ::PalletInfo::index::() + .unwrap() as u8; + + encoded.push(index); + + use sp_core::U256; + // Let's do a EVM transfer + let eth_tx = + xcm_primitives::EthereumXcmTransaction::V2(xcm_primitives::EthereumXcmTransactionV2 { + gas_limit: U256::from(21000), + action: pallet_ethereum::TransactionAction::Call(transfer_recipient.into()), + value: U256::from(100), + input: BoundedVec::< + u8, + ConstU32<{ xcm_primitives::MAX_ETHEREUM_XCM_INPUT_SIZE }> + >::try_from(vec![]).unwrap(), + access_list: None, + }); + + // Then call bytes + let mut call_bytes = pallet_ethereum_xcm::Call::::transact_through_proxy { + transact_as: PARAALICE.into(), + xcm_transaction: eth_tx, + } + .encode(); + encoded.append(&mut call_bytes); + + ParaA::execute_with(|| { + assert_ok!(XcmTransactor::transact_through_signed( + parachain::RuntimeOrigin::signed(PARAALICE.into()), + Box::new(xcm::VersionedMultiLocation::V3(para_b_location)), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + para_b_balances + ))), + fee_amount: None + }, + encoded, + TransactWeights { + transact_required_weight_at_most: 4000000000.into(), + overall_weight: None + }, + false + )); + }); + + ParaB::execute_with(|| { + // Make sure the EVM transfer was executed + assert!( + ParaBalances::free_balance(&transfer_recipient.into()) + == transfer_recipient_balance_before + 100 + ); + }); +} + +#[test] +fn hrmp_init_accept_through_root() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_b_account(), + 1000u128 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp init channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::InitOpen(HrmpInitParams { + para_id: 2u32.into(), + proposed_max_capacity: 1, + proposed_max_message_size: 1 + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelRequested { + sender: 1u32.into(), + recipient: 2u32.into(), + proposed_max_capacity: 1u32, + proposed_max_message_size: 1u32, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); + ParaB::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp accept channel + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Accept { + para_id: 1u32.into() + }, + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::OpenChannelAccepted { + sender: 1u32.into(), + recipient: 2u32.into(), + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +#[test] +fn hrmp_close_works() { + MockNet::reset(); + + Relay::execute_with(|| { + assert_ok!(RelayBalances::transfer_allow_death( + relay_chain::RuntimeOrigin::signed(RELAYALICE), + para_a_account(), + 1000u128 + )); + assert_ok!(Hrmp::force_open_hrmp_channel( + relay_chain::RuntimeOrigin::root(), + 1u32.into(), + 2u32.into(), + 1u32, + 1u32 + )); + assert_ok!(Hrmp::force_process_hrmp_open( + relay_chain::RuntimeOrigin::root(), + 1u32 + )); + }); + + ParaA::execute_with(|| { + let total_fee = 1_000u128; + let total_weight: u64 = 1_000_000_000; + let tx_weight: u64 = 500_000_000; + // Root can send hrmp close + assert_ok!(XcmTransactor::hrmp_manage( + parachain::RuntimeOrigin::root(), + HrmpOperation::Close(HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into() + }), + CurrencyPayment { + currency: Currency::AsMultiLocation(Box::new(xcm::VersionedMultiLocation::V3( + MultiLocation::parent() + ))), + fee_amount: Some(total_fee) + }, + TransactWeights { + transact_required_weight_at_most: tx_weight.into(), + overall_weight: Some(Limited(total_weight.into())) + } + )); + }); + Relay::execute_with(|| { + let expected_event: relay_chain::RuntimeEvent = + polkadot_runtime_parachains::hrmp::Event::ChannelClosed { + by_parachain: 1u32.into(), + channel_id: HrmpChannelId { + sender: 1u32.into(), + recipient: 2u32.into(), + }, + } + .into(); + assert!(relay_chain::relay_events().contains(&expected_event)); + }); +} + +use parity_scale_codec::{Decode, Encode}; +use sp_io::hashing::blake2_256; + +// Helper to derive accountIds +pub fn derivative_account_id(who: sp_runtime::AccountId32, index: u16) -> sp_runtime::AccountId32 { + let entropy = (b"modlpy/utilisuba", who, index).using_encoded(blake2_256); + sp_runtime::AccountId32::decode(&mut &entropy[..]).expect("valid account id") +} diff --git a/tracing/2700/rust-toolchain b/tracing/2700/rust-toolchain new file mode 100644 index 00000000..a7267737 --- /dev/null +++ b/tracing/2700/rust-toolchain @@ -0,0 +1,5 @@ +[toolchain] +channel = "1.71.0" +components = [ "rustfmt", "clippy" ] +targets = [ "wasm32-unknown-unknown" ] +profile = "minimal" diff --git a/wasm/moonbase-runtime-2700-substitute-tracing.wasm b/wasm/moonbase-runtime-2700-substitute-tracing.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6d15cb41811b7079c41e71d80ff00444fb5c1ce7 GIT binary patch literal 1883721 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�y)xLAbDum5{N1_cYrXgXebAZbW5^rxxjr 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

Ek?FcC?(1XV3zZA;K}YuYSIu3E}b)YI;P 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�}@34 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

G1=K=$eEye)xCPh$S)NbI^3h&5NGK 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

(y_Eeu9h6hV^^A%8kZRsd8g%q@ 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

M-F2w*jr6Qif6~v(0_DWU&kT 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

XFV=4lBD!7+}oXkGjN>RCQ-L`LB!Q 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

Qx`~)Hco_#Y$7gZG}k4 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

+n2*v_jmT;mi1jFSWE<>>FU%EN# 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

X~A`I0PL_uVN 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 z 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

AtrU9(VP+& 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

drRTfKYV>>K-tb5CaQ(3XAuuB^dS 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

E{OpBq!tq0hvu{P@O<-6L#$Q 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≦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ð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

cC6Q^5@zxSrGGN1sYtcK_{63H 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!@ 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 z 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�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 %>)Q&xCRrLn8$-v(WmB@!`!*N?Tb88nPq;5 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

    I`ttqp=CHMQ3{{{Ji11mAo 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

    &uv&4?t`5Qy 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

    |!d0MSV`{OzXkZcD8I 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 z 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

    cjBWN~O_<16mDj?D1*J)pkeGd{VGh@(~i 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Μ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ʹQ^)z`hN8)rWyY3Oq@zp07iZs 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


    pq7?CWw87&e3fMO{G|G%JWMD_J4b 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

    =7SllaG4 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

    >kEKNRS+airi=ZIP-ih6Kin-NzzI@U6zYU~NDF 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 z�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¨$+|7~%DOm^oTxRyUa^9em-A*+s17t;XzNB(XD# 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≪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%0D9_Tk7-sVBWxh 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
    wkkQ-e3v4C@2>-42#qFxc6s1KCnrNisF8t!9C; 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

    $-G|LxWH~6ZS6$ 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¤^uaqz_Wq$ zVx~d;jn#HgQ~7H4lD(B?&Qj-M9)ZL>w@DxzF6}5<0%uN6<%Tea!PG|go!en+5%MP5 zOUMHN`E93l9Hi}a9sXCOy6-}sdz@sfg6x(h=bOA)DRRqzl@B->rpJR7ixJYxhxYT8%hVCkDy}?VyHgU%zH(oAJJ=ZF_C(`(IHXP z+jWp^4OCI5aB!eHWV9Iw1W0x^X6gYx;<_BYDqng`2eI11)qxgEj) z;9dm?zk|;Ci~F&;WcJMlG(bYa0Wdrp-UViIz=s4(<^Yyh^9EOdQ4f5XhL-t`Kz(jW-KOv z@sUgP@6<;e%ki4uIPSfnAU_>cbJofTXa1<3*WecNe<{ib!wKusnwam))h!^#l(zu= zn8Z|tTrjrwWcj?MC`_t13-o@2&>m$x1~sH?nC$;j1Nfcce&)Jw=YEnM#wc73E&grV zy83$?BD?IY5(oAC>b?S)0oEdLU&+|8?Qp7VzVO+5o7f#~pru?2C7cpvOct0FSrmTNGb7B6_2@IK){$w z54(ZeOsy+@io?)K5s!@^wn)t?E>$*6q@XhxBsdiKAiiNV0dG)69vVD%Qr9x%^AO5Y zT;rBEsze=pss&R}t@@-t)A|q}*pBN|?%9eO)mQ)%v2d}^+ZE$tMR9mGbX5d^a4VS2 zk%*-fSb6WYRE9?nc9T^o|E`#5sc6d-iuZGbeK)Nj$`aI8oQZc;vA9Ypj2PJ~OeRy{ z&jhi0w-Q1YGE=8=q8bdIpeu2iEKRbKB?s20$cjWE`oX*kw{bzBV0TrJG_sOOh|+{9 zQFzEu(`Yx6tu=Jr=*^2~X!20Te%-VJ`ouPtClAzd*XL4`{%yh-`b|z z!$)k7PdJG@T9|2XA4(3?mXhK^ErQxc4DiG$1`twBIX7Ae%BAS_hAcwu5|L$ZpX8-i zOg|(8A*i#J+5oHLgJ4tO`)%8JLk|eW%O>KH41{>w6C94*%gz8CX#ME?*w%ryLQ9M@ z9uAvlByO`Jz*!EkVX4qn4tx^l9pe0wR<&QNSaGC~Ofb?W#$q`c?rP}8jB6)u2Q#Aw zFgbMA&Iovo4XCF1!+W@=u1cnzci{yD=Fy=dUc`$R-zi3MAyP`r#pbeZAofod1vXLK z%el^fj^!^2q5wiUGRXA^761WW^Wc}!f_AKz-YEdtCU424+cD7+(Jqv(@N zGoZF$aU^Bj3a7CHGhQMOd{k_TQ(TFZ&>K++X(2@%e3EC%7NtjOcOsEDFd5_8Lus-U znNkY2vQ_HxJhp$%saLACYSY%jEyG8gt~e{7K*#W5;|rDR)2C-|%J(qn8<}DY4K{EE(4p=H&d;&rHmq@MU;wO}0bfGt@J30MVJzs_IXVzL`~fz=wS%njf=Am( z&UPL(o(wUyWrZ*l4<&reJ^m+3!Wu!Qx{QkY=p3Mgh;Xs~fn9=sPqc-^0UOk?oW;wC z*%h>)429ZXmlfJH5pG|BHX(7G10(-UIDBEw(KCz39Q#_!s;Mzyq3zoJAIKe>4eWTd z9#V@gXv=e#-j{|$n^%n2514!CC2%B0ic`ro<8=~O3dSDS61$9o0QqRdDe#tqiO z+B~R;mQPPKmT|~74ZaX@Lbk9csMTP;s-cBQ5NdYUI;h7W%kj9$n!)@QAcP7{v`_yA z1f=0JPD1A?yyV4K=RJgUvLTV=p*wr`wcp@n{5d@Gd`Plu-A?C7z>A1S){d+LketO? zfpoPTBz6i;lW8&;Ry8EMF}4*W!w(YsS)o6R&Ww_piuVaCks59LG*?dBCKmuApFDPgo8^E z2_}^wiRl&mKBG%6wUZ}kZ%epDz&`7$T0v$w>uJo)9{{SzszkT@$hZw9N)RB#mC(2m zyLP*$357r$<#v;HxJ02kEo}(k5g}dY37Y=^t;4aOs9gcytgj7=>s%|-s7u0x_;4Up zSpx5M8OOI?;LtSLaB*+IycWkWz93EI0N4iaQnSA^H364c3-2SB?VCGOSh`s1JjB;n z#8#uh+e596!`&-goD)UMSxY_FXBNG z-Th6i8T$$h$A9V_9)Cr8n249UkqDmP9#XQ;a;_M+1oWmLP09=+f`eAgGc3=f*b=>A{bEb~)f>c09ZC76|G#7?Ok{B7D1!%zV640m7hq_E^%W2 z60#Wz>DYUUYg?}~rB4^ARYq>Qy-R87-Qqlxy9?~HUXF#w7D^qIKKFG0r@?RNm)W1G z`6HxfU8^(>P*%Y*$3B<4{vz7xO{cw=6aGEb-J}apC(8(mlxe@iJV2oS^_7a@r-s%( zQ2;wUuge}N%d6jCLxkmj4j!ift>7oHFgH2Rv_4#>V}LMK7jFRWOHsZ%i z@L;t)%Ccb)!s^oLu%H{;0{ZLg02+KDDS_B%?qPx79sUxl<&U^hvR}f=0yYRS}YOiOu9-J04RQiDu0hvP%gWQgUee1 z-~ixvvfQC>ycdT|t3HO}fDiJwY5bRX8v3$d4Fo_5>@ zk1)WrwEZ(e&mzgkktK_U%%I9g;OKg(V4#oHk}T#Q9FT!P42}J!(G<~OQssWh(opH9 zDe97f0K9{Tu@&cxn~dXrqbkP5u$)S%CwEp_9}9UF z=L+C0mxDURY*%wrKuAy0aqoG|Q9W${#KYAx>>V=Q>h3quNwoC9VKG`wD2F`Px;X`ZD2$E6L!d0*O zk`CfFr2MCHg}nMcUv4I&E3Z3i>#titQFa?0me|)4M6^_8boUV<8N|i_lZaG5pV?z; zjKWdRNd|&-WKR=ukwS46y!Ic;;Rb%F+>pj*_il16dg#pnv6cAOqk$QfGz9D1CZxmB zPcn3ZNj1roE*PeXBIsG+Owaf#j5GKt&-a-~Dvj7h;I9;H5Bnt>$P?n6OpUGlC|J|V zD>}+K|qpnA7UJ9vQ+oT^y@D9gP`k3p^j8Gbym?hIXDbv04XefyA{L9|@JR zT5wf~isg5nsPMC5II|&K4vXZNltOi+jgI3yY~T`-v_VM&E2uahNob7K_K6X-92YOZ zq{vqgWIz9pvku|h`aS^i>|Jcxix5aLcKrF+pT+x*!#&N-`)F%rbIV$?v%N&HGTIWW zn+T$>&A1&54W#>H_gWqj!2A)uO*YN|BT za|P|fDT`nTC(*?ON<+n4sarB#3WqQkS80I4L4n%C7@=d@1Jl)ftLeZol9f8Lnplom zC2BAhu}bThgF>$@U4G_{k$73<3S?hr;?Mxc%q3ri36CuE^Xfr8N^c-&86Q0A#~kqn zNSH%a(05G(6R!G&JdnOmY(<31VKWq=?4*BG$cl*9R?WfDe+9OL)Xf^k&T^0<<<_Iq z|61xhI`Xo~Vle5kquDD)>Dco6I2(S&x_}DoaOjqS$(r>oanDyKT-OEn;Qk8zLN}K; z)y3+L9?-mx_m)+F;QCO|mQ6Cf??^5RFvuYzH}0pUM_rzON7$)0qxWCDz=IyRp!ecB zFq}IFlFyK-8+rqKRY5Ik9oP=jm3tNaEl#2;M2y;Afr6JYGq7aTila&#UPA2X48 zu)~JN0|EE;{7F^{moZaxSPr^Te!Ed61~^X>KT63*?`Wf;vOG#t1Az%_k(6uUI2FvY z*^@sJh;?$wZV!B-if$lR!mVQ9$dZlwQfs`O~OWe*1;4f_0aB^-( z`7D$qsc@tuf#*LyoJ9llt0I+UDUl4A)MEM(2&lgt=vOLJsE^Yt9M*RiB|x5+NLc9R4_XuH<3 zA#^8|7KxFK$A$(%n}ih;LfrykW+WdrvFD)#6hbmb)laS?zOsl|hBnIKqMVL?w*-iS z6Zm8qGEmxrd)^7SPOt(8-heP;uns2Ch6O!<{ee4HUqQNtOVEK!O1}ix^tJnx0i@*Z z(|hUl7miZnQEFTO<4Tp~zl^j!BvcZ4vk=CZ%;?3@|#h^sb zXNZlGpx&R?tK+he?TUB?jBE;WgYztewPlyfDb$%8(8ebN26t4wX-@t$9XIeQgar8@ z>bW}}H4kYhWO*9&vZpAGg;XVts4Xd|2Y_wDpsA)5k69HQaeV;qR6T?NAUj zWYzT`jyjO0Y;+#C2cclfnnsfq=51xO-xO98_VyNZ1hI|yz1L^G%DB4ZB)rvI*BA0Z75t~$XG8{*C&jHDG^MDv3l_!`rg)Wl?_kN zr?~-d{SRAe)c*gyCPIi1g{}k?k};1+jI(h!jCV^RrxiTGXgW3XSX3Db$G+~jRPI(b z&6*@cx-y)Bgz`$PN$alE15ETw`qua6#Ay`fdVsD8J{^rw>qyXReMF|2hJ)8(zzYcN5o!E3q;1A(0w zAOpn-+c(Lv#k+9eHq(n)F6B*{{*?cTI|>r|a5w4b z-+og#@FG34mD_^wYZjIc_$8Qvh|Y^lSA+%_24II^ zKm;`$ZYsNEqCATd0%XOhYw1n9srqFO4bKxqr$b>_@nVpx2yEw!usoTrfimF|Y%>m((#OCffZ03AQeTb@n)fou>akEbT|25$8i=%H zM8YgHGb8{}%|lj)y|-e_@;V<{lJ)Hf#6~rvldR4UB=)qapkNjr&xCS<%2YKm~EhfC=r(xwbJp3WfR znH5~IF(8^Z&*d6VeUzsd;!>p*zu&fO1~pJ!h1}?i)F3^Q#;6gr*BFHvZsoZOL0y70 zM_vgoFf~|zrb>N`@fL`z7zEjglGHJIgKxt+gSgxxn>6Fx)W8YBJ6}2~>lVY!NUMMx z`R{pKoAQv$_AtPsoyTo9Ek8Z}9DNOHlN!>A4UVKI=YIJV#r7TKWArMm>i;e@f(Z_x z;tIcm!|>nOmnA#}AQHU1WeE^7KU6u+G%dbS1x!74G5lM+qarzUa8@Z>*4YrMbhI1o-{*)?9$E$~mP!+8_Y;~HI0^X>DCxqL9~mnK zkubJi5RBL@kS9*Nh0M~1sql2_2~O2Yn^~a}V%;T;{xStkD%>DAbP8cvC_b>L6pMf| z;ABkJP6ElIwM>7YHAKBbfw6R+_Ba0wcz6&<1}Ka;HoGgo~SVjiQqUD1EHEQ$eb6;i09EI z8_xv^|720L-T*fZj#)|mA!{3>%%l-xpr-l49L3jg1X zf?#rVAlXTB6H)+#KzqOO>FM4@orQ~U%(BlyNb%uh3zw&i6Es+wq|3DG*4Ptm4j$cu8Z7J<+4Fy>upny38xx4R=f zvXlJyz8{w0YkG($!Wbj+uH~GMD@p6|q$=rzr4_Q!1)e(nQtCseIesmeTnBeHY#CU9Lxs8ySEOayrx~lgB?1AX%!aBcEMRWx4mWkQu z+TDjeFo5U(pv1V`-h|N(V2vaSn=OLe(mza&SW-Q|avT1M>IQAwujwi* zO#lxQdXIqlNp(F<+uA?R9NNqS$I3BIL!Ubar1Q2@0-Aztnd&W9#(;?>*eZ(1klF*4 zK@dUGsqqPFSi&NM4Hmxcu#Zf&A#h&%+sj4|-7r>U9$ysW4wb^%aCnu4RuzUpfR2e5 z^Gz;?`3XYy+A4W=cs+6g8hLqa7kRsI;$EjiM0F`BCc-)BN#KB~R z3Bln;ZNC&Vn(y`?3lh1w1PumMl*!`*{-qOhlV7ua9JwkD3QctySQnM^f8h7j>~5kI zKGjzPftU{f1|S!Fuo}T`HpxT`y`=1(C|&mJP0gBWCwQ6yzaNaRz@MFbVUs#_d`i+3 z_71tNTq$ZtRYf^~vsd*iptvIoR!kB7unezQ2a^FC2UgjG|)|&fWqz z=ENDO-!`F5V(Eu_5nU=6(D$rrV3!);9%Dzxdj43gLGzXojIBLfqH{w3VbVZXwkbkH z^(P_o6Ihk^dI%FX0X`HX&?JJV!NOT2mex={>46$Ei>kq2#7eZGZy8QoRf$|}6l}wp zOlGG6xA+M6SlQljL@!pa=Q9sZcSk!%iQ0uxP!4xqY=x$ZH}Fb}sm=GXRm=vkmW(i(z zGfnTR5b zr;sNfNL|;!V?fQVPFi#5w@bl9U`#roDWq-ro}B0NK|C4Gu>oh|0&?Yo?SK&zT+vvN zHjmc2if$-yTB$5dViCinj$A;?GXkHfI~kTI@I-1W0XZ1Q^F`dVxcSOL_>h!we?}D8jkQbNBtg_MdIm`0WsTF8`|*^Ho4rX{ zt%iEJyh44kwp8z?_$O#Zuw&G5P?MKpWNxNHqO^_}6jMVa!wJQD)r7%LG&)*ulztpZ z$l(g;x65Q3Y$2I*Ero0$q{*oYz}*tE^_)W67(ygqyjSmJBzmdjN7^bAAaI@(2WVPv zJlTh$*Uac;_39Hk%AINrK(vOmP1V4{C_WnwY{xQIRfz#V%Z$-HMIZiuff9B_?t9Vf zt8-c1^dKxuHFs|;mz^5U;Ckqk#7TN0%jzFp6f~HgH1OFOxs5Mj)E83p(8Dh$dWpy{ z>kzB{l)b6@)`Wf6C{0dRRJTB}!ajOUg!CJ$v;K9fVmTOAEj7cU_@Ttw!jd#pAS7ck z6dlj2fwMW^sa2LxwbF1Z&d;~+;hT*Ha#H}2PBd^Q_lG^K^T=@O1?9vN4UA@Rpq+6L zTwo@rAz?s|0ZD>6gnxGL0vQl=SULMP9W|}N6(;xi2`&0Fo0Ch$zEy+&Mtas%Xq&xi zu=Ki2RaATjU2y#3;Vij%@|h&{4lG^JN974tbFZb-sSeK9MuyuCdUDC~I6j;{S)&dNwJpvsg5l8Kaw1>l9nMOWf6T6Mu$&Q!V#0zWa^31+8ZYD;TV_5BNziz@d*fk`J z&}BtP`a`((x0c8v#5Wxsqv(Iv5Zfs%te!}EGDLa7t;wTBmb~m-vga7sF@Sy8G|LF; zI@XJ#@>&^RqPbJqODbx_s7x$sJp~0w3tFnl=+>eUwa3BqJ61ttX>^9ph`P@^cGC`b z$^iwH{nq^dbbZtg(@;w$vzC`bcrTJZ3fbel96?w(=Kwk*f`9|0ogIyaI$ELeMj=7* z_CK>}fVw5GovUo@I#Vy-%!1WuEH$?rt`T^^w!h}2To^Dv-Jeqju>mxkM5-8BZfLQV+86Jf7frFwI8?IAeqe2yX#1cSbDIcNEwnaKA>fqT zB2bNB>#oz!#bjdF{hV14SC-mn&?s?;g_T$QLI2L3o*(Ztqn?L;)`Klz5rjzQ8Cs*Z zBI6K2M{yC=0GWQxXqLe74#^l!eijM&k<4fRlhiLSM@P#1-j%-q0Z>O*dEA@_l_UzY zli)2%fO+Ykp4rC{nSqx*lU5p+xQPp~rCeeuZ6YDpR&3qpWEx?1X~Z zxSc4_!6y|%lKd%URK6lIknM)c`GkLi{_bC4fT6JY!&Z}ECgDM(BJf{?lJ40BEbt>s zHD~}heQh}jDg7$@`I>Ilmxq6Bt53sm3oYpJufdmqmHxUT?{}01kXDV?;EUrsb{Iwh z=rog~14T$7L;#^;0>qOdeYbf^Cyn64R>~pcrxuSsM4hvOz1C^4(-jHz8`xw_t|n&N z_uCe1b8#4i8UymNPz?@-z^iaS@(|z~F5i99A&)6vI!|hd-Iz!Rrs(OxSm%Dr3JM>i zIxx##5?|ys5!ae6WX1+gW7tCil1EwYx`UIx$rA88Z5l$!ZWZEOo4r5%D@VlJVPjLM>36Otq{U62+`)r)H*W@I{{7WKRkIzl zqA)-J*pD1qGr~Rc(u8O6_4f0_j3e_nt21-BV2;b4RvQt5waJ^1DjM8l4(C&n7f^_8 z#i=qVV8xpz=w!7^B@yAijNg^+T~I)-u`6aC7VsFXn}J3OH;z`?ZLQg!eG;7n>t3Rs$N9K#!>^+}Pxgd0G)EkYJlwBMRTA}n99_s|S`4^ag)vFqUi z08p|w$hkN7T&;xh&gA!_4dHwOXYS*8`Y4|XX>UMVlP9W5hAa2D-_2YNd|#}BQ;77ZbqCI^_)bhSO5!f$I&8WN6s-8Ub^aF=n9Yc z;&)QXy=Ru29QUbR#O!nygqN7UQ21AdkMA#wGD&I6R-s0mQ0bz;>l8{gU#SMQdJsW7 zvI{Vhtc44mG;IN8=~*`CAFxePdL6BslS(4Uh$GZMTJ$nawUqzI(9m=sE{6kOY&O<` zayXzq5(|hCJL2@0epxM+57vdy82xNGE`0^INTPI_sBxus7i*S_r0V7ChO`yoKWKG#+Q~=&M@V3S59dLY_4rEN_0&qTwnH#FAm*B6kD^@3h8jE zNcvDO4!w<)%Y?FKnY1yEqzIh0N_I4K)E<1R_9(F;iE|1^U}0XV5nKf58^ZIfIYj%% zzvDjUd8#xMp%y11W(o605iNBpr;IE)Pojx5?i(B}ob{H6lcYO?+R6y4rBA7R@dp5i z%0mwj8Gu6g+g`|a{99rK@>V%eTsLM99x3RSMhn0aVf4>e#KiPOes5v|MZ_!UddVw= zFcjDUtnoUMQ6W}qM5qqHIIxDL|4I`)ikwgtUhlY1Q7Zls1AAR1>!3tzYf>-r;6Q<< z{=FAKIS3nFhzfd+5bb@RvmOvn2+4IV?d)AW5i>@H@M!8uoU+B-k+02<4PNc}e>fm* zY^3b=!=Hp0kN2rZww&L0_>b&*hM%48adpbhTyZB#4wlLAho10I{1-Vf@dk#LIk@Do zNgcXe2yNn26YW)BmU}w^1LIHSNmDOoOg~+r7Ag_8`_r_d^*0_Mb&VL5zlQ-=5i2N>83XXGzk-4m=LF+=hvb%#Fuuw!N#KOxG$)72=C;z1L&p3u|t~1`;3Ac zL>^{>;trwZ0l$b2a7kn|$Cu6-YhT;I0JSqKjon0uq877JwC+Y6bWMY?Vp09qfbKTM z@*#^*D26%O8$y?exiJ_e2W9uWA6eby8~pSxzfQq>HC=xj48O=9Xe8A8-3QEEb`;!g zKOct&LX#`SKoiDmhEK$ox_8I{fECz)`7KfRAhle~jz=^w#PN*SkS!%A8Yq80LI_E+ z!AKRr)3{<>Q4C7|hMaTD2*NJH0Z+mo&2>~$IQrAHo*=~kaoA3kVJ$Xz>%0ZfV%{g4 zjyXfk^#C@5&;%=!9vXE{4!HnO6~Aij;$~RFN{}7QRn8E=4`pJ~U9^z`i#TNs#WI`P zQ0^MU8UoYuXo5DdHa_Y~KGd95<~I1%OcNh^9eAHjwh;_?r7Km$!HAKjZubKcneK7( z4@z;nmINK7KAu23YLH`8Vgcx`kMcA<0YoBTq;FOKb5~DODMaQ!%%r*4$Mrh)GWjc$ zN*s(Rn1eytXxCGFBE+*&e7}+e4}0QBd?N`-Lw&Iu#L*~oz`}! zP{E)++jum|(ERt4jxOkW=iZ0F<1b%}Ga{GmC>R(n z90^wDS;GJu++`k}mns{zM(jx$49s1dvAGQy0RldnMh%gKp@ck))Byb7anE|t&3kb< zmNv)mh9M-jN1|L3P$1b9)2*~FA;Gk38lrTN>I+%l-W#x64rDIRNE8MkUre986=l>d zs#;go0V%6k2r0fb9a%(>I{875!m{iFW*`2L`|*T=<4%8abY3B*VuUphPp|L36P z=M6$;e529 zi457AYLtyS_{evt<=-uf2C=}?;^fLb%QZkW+7^A8px0SqQzD0ni`dOXM!az%5uuq_ zh%ih<#8neS0!6G+hezXbgKbL@tC%$+X7*ltfB9~P63p+6kwPBA;xQl<`#e;CXaaHo zhBuO7q!mBh6RF!t4XvWMBaogYAqWmpJ@!$$pyW46liA@&2j=F&=*=EMsmu+b!LQ`Y4r2u$obMQ?gB{Dj;zVB_vi2Ks{o;uKJ~Tgi5tg`0Xca-+gnSBNbPA@_&I z6Aez7foEB-gy`v2#Wp?AZJL7;Fd|K?|1YnttXKiYW#1Obhh=x|NTT5U&x(qzpZ^Qs zf8@ogBjvkH|NB(r`RRy>S5TvXAhQ;>!!b8v{;khGz;!f0E2DA{CHqI-#g?F1_rNL1 zU!9_uv-}$#vRAWI1=I&;Kf~gS_E8OAAn1pbqT@46jvFkB+au*Qyl>yP_hI<}6PXXn zM8|1Q)ZH@7k`;fnUuZX{6(*A*s0DcBVaa65M*ig>leH+1#}aA0GEpCI{zIYr)eW(@ zX9aCo961$@No$U2*As{jzkiQmHzmhbaX};?&ZBGyEXjVx=*#S(T)qJP@Y)$9P$4C& zh#MI726LPBChO)E-wa&Wz4=)cuuBEmYo?92D7Df5*Npl2n!o=}L-N<&Z)RMsCiEE5 zl{TBJ5<1)Q-EY%P)7g#`8ajijk(b6!l}$`hUYx0lAEesB1#R%0%a`lJ(q(%%4kT)# zVUy?>)2{MRM>z*e~5XkfY}~54xg4FTrb0jNsLMQ)b4rI$+@M zxcrR#Rfu$begel8)>yG!H}b2T3ikv;VLvW+cMdMWXdfrk^=&~vU|}^cF(-B&kr&cb zM%UNmd6R@s>W*rGA4^gCL@ba9Z0abm{fYR7y>U$pMQkd~E9dma+iqzZHx!#qr=;{i z=r4QnY7~&Tk3(-NLEtF@Wk#E16TE>#eT|jiQVR-#c^nA4hz2dqq%#5Spv>>Xrb!u2 z-RC~EtVsTA%}uZb614=bkH|;#0oxnHKwZE!fdT=K`$r1n{8U$m5ds=q3VELX-XGC4 zx=J}e{5%}fYu`&P>U@#6F_^*XW2Pp-X*f*LFrH7=BWcMvf99jfKLSV^-I@9FG#1^N z5aaPoIii1FeH1vBqkFu6(&DVuV+91=H}`fV#VrQ0IJYcMHF)p#eXfnFEaM*r5g^O5 z^GQFT9?<{a(Q3fI2s^?iZ)5IJLI%M~5Xi-I2IOUmiEhBl3fZ@*yI_LDWiR0ZMmpJqL3V%KajNP4G$@J&FJ9qG!Y zyJ1kdYU`a77#y|W5%s(RRe%s&37i6h3CbOUz_uml0bJKcXN18oJK7yq^}U6ycj|5( zJM}uYAd?~M;L!omND%Ue`~)i_jlU5Q4(2@2U8#U^ zQTK#uQ^8nQpq|)3N$>o>muR%Y;7@~Xl*C-Z`3DAsgt)BZ4wp8L$zd7VHF8^FdqK%; z4JuciFyI9c5GGVIUQ;{2poUg3BFI(NTGf~#4quole9~T}B396)pa1?r$lpNaE=hj^>SL-$@v1_rsCzTi&x}w@Ir`n1Zc&92gJv)5gU$-f zCO(~UI|@EOs$g7+@O`q=1WMrM!Qp99Vnk12eQa`9g_rlyO*)Wzpd(y@8;?i^N?Xmu zT}tQ0@teluaZ}tOGq4)0AVhtLD_+5i^XpZv`@~7R0)Dr~{!v8aX1~CjXbi^d^z?ly zk1X=rTeMm%&j9rPz{@Z+t*RjyK0#Ilca}WEmMqF5;$W0`J2?IwMSB7e;GVbex{qZQ zey@fDe1@YT&X)Bu1aexa7wD+;JU#}oOg&Z&t9#OkOy}HIEr8z);XA_NjD^Jdaks4+tqd+VYk0t7 zX*nYS;9WgN2n>FFJCkQ(IVaHR11O<1G$w$yL8LLlVUjgCXnFM6bF#P!+cS+(Hdy(w)!A#)r~(^(1cszRm3mssF!D0~~0XE0=UT zs39z4TFS?b3g9U5<+GALp%&=`VN&9;Aj>rkM&}E<7=~vaDGNuak)%%{YKMDCX?Ovd z=>N5%?}n;AVXR&>GT}Ve>jO#_1=s^Prl$w3#z-Oj5h(K=0%D1#4kE#E z1Zj1ln@xqmtj6js{c7<~!;in8xno(5-ABQ9RUJ+1G?00tiL^Bnpc3oegbR9@ezYr% zn>sDS-fz(uG&a(E#bH*GPDA}x8c{L>2NpF)KOCU2mA0@oJ(bJn0&l~!Z|zM29v~B^ z8ea^Ok;~a0O+t}+5!$X@fvp3<5`T-BtthdhQzVPtVxrw-L7;ti`Fuh3Lry2^LI?l1 z{6mv_2A0arVUUN3n_*H2tfbnJ4CWZN9Nvxp|LuDxGm2FP$}FFtdU-Xh*cf*jJ8AEe zIN~&YyF5S1HXd^GFrR&wry8pfc52ZI!88zeGDiYh0iVCtea&VQreWAY#B0Z#!T_3k z^JUnIUNoNrBj(Fy3}}9G{8r4CG5(VyurTTFF*N1@7hpC#ay$wyNMW22Kx?@Y%`X*q z3@RF(OdPsAH9MGdK;otblWgQAll>yDD**^IWtLa>-5!#a=&KBV4sFT4#nxgaIv5gouZnp~evNQKk}vD`sT-#ixb=ldbv7S7HqMdrG3p^tDk% zt%>gj!^XQ1=){7iDRvCsEEmTm~&@kY=n(<{Oj81^l!F_tP!d8vdk zU=|cJFU`(yUV4&?top49e>ZvH0WyYvDV-^fX~sRXr;uUK;iy%w32-c3pxB(ZN|FBX zMM$~V6dU_o#Q@O{F^E5= z&Ls?>bI(5 z3i!qz&KjXBk2>AeuoT&C6|W)|vV_EQWvPI6m63e#X&dNUV>J_Z$HH5C)L{s2#yWO+ zQD??8b%lUJR(YK}Ht|s^ap8>UXxm6J=!rKLi&-OGzGgkb8Q~oBe20X^5%83*;F$(4 zW=1gT&$I23H5?R-qB?hg6l(&0E zs;hnWlo^{I%<}^1JNlVSFUo|qCV3f!M(v(Vt9y6vf8*;M)Qus=g7ZXnPBiM+ss~*c zTQx|LfNg1!+){!*% zWjjj-8xk+OPZk!dfIvT%h{~J~0eg25y#x3q1RT?E`;J$2*eUuU!2pVvF=w~8+(j%G z4cx5h$kh#Mfj(hZ+n9J&50^+rObYEx&l>Yhc%eix%S9<1)<(1udQCS$@6Nu|8-7)j zvF0eEOeFYgsR;tu$gjl!T$4S0Nv&d zI*hciJw*kDHhQ?|Gt>aQ+?VJB^`f%kZEI>Gk%er|8fxONFR-`7%#qCE3_$6DW{LUe zbXDNjke-h6H5~n6IdQS~`d~=JR7xvEaO@w$4;6;~ab4u-QNy3MM3*MCqe&PJOH3gj zoD>Ix<$@U37ZaPmoO*_FL*qJa-zg@54gtBB#=QP}qig0$2%t8Es!GpX>~RlUUFj^+ zq^}PumzIcmls-)s!wPmpRKepC319ZAG^GdPpyXS!zm(|Dgv8)ucu0813iRiCUQwmK zB}}LF7ODGLB6p5@C?7#j0c=wIU;V=2l$wx!?cYz1=%IoZ%S-gxJhtUNX93nA`X0$G z;Kq5cB>~ua8L+g5+LNx4z^VaPNU@du*N4kL#OEvHctpIouVCX)dy;3ML&vRn!q;?FSOyCz{aDDo89#7Th6X1?39PXL)j*^Sw6;(~ zMtit`e!32v7cL+JaFgFqjI_%&-$%8D!M|npE}IEYY~7|M%B^hh0@^TYbz3kF(n<%l znjf)apVzE$h%f}s@U}PGjr*IoSivfM=-QHcl8Gkc8J_?z9XtP47u6~Ub)cb)OXdiW zT|&)ylmTCG70{p);An%S_ho}uJidtCWbeKAmQp5}0-Og22UiEQ7C!jkFC~#n;Sf6$DT1``MG-4ab-!bh--9$IrWfS*J0=Ofzn+OU>oAQ;hVTChG15#!Yxez> zm|l?ccZgU=h<8kKHaU-~LY%@2(%*iQ^Nn(kGL)8>aI=IF*#b^FzB!XE>XJ>CvnyK) zOwuvZ)C}<_MpD}Gg7jyaN&1Jh??Kv!ktP{F7=ksNBxfC#;okuVO)4!- zvOX!!*PNA{M>3TB=ew6geVm$Mh8b)}er!kJD7D~6r4CXX47M1S=wd6fL=*6Z;F#>n z;B_p5lcA1c4+bw3-;COO!3m!j$g=__)A72{Q}oWWP(eKdMo)n3 z=9d3J)}!<5e-kIy++f~xWg)J}CU?QyVBVP7a=YAM-UxAmH$UX^uhy4GvtB$xNs{K(~BAX>=f zeJ)J7{A=coj$Ga^BPW-ChfpGy_sO`)hxxB9e7Uc485k=(k{+DaDa{1Q?GP%5; zCM%bJv%uu?{tB>i`S*;MT;9LB%H`iMS#o(l2wX1zrohSuKe(~Vl)9oZc!PC;oFhXV5!2&GnII?#Td?601*V54d_;Yr z0%G~#A@`+)BfcCtL6tv(k^@v!7ZkwA;Dt)Z1j`p9F-!%yUFq_AgQdch5FM=MNa0fD z#7v8oE~OKQ6k)Q33I-&k@o@yoh!rUtuBhB36r{KyWrwOaI2wA`F(C~QP*|EMlN+Li z2E~hNa)bqNu59g~hKCHGRG~ny8DcBT8KoDJ$WjI7fg711w!GkUgAiD#s1QI8GBmM; ziJT5MJ5Y&rnJOq}%s7FHg1gewL$Cmc71(r9feRVjH-iTgEJ4#l7cE9~pfV-_S>cAQ z9NrXR;>w}&IKqRNC`u%;k^&s6{6ML~!$TD;JRmV;1}`gEnN^P5fWry4kf=bz4OKjd z5Gg!-N#V^AN>x^9fCVu}bU>m53u>tNY-xcCNfhzri_#CPDlC$UFgc+Jrz@WciTrOFH_i5A!(6=bUjC8SW1br>c`ywHURCp8SIs)8bfD?@a6IYE&) zT2ZI~07@0R!4@1fYUGT;8shZjN%ryvM^qW9==a+zJ;c*M{@vg2#b;*eawYzN6^_ZW zSKa-c6(@pW59gzU6&tT!ILmfgR-@MVG(wG19up}Cs)0;)F|7d%W3qc$G!KjBU3HKZ zj!6%dKGTOh9~#Kp(m>vo2J+Vndsf`@uB?_t(?Gt{L)MG~xvg%!hU}UwkPK&;K#Z4;?gmWPGtgJj7 z^{hNAJ=Ed6D_zt%O%1HtHs9Z)(nH-73?7#3t>7_vK)fa|2G6OB(nFrNLfgD09W;wP zsi}b%rM)H}@~B299~z$=$j6%lCF!A2M|WD5<}H~?c~N3*8fZ+SH9q-JXT+$ZhdMLk z&4;=&omFQ=iC&!+CGxC1t4{0XS$S5S)=SE>@~lkH%CmAHf6r>93OzPvx{w{<5+MJ4 zO$0QX%Gmpq)x)oB-FCDObbzP@wHT}Gyqio^K9i}NJiO+%`#Clss{8qscBAGGKJdh3 zW@>p?-9KG)@l?UD?@yGdNhvBT+*PhvxxS01>vaSzvQjsK7kTcWe&zRZ`8!wFoeDU)!5Pst|Ia?Mh-B(BjhxJZT#uk!7P-M}k;&y( z{Gx;WKj@nOtt-pj-QC^Y-QPyz8H{<$PMd7kZEJ@uEo`Xg4)ckg{NW9*yv08BWB_E* zzK-mdv7R-Nhr1U5vf}}i2FNYi*0!0!9w{oTEnI6rpL((=zQ!W}kmc>Au5}CF3tj6i zBVF5qYM{;~i(IJykj2-FsA~qeu=oMA=ACCNwJvB_xH=|+s(O(yz|41y@Ncr8LalLG=S+K-j>~#>S&vwYGM&+w<=4BdR|^N+}q6 zDj2GjddA^Jeq-jIGbgwA61g8zHX&~3eq7~#SQXJPySw}AQ=sR}AwL|RXN_fmU-1N* z1Th6(kRKMZT5>+Ba!oi}5VvzboN_*{nsPs~W>aYbOUV{9D@0*}^q5>=B72?=69^B( z0TDdF5W|xcbU^_elXGDW%%+0w?gZGx%p7#!VdAbV*}883oNXI(`)Akh`qqvOIFa4X z=qKegclr+W+Olk8uH!nWzkc`6EYa42H(&QwrFFI=Y%GR?PD*9j#>TsEZkcTMPy8aK zHaK^FrL;0eX|=7nv%9-1*kxQG(?iXdWpkeKz|M$UbLV=X@p=%EJ4Mxj7L3TTV8)vw z&KJLN?V#)?i_=POTJ4}*3re|ZUk7!qwL708=rTQzN|oAjEw-I?YprE+0?0Tbi(3Xs~dlgp@2X{6Irh7%MPLmt!G}&Xypqu70kB zc*yPO%I#RP^^n`4!)KPRTUsJ_AlY?Ymf4d#x1^Q7+_|MJ8V3uO8>WTQfuISPP$gD~ zXTSItEnf~FjU_QmR49Ut7CB(fDu>T{HY(TiK08ANK_k`!!3{)NIY9{?VZ?x`T$;Mv zk`T{UrGCB2E!}cTF4%VPIvXyhv}C(-cXH=+xXI2PoEoDMVj>IB*5&gr-^Bhu;! z==c8CVM@QpBOxD}*hYP8ag6yD(`GXmII6=YOogC-s{RYj`a4rvKasv@*L64t5bc~p z_R(5*rzVV6=ED z{P1TSfM9)a6d(KAGQh8TlTCV)UUN67d~@e+RkeOy67?^uX%3R_t6@%4 zE}v4(QNf#|War!}5^|iHfU+&=I?pC`z1(2rsJU{`)OlY{nNH3QStmCbIaRrQAt*FV z8qZ*V__Ge*m~jC6@N4M&{TTO$qn(lgi5Vun0XT+vvV?_~20$8#S9i z*uK7WQR1#*9*@)+(DD#i(g;-q$ylr zZa12fJx-uW@vHbt;1Y;actMKq7)iuPvq{H{2AM>r@PgE_|6ki~$1WhF33DsRJ0LeQZ(3%|cCfD*lM2`%CixXLVH zlFRv21m=PhOPnm3Qbc2k4y}PGd-=|rCYCI9(24P=W|8OH$vpM@ft&;y=6Xe$rV9-a zbH($C2@f#vfe+Q6&vHBSyu_Z0mBEr7OL{C3vgC+tNs<-0K8o=ugM1>>v7X4?L^Pa4 zb**#f#7PHrMll|Bb&N6H>&6&&2Mos;(_iBlBbEYo#~2@Y!qUKuVvO;$?D>MR;+$fP zfnPUS5MApcn#~n|e#RsE&6A~T?S)1SU~DvMAk#sedB!82EN1ZPwuSB!3!6ZB&3|f9 zA`oX03@g->>T>7*Xkp0`eW>D;HAW1MnrY)|5tjF{=P1gZ-vOzt8me;nE|n&V>j2sP zMOaak_y6yTs9Z`h?dOS8ulC5g#ZT`1GF5Jf3gboj&~;H*impUi$@Z(YQ=*pS@;=T8 zB|CgdxV)5Dg-SprNUjneI!cyaD01hbhJ0OgbeR&yj1UtfA-gm*tRO~15+|&BkkKH+ zj0P*>96aVHiwbJxBn7o1asjo1O5p^xT4JPDO0ty58E-;1*idA{6f4}Bm=yw&V4+At z1hoo4?%WJYW(eXWik@e!{YvjY&-3i}z5VZ_9`(MjwEtN3_W=6oRKp+Sve$B zxg%DJ&>+EOYps1U;*@K-b4HvPiIOvGclYd0a{DQc_PV>fy?!9P^29|@x1V;;?*2+= z#Zfb!!I)pG1JRs8cmXBlq@0wEye2V&4E?pNwbnUj5+ZF}-rU~RZ;0bpN1HxtMxpOc)Wg;*H$uk0?{UaYD?EOccZ>NttbLU_HlIL}x>Eq7q*PmJ3GpWwm zgV-+K3jwj{$DN8cj4=9Wt{sX@Y%3WJr8#WeK*3e za_IChaqOC+r6!1|A%eydIYUHCjVFW%3L!j3B~YZ<88ha(9&~a5sn{o94WHA_kB%vP zL8-oQtFDCiok6&~AaMLAcaDgayu&0#Om;ia0u~y0&_X5(niV*q;Nx^erz`A+5RrmK z?i>*wWq(<^*nu6b3Wb(t`$z_*wbD61T5ET2T5B1&@O0Nn$z6)v(XQ({o!mJmIZ29^ znCMdC+9YgpoY*YkRK))Pjk$A9S-E_nToA1skTpe0o&mUi@PL7c6Rx6=oe(L|(L&J) zY4Sq6bVVnu$enY#A;WU#oSGD&P^3d>&YU@O)*SKS#N~|?+X>zfrtWHzKnNsVy1rDw z(!v3(K!8FTHa!FZl0py<1(n|ZhR`q$fkNw$k^ay)CW2Uc0qTaF5J3n@LdT14HQ1o# z2oXZC6ww5d8PcQZglaqQ1HTq!b4@8Ncfz7fo%eYya&t{7EqB7Iw(~lVYf5RkQ?;G# zxTcg=wY6-Kn`=r{TAfxlmzOQHCjI`TZ+P!wOUF-x^Z;_Eez zIy$fy8Gjuv9hf_m6)Tr=D1TbxN`8ye#kD3*SDIPny_a;ij^YllW z*ehsAD}D!U_Rx@eeh2OUeP~ENzk~J|@X(mDV&%Se(vbGIhH2--|%wTHY?2yaW*T& z*(@HcF2wP0@wnmX;^E@q;^E5vJXn+nCMCs##S?3ab74(7=mV6}eWDVP)&%&LYs zoXxUitX9}1yNAOr;SV;e362uMreIPqsSpJYtAcUCdTyVS*gvIs^Pp`z&g5Ec)9J5G zZM$z_{ryjJe~ZZ-E7P?$qD@toiaaR`vimu058aVI)4iEEcwRinm&Db4OVAxcsU6UV zS7wpvI9X(ozPuM{rR^d6_n9Nv|8_@qCJt}1fA{7F@sj;@JTEX;ll{jeI+^Z}{k_-g zTVl*ae8^zT%Xebq) zx%10VO1xbcxx}7NZs)43D4jkz#0&s&p8;qQn0Z8;Ll6jO)Im$!veRS`d~ISB1nS+Z z1Ho&K!|eyQ?&tD~-UrI)>{DBimv?L^#8|8fs;Ws<1Bp}?rAQR0C{3bN zb&z<+BRa+Fl{USE%oDl1{+`EGJNs8%(W)-AX%z})l?tj>&>D0uubuP-YI~H~>#`7X ziKFJ~HHZ!8$(7G1ZoCM!GW&@Vm>(!zPOD)=`*egOW6J(M6Hbxws0H~)=Ho*%zkH~~ zkuCK}bvld7eu|^E(=5?@OG6^T^SZW2NML@W?J};dai+Rdz8)L5R&lY5QiX^E4J}9;46O3QlwoS+H1=VU;Iw|cA$<3PuUn>{EyVZuS=`n7(>Lj zjxjWlKYy_jgjlZFr^_N5dC?JxlW1h zM?GB1@(^u)lvXWIqKPX2HfK%~C8?PJI!6ixk?51jDpb4p<{a|Fm)0EW1QRfMxpPx; z5b#-}`qrzpR-3(gbcKWt@ZAaIF617_ptaTtfhzkWeb6}*6v_VjZk-E4LPA|7@}`U# z9yHd+058=j&7EJxIPL@QlXYL$bsDeD%xFVnss-JN9eblhCoqnV&c@|gw#ZW`&-p^s z>#RIy(bb(FE>(aRw+t#|WgqQ2&;T7+A=^O{c@u4{MuBCiEUmJl+HopMwA19_$-~1T zbP$*3+Ib`Y{sF3#1X^oinzt!6G^Vz2c+Ecqe;gghaWID+A=VoX=**&nW-3s?L@&=T&rUc1#t0GZ9`ZhjUrsZ0#7tw{& z?c5YMQ@Cn2*z|7>(H9wE5#sAt8Sk3~-`)yWMU|B+XN> z@(+$Rk7UVU?i`aFa!j&v`Q?~^$skZ6)Z~i-b1oGsvIvX0=~^#|^C?{(L6{T(OhB{0 z=~~~2gvjo(J;g0oSn%GIjZe>jT$f&iv6T(Nw_|iR^>mvm$o@8G(}JF z@s~_L(ZqNwwSZbOi7BxKDzm#7=?yB_AzMpCU=wt_-c+@JEVkz@r^u~Z7y6Ag0tLtME< z;N5{=kiHmudnvcbJ{0W};Bsh3Hd}0w-fhvf^MAowNTm5MvtS~fBs*TEp}-*Px~L*z zXD~l-03gdN$C{NY4DREGB83kS+68<$gr6$3p2OA(>cmhlmfsr9b8z5XS?~=fRA(0= zI!!e#2vnH`W3fLt^5q_I zg?oN+f&B(&E6i~aed!hk)3+COIpZ<Q2Rn04e>kh_%M38_W zUspA|4*eITc;6kcG(B&UU={%HLw{`27a}8kVDAd?oE0#JRN24B7pos3z0zKJ*al19 zi$l`GWcaOrQ;{U7x(BJ=pej(gD2|YirAI?u0;!&+=AC*Dt3#m{h)R~K7V0l86^XX zt`h8;*fseVlJh84iAt#h|z%cu)q% z+-$mGCC-#I)xYT>HYvJc995J~KXs0Z;SVqjIl4svb08Y<0+xO=?dA{V4LnrBefh$d z5}hg@r5d~J^P3t=_7x#Oi09<(4minvTEP_|Lqq!l2=|75kqy8P8z>bdp`3SeTS7LJ zgXrimkigD?e?`3K`AhGXh9NSsglOp-? zW@%X&`6@b1uKt%@+>*7w*g#q}qGgj0Jco&1MuicY!T4zCJP5ZDO3lOKzi6;trD$`1 zIX(Q+_k8fQ7Ih0TI_SknAmCBezs48y<61^qqP#>GaFsiVs+5PqX`9Wy(xQMX27NIz^XgppExb!b#Q5+qHuh1~k z)lnHTEzF>%R|d$L^I{gtTa2Iy_oj1Loaht{7!eL)Y|9(?JQ((T?R?0R@2zOC*B&Pd zkbKUE$4~_A7;vXCW%IRKBdcX5yqq9(4sHa_D$=EQ2n$`1@=BR#^(xq1udW_Y6us!CvpIMxI0d-hP65Go)N{>eZp zN%nUViXE{Y6Va1Y_`ludB&YPp5PGlVaA#diVHK|5LXyyak7a>xNg+`4es2B2G_U zmS3i-sXNQy)#c!7g31jcO-OmWvR;>$m+5%|9c1F%Au!uU;B2JHsNUm8;viCd3!f}vcs(u@bb3{pla#cI?mOUU> zsIX#o*l+D^nEfLz~Bc5A!vaxI98edol|dTGOg(i zwMR4%C10!+JbpH5pF>8`QVnu%?fr%NH5!{paZng{UzAV}6!BiZn)~HCMi+7ZsR5=s z<$M_BYv`5hF@5p_)cjI;Sx$^qET+64oQ!)}gS9cEagm|MltX&OH1DZV<+#~umFFIq170+#gcPt6#OKRpKcoos zaRdcYQ8vX$fb3`)jgTI^(J4B(#AH7i&-W5fBh>FuXA?wWV#18ZlyHEDXM(^aMLO7$ zYR%-^%P}RVtEohZU9}g{kc-Aevk&fkrtP3GX?4T;{ddhj{cA8l@HAPkbKUcEIibKC zDDPWHc;7H`!Pv1NB0$XBUC1%U@1Useo8Dr{&Bwpl| zPDfo)_Y`y;*Levi!~|n+RtQGsUA>4?9sfE9a(*62k74~inmW#jp7}`xY|1k!ON65z zFR}%&|BI47@e69~N9lHOR#q}>Trl8OBNqK%j7XY(J@E=^74xwK*~@B9lvrYNh)v0n~V#aR0k3OuiGh1T`F}^Rghsq0y#k z6*T5~2}b^Jo5Mt_VS|(6Sl~mRC&(f~;p`dfatp=jYDaJH*dGlgP3VzL7BBsRL^7cc zjklt1@ah?`wu8(v5^a$|_pzXusE3mUrqJ ztU8IEVpnzT(nP#XWH5=asU+EhYYT9Sl&(drVb+rISQ9#%+X|G5x~`&rV$%~INRk3; z(zdY4X5oO**92pjN-0uNE(ZFEaNgexT~_rG?sEQe?6!W2s)_y643TJSY@OIueK!U# zaH0sWgjl#$G9U_V^17vosfT3oJ3d;o4&X|L0W}{jjJ>XRvvP}oCa#kWqTYV*|HZM& z@wNaQrf{ZSiIBjOfa61cY|v}3bCvQS!fZWb-728phL2@+5Y zF9T220>CK(TC{q?xrj>?VOvD9uR1wiMuoIbj3b)VIUO-W0M2}BQrsi&5rYVyT*_|! zChe62BzQpcYLGwmic{($IN6T^bPi_f;FmX6VzwdX9lMTMroRQ@3P>zPM)6l;XWeLL zeZ}+>QySj5lI)ZMwnlJszD-xy6B`V zlvYI&R1K!D3P{pF*x)Q56?!dt{~r0LPL(lB&6I+&H_-C4cD+d~l<%IVDYWyRV4L%q z^MCVsmi&(Jz~0W`{RpN7vf5(G(2>?paMchqYPeF_VR+$j;h4d zB0<;O?W^9Vv6$`Ll%L`QyV2p z60vmjJO23h7LD(n+N26GmRX9Kbg}hwlKRW%DB05PCS5vcyyLDHs@z$XKXD0pqpKBT z&=|hgvlH8hEsqr>0HiWUp=A$}O{9sNV=9QoqS4G5hyriUJauh6p&eOjIGfa z2o3>K3xiOs&m!d8F#Hf3Ly>^lc_iIZZ%nFW2?28u5bKz`mm( zTAd4_jR#|W>aefqovUV)exvf+Co+5HgiEa@s=~Nxi9Hyzq;>D<)+6H*m>sbcWPu~biNHoKq=~D`JJagtwssJCYZ$=;8D46JS=Q=I0=gLv z`<(oc0Zb4#FPxxONF&ASm_MANI9EYm$wJY}0lskU#fVpdm0(H3Un+|393qYXxr&2L zK*<|V&S6<%%BU$OjFzA&TAL3+hyRGrJc?3;ZUdGF2JY2fy*3q!Y$3vvZ6-3uvMHLJ zDkyR5t>_u4o7Az-lv0E{?J0yiHUO3LDkzw7ifnlP%0fD+l%T`c0~7Ls?L*vm&_{Nl zwBzO{aoR^CLX5Z1@&frRNsIc9b~GM>Y^|4=^yu!uq}#~-54qY}$47N$!FE?|Q59-eM>@%YE4?ydN?|RQ=)Tr>6DcDjR zxg*Vg*=f6VkkO_fe_{AoQgWFQuHLYooW9GwIH_&u&~wk1p;4Ad*#r_+0szSt>nxVv z=RtHbEC6!9kdq-N3Ti>6M}?!pER8ItW1q%QNE->n8u`x!;ZA zLbXFr_qB-0Sl z{Sv7`q?##~*tkBZ42E%531{pNx7_|SATQ&(-L~jNx!7ZMdfc<=cd`U575eaTfr^+T zb<7S$4z?wEV@&?OgNVoaLqApY62NoT{zl*Dsi;mJiwxuh+0anSaf(-KqA~7*+O49 znE1XvA8Os1utU1THMt0TzE<9D`GW_9*v5N`l`wEN1cbtuz-}>~+>I-v9X5LS;_9yp zEHrr)f<$l-Y5**d6zP>m!^wB)W_m!T)FNB=egi@9&$LHI_%b|G0n^@+%r`>e7u@sd z*JKa$by9VZZe!El0vLb+g7d{UTyI?@V^0HHP(kI87!dM!fU0KR^DuUm`gYPv+3<^` zBl*x!NQ9>a99MY3-<7!e`Av0`MC*Hn^85iA$BHV7Wu&X&rERj|1bMhj!!BqK#Tfp5 zduelVSJ*hPkSf?0%)FIDTYFw&XpST}-EfLXRkYYU3A9mQh0j?w(pLHkQQ(-UQQS$I zb&dlCUM*UQZtt#&66Rq+n6LSZLA#6V9Bmn_hi=&8W)=)m%kZ&_ftrkqD$8K%0n7fucp3(8lRuUs5YPJ1H;F7{2iPVk+%eb~-vETY2LN@jpp+AuuMIJA}5z9sl zl8yc6*cYM7zuI`G4P612g9-aJZ9D!pu+mT$0hKFoUAVN9kX=sUa3-38!hRaxHR& z@qd-$-Q!0491#N#d|F2vF1g~LRAt9BR5|ZE2J-jplu%rL2Rgk9{Eu3`F zR1;HAgAPkRUjH6~uNoUBJlg1@dZKnFCFKUu=Yp({DZ?XQ0{r|HTFPrvAg^#%KsR1I z!|A1`@OA>lTiVb@H>nRnt-n%R=YjQHoM4+ zUJhS(9+DIk*5>JXw3q}U#9?M%88N##&d~up7%%l(I!GsgK5Sd{;P}!c3U*D`bu2aBz zhs5E9Atj6W#MkK;z9@Dy8AV%B!PVCwF8(pAur>#D>}c_`AJAwkeUq_)DutH&Zu(>P zT0z+CK70+-ms&>5LANjULY_{|`hkv62B{>oI*}JDI3{5_RZhlk5y#_UK)onnzsKOd`4BViQLNo4_ z1|{;HGTAo$CAN96b3oY*_JdriH`|0jA_&Mt8e6`IWnm)NAv_NVuJ(5}P`SAx+A7*l zvqUDx$hhav3BV99I63MGK2XFaO|!S@XTJ~=g_>|#GO?32C5zyJhoQiN<69PWGP`$w zI}UD4IUF*{Oo!<_5&c4G6!2v_cFV=!;;EJft1ago_?mdVKmBm>N4cw{lv?(F{wnvZ zUGaM0RH=vIPdp%Fz#Gh+Xa}$z>qXM*_ZK~HrG}?a%s?UKpdFPN{hnR8B0--*JV9{P zMVElhUo^q4>Fg4r93DK zIWXBMS*^(yrMznrF$QDRd`Y5(i*HFm*eh8)lqG8l2!B@w$~knb9Y*Du+<$JaFN z2ztL+^pHBTGW@{Rlxz67MRL(P-yYX7CBuC}m$+~bV%{+CE?(=Mcdn>RwCKD8jF^8X zpR4C@b<`)`JMzDWK!?Ucwa4F}2-@C?pWFkk<8)0JT!a?7hkoj9P3``fCq9Wht~G?C zs;a_!_)$^nP|50gIvkad5wUYv*!bLh3~j0gNyv?)k;u`bBHXPKKhW&jf$2hS$T=z1 zwGSI|JThf|p{`^d`hhWzb|HZ%w-~f1pIVbnJ|%!9Y_6Wa=0XKnHdjEc=lk(5bl{RS zK!@2i6ERW$@@G;ion>>~HgfxnP?jj53B}>1yqEJKK!bO_MU_${b^^?G&8hHxVg`$% z=op(Ffj&x|A?Qs0!`W*@@!-Zjo=vBrN&|0n_bIi7TcZo@)>3@R3iCjHfv)$Hx~e0w zmVr1zc&}5KvU)R6!IIUw+9XuR4;?uzz_1CN)dCbb##E8QR&cWgii)D?VupoqTBKgu zG{A}poL&PtOJjvZPQx~YbM+4I%X3e6hPvosEZNy>2IG6@8hQ>7z{nQ|1ncg7U!;Mz zd(+leX~a$kBvGP9FybXa&F z+;>$!$+Ii{1!o5*{#8^NdwcL}IXq%srtk@FUs)9uAFRcO<@Y?KRWThr4yW>3EmH9W zxkXjg?u`$&_-l^GLnT_f9tUReZ&_AQD2a%z{m2;dqT_UpV-cbotS*PxcDMV?t}0k0C{lH?n#MVN6a{O$RsUN9|6DFF^$oI&)>Z!( z2wKR`$nWbA+3O;$N@$4;X_yb=#wm{RY{p6=So#S|ZBfK<8)?HkTu(jo5#2QEPL$(F4-l)^LG zs9;HRo_S&BU*%qZZn--yz)Ciwu~lWUihUwjl%}xe=cSO~blc|E%Aq@^Tr_@Ts>z!I zU$FKAMdem>KodS=CIOmp{A6v2^hpAj5C*YB4p-jE$rY$9t}sk}P&Ii*XviQCMc&n` zN6N8%IKhgjslJJMmJq!s72aQKPcDS4L~_W_gnIev*kA3n_H#K!o!|p%=p4+39e-P} z6qh7}5RSvvlVQh7X<4$Jch19vb$idLg)3u9ZZW ztfXIM$c+A46865?;B2eGjf6&Mn2IwNgSu1~V-Oke4fMspxsn%4IwukB85&#GSLUkh8JULmQ(GvTM*r+@m$0$#_Ex7E+#>yFSld+ zcXt3e&s^q*|00-5u0xx)0lrfT-j4Ve)($mzCc?{xKe_TPPDaN&y3q#c`N$68^>dVO z&3Z{*fdrF z13gN!PLu)=xNtbMI}@SgQaricm}$4jLVe(A1{Ub;rlx#%i0Vsy9&bf$s0JdzgQ`hp zF|~LMdm+RA0(&>Foq{b#^6IMlom($u%5=;AF@JSHY9T=uh)zr3=2%U~%TqKFqzWBP z)9Vw>aJfjyXE6?necQ7LaL=a5cAylBI?JfiyD_&y7;hGt7y3?Trkh}m7mt08ydmdr zwC&&-ap{b)yC9A+Au~BP!=${JfdJPvIKs5sFEqxaJzy78z@RUkQmh%oW-y>Q$p@iP zQg`tcNN?5#-~;XRoF>3mhr(6Yv_}8{ z`PEp7(-4ys!PUEmx>^LBVNsj=01xE9*m(Ex0PEhSKW*)U&Rt`I4_y$0Gx)^jw1$iH z@PiL+rTo?IQGVz+%yKy+kEGA?N-9e)ihA>7e(f<{2+=X|3Xy+DP^Y4xu}pWBe0G7n znc^r&bJC*XJLEXUpI)8Rw4y-Ao3}3mXjfKZuK!5CMmFYxC6yQ>FyeJ1p~)_ubzW?M z@MHDZO@oAI?)Q}7wfDg+bqD4BWdSbG4X~$0rp?0zMBvVR{o~o_KsOE9P5c^+n$lj( z0-ZQF53+kh-7Q?n;_91u#H{Qd_KSGjyyv2j5el;%+&0c;+%(n>u$tA4iQW1eZ3K=OrsDs<{jbB-w1foix4INwUETt`ck0SNWq4u0f2>`cHr zj24#GuX{V_+nnj7^9VSj7ZX0yk*^bU(bvD7@%drF%TycmBfDr96wH-&R`$n5B44DE zcvCk5#^Fsc2$hDnx)CsLZ-YT-X%HzADf7FlPV-|%Z=yUZ(KKNM4Ew6e*F4=WL(+66@S_&!XvYZ0Y?8oG0EC`V zf77*i0B!9d^dkNkYZEqrdKHT97{wMmxpHB~gfQCXKD1;(xAZ9EQ|dkr>6ixvbpy$l zZ~Bjtpq-u1bvt*DS3@i<_C1dbSQt_(X|TVJk|c^a*A)&0 zIzhI4(+1(;+JZ*Tx>X@5#U5|6@CIsPWWea14=06{HL-LMqWlaGIZdTmr!+M_28Lx& z+(akR9xT6x7TD&qLzZ5%H{Z>|XE5nGrZfGlo_C9l&;4#S)?^1=*%IN9?p?-$$c?3J z)RH>uL|R#QJ5Vm&J`aHen^B&c5j75as9Ab(!UpALJKzv;vf$+y))#K zW~J_sNJ}zAOgQ|@{Iu`F^ae&Lm6O3sL%q))#61S<)n z2*%j(_O6JQm=j1>laTfSM!MKw9Fr23IapL`3O!)ZM4^KxCuXf%!~Y}rIoBhO9wF<& ztkt`0-#nobpUr+fNf6ZOWu{jG4WAeT=4$6-s)-IHeQD%sZ4)w$m0$=Hv(5A02X`^k z&Q_lH4JR@yFTQ_0WaDR;078=Mh2JXKCj|DPj&>||emYP{zxq}YBv|zgC?i~CNDjJ@ z#tEFE_Jwv=yssv_NJPWQQrITQ&>uzo7D2C20!>u5wHzXWuNK~_hl$VNZl?U60m%t! z3&UMbq}d7R<#+PK31o3hfBxGtk3H|b?+%32_dAe$DuW7;Ete0Vbr0tm4i%#k-+eBZ zoJ{Fq`W7=m)hWnO5pCaAJp*_Gq3RN?HI*bzee)+lY?tNk46Iqzh$h)f zc82dHc%XFsCj?gKh<^9YoOR<^qP;hzRo+i`uvi56UCzR`;(3|L@Kj@#GqX~hai4D5 zL=OS17rp$!xN5(xMl}|;$-{+kXQp9_L<$%T07u@IN{->K(NR%G19(w#n!+3UfiPSz z@(K1ns@m(&*-``ed5f^VSHW5YWzh*?u`fa-m{5e6^+#X&cK)=fF@3Wyqy*l$aXpN$ zK!tj{0{uA>jsNa1`@iA+%2I5SbBY(zF%b)tIM}V?k;5VruzwRUU%?9ia<9qr?4rPz#GO#rO%XRMI3W=DfqDEuP7Ej_V2QMI(r2R=E zTQV2%JiLrR`e`Jotie#oFtIXj>4{L%GebiG+rx_p1`{jdB;1`vW7Bwt zy@;~7c`IUDH@29nRaRK6et>5hYjq|2(442rWKIrX3mCVY?3=C6G@2{^|LqbZ+}7)5 zpYOv}sw;Hm^zAmRsZwE;o_P-n1JF@x@8>6P)eG(@sq+CI;?+f-+JtyAK&tpP5t9*E z`n_If_x-TA9FAWY4)k3aezAOSJ~{Q|E$RDZlXRf!oU@U6$_|6J@4OwF8L?#S(euvM|?u z4(g+++%{G>P-3zOw{*@tyEUO!bfEER2UTO4)b_qch_ATG>+sSOz1HLUYEdzi0 z7=`VpqWh&m(s1xuZS{3r0=GuX!1XDHOTbDKb>k&XxWVqq#?z)}qJ85nN$GGnk?}J< zmvrB%l@!1-A((!ljl(dcVG}hNesNSTFsr|S`bd+lnjnd6qpQRi((x;GFlU41(is35 zHL%mdS@CM4IWHHGxvyYMCtqu5ofqgu4(Rv|b0~%R7QF90tzAJfQ31=hBV)Raa(bim z$bTP%iQzaOB6J-^KMm@z7R?KnletabH9ANzq+c8km&Oq6M7C{LAxk1+3VK~og}9K@IHJ$D?H9@{-e6wWIxDjV674> zP3h0Z)}`tVqK86GX&UiPu55a*h2hJ#N7UVedm^%konk3M+AMD_;)#H{#uuQWG_6Yd z>1aDud&XB4EA@O&PgnZdb3BZ;SPYf#gBB9=<&2tf|9*Eh60{{(o zHXX&3`+aXNzwC{6Gn{L42gycv?b$Gunosunu0410V^K`z)b?|lu` z4_&oa#sxK+K|}uD=poTtMZQE!Zo<6<)kx@!33$OzwQ{uB5W5aqa&(QXmhdS-PP{5U z6bt3ybfdoyJaW=h_#xk;)zF*|Xynv?8>n82OT`wg8yva&$1)a=m~3?NI>^hOTrz6h z;z?E!X#WQp8|5{bc*joN8C@u^CkKjP>cX3i7e62wpZ;#YbnKg)1Co_AA=Zi~0HC!L zcUcR2IT9wsZ)yC~lz3FUMXzZDsA{n$RXLsyp|>a3so)`Mell|^?H(kvMg+=LF5!o+ z;V5wB7DF8ylsy4_x4$!8yogMOP*yNV;yG+cZqX1;C^2#Y_0(aUg>=#q1g7w{+P@gb zeJNWk%i!5+T51TG^}UV*cBkCS_09EcPJ*=4O_wTZBD5ad^V8Gg<`{lBbG8A1kMkkTx- zPvplJJ`bB8+w__G3(6(rtT3PVQsr=Qvlk#)S)~~q7Kqm}S)8(MZhyMR;BJMR-#TeiL=Ieo2vt4T2N z;1YtXm;8b^IwMM1C)CNj>}_~GUb2El@mgThd*O7TgsG8uNjqLVz`G{q%AUMjK&oWy`BD?}SeoXCuTF)*1VrJlkdO z2+RUSR3PYlc82OYFA{x11x=s6h(%%_1R#h5gwGP zqDDDD{I3W)?Nvl2C>jy4Zvrez33jvLdbV@yexUreY^YL^b^MSK9bp1~*Yv!b0cDzd zVbQiUn3OB~*s6Y0hwuW$B|KGssshCKL5<~GHt2-YA@n*wEu2hkW;CsC5Z~H%P(T}X zX=n-CwLLiI@XfGA7q|rgdVs1j*1K`ERrYOWPTId#5l#Bj-GIBWvx&Z-S_f+sn>u&C zl{Ky+zE-_K9ZTbg@ftZQA)EcmLLCGItx(6jrIoGOo}vY;Lvd<<%`}ybQ9r-rug10f z5(&y?$)?wY+do$=L}KW6WI&ewXgfk&z{`cBq4gFbdC>K51xUfjOSIFaQ90senV}0| zZGfAJ1fd%f-~-eJ$RoU`CiX1EO$bWRLOS$?c-;2H{2O*be*+g{L6wP7RTp<57l(kw zK`u0JISL6YFMxfbY<^BdFE|7om2O7LLVURw31I>z6Fe4FPo}rh*{Duf_>HRrxc=Lv zkMEVRY{ppccS5Y=Yik<5%B?5wG3!$qIL?$sW$#VXu>tBsSRJ^gGFO*u%}9C;GKv`G4)$E^s=)!|cC zcvxJ#>jVfh8={RmRmI2fp%__oKldm>Kz*|2YwCdpoC85iYjn$DnM07 zyhX2tPPNb@xSGTHvcxyy9eUCi6^HLuMY790W)Wc@Exdyul*(ZRra4J*E!nFil6In# z!qO{qmHo7v-Q~4xFpMEBpajUrhFRLh5^6XDUOx+W`&amSO2A|+`|wrrr*Y3urim63Z4!JOs?iZ@&1sVlz9y|yq2^Kk34aa4f_`)2ZBaV)YP7QxBm-N+}o zQ)d(NO)L?p3@mi~!3p*mGvp`di9nJpN*$Vjxy}jKsBr|21jTDV~N*zrJfNbkM9XSo_yQ8BnyNKs1%} zuQ)?sM_yD&o=`Fr=~JUYdPh-}MaDXzs4pl2thg!c5SF?N6OP(#J#e}sS-~Ec6VXec z;Q??B;bOYBplTVLudc@S;(w?uOV!7^UPQsbtn7nj(7wL;p`hD|%d(NY357iNS8)$U zi=dC!OO|ZnrPdRBrKXT6G=q+VLK5lCUabMS7Pdv$5`qBqUX+!qht?hUhLZ20aT#-@ z{2iTGahA}ojB6Vdl8xHahXw>dA#CSX@<+KZd53(EPJ@}E&Pj~)Zw$+ix!V#jRj&T4 zG}o=ovvhOx;YFq!nSlbdj7R!Kx^d-!DBM{}ccML`3YUd7zWY?@_P}u&=iP=gulm!S zUWjX^niG2^2xOI16`Y9jb~1u8r~@=9pQ1T=X^6VOhA|hY`WBvM829RkRJvKUercwM3jPaiuGl#Iyng5p#@#s7} z^)zaY_=3x^ICuv$d!9ed09arNfm zpjpzsI));Q9XlDNHG$a8UszcY&`{3o)vU%EXuEXPLc=OGfQ!#7o%-G`A7)EgXmDqc zZcLBdM6t@jro4u~_9bE|f6r?hRh}DBqE7%vchx1MO zL$TD513DH7K--DjeHxKB#V6yohr?1iwF*PDn*sqz)|b(^{X)!*?GLK+q7a)xEJIUZ zve5g3-5f3QP9{$WVGqT6R}`2PU$@Oc-xFR z(dtEUZ;k@p%iig_R3r@H5-*K_M-dJ?kdToza-0w;;G5RX!A8SHe<1|lgv;5GstL>< zn%w9R=B<6w&eX{>NeJ)BgoRC=D}J-gsi{X}KSIH{KRat~#b^&0O%TJ=ZMmbwV+mJf z^^y#hG7j>!fu-%!ZR5T;@2(5GVEjtATLHOtSW=g>?>Q zA_n#=2$nuf`~SY=`6K?u3v+=ze)N2k_#pMD-Tt$|Y~?Gb+CDIc-wU^{*v+M)t^2YM zeSc76v&YjXfE$Xb65{^bEr@XK-vU5H)3O*-sXl34eg&v2uq0Rtz@q|9kO=9*E7j#z z^ad4=Gi0RmZRr)!auAG-I(`TicE@(U9Vy=r>w;oR(eeeOz3iT$eX>alUsQcBirWo? zKpCih7;-41Gm`>v0@Y|CkD?Bvmm(zsIoD@biV@P`(aAu(CJOY=1x%jSl@Mq$KIfc! znlbMq8&EEw6$*!!x*(z)n^z6}b<}bey{x3UaY7>5iuZFXvT%+tSvqh`ucn(@{2L!u z2&g~uL=CAB0e7$`bvjNU%9Gk6SYNRtCv-*!pCo=>Qj@SR#&`>wFzwHAc_|Mf00u1z zSWtq>udbt!P-ShemE4tuE-F$2F3}lb6y^=UP1O}lid11P7QEhBO!PNob6!KqcBsOZ zA?}{+#fl%@#Ep0nHo`^R2p4f9Uc`-H5jWyRun`vFMqI=jVG(SEMZ6Ig@kU$(8_^f+pZ{@?iZX0m)sy(f-DVZTAS(TP|uXZ+xYhH6-EqW8slr zDtJr2w2>;a>@Xk(lAuQ$p%#pkV=HA1;rjUV5dotDSSFbf_;F#Q0vVFB`1^4IqXJka znE@a}G#8b{D$5MR`SJ5307n6`Br}JD05*1SJm_d}E<_gMeq3O<8YVFeQQRav zoX0kGrgg#in}hi>@v%8{wYZB|w;o;T$Xjpg#gEJ>w*nCrVUNBBU={G7Y*ByT?1xK$ z$YLl;`ehL@Ub^ryXyWwL*$#knO#?T%sHDI_C;bhot%h6KcJp}=ELSy5^SLMBcS5q{ zv#eqEn2fG7Pp(9YoTVKs=~E9^Z@d*y@JQrC>)0L1%}srTKn6sx5!w-hY!^p#K&hC) zg-;y`xSr=$z+;X}A*GZE-ZeDz)RjCd%BZ(&)D^FfkoSsBNlWq{2@7p(;((gDmlb!Sq@zOc9%9ETpq6@= z1tpV%Zw`(VVn4NH***p_(cw677JyLDba9hJzJHZ9P{(A`VEl5S?kx-80h!aMfhTH4 zdh#~ukhtheVJ^Hwc4)ZF$p__r8q3@*U+7)@?kVkS&*FUtHOCn%Ymwo0zgmD7t(@|c zN8sUYAeQCcHl~y8&CUw+d{yVzV^ZAwUr1)Gvxi2lpgbA%hgRwv5Wn0mmzkLKcDSq{ zJ(^%+lUm(NwzccV7UcaI`S_3@e#v1-eR8|TWhU@2=nYmXeh>NlmkmD1A2W*Qhy3tM z4g=IfzRN8kHa)^Z%_sNxmD}xRiG_Zb%O%I^z{V!Ibt2VnuNy6h_%rhPDL?pcCF;57VE&q4YYnhTKYT73vB@3Wx9+9<7MPfN*s|-{@1`k zDKUqB^4|w8rNkKd@wnM+SI*{hKz zVb*?mvsXW2l;WY4ux~1Lug4&V{n9)3e6zv9^}l_WeEFijl-!6y+ z%I-Wu1z!m70XKI7*Zz7DnanG&rrUk3yuD7ZKN|4WZgaom4AM9E?XW%p^g=yPOeB`6~=ku46NYdlZPiVH7J`3iCjynHtxESNTUO zu8RPPZQtc>P-eNidpQuEiXNc-owvgkEUfX^Pt@ZweCXejB;v0M#>$5wEQlW#4srXP zb`Iq;0)NXa70figG1{cR$h{Bz)oX8&fCei7Zhwc`B|0Pz!ANmfUCiZii}}cy#Pw$TvJcKz2l+v`Ql&MR0p#{IkzXF{r(Jzg5T#Gc`c%G z2$zG_AFX=LSigBe!?Yj=xm@#1aEq_r_$xAg1#$)Wd*8iw+<{>m;2@ZKnXl%&>A^%n zza)UQz0EfwQ7TaA98Ejcl+HyH%|-OPl3!}iXgJeKwlL}CR#rdn3j;PZUeTQlbr#kT zSy-MB>L@|QkOhc<4@GAD_99Tp_sOVXHUkpeV7SFaHKmRj{Q{0R6Jv5)C`;G6>Y%9O zS^5QGINor_x*YPc%M}JAlUElp*EG=Bi3BwIE}r|vJ8^GY@j%ScT#!)>1f(-1&--GGg5aD$(!G>I>0nD>Tp^$`TRKcEG+P!Y=3 z5>wrvbs6E(cM=@Q&k%|s-F0|N&bTK*+6aagAVs4PYDVJpv)SR zEyzM(GU>TLlP|$s9|Lj%t2~JQg=%_oXqG>tL{Yhd=`c8L&36&0f zt8w)K$KhKd|8@7WHR@ie6(XL;u=+=T zBe!;7bJZ^-NH(_58~NdYYr$vHF|hLno@5({VgXM>@JOnVH3t(DpJ+I&n1!Oyj6rsx zrzczH%U3VZ29v-iIL=@JeKjx=D3XHgwr95W>%PpIV=d@*G!Pu@eQeIJwpYUxW7K$$ z<}fCwbVuN+0n~;egT}froWo|vzOWjl)ksL=8OxL#(&ZI07@B&_6Y>qs!vbW&IkGrt zE}q1n{{>WwgJN5Rsf!hwV`F@~@>dS()X+ze@FcIyn`PviOYYzdA^U$PGFQyzO$E7M zSMidnpJ_!W#!RHcR$I_`ZC% zkJ4K#H)p@U@CQ5Fgbe%5&-HYbRnv_$|Th=Ufq zSJ%38I(VBXfrb;@C?s=|BW-+>R?he!+7(dU9rJ`{8t`4!Z94P6tE^gll*0Ey? z9!h6-d2{`?Rh_g(Eyj4~3CAu%8>z01`5*}9igz}$Tmfj)w!Uix8TwtREuO+E*;C8? z{V`2#lt0fFaHYpe+T(>&f*JnXrBca??hduML&DHP*X{hub#`F1R&hpz+Ms)3p^Fb` zPvSXX+)^|tiLHk^i#-GpAs4W|LNxKFs;N0%tMCx}dCVitXoI_#eC{b{b*&G(VP0Vj z&0&1>f?pc4;2o{dOV{vtQKyM+WPD960HQ!$zamdD9?Ii9HMX$sb@>6NT1+ma z+@34&(}qU(#~0uW98xb`8*p8vJh=m@{r{>L4oS^YgUVD6GkwC5-Htm{I!y3JC=Woq zSRq?pw0MeCXRZ<-O0Jmt>Cz#gd4YM)Im)xdtNPNC3ciZnhl*3iljkVanQ(xUEC5gv zJVyiis}hGa;qcP#K2GFVqW_ zN~Ka6CIypHsZ^?*gQ`enVv=DdCfSF{k;!dNPEJm826lje1?3o3xD4ZbPCh3gAQTXa zs7R_v%BVac|IqflMoOJ2t`yRRU|cyid03aiF9OgWHOUxl9MDSbZ2(o6BcA+GG$6lo~e{! zr5~S@&q)Xf1%x6hk}8s-Mn$S36-6?cR<4p^rmtk!yb0GG>V4A^h6UBCQc|J$@j3aN zgn&>$D54^%A}OOHRgntm$mGZb$Zbql$uO0hs>zhA%4Z~}f_G}^yTXF9<(Vxr<>N{D zp7NSu^~dMra}okV0ilSBq>7|i8OAayQWdF?j!ceBfY_uQCBsrOEafWMCaI`oo8%

    m&D#KQX)+mab=jx=j7uOa^00PAQX@b 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

    3KkTkfQd3>!Wk%L31yIQ^@P@h43j(j;Fc<* zl#71FfuLx16+LujfQpNfBROZPOfL$ynZFxzqm(yYPHu`MT#zggVd#hrBWR+8fV#rv zC!-=bLinaDn8+-7A#$ZO1i`$8kTf*J2PwzV1x7hV4-my{Hy_-PF(D5KK&Fpjk1HNte#rP-;qyH>b{N^rb5#?<12i7kIKU8X$&Aa+6gxQ`+;l|AF($`z zVA~)HjxsoM>JbBQ(I5jF3>BbC252$>LVzm_xWK^Zf-M)k&b5Gy1+)QN-6-RRDV`CB zWME_!V5uO-MhZ4!IZ!BoLP2bT6eh?K02Tq{kN}JXLlK;bz$^oTD+p+09=H!Y&K4Xa zE&^~B03Z&aaiEGBpC$+?q?D)vh#?%BV4=doO?6qQJA&FGl7&$hArAok4isota_|^n z2m><%;F9?$F(v^yyGjTT#AhdG3okYtfEaoq4{YJ329X;8pz7S#*r5?d8ZE4#5rHfv zK5oREJe3Cec>i-F_Rmw}?A%sm6NMWzsQeDt-v{Kz%^98B9jVU1sl4m4RWjPsphg8&Vqwr`x}NP2Q|WM=k>s=d#}k8F$Mg`W{6#}@=yA~16P$8=J_OA+? zQRM&YxWl{+X#lqfN-wT4zt)(Zlk4gUJ6m41}g}6j9xP0t0 z2li_Esl@4y(piaMe1UPp|J&NtrCDdp&tdlQbpCD4eN;CbA8x9kaRLSwFpf4arto4* z^up4<5m$%x5Tq$U+LIUQ9ZL~cm630I|VNVuk?dQ{{F6~a-G z+K-5AMD;v#ukN&pUik20)BvxWu$ z(2ISeFcr~&JsDypJjHEFXmI=vF$*WCvamtSA_{GYsb(=7Viq(kN=Sb=z2T^M*jI#J z9=yWncRG&aXlmR$#z^@hb*hWQeb~#xp?RTFji0=7UbTNy<1WP*|NrJ4$8p3{L-XPy zFW72_`cCcCs@*tPZEx4#dEy`k?hf3U-zp-#*4x$6&hz@rQl5FfXr-0C*4wrIV5&sM`0dV1db^rf7 zdg^a;6>j*y!r@MD9^useJxdkD26N#euxa%PE@A6Ib)@ zu#gqKJY5iLCv0Ct9FzXXs097^=-rNfeP|4Y|JalzViI0r5@t-we=N!p28a#7;mp%< z)Q$hK6aHf+{C_M4#mC3`@bGXI4JTVrTVejcbGw7b`>zUb;n<3O9d$aL6Axl-p8F;q z!K0c-#4bLIj6m~W%{--zxJC#uBFDcG6!amc!WgMzjC&X(`O<8p$d4z*afeDZe!4_w zzDQ4(=*N>Xe>^Gk65)C_-Fm4=%9r-CsVqW`OyR}amKbH97XGPkJD0-loJgafCPyR ziDJr#LC@ToYz6$y6(6X0oNc{N<&Km(1#Nwas6tH)1NQ$oOk5Z-H%C2%f%1>T8r|wr z)KSc;1TaBh#Leqf=ljINRXVDRgH#tA$=ZQiT@Oq=Q@8y;4Y5*1DiXCsLXrqcHt+wD zibRdDLl~Xg9s?*b%*!V#JgT+>`*}G&&-?3@?_S4g=D{7^yqH&=ZPjuVh^cO{ruqUys5m>k zzl!z7yJ-JY^xDw;ac^m+Q{N!(FZ2p3hsqN#-RwPax7I+D044 zM8&%tx0y85B?7?BQW0>3ePjj}m|Trf!WTDF{*0Rnd=Tk0rrNrWy>ufjNvvt!dfK$~ zc#9LY;QW7(hvO_zWa0Y%nk7sY8UDYLwT?$PF$)K;hnMqvzF?#DVS#{vfPjE{^!Nef zqX&;4ADFSH z!aGdNudgrJJ)Lt4JE(Ai*g}q|LKq?oVpxzp8T8{5^yAY5i0lC*%mJr`sI+v3+aiTX z1ONa4C;%f7001a79E?Vz@sLz5m)Qpt002<3lt{IREDr{g9EMRahLAzV7+{DoGBQIm zk_Z6wQv@)Wv03NR(R6#Yahv*Z{Om+Xs`1SMhf#PNJb^0sFV@=F{PNcTYw@2GJ{O~n z5>(x2+<+b#$!`6B?m_ir6vsL^hU`yX@!si#Fc1to@Z{i4*d#wKtPAGJ?+S$ade$F~ z4;AgsLEh(YkO_F{?AU@5-L2_N0vI~k9aBfu3~{3ZEvmkmRKDwyZL@bxK7~(D%*S|n z8*XU3w-Xe+z_YBYha5u3Qxf9rz_@*0e}y#fLH_WbaW4NUiCS(}Sbad3W6tYC4Y-c2 z{y2WKDPVqdXUK;nLKuAXaGWjFE9GNpQqQ!XLsI6e)~N3UJ0t=C@sa`)57xA_QebW0 zqT5Ki-02=+oF;nj9-AuOsN2{?o_8xEfo?4p2-LVT0{})rguxH4VRrpiF)v@?JJ!>9 zE+72ZLqU^d#|N}A0F%ekHn|1?b=(xMYRLhlumQwJ}yppXDZ;H7^jL#VNT3jduq?q`>BD zQCqHo1&byVko!G8$4Y2X3vPjiWKYT-5<&o52LVF?J=2x@atZ(jYVM|ZHuRfxWccu6 z=b`Z(Y;19j3HP7d{&(Ixibqm=?fIY7c`u&96%$@}>*JrUKU{T_pcU>(kGu)x^at@L z)dMbM*ykI};2@7MKJFZoV}ZJkMQ^L;{f&L z>?L1JPQeC5{=hgF>wy#>A?Mr!G!p{kwIsop{zVv^jlz{Itt;EkaHE(}B*xt1(kVE^ z?}z34si*M|V4=DKWhDR7_gihED0YZA3@|E4q)a#;#L9_Nh=mJ#IH;Np(-|246j@|p z+@1`Zl()z>&j5BHHtssNm?uZ+Lp6cp1;y;0nXbpqeXpYbw_usdyKMf8Nj))U}Z13igA5uOf0w$ETyC);BNWbh- zUmTamsic`~?xD=S({P>pB^cN*%2tjvI6XvHpf}`9uGRPTbwV|yE^ybq&LPuZgQ_$M z@|eVQ{4ZC8D@e#&y(Rf(9&8P#81EcL(g8bXq-3V)e_7WBCs}e(GC+z}hZ4ve8~Vt+&&cVztxfct5aVmZ&jo z7UWAhs&I$oAp>Eez;hUJc&jme6!tSyb&USP2lRvpJCf03b0I~FiqKn|gA6IKdWH?9 zVZTF=Bjhx9-aEk3j_l+JOc~{d=pwBST2#7g!@rMBvG2|~eQJIKKd&-uzSii~tcwEQy#N`Fv%uZAl254@ zER6#wHE^q#q|*8_E zzWL7HvyL(E4{@D%Fl~hW#KtK4Z>Q}Blv;MODd%(rupmLP^-e8$Eh&me=I%W(^}Vn( z-y@U^2TXdy*L*KzSXS^mX3M^z=EpjXWWi6#VZkt?f~Do9%GBJarP5zc?|W1@x*(z^ zZcGTY6!Pb`Xt{?oZ}V0-b0rjMml)v@NqEBRyJlnF0MsV`89lCnxE#NbSW10z+BzpZ$t^@EPv!>D6A04~KH5B0bUJfK$gJSb_ z9}u}x6io@)&SNODzCPd+UytUIE?=A&HB2r5i51ipA6nJoyp`h#@%tG|>N-khu>K^iwFi6u6Z--g5uX76hD=&(4}(;1X0|Dps#p1+O!&hUm;(l#{3o{w;X&m z-fpBZR`WyJq2K7Y7Ykp;;TZ~}7gfnFVe2PJj+=8=(0JIQu31oaMy>feyR|q)*?{J@ z_kcIuri38{X^%H9yrFae+p zN#nGEU=7v;5Q+mJ2!5PfXWNK7~>KzW- z^KvF|(GGnupRr0MmzzXvZ{C6-|b7TdaITT$V8pg3gze z$5o&yXgM)HMm~2rLav~&Zg2h#gtr)XYB{>;&YnX8h+sO!dgAHT!IMJY((;;@IGq<( zD5u~$$oK;P#>J96BPd`9jc5EA7gzMOS@eMJS#<3%&x;rV3$DfA8JNVjE_kA?f;I(a z>j1gV@dAoK7wtMVZ8bJj;dB`u!St8V(v?)gH(r=ctojF3Z%T#E0Fc@Ukwfg6mJVyJ zI5k^(d=LgMSc3wELujhV2KLAR~nC9l;85yF;7ps_H* z7mI`p*%HX-->m&HD(5)0u1(!<@=|IaK4>Jqo|ftBeZ~?o(A$X3RShwRxmu!V!{R%x z+f(OMK=<6F57xDG%y+D*#+7Yp<|JI#Xln&yct>6w*TE6CBxaS+X#+F$sBO%32S`nR zn>Ba6XDetA1dp~rx5ip8{&H2}R+*_zK2dWwSml!NqSiyiSV3X{pwdA)S|}Jc0?eA6 z73_>iwdTIzLg@gp?h63NdH@zr|F;(mX=~-jsKLf%!a7+bbxJ{m%5G-! z;Wi@(x7Ihz%RY5IGt!Z*vnHd+p3?NfK|Q4(MIZ_BORR`x2kcveiCzlUDPOiuXjtq> zyU9e($c3b~2>Xc5KKu~<7@p(6CXbhk?g9+M-`5fh?(+QlHZ`tZEKE^DlAtk4G~<2mK_7qTohHyMq(Lzx-jqMC4*)$t z!oP7v6wtP_+|Q6i5ev6eJe~n95%`S(F`mLoMT=E4>d0Kb$TA7_OAA;eSy8_J8qx4m zI=lH*f3x%1jtJL-f(m9LP(mod0B9$6&o^)eWdNmU|Ln z7hd|EJ_9l^{hf|SJ34z>0(zS;ySt+Ol)S8F|DSQBkoN~M;7Vo>xA7)l9|m0g-Ki`% z(6j>z;KM%Mox2iAzC;zwdtb<<_);A>LcqyB-oydn4kp!1g0wD*qo(76;9&6d14_aBdjgHrLCY~-H! z01(G`5f^0x$S(pYH2`I7;;ivswK~S2ytSKJ*fgcF=DtadYLkc_Yl;rKqMiv6C$yt5 z03F)mcB;dAiJM`eSer?18h=lfOgU_aFR%1h69-rO^aRM&kg(I|3H5#aLgH%j{d!fQ zv!k!Us(KWp*M7n?JRqc>ThT)RMuBQbK-$5Q-Cc-LONvt?R~_pAH@sO1WUJREj1Kt< zV)(aX3cAHipthEPFFKzHSlk_&%Q8QSMRx+hP|2Q-(GH&#Z_J0?O~Z?3QM5qVgit}Z zy!lL_C46oS@<#gkUD2Ge$fW&wuJc`hjlLh=BK?dj*@}C$eN5KThF3qL1>BieHC#?Y zi-^xwOSBr7VmP!RlFIx`j&oi9#d;RJ1(Z<0y5WUM!z~?n=aSen$YM|=G zg_V2Dpym+WzBY;B#^XlpEL3K+LEl{MqT-ifEK8w8{~w~bSCl!hZYf>AGSu>|$vuNq zC57H#+k}HGJ#S9rAxWxtpYQW%U{Fo=66m9|M?R*-G1#L_B~{K8Y?tCGAkSA(s-%sw zq)XziinrzKy+;gmj3(EcwItN^l2EO6v>4v5<5gn~D(pq7ZyDK@6a`8Q?ou-s1K(di z@7l5(kz?DDkGTwdA3S7{TPwX6Z=HJ8e$z)vZmc>DAz!Rrc9A5HD)mh@pB!Z^1k>QT zN(*wOYq8bUZsMVKX)r*vOk$8>!@|C_=jHEE=urxF=>x#?Os9X1q$gYyk-s+{{IQc( z;h}WnI#4&b+8{F`ZXJp0?D`@UWzi-q!gHXR14PKV>zNul{g^rkrdB5^iV9->|O3<0V z``j8yb=Om=39O9kK#4ECi8mQY35KHUaVTz>H|dkO>a{wMS6$ip7_wiKBrm#{ueXY= zWQJ=+Sp({SmRZ{YIC2X^?#Dvzw6+#x zbqvCr=nOh(g&+y)y4?RsoAEq{3>D(4)}>b@2DbSd*6Ui2VAotP(b{t#g*lR5Qt_zZ#NG9 z1aHGK=G)cyMbT+&&_|Tj+>0*+6pkg>f=mST3J6P!wJB@DUPY2ycrJ65Q@hvKo$_+^@6B+CUv1bC(UhD`nt2A5UAWJqs}ju+S8a!$c%0E7##Z;4mJF zr`+BoP6zN}4v;No{cP9YlZ-fPj)m7}-=H&$QzN$Xvmif#GI9mbG%z4qe9v1g{IaDh zPHl2dzlR4$Z?Nr_8CuZTLtD+gmo05IJZmYMI${T!9@WA@&J=~oPtG&oOWz>{s-Fjqs`I3f~kA|?jzs>^f`Qpa^4=x>`(e|f9d9K zZ~Y(9R2FOwtk^iMzCYk|^f`PaeXxFev3)+4@@jFpozo~o>`VH5eXI{B3zV00B4e^E zj<&zOVv6V%C1It_zw9VdIC3*s5hSYVxG3ljt9@K*Vww)-pMR+m)L&4RRvuNbDm7gz zk*TgUR>hi{B9T9xk@#a-oo$<&COx*v*@#cVMBFU`u(hzX3rNO!^dh~z#2FwuXGj|w+oD664X_;3 zp_NsJ#rnM7njLB_km%B)PYiS{M??RJ=zw0m z@ayJl>3-@?Ib+e!W;kDIKO@lSN*^~L$g)p3y}kC?D}%n?3++yEtFAkGs0PO9KCS|S zO(vUNxa8LYq{eT6Qkv7&T=%SR2ad}K@pa+JTtGes zaL5rfFI=vu%kb6@8v|#NiVN=hFe@&2y#EC5L9%6lK-NB(1}Xbk9)N&xfIHv|YmeE= z>?_~3=3v3b=Mp4?&uLdlzA9v_4+5&66)Y>mzIo-4w;v~l7$x=|U!r;;z39pMfo!?R z?Cz%qYlpRCaCU)tD<{Y)LzSs#>*~2hxiUmBhvPKq8^9v*xl6qZ+gv+%7#l>x9?1nSelPbp12ng8~cs+Rl1ZvFkP-jiXNm~L{PIv?P+PTjD8M{(FaJy74L z(AwUUk6se7g6<-Qsm67E2H_4dj5NPkUjx8lZ%mS1VH`t66WYmAihdI; z07>pyx382^NwGbb+{HW!7u1&s`2$;zE+6Y86mV)O>RM=Mkb?fbwtN=xYy(TEA`zG(u73(ia{JnBlWwcWwb(xDIvIM0wCNF z3V}Bc&x$4Ra>>0mop-osn592!izbUL{zGHd->`=P zuM1y68Ht?(!Mhn(x498>NI!uKc~IM8M?T6Z5q`mfvq_4AjL~VEK~@1wg|=M_Xt7h_ z(wxt_+5|?;VM_xkANZGxuz#AR)80xg!5W;5Jd7BS%tC>h+|HEHm%$Ueha9x&1zpP} zcL=4U9(BsvCYuJ+(Chd~kG&P0!0%yIoJ>2% zor3dsqc{0x56WiI@L6k73~ywRfky@v*^C;lmSdVB<+D@IXbPNC_l=l0q7rAyerB{1emfQD!g0K5XUU9KUctCh_aWL<2OSc2x@H$XdNg zjHZs2-(e3_U9lILFe!AC6F>qhcX@pf&8GSnX3jnnCC`DVny`iA-12I4`n zJ70(ic54f$Eh-3`5Hth?A(s&gL0q`%bG->qBK7kHAj5Ej5L_#&u=KyhS%&!dd^tQa zz6w;fAV96<^}oh9@eUirncV?$FYuSHq?y|ae94kk+d`^44QW)YwHMLgmfd)(C2FoG;yWH8R3KdcZ zr8d+=;qZ0RL;&%JLpvP=rP!BecCfp1WP0dyyCZ-{96B45&RBdl_x78xO42nL`v(wC z^k3f(3uL5l(5$}g%B@OfekY7IX zdnr=->LFD3j%Cv9YD0%KdWaBzj|h@2G~qZCA+#bp9$ID`Od`rWf?*5mJo&*Z5qJ8l z9udF$oxz}&R1Z9BZXPjYidsr)VKqpC2j4_5v8Xoc^YBZrcWF5kpz3W~;hQtbrd|`JgGSLp_#P%$YZ0In{9pUx{Ev*8qX|oYF`=#dU(Q zR+b^6@P@N;r_HdiH%}#GjI!Un&HxSf7X$W+-;YsGN}~PZcaF$xC)~FHQzYt0rVGnK zV{ol|9piS)IPv2w+gjC>rLJ{0WE>U|Wu#e=4qNZGffmA=ih27wEz0UO!XF00tF|99 z@8%BVyUe<&-Q6865JMyVsqt600!rg|O!-}P`e!E&ItH%T6DDIggYUU<}=0qIcx-7RHV{DpGzHk?7}fd*}fV&*M(PhJ|ekjh6AYr z_@@VU1tUPI4@?yUp1w$Iig$BhM^yy>V{eC`h9|)#sIG5021AK6jnK#aiw_={iLNp- z#-fSCQPj9u?xc&QZx%{z=4P2gTXUt8h0{HEmntFjmXgC`)Vcb#@(0YZ zVNrpT#gv6e|4F;g%+pNVhxWyS0YBDzc;M=b&RpE$>0TB)}H(}SZbzmH#_!!u1T024in}-1{V+yD|`x&K{j{2X~ zkS-VRfx_Gn)y+xgWhQsrcP2&Ta}YYVqQU7veKANLy0HIRtF=S2kF}UZHH*GBZz0^Q|!UbxwL;_WQddiTzgVPgpA#F)$$RR(rkv>voL z1NOlP06Gt1F+O*Jv$W!k`f(GTtF3pH_K!iCpL20Z8U$j-@#|KV*C#KGD$THpp8sY>CVfVfypJ{!%*5Ndm>W4bV(n~eKx;wj#mLPIStK$X9%U20 zk@v6W&-kfSbJb%j#2ws`Krg$D5%g}U8Qj~82dsl1~RDbpSrl+A*kaekWCRd{26~{1emj>%*R%qkvU<%`fKgnox09fy$xyRek-48!E~R}D zgm~rx>7e!u6N_`?ZhV(N)M-c1g()iWHd3^5P+-=QE}%c-BaMRgs40`pFK8wxEQU8e z7rkNl;RiVt7S=p~QEks~(7SQZaS9SFmuU9#u?^0!p%9#8AH%gB9gKZ_>8C$Ou?m_1 zVvicX28gdx;MVgSH;3otD++*#f`smF-Dk2|Kyxz^OdC*`09gGF3X2OW!71q6K#lMW zQ^(+rlYYtb_8Gv(`WtLuZv%xiT0*!1)kw+AygZ;7G!7`|<0~AWTcfvCDWFqZ(8N;a zE2nft!Yd57vq%&OBnII5G|Hk6WV};~-A*xOAxir2BcUK=156_%b>hbkp|c|uYX-jj z=*Tw}%j?LZskAY%ZmFf(xH?3gmG)_<3Nduz? z1<2 z95SH9m(JD}`q%Xo=4ZZ@f-@7Mw}BUIui|Y%P+|%srm6e+lfco165t5~J0-9h`8}hG z!;Z^)N>(x~wUjp*U_(5T6U$dyJtx5?f}uoe+Ltwa=uGm$aOW0+xo~+duqdaBd0?$Se-oPwV29d? z9$O?d1dIGa3VbW01W_8_gpYt5Z~TgCRKSfA6bm{le&K!3jBb*iBgg_@iP~>PnfRLTO8hl#K({I?c()P&a3%F2`Wg&yRtA26aoJS3N{MP8v#6ip__7xFdX+Abyi+Zj$e2 z2p&+M=N|%j#asne!|x5^cmQnCoff5x2uiY4nE4;R=^?7eM^R#8)W%wea6wFdDuX|k zVvHvkF`Xfto3`{IQNPawdgcXKZv`}DAG&^&3M$#-va=W@UCeQ906qcxtzHjbf$u)} zS=j=<68nTdF_7NKt_f5Gc+*a2IgI~38l4ca$a#~`>0hGjFJw9vG5-JxpTO&sEm5Ux zDFnRrHp(aZX*{t`MZBR8=PO{o5Rq&=)_N-evriCV1C9gOU(Z3OTZ%fLmlW9%{iom#C$e*ka)y@z-@%Opg^hxMbyH%(CuYBVIEzk{@$+D> z1KsEBz0N{66vKfXbQsm9R~_-Xrm?Y|=8-&b5Hk+I*VPy=7a1y+Y)QT_$DdE5)ZtJb z#aga#)sIjos8!%EKK`Q0pH|UY=I}%8l3K0{le3xhu)IsA45xFy2a%jq@I^>m2vSv^ zc+s`y#V1wtbKE`*18Tpvh%6cRA~eSx=GdOlAu8_V6B=sGA9Fjvzuc3(l!9{{!Tf37 zEY~~r>N`Cxlc3E#3~RwNMoQ9-VTh7KWc_gUvse=o7q#OnZWB|R%Cx4qYA|*wnc<(_ z#fBRNwuz@&Pt03P+{8Bl_)Eapq-AK@*X>r2RAjeAPf=3tv%qC^`8JNdmyt~vLpz2> zoAa!xCS2U1Fm%*e<Km$hN(6V-6;g65cPAAbu zv;Xjao8lQBr5K-(wQ}f%cgi;tKw8RifSK}E0IFVD!0eF;1V{ZTqbLNqx)gBMD=CIH z%R`vJkCA((tx~MC;(1m@AzZ?go@7gS!!91H0zaSwA64DXUQ5?i$o-UCp#+F5N~(>o z9_gq#F$Y$v#+Ur+9E0pRtG9 zMxw2#0ktIu1+*o)#CZ939Ofz!>@&RWXVem@ky06m2exO}kL(h*!OPSa8d#ONt2`u@ zwY)>%f6MGg~kN3UGr-(O`%gw*Z5wCKN81h47BkgeeYEQ%$-A-Q-Nl8{}R z<~)nADH+uOL?k=0WKFzg;Y2}?l)+C9GTedg_er@Q1E65^F%v=sfyjp2S@Vfz`vcW| zelJKVW003VnhQEy>FH9w=uaa%Qa6subMzl;B-)9gJUMxr8(_ASOJF)xBqB@-+E?~-<%{YY1+mz31Gv)Rl!zsaeUh8~(Nh=e zEWwCQ{G(LQNd$woU5$TwZQ*rl1$Hxcr!r%YQL2AOHEzFTb*8Dm)kgrzHzwI(j5X_P zG@#V9;Yr5(sd+CZ@p6l%?dWd2&CM8?Qq*0ThiAjn*K3eqm>-?K356SAW)r2Y;FEU4fzqp8h#ki{YCGUih zn`sskp~w1nC1d9EbAEOu#GXOApZm?ctv<>)t46t8>Ka1l3x#YIv*+PV59bcehW~4`)GR!@A8rjdCui+WIP~ffhZo z*BFEgA7#CXu$Il3`SFs!IJS}f2=^9>)FiqL@Hc37FC4EUT^=dGK>+p#p0$)+c2uvR zLrmQ#wy7bB{A}|&xmY8T8W4zYog*9N?gl`oSVlG2R7KS4rBwPBlXhvO=;T4GbE*3ONi2zb{ z_H2V9rGT7qzdOMt=;^xU4egwE*l4pbkRMl&33to#k=@41HAnLht>fam%gnfX_@iiF|>b z{F!PlLmdTd4IHQBp!YxD5TOakNiEgGk`a$w+GyB{_d&#m;T^P z?1Co|gnuqH{~uzrY=gu7U{E>hkUFX$;q;-Cu>#4JC{UqTe!|GJgwmz3{ls}*JlY(` z(}U}?m_FSN|DfFNu2phrF;STcS_=}fDx^>3Edzm<<#qs0Bj65 zIvy)64BDoAJ;6tr8>>>of}%#8+1jWO?yobUx+=SDOM)?o&N%-`n-W+QH;)isquKU?Kb^sM%O`k@MAe9;y0 zc8&s!DJ#xc-OR%$Hk*rx*hI+w@N($}-8Kov#1)+r?CuakB`GYHbcB*Eh@%Cx)#nbe zR}s3QwNw0SD3vor6>S!&^?PVK>?iY~v`A!jH%t63CdW04x}f(EQKVv7*LT$qJX?kvk-|U#UuT(v zdB|)u#y-#v3q~O4bqcW}KhWX|v}uSMTcba-yC*f`Ej@m2UdW9d4K#&Ra3{PjDH}(_ z+t7(qsq+cXtQ0%rE>5UlLb2u*fE{$8tp+H#p60t1f!dI0Cs(Mluo5gsbI|B~yy=$T- z4P6IB6a}oTYzl5F-LGyggov-gjd(vJ>pK+M8ZJoeXTcAHDcQRBDN`iy66lUp?vE>h z)ACQaCY$rzumOs}b_mtPc!DQmd=zoz5`2`VtIeL2GH1+)J1(=?$+l(7jTB?FF@m1E z!+Y)gNaFJ#p^k7L0=qAnhYJvml1Q=DdVnhjY}9e-}l9-|Tx zm7fiXYs0=$2<6OG51c^e_~%yuR6R!??mXVA7*68{BvOeCh)LR)vLDz$Q|^H<1q|5v z!V&)2cEdD9`!(Djb}e@?<-WID(OHHRJ(M88K}lbRVMk1{7n-Jc4Bo$IDD}vQp{{p$ zSU%47+M&NKcUjlRtpBK?s0{0wx9g*%*_@{*DbWIsrmlf7V1alrfL(;^L zmF=7W-(_)-7jHN%rWgo`31qy@cG74-x;LWnv(Kb6?B$9}c8972d0>Tcz=94{g9{tq zSU*|Q4Up4*zW~Lyj3YwkoDMM9%c~smqz3TI><^Ur z9cDpS*UJI;GQjOb$toZ7!)x(JHHQlbTpmj|6h8i+C#SHbmhfdm<(_G78@Ie`(=}=tF-Fr@S{u|R z4N&zplycpH_B}l7OR?h|srT{ni)s_2wyixI94N+^9G?yCK`70M)ggy0t3@3jCKEI% zU_AvG{ZcJVuQTsGysx@gq+=A@K;|Q?WrYQOgf^GIoNI*aURYToYQu86g5`?r{Y@pk z9;kbqT&c{O-wl!Ix#tbD=IYj`%r=*3g0Jp;zcfe$L!uh$s#%R>{sy5j-g@>?Zzce2 z#ws;oO7`}GmF$x`pTTv-m}eJ~E_(>Nu)~*4Y_L*98ZPB>=gLX0R_dq*-oX(g7}W+L zz~El*Yg53nAlLPQQyYg_`wm^~-N8%-!;*6ogpw9M_S)8!Dnr1G_Rkc?+0cAVoc)Gi;GIs!&}@ zc)Bk*$fqNcRpRrJ!Rxlh`Z#vxpd~=pcb$Rxo41HRiqk|6@E^*N@#f3(rS8wEkfiHN z|67dOfg$h~Lr^FO5&I9rvG75952bQ+Dln}>jZmv9yfH$7)6c23fDAMRG|WCIgLDMj z?>{d*e0+7FjL`7`Njq9(#R)IkvO41_j}WC&8=u>jeivpKt?VWCge9SzS<2Zv{#S7^ z(0t$?9Nx`OT^0*OxGhxb7O<6qn80#%{Q5y1A?!@nAT)mq{BkZ_Z$LdS~(^ethKLxC;(KomJB3(Xvl)cuUmSN_d~N6}!wj498Z zDoU)@Udiu~*he^hvvD&w`Yo&lp(1k{njabrgB~%GLty$zxM_#&O+8+L^Rp)US;Jyy zer0T7bgP|=5*eQ=v|CF6Rjzl1r6C_(zY4o8JPM%RtarMFwi{vggKS|5u=1ofP&W^T2C1LE_gczZl zs2Yb!mm1clZiA6!*4bRbN<@y;h{OM#f)B)7d0~lIVS%JE#DakW2wSDBqk>3v2O;t+ zO_=XN>tIKq#k~YFxnH4YPB*7Be^g`UaC%`Ar2kn3kFC@mJ)0x-I0W_A+24FONn{~i zL0j-RO8S^(mY4jc(4yasIQa260%#1(uMGjG(gw7-k){m? zl@s{Ut6^{_#?o~=W0j=~TxKoGa1)k^S}j(4#Mo5Co08TSAmgb4j&}fI!01O5L;fn; zOoNd>{O9E0w2q|!^gW?#jc_Mg7FM4k20$&Xh0XG^)QSL2M%cjZo{3&*-No#j^|(GD zjL(V*BVci6J6goR1vM_j-iQ8@Ze+D?dnr_vNYF3Qag_(^M|3Anp^bDw4I=>n_a6@T zmQCyAOw`ISJPqlg85qU;oe3}*jp_v)v;at|zTy!O>E1@7z|+w&nhYMlLPM%UpfqKp zb26D}=T5FcV@upmBT7=EC562?uj9D@paN-!L<$S2?Gl63Y0oEU$f>F8wmd29i$$A0 zpEMo8RuPH16^5A6{*Cxmt99bVsD_m2@F{4QaQ-(4Bw64lQa&@IjYa135Qh_KA7<1T z!EBGY;>fj_J~ssWhsX8LTyNDUcz81TtFpD0xh1l$W}zt40caW0?3HtpUb+ls7dNE5 zYNMkR!jrvB+{sHchd`y{9d9QUd<{4;!vCLci(35mjY)jFBQsWv95bandYJK9wu2sN zCsaUYsgPz?_E6q~57|0)=t9YyBBM4bA(9z+=bZ@KaAN3^sdxu+<6}F2>`*A&j-65i z#`IBi=)^67VXr~#zyqWnI}m5-9CRqgj=;fDQ6+6II?W6^;Snh8mZ1PU2E+yZKjM61 zkV~3-s(3HLbM;_5COZtiXUzFxS6f8UnR@b0E*tbf2QE-cU?ux+tHa1zpE!(B)Tl6LiA z-8%`}3cj$n$?Kw%n_Zmv-0Ddss?mvKARrxHNokBYZVJ1l^8f=+0gtZ!2 zcTbT1COuoGBH1lhPpx3R{!u_+SfUH9Ex71}I8ZK?Q&zAqj2gXRbq zTTb$UD_SYm@hw?8R+|{=aK`L+%iVifx-_>AvtveY_iKis<$G-DrK6dMpY`lYyA}L( zmfg8H8RK$dk2KgK;fc?wO4^H4=>uLjD&WP^6zRZu`(naV*z@NY)RrV7)XFzyynt4h z>JW^@BO-`)1|fg~0)pRZ!h<(hJtpcw(Q7r^)WkXv=3BUrI(kr}k&^I#aEjP26(^G9 z=Gcm9@I*;=#w-fcvvg?Yod+#?;&K}5CZ*3Of0G2^y54!zc~cDAvv?V{FYvty9~DQv;M7FR#J}Mm?t89a&tjq9AY!Mf zh?3l7QEa-EG2Uevgd~%6S~A7+ML}2`k|S=hb*7xjP+W}mq{K~q1q73w(CF;-KQcW8 z^4vOBLlcJQCj{=0|3=~TcUzg&pTZ>?alMFAZr@8|ZqHf#I+8B{pmFfbMnf|PQu50EDKa;Zih@E>fgQ&h(PgvbI2H#SU?p91V8HXHjC6kfJR1;GVa1FHw|&Q zFe7S_8-AP5eLkz--<$^va$&??PZNq#M-0%7BP~xms0liWcdYJfQzXM|tg9EQGJDea z)5^}YKwq#&xodkJ*pNSBsYYU$x(FF;_kPxFDsXNm?~s=@3g#gQeJ8}rJ1~phx|qi~ zE?$MYT^whD$O-<1PAyG>BZ}U?-2h}Z?_u>`E1*{In+lUJ0pwv*OPFI-O4bEslzsNQ zEDgc$t5hPaNdrdDif-rP7XcDbQg6B2jN9MX=jf6o7y)%MJ%)xee-%Sm5c}yp>r`6d zEaouYTOLcq?YEjjNw(w#V2o*}Rwk+zv{wY;m$V+>+>y!K;qu}#J!x6{`gfD10#?oL zqhkA{E%G8*D`cM%6Q#PK_gdMAtKNGZ;}PWri-Dz?G6Dm$Us5(gs?6ksY~z1n{F!>L zyH20w)#azd+C@GWn3mqbAQPshI2$?p<@5%dZ4|ov4ku}AGHbeGL*0f()$)T-s=z4F zEa*3r1?}+DB;aQY56S6AHd?=4$yZAWnQ4|^b&;43;rZ-$#CIyxjB_2pbCK|;X+3Jy zz*+u7YwQrbRER9tzU6t1R|iL`5X=|wyG}9~!6Ab`*~iMly=}bJ1)XA1glvP{cB-wY}pPU%EH%) z6lzjN^rO;yNTlxP-_{xoGFzlK^6%{zhev(c$; z;3Z^lK#pDvr82_zf=9voV@G!kF}z7aFZL*>pYPFqG55i!v{LrX@oU#p#Ot;N09CY( zfJ*y6n~pr+pD9Sw+YoN^(glOZ94umJIOu$&ae`MqlxP@oY8Erd=*+oPp^;_Jnpv$2 zV{ZyG5tHdw^L8QoSl|AZom|u~8o~OZ^#Z=0Pi+c+cwXaJ<(m-nnSWJ*$@67v)B2*d z1bc?Jl%26wl1|qmu86E^MaUl?| zkIz?&DAZDtwCk>bqrHJ@%LlfeSjot88%Qsh!>H;~^v-CSRUo{r8k>YfHrL=#>%MJ9 zeh4{vusfcZ7IK7LyqXqEYz9mgY0-ay$-?zIy^s{jz?>Uiu$mEujd-6f)|MXe@urP) zg8-T!I#fXhSB(NR3cjDR1~YD9fyFl@@of zQy6YNJig2*gdI5+G(PK3$)v&8O?W=-_fyLuLxaY)IJW54M-bcuJOfxGPC;O36pt*_Zox;{D)gx z8Ju|ubLHUhw{fQlJ5F1{#J@Iw(mtx1?a10LVRNM`s#6;!-zY>&`AIy2ew+7Ob!(frEbJ8<$ z3@H>`Stw%DN?cn%sQlyydJO2KPfCpgP=IucXML!!E0)M@$a9_TR?o=esVm* z)>2XZkv7bQ&|;AU|N8)U?}2R^qje^9g#M;NB1=({< zWtbsSsH#@peJ}e26gn+I&itdfHxSuapQWD^Po^xrvnxY!$kkH9ryf_Z(k>`DS6Q|K z6RVn(ZWc>@4%m8R#RX?(=HLbS0>Xpldp-)I;K@CiTbT^2X}r7PLd$#@XR2$ z2Y#}kFm#)|5r@SY3&u82x5)#41S8fRkZqvGg1+iht8g$?D0%wy9z~#q2nGW8@rW|s zyJimw1?Tkt5|yYq4oAvF-L~3pEWzx}xp9KlXtoo}r59tCZ>NaQ#*PdYRPj?5G}ISm zO^Ct{oOM>)u6sx?Ln=GxQnS&BXxpW>2Ck$BrgjYe-6)Y=x-{{8MTq0rHCg6d80BHQ zG%je*;R{GwgAGnkXTdopvvn#s_0b$!dVGM@M%1_eN%^M9ZqCHv)jh+gu8n-5DJ0iO z|AJhSPj=Y~ko)@^<5>l<=`11}HORdoMEMb(eu8;p!cO%OG!5yAdpr};ygj}){2@NT zM}0jp*I{eIN4ung2!H7&dB$NNiBoL`%k`wyv{Zaq%T1uw4RB#ES8ip02a*uwdS+ zpKQpU_V=-5-`}GiXLuK^jT2YLYk}Rh?Ff$Q<1g1W74Rn3>WV1WQMLT-=0FWupBkQg zZ0>_{9WBeq5@v^HT%$O6pLkX@*r&*HTMN$B1I+rWP8ytDwr&^CRRnPQJ!N0;P>@&b zaOHfMVLAL^iTP9&S0xKwC1oz@?G*U0c&@E@Wp2z1Y+AXLNiTtRC3jlF(XD%-z-wOE zHkn&;Poy|ATrP{AIXonX)e~Jy)<~t>2D4d!OJ$k#4#HQNP^q%WI=nbM$*R6V$Jccc zNQEx1uW8vC)tN>e<7Rw-Lh9UE(v({aTts9GjzWIy-W+3d8rQ03Rkj;s1R1sL;tcK> zSb~xZiNb?Yx(|hcC+>CI=%6as;K_HFOV$~I`Uy98L~7jnb^0;^+cDxF=3tVbIk6#KW3GyaGe#0+!Msa9!sj36KkC-$ zhBo}ioUNC#S$_JSrB_KubJ5j;pi&sj5u0~3Jek#)M>9gday#8AS0#&L9*+{OVHv=) z`AcYtVVw)=bD;a*X1tKyD`q2PLGY-Ch#k1UK5O<*`kxdj?x%p%1-QrKPtoqM1S&jj zYRUh$P6K+Eg3Js!q5Z{Xb#T`*r)LD-&RA>$HVE6_aRM&x8ReLXmkK8?2&3!7A~BG#$!wPiY1Pn`s2EkLpX^^ zW`V+;3C_%W-lbN@W!A6~5#+uk_`P7owsH035MKrKo+xqd(lq#n+9O#@LSyMfCxRlY z8sVqTu)wz%efPY`IK_$~zB5Ged7I`@<%`oz?F1!1&C?n<$Y{Papoo5CgP|05T&l2NLxY~yO)we& zP`RVgrZ@ChLxR%A*$np1Gze;N=%^0EI|M=fX9C5Ar%h$8&1wHnfPZwx5aIPe`@_f5 zULZWLXf%L2jKaiV_Ra;cYe6;`5DxooB2TfTMUw@Qxh=J8tuGne3ThN8QGp<$Ebxi- zClnwApq&!Pee3Mj{xU*Eefno62P9Md2Iv@WGTN_-Ao~Do4+v?*pZucL3nb7tZ8$WnhUn!;zYkj#B6(Wf@#oBRP7kM%Q^lJ8l3W%jRMjP@G=SE8l;mHX3>M6*Dw*TvCv$=|OWs$WUR7_+Gfi z=ALvXfuR!t`%kUU4AQbByFfC5SUH3a1dZ!r0C(B6Fx*S%X7%TS*VGNh6rty&FcqCM zb09Kns~MN~W$H>3pwxj^h`hF-i-|);txW+a?4&CCHSn`;iydlWW{}#=R2EJnqpbDT zPH~rPusxhY$__D6LS~zC!m9c#$CnH;Co_%~k32IFl`#rcut{B*4$)t$&#hPR@<%?Q`w5du~ zo*aH>)@Lg!0vi~%oO{PV7u>DFNC#*aV~S0z0pHC3FH-tx zEd?fuHlR9eM)|y1@NnVhP!yx&g;FQ<_S)Bqq})Wf8V^EluBhloFfH(0LariPy&&&fXDkbsRGwGWP9j@7ePd-4!jjc2+Q;aC~VtUXKV=mzc)#9bTlZv?*4$v5p(4neA8P zz5hv}bM3Ju1Uam<-E@=RKVBchT3L^(#9lqRRP}MxFjA zz^4x=`>=`_{@!xFV@H4c$5-r&O)HyvM!P^S5{J0{)TON)u{9OSUWjW*&u}>0{hakS zUjFw5;Um0%C<;R+uI2H1MJKsc%Ns-wFdHEpSL1~omY*I+!ve~!*}0G3D9gvJHVWL3 z)&{>=;$7ra|2W#k&|x7|C`vc{l1Y{<^<_u4X*jXFYrkz|>iW8Rg=R+2M23h*gTk+X zOCCqzK%D~BEANOTDL*F_nSzTtcE=;%cy%J5qFm#fNKXc~@q$QZ#2hW53qq`hn2z1K zD7EeWW1~+uZD?4THkV0gL9)Xtfpx&B+8>yH)my$KsKxre;|$*oPyAJ5#6x>hSA=-| zKPe~6oet4x%W3N!hw`g*_M^N=P(?)@EK`2h2_>k-M$mKC!k^?kD3iz<*uB%c(ED-qib7MsQj)oOm~+*X;vIIV^#(K8PnI_WJu;gR!ILe zf8YRPnpNd-_!&6LbSI6pkij-TcXO(XZUj24XDAJ@s!h91R-F38*CV@OX}$bsJ5{K) ze*SD_OUmJuWiX(C4t`s~@M1yKIT$cWSU`;!pgh+KkS}70_l6ItYObrK`lR+woyJW- zYtp4wsUzJ=*$8l~fVr`kL|c-smZQVgR_K5qoFTlhNkwTNWnSD`0?wWLm6(0v+0hL) z>^Y0@a~E)fi6^R7@?sb5%%Yt5g28O+*i=~|O@&y3uMwQd+BlZ>BxD$Y`s+21RFxfn zDirao>8&TDrN^MYaNO|n#wRJaKfN+Ye)%cpW9}Px!BX&v`OnzoA0_!O6>ZxvY?WjK z+?#&|eyog1UVPWM)#xRbA}szwWLl8VPJIaHm`Gb9-0&yZfvfn)g5Qn1=RYiR0`nF_ zs9*5#W2Nm8M?x~j`dQM}E~e=4aKXy$cT!6AldYc!?xEK7| zj7Psm{~G_l?-9nCPkrOJ0}-9!KW7SFt?*KK`Zen#?d$9t3zaTDW$Nf}p`Sa=32w_K zI+#7rTN1>g$N6mXk+6#A>;a@JbZcF21u<1!zJYKR_m57DIT;ZT5*+{e@;p?G@zUw70GeN<^G6s{%9#noeM$(abGxARENttW>@*ISc8YH+_d@N`#VVfG3 z;wrB{vYd&nb&JDDeo$Hk8ewIH!0%%7R3cAEMa<^OVXENy0Foo0vwMi*Cx|v1SZ&#m z7hr_i&V=u3HyZ~azAO#yi2~VVJo~CU5y#BF7u^1p^IKl|WD19}T@hYq zZ1pp>$>ZH$sjbnMVI(!(XKsS}*)O{Jyy9nWTy~LrGaI4ILSvUv$Vz8Rt~kOr z@e<>lN@$@{o1b&Df{;YBb>r659qj*oxj-R#?g&}R z^S9CcnBu>>pHS$Uy8%%aag3Kns$PW&mbj5xU$`5&98zjWjYunNnq>_CcM7#s)K~`_ z9_b>lIYzmvDxLWXStAV5s>|;=2yXw}L6rMa19r8y*`%L8A6X@Zd>#V?7~F9wKRyB? z7nz3*qQ^&n3_9cuoELmv_iR~2n-5-&&SR`T-r{gcAQ{cbF%34{{q`R1Mm<3}0E!OV zZsD*wTu-hg@SaX+<|?4b?qEYm+`_RDCf2UK-Dyu_xaYu4T9hbCn6|N~8?@Z8oQXJD zeLHZfkh(jty?>KGY0-+$z@6T7ITs##pGHxDEiy2*kmeX8=~%W}&^p>&&nWP#x-8*X zh&rFT$r0P=va*Q&RDyB7=-i|A8^Ml|Q7(ACe(rsqCgc{L*1K;cD>ytLJ-SWGwL9TZ zI+>Fg->uF_zfaY}I67C)#9W2WWEQMr^+}?|iKqXt`^##Z;}nW$yIOP*krQ67@$fQ} z@8wFy$%yB4fZ4z@i#cP7-Pgj9>CuxPLhFJQ%fju6A;6@Nq;*@C22Nqn+1AN3krn>t zXW?b>=chZsTgx(pkR!>30*K(b>hR7XUv$R7s)=lon+0U)uHfZ}A>GOHvA0FU4&V?W zc1Hb=6iz0j8&T#Cl=D^7RB_m|4Yq~WMfb5=eH3u2{@rSqk*q&fsH?8cX3+7+!Yoh4 z@@Lep$y-XlT*1aZ(cT{#=X~H6B_yUcf*&fEPi>~#!@O%~h?Vn2n<=S)Q{lM!PVQis zb~!ZC0P^bC>S1hqN&g~*nr7K3yHpssT*m9XIk}0sSe`)t!LGaCJz7<^Y!m31c?Kdj zKJn!um$c+gW^D5)@hxNVOna_%Lp0G=CHx#DB>HPktNAHAQ%bE(rQQz|UPm>W9`w(h z+p~AgcM#88hg`yE1f1Q;e%^@uZ&&1sUY!N3=o48=sOU9W$eatg4GND#!$o;;KUY}) zt#6?J{K{nuI(}iu|5Szi7HL}*I5aeYIOB7{YEpIw|1FnkGnb>}sth50`7dL!XvmFmCy}_{woN5MN z;L`-1I)`4RC?X|REv&2J?%{~7t_@6h1ZM#3M0m`mbDvq5gK%c@@|#KdN-G&v|7&OL zVVkm;y*_4C0`HWomXN>e|5jH`;EFG5ruLo7ni%OJgByfYC*^}z$$!wNp7 zJ$Y~UAyP?z@u&@D(+6DF^1Jn{x}$mNWkSsBST;}}G~Y%0OH(+s5N(xIylk<+$Pqlf zS<@^h#eGAVSppbuy6PDmAAXg4FoWh@Gd^W73}7TNX%5kmMWW?oN^q5zJ1H)4k3esH z=$G$UJ1-k2U$E+fmfFlNW5pY)mUFP~(miArJ7nu{-v!`z=9D8|YR`{RSnR(s(CW>3 zz~APagb3+zTcdAz>(mIZ3Onbt8FI#1Z;9Xj5GM6y5H)yR!{1(hUm`wk7;R=%5$G1X zG@Ml*w@E4cm5Z@EiT5@3+{D)5q{%4N#_##sQ=OOfeBUe+ZEOPbc0d@B1NisEPp<6m zP6>L9Ux!|X7b^Dl?@NMjTf+<^XNBl54EoRRXa?x=R=DjPV#6drel@8 zaQqTv>X)h5iVLb)7apyDeTF~kDvH{k1$b}zcu6qIwtjNL){bRR@P;1MUP676T#nK~ zvg@J7##1On1QEU(;?eESJDbW}I}sG=U&=|Y-wS`Q*$Wh>Zf1Q|jm4(%as>F`-z=6a zVv5c!3DQ=$GH}IZi}Khw9rQFe=GIv%{P!g0WHT2VQbQOy5@5@ws}C3Dc8-5&pUjwO zOD5Z(R&@-j?!v&49%5cIFc>!uR-KAz*vYCcu*O99Jpk3{^&U0YI}8?BO4zZG<5?-O z^jpLK{N?YGO_EfgWO4P2i*opYqGQu}-c4q5Ky&%oVbjVfn4>|cwR16Lp{gP@^*FNF zcW)h1IhS4gP5*NGBPADpZtF9pxD{Rau`?9P1GP1W%nXBB>*fz%>s3kaP6HAZyR++0 zcCH~$5X?i4VpchCh*bl&u|&pV=e%67kyRC7ADG||$2yOmBK&A-S&H@S z1 zNKLelx{jp=ggMgd5j{L?hdwWu5YRu>5}sx6S@a!`i%6mY1S9VHgiwRY@7W24rfqlu z<%Zo93s(NxQ)?cWsTcE-h!qEz9#P9aUPb$EyyH#lw4+}Ja{X$41ut4^dWt;`ku^v6 zEtI#wCt>7fu)4!MdUC#36L;0zCF3a9Sd{}$ixp}7?Se$`y-h>bf7IL-Z#kwP_jhu& zEBWW?N@NX12A1{0;a)3a{-b|0M$4>S$Ak5@wfp@W*9_&37db!z?ucY2g;K7h1tUs6 z4L7sBn1X!u&1+=o>o1r`r}{Bu*kmcIJgH%wKc&6jesC(~=;H`yNo1hT)0jQe-z+d;0f)h< zUz;YPkKk?BCXrWQ?J&+#eFn2vZ5BT%hF3diP;Jh;V990oqr{|Ach|l!Kr-FpaK~@v z_O?{;LAA!#J$81KRjcyu-fYQ2-xG=>v3r#GGEEf8|5|A|`uE)Jn8)TU5Tn$*-A&|v z{|azG)0f!H=i_rUo8)7w1>!1mXA&7a{Ph{u@dd9Cry=*By~2Nl_hIJYmlOH+h!r~a zXJNt`xr$rWyPZ-LTHixMm~Pm<}(z0RxTk5?Z=2 zd=Yei0$v(&S&C-eT>stUFnub)bSoYBHRVP-%qrv%T0q&d(A4Ob;-pc9NK2-dMQi`8T$#6)$VWPY8Ki;yTz;BvchVc{E36AX5=D(HFWq3aLTsaJx1 z(fV8ocSCgo2nCEDNJRU+*M%K~$EAf+=*@H@c09n`Rj%?hOpW_ThC}lk*WCLjgex2_ zE6RjYm>>qB6S7fxmEWF#i?9+queM@w`0sd-N8nVOTB{#E%H z0x6wy`pxmExXeG=aW%PGV1mi#ik}Qas&gEY;r$EtIxjBCG72JstoC0}h1IZUdGf-M zOsRN_+>-CS;+M(n^*{Xo44ZdMi)Zra-m~UX3tqG~?&Vx!g}8aHczl1;cblX*=s!ROgA<$~_xtX=L}G&ihY=bZkN{`u$83a*ydnNOWU; zt3lC;#jc8Y=hZ0w1MkoMWk1iF)A{ojb2Ercr%~Ykl}TFq;_V`1k_8Pej_)1DdeF*X z${OY`c}YFXAr>JYBe9@OQ-q$nuw({?n)T?!%rPmnGmzEvVnb>>l_CBsEvd&kazkO= z3y@{&#JNKC`WifS9yEN^QTDT5-Y$Pls~9+S=`wW~hz3)nz+|V;3JKna7D|KSHCq$){|Tc7yEs!_7q`e_t4%J z!qV=`d-c-2ku)2O3yF}Jv%k~(_sqo& zu(!$hJ+XM`+OKSefJSCTzLM#u!_F%;UPRix6^H1*tF~czcI%NXu~KpymiIWWyn0}6 z&3>;t!%#G~5Q3OGq)u`t~d^V^^^kPKG*QRhJF9Vkn&M;KL zWU__c$oF(}=Yb6t)n8be!* z6W4KmwQldRz0q(YTG&`#JX{(P7;N&puav@WQsGQ3AeE`ha5yo7&4gYii9!C9=s62o zrk9sRVV(4axLjh_DYYN*%2hy0R!(tiV5W*U@?e-&%M6=^GhR5yVE7+4MhV3G%;^pj z%tIxyb+zsQcOeq)bWIl;?31Uw5pA#vLRRui92(p&EDN$iCo~<7uAuBi2#KPSGBj-I z#G(89?M!V9Mq2#88J_;~8_z6GtxHu>GCM4dx3}|g&cWv#2Hev;)!lIPNC8*+p*nTp zCmCp_4(6sw zky-z|YwGAoOWi~4y1$u2_cAWkLC0#o_9ZPMS?EaEqD@3G@(KreA|2UVxaS_g1Gzxv z2QKW)4g&gxUGOJ=0xBY3t}h6>)4JLGF^fw7anI2i1-yOrcN8UkQWEHra2QP&F%0wb zW#T0t0kM6>MpmP^`36X~)NZYFXZK4oFA=ioZ4B+Nki?Sc0$<;(r`>a;3S-*E@TO*dgD*3<`puj{BhO!oMe5!XQ ztC5|g`CeJPRid_%pB+sSTWUaH$Qvkpx)!hjx6|^*tyN8tAPJ$~QlffLn?#DshH+6?6s0RH`4^ zE)wmCfkUjQ)s?E+Rhe{kz?bH4H%DD-pW1NiF;g(LuHaw~ND`rVdz|W5w{DV6E@OwE zTxv4gpy5}V{lz(YS((98Ix9~bN8db7lj;*rY5C*!xAK!pC4&2nfA4gULoZf9KkZp9OB zv)bc7x>Ho6vnFD6YKyErrK`-j?Ysl|W|4`0d;TgGA-~Ijh&7`by~5r;g?HfvkM#KMu7@dqy?2x$1LtXbwe}}F73V^9chii4 z2WWVp)kVaFiSqNw6nWY(a!i3NXE9#poPo6@m$MP|!KjNB*Us9KHfKP!K1HRpU-WYHh<7T= zsdzQ!+Tum$dF*+r%3C>^$!KVd^sy;;7$P-?!^2wn6)ZA*^vaGCy+4kP$G5~+2RyUb z=V^U^pnv+llTmE(^>6CqxZM5i_sajVT}*4GrB_r2QZnC0kp-~28S$?6`91bFxocMv z6VQH9A9stCAa%{?(EGYF{up~IBU}Cp`ZmX7oN3OE%NG@?j)}q<;PcG!fv`C9X{m_P zHv&{>VSDf@ZkSjNCxg;yqScfMj{L- zk%0vO$;(h2&xjDC(OD#d!@?sdEc}N?d|M*X$QikY2fVG^M2g0(Ia>REoheczQC$FoK0xoDxK4SuG`aIG8X1HbN|>Cj!Tr zAvNnLZs6h&PMTvGd*=qtB$0K^!@}!^R`kgPk^5K(_NdeJ!tG%ITZc^ps?#m_MiU2x z3dU?_A3Y%UlP4ftJnyf(qE-Z_PdFMw4L1Te zBo_wLqNFbz2ok-GCYJLLlbIr@YsQhFPGx)68s4EACkWsU#m1&{+K0$4AR)0q&wGTG zfYTwk^#0Et<&NfD^Lvd=dT6k6@rE!Y3aFKB;hBWb9S+NN8 zWdPndE?I1OoHQ65x&dqsO&Zu_OId>ScD@K~7rF$t&Knb=VVtyJiicsGnMtU|%4SIY zq8T$%j**Z`j!7IpDUD}^Lk)P=f=D5p0ogfuZA#E3z=ffW$jKoyN|`XD7(0~8?5lj zT-27z^UIT&zizy2N=i2O0Q@egxhM;j$oEoAZ^<+`RxakG@M(CPF8C~J4s^Q04t9tHsfOSn?IV)f-auRTG1&(lqi?Wau6t&%V{e02~WEys)j^{Fp{RybH z!~><5_KVOFvM~BRza-2a9r#?!)PZF#w=^^#^ssQMKBoZBrOr7ZH*T0cR2)QQ0ka zU}Cdq7MrYnyJjBfxQJq!rb*z3K1TH~JnmUo+As+v7BX%We@R#X9H4zhzID=ibCSf0 zwrKNCT)cQV00zCDW9r$<%l#&M8f}uaaI!uVxnAXVAR8r9r z28T<5Dhk=lHe4>1mI4?Q$B8iNxd?mEElR^)2;DGZjys58@uVcR#*bSdAX8a$*KlhD z7+I|c+IaOaZ3LP$f>LB@1UXq*AgvcdJV`|CMgj?LEKLgPG_X0gOc9_G>uw28JW2%s z$CkxfSpxfk07QUoY#FI2IBp3h0xpDyB%7>=R><6zKwfq)_-q6AXtL`S22N2kcrb?P zuH-LO43<5RI*t7UHiSo%3IXfWnW7CAwlYb6tfmhP90lQ?CtKDh2O07V^&84wp&DbT8dz{E7vFCp^ zzWy)WSoy!UmAZaV66A%_{ck8WLEAb*v!P{M&^jG!BsTxI;s45h|360mxA6b_P$km) z%6x;*%@17g$BD^hXCa{oOiH$p^a@2tI)V};9fFLlj6*BSq?8LRrR$M~q|>2eE2j%U zGwxEu;ONfVAwze=!)fI6gyhVWgjx_QBUoSPG{76`gD#$=Urx=%DW8k7=;o0bp~+k| zJUM#k(j;4T7=ic@FvWc*BuSl1=t+C)ooL?XI{_VkHa_|=}` z<7YI9l=(b9uK+Qc`LTP?TdSkEc7I_LV1U%9;+>qR)WAKBn8XG_>qHkgw!M3v)^x9# z2}hogm10mDK?{$(qyhtv2ttKG1cZQ!0SAinglrU4lEUPeM8#9jeW}Rl*kd-4O!20Y zxoCzkITe8sv7HU&%x0uyJdbT#}^@K1UeZOQ#+ z>iE{l14I>EB-B$Rt!sp(2MR3dhhi zgwZn8L_!lrMhWb%u|y1k8A7E3%3+Tq=(Mhcmda()vcE|qrp9hGhtugUi~&i*sEnN_ zn1%?143n{r95bo?V?p>b7u+_RKw;(*+n!|PZ?Y^RIwTu zgrzaa1c^0Oyi`f%AYu@gEbSav8ihkE9(Qmb;G!#yMh)KQg;DK;MfF{fhB>>5BY9;C zqY>Ya)^cru(~iWZ|H}posE!rd1H$Eq9u3x#=Wa+eLnMLmoZrvjV0>YQVBsTy5Looe z*f4_<1o}`%Y4Qz!IAR9JTUbo<{Sid_R9L(ylH3g>8+iC!a1_4c5De$W0bD-Ak!2+f zCZv0inu2~30EGc=4hNDAR>Gnv3fCaezJs+R$trUr(>Tbq;&33hsMJ)$@IgdFNbR|U z*j3Fnfcr zOVq{3GGd0}EAV&+snomuaAV=634pO4s(2c_oUk(yHp+t%pYT}1jWH79p4X)@ne#Fj zXurK6VfQBwwvrNJrd-rp`(aGR)TP;{qXgtEM+Rj~aY#yEDelt1{;KEu!IG`VB84fG zDb>6^lZye1_n!Ns7M`BZ^Z&A|N8ni*4TqDY0MHS}VT$UNN_7mCy`j6NXbIU2=XFLd z6&5ui!TNdM4b{?cnwXEPRy33J<}f_=SqArTT7FI;Z4}cGwq&vDX_WE6u~gCYF2LWw zmc`(n+3pE1JeaPKIU=WsQX5UW#1U4j{Y){rYAj;}SDG4@LX;X0hm1PDj8Z5xRT5t1 z>cau|$Sr%T3$}G7Fd4x}{7yeJr7vq#;ivL8tw+>VTGv6)QDcMHo&E|%0BgU(Pt@zQ zu2yJP1vD!knx&f3hrdqiVRxR^RrWAx;snh$gfdvA^^kjnCZP>P?(|zgSQ3z)mk&KP#u@%Tlk9uaxwb zl$6Am_yfa1Tnl8kK73SjF-0q?DGUz>i(#OpLu$B#KBQ6TSE}R)SjKos58AQ6`%%t1 zv1NeDwzDh95~-vUpyUBg7)ERK;8|5;64&{erUWkpk z>_)>|gNu?28^)Kk0+evUX@X!B&7F-Y6heQZrOlB(Co?G7K9gE5aLTgM#k>1czZ7fv zl%x4Wg(g$zdNoea9#$qNsl~6Ui^RbuYm4{85gx5n{qzb*yE1%BhfQOf$Q^+I3rB~@ z43tUa5=||qmqw9dDPxMq41*1WK?;M1g#(36Dfxuqz!Fihgu#L{cLu3SWMKrA)se!6 zsP@KT0aP&GSysEj;*WvPyr2?bA5;D?P6Y~3vN<}9(D}9`OcIt&zAXJr-e&}{fe3~G z<_s{1$O;?#-ux8<>4pl1oe%~Y4nb=w`~a4Yd{73t5MJ3bPLYp^RPzv(iMga(dKw$5 zd%@Q@E~aINmWGqcGLc9=zxq(lpWcgVay3Vg1;)PLb8t#ZQ_yNbmqOQYC5WheE1(}b z*oCCAr?h8TElfmNv=HNga=_CG39L@#aJlBbcD9so>2P8>CS3o~yBP%Yo06Ob-r-x= zbQs+K=>%bb<^zW*OqzwbGNz;3;6P*`(HM3L+8H7o#xX2dG9V0H^>eMf0O&c_S@W1= zCrHHCGrivFRyWcFv9zU6`WV(~Ll7AO)VW07B&psh>-6bm%_bG6Q`CC^=9Yv1PCL;3o z``uG3^LFwy;zZGy*_uEBG|*ZX@$-3^4?=3ryheZf_W0`5lltkyr$lS=aH% zj*LJsy8NdR`bpb5C5Zov(D{0lm@j%aZe$Uto1bSm#NFnR&`-1-_*!`j$^6AtE3M+) zy1wS>yS>$YXQ*_GZ!H~F6tR4wk`v;Jakta%X_i0L?hh&*4MfCc26>oiaICt1!pdL* z75$poc3o2vDsbtpCEzSp&8z#ImM2N=$vW21vXZIn*=^34s_A=Mb!*ebwyf%^?xtp*Ta{4b7&$Io zccpy+j`}#W*Vo-{9{yaip_Urefofz2o2Y9vj@}KZFiX0yeYueaH|j*Jnz*OGI-;f> z8pO=)hX_%^-f<;g=jAo|LX%NXBAp8y;_lwvDjaw-v*XEA)yC!DxkK5MR`X&By>&Cq z<0Fp905+{xpi}+}-EDRz;=_*EUbzVpvQ1}?lmZW2aQk&+TVt*3Au~vVQ??IR%y|h+ z)}gvE>B2vnkxYK8J9xL(GN08?v{=f10 zX9OoEGrL$Mv z^m&OGox@^L^`2hJbMM`ZEc z-L8oN>x2nExXgba&=l(-KaS6{oFUa+>$Hrr(%X5{E zz7pKrQMG2wYGpmn%|sn_QRF&hU#$B=bU4n>ot~}*di=!bx~qe)0T68JEd#T=six%! zwDD7KLx#`WLf5FSUmrVHBa|ig3s;>3xjP92kmyVrWcCfvEZb))R|j>sS3y}$2l|}EWosHF#O1?f=ccua?4}Qk88=TJonz<2mk$&t-CcU6)HUf$&@gkQ_@}@; zLu;4!@l{3aP6DkZK=qQ2>i9bDU44fDG(?Z%$-m?(JphsOKh0r4weB3~^V{-u_HJPC zaO$oX9r{VHs#YriIY3P#VcW(!w8t}q<}RyR7Mp|H_3xI=m`3QYq@rlgo-)c2)9leULx_|DR3$O*)w+OkLTA_3kX<>JUs3scwMuX$?nUU24bKo z-!=2`n6e1DdWWJ=6b5m2H;AZJy{?j*TDw)LRCd?X9^#0A)L8?ozi7%Q)&1JDj_jo= z#E=MdZh&CA>(#A3>gqJK2!_ymhq3+E5DMynTBd?BCx@6HU)(Yvqz(_D?z}bYXQC!` zD7ZhG^4^|kWhD-;ifE4QKP19}mmX_tPjNksKVFduMF*LUpEj#Cej-ie_h-@tljE9> zAwB)wRc#4rN>)B6*@+O{7q{5>)bF6Oy601gBGTA3%pie*Iq>?-C-67*m9SXi;C3+r zhYz$)FQJU0$E=znWZF=2gr5ACsF~3j5;ARHHMX2S^*?zei<-pH8fpFOQ1Z;$bPBGz z9+Dt`ptZP;uG?x?Eemy|4%qVrf7ex`nR1d5LAK-gzI4I+Rs%3fZv(z~dpBXQQUC3mo%63MOklqY@r8oOit#OA$B7Yn) z$GnhiJF(ANqr-Th+-Oy9ioi7EZVV~!E=HxJ22pUIQ;62p`B2wI!UMN$?@v}}!TFR0 zm-16t1;*3IlEJac`?pLF)0|LgDmIWAdK2O1_^Noz7RcdIY&*-@E=VVDi=Kb} zjx^_qy3FUXlF`f9oD7lP0K9G7QFmmXPw`CyV2jwL@2bPod0BUxL4oC(MV-&7T(_ss z`9QzAtlUT;*hCGi&d5Yfe&p2q#XO7RN9>6D+fE|%WlL9cE<_nMnb<@1n{^=DK({ce zdih;db+hMkUhX=$?W4m&`LWX0jRS8dKcR7Tc{!-1TKht|XixWTf`LAP)#UTUF@41^ zdUbGofbLnFNo4-s4y`J8l{pTJ!I&zzP7UzGq#(a{bBDegh0*46HQnhs!-dZ!Ymba0 zOX=6|`qwOhCM7VqHmZ?GItJsiPZB(Oj7m%>8V-0`}+# z5f&Wl^e5cu{tYD4J$_`ByE^sg_CyS@t$%??*2@CahadD!1jl*%Q%KiocZc)RsX%6x z2SK9i*0t!N@tM;k2ir^WpLg5cvj)XmehfxXC4 z_$QYDvDJJ9MHjl54LvA~!a?PAj-ru-#@jMb`*{ap+z>fVA)EC|$3f4)@KCa&7D^}Ftq zIR)IdJLX21n%)o>CWzeq>D1$3Ba5ayZRC=x`syivybF({POHN?aB|Oo{RxZkiKKJ} z(P)0mr*hIMz}l9liAR=K?DuxiSG#Qn8wLKjc5rcFDlPXZ(HKJUh>t9_Pmv}C5A>KUoQyXKb$ZOv>7-GUEQiteZ zvfAO9RRrD1GU?cbdGhGkIVY{5?`gtwhH&JsH>Hj8p@%6xvOp1y4fAjo!>hW}bJTHV zlnmQ_RIE+ww%1{b^NS5u++`ZhsDd&>##ET8D3ra|owMK1)q%O*t(6CuJoQI68gP^vfdhP9@@NsmQa;viP(TUGx=XtU|{h}6l%6}eF1B& z>i$kQ4{G$}nwvVoWp&_+YYdLUy zDG+xcXDI`YdReb=Ad}7|PNYh0h-j{SxJUcqgPAaa6na?=O<_bdR{LLPkJN^?M$T~N zANF86JAd}pM*^2_D%~HG&Dt4FD_vRl2I(H?_3Tj%{Z+TK`aik@p`O)P+UUx=$2w5X zZZI*@hW?}TiC)`shV0;i0DWjB=!F$2B>YfSt4Uwn$k|4=Z=qY{d1B?=C1J@@qzuf*qS!izC9i3s1Ixfb-Q=E2$h8o7efV`6m#AWaq3kdASUUpz zl?)vz9X%SMXNTvjLl_jGKSZo92{X0pA;=uRyiR5-ONFBR7Z!3|_Sk`M@eoRUom@9GXtMss6WapC#xOe8~D#t$}VHUDxr@!^D zh^tk(?+jLcbc8C6ZxKQf2=}5fOh>XTyNLHy?(+hpRCe2^p8hLp8_$|5@jO6%LiY<$ z)vP?e9qRa7fj^BpVaosb`5Hg?q7U^+XR1eA;Y)f?5Kvur-~UwQ+QcqHOUOZ*LmiT# z3o2$)PEroZGvU+)F_gdlIIquSUDxSWZ(zo!cTF6!@IYN(`PI(CPxPghSY>}hX7`wj z-NZ?bA?mQZZi_LJ(}0&e%7&Z$nP}KtGb^wRtjSTpHqFrS#)}qp;ZUcW`2E^b0y)Yh zL8!i_pWI+hqkFTJv7o_B`RWO>jVClv-Rq~TO#z|OgYxL|J}qND_=X>U{jTfymyn0#b%JWu2ugp0YK>BybsD&_qa(@YTLfl~%IOGn z1#?KypLB-F#`6ISb80z|79^6h)dSVWwtmZ!#*{JZ!Oj|N;$fQrnBbF}#3D|J0l!^M z)n1xa0iFuv^T5`CryZSql@6j~n`85FTQ(%gUa`+Ch-T zp+mv=87y)5QO9WKvED^lSa&y3|7gMbe*lF*dcSVm2j^4HDc8$YJeMgS+>FyDbyFFlsliDeTx7{y#>G}wvi9Dl8xJlyKbzfDJzvS2?%;G) zoDY|`2NRTOnH`+;U(=yvy>`JET{@rS()l1csROfjec$MP4;_oWpsm!>~W{3 zs{LG$zQyA4bhuDVWr#)uCv0%~B$Vyd-+PI%G8rdp za7ulp=IJHnjbD4vgPPAX()6jpy|k*euWX$dr>N#rX=y=mk_NYFHuUypOwd`ON}M=B zgKJODhW|g=Q(QsPt{*37aLik-@7Mbzn@g=0oS4Bm{P=U~ic$7IA{?e2_>y!^%HWti zOq1nQZ!5vzH6a+dXW<0tgy0J(lgVVrpslNGo0W27iyKSqIVrQM7-ec{bLZ24oBn+;X&QHqH zL&lhDFgRc657VkPXOh2KICJXQRGfUl&BxSypZZ%(g)boZ0>lfhQ+#dJTv2yr`p$Dy z{so?o7@3SKsI%INlPLpOiX6EgX*+E|ZbZ#t9ePzDIw%607uH^3KbT zj7AVATX6E}ip>^OS*C8Xf&Y@3_zR7xDZaV;5IP{ zpHyivSN-h?F;%XW3QpQ^$zQXA(${3g^o2!}NyfQg!%hqI^ zBO1km6E++-g^N9^q^nr37hYb*$rT)YU;J{;_A52`Hm*hDb7_^yWHP;8GMUcfd>)j^ zWcTz-y!eE$b$KkTIgx_vjyrX!)FONR7Bj<1 z6kOT_;Zl<~ed6YnAU;yWaI%KuUaDzp&(?DZClnl8XO8c?$!1pN2@NMtaPq+gpU)*1 zcI3@uR5j{sIB|kwY@fZ2kac-+(gdedO>YUZ>b4@>6DBwqlT>Z%wdm_pJXwN!4eDdj zmrCk!lMYUl;M%oc(=?&3sM@b_k_5-w^8IQGD%BJ(6;+KFPLSaIxia|PTj~go{mQ7= zH}>|sni1UWq;Sm_rOwB+6~QIAlvjK|-%@E45!@!$pI#-nrfMsx;n-8A-e=;umNhnn z#;u+4ZqsIqy(#XW^XX*TE2*v*g6k+%dT-baw&JIE5_JPeBfAj(oU}Zdf?*rvyQN1Q@L}yaKZxzm(91o zjAc@9eFu(Z)Y#f`)$~&9z6!Nt;86NKHHqBzr>`1s>OH49>hlq zNQi3}CZKSNRlgOJ+_rL4`h@e?N@qV7TTf2R3=>bd^crD&ZmoTT5SnztHD$@z;;Fbf zTu$s-OjBD=sTF&xCXM{GBPU+a)0%9;wOp2BQmh`srDi6R$uNyBmWYHQ!9)|T$@!#e z3_qsUY--eUVUh{g+U)nr=j_%zdE-e#9}lQaFyXvugS^ZZdP-AX!cDlWvhm^tB}>o} zuHQT9oNe}FmR4&wFsX!E^cKyAe*?T83&ergnK5;S}%s_Wmc!6je@y4LQdrns%f2$kZr zn0t&G+i&9Ak;&}v#RU^ZIQ|7$d@h|$ZjBq)Eld*Oe8JSb*nV^Qq9Vez9yTjj9_)!`5rk`Qj=#H5qe@FRuDm9JaPcGT#H92E zd$P50jT-ru0pZk?uT9m}*-B~J{=qf&6RIjqJ6~Fv)(Eo?EJ4 z&UP+LnwAf3by-qrTXWWU)p-w&_5Exa)7k}jUG~UiGMTmX;AZ>Qwk4>fd@{m3IQZ=< z8&gfmSN|K=9VU2iE5e@;CYF)0wT!Wt+`;Yi`Eo9ql+V=94sPd5+*+?C)5nb)*QGy9 z>fjhc#acm^FD7(nCz*;M8Aw%w$`?Jjxflg~zH195|`A&YVpT!OQqvR46naN7Htp4*|+){;_653U(= zsiOPBw%{tIR32RP)=52S!*X;wYbN$)Qqm za1zda5&mPVHPtNzYv723d;6B+`6^qc*kY>?PH=Gi?JaA3YO!?ogj#xJGD$uk9B*(O zwUgSUz7LsxtB@Ty+~64V=*#44?V+aC2B-Kv#x1gik*D$`pHPcyHn`T{+SR7AX84lI zWLk}6G8%0)!d}3!1{Y;=Z4gfF8Jk%RE-CrkRjU67<7ymfa1Wu}_FDYKfd&_sN`LLK zZHh5C&*0uJ+r}lv!}yRwvaSY)Qgp*@kQBW2?vDJ}fxZs64XN^gl*tY`Cf3 zTD8xrs-$xGio2Dj2~~@c$z(E3qaTk8djbwCxVDtpvvtY($;nl4vQ?k;TCAUnKQoz7 zOOnvCfrAQe+iGi}vrRL>HGzO*3Ql=3$j(sBZSLH91RPRut6ySIHf&J)sVF$rls5RR zmG_$yh|7!oE;1RH7x}Uc9BViUVbT^iHpP@w4U{CbD@kanfCCEdpz)TKjlPZTzg!<)d+#(dB~#2NN8F z?@F%63+mhnm*7Kl(-(O9p$aoz zQl+_CZ~(z|TgdcfQ~D__&SW$$bEyo`zyQY&+;rtn&i?5Q_In&YaJUwX>MdoDqX$kY zkEvt(#Iseo88~?0J|_8C*T*Sc=yN*p>+o6@e{X2z>rdv#h0wQ;wG zBMk>xFNLW^wq%Mu8V)p^vSn|nxF1t6Egj&2jgpVWn2wg;}$Wma4E55Pu=u=lFCJ*QUl|P zPOO$%=H|wDlYfiqyWwgH?r&V7dP$)HrWJ0kY!+3TN-k@YtZ@FV8Efsu3Uz8)N!gK- zQjoGEC5e$DhL04sN~C~Uh1;~At;tI<1q6&LoNE5Fd6c}S`-7NNM8&?bBU5kVO2pIA z{KrKjTR3x-F{p5=WAgYC)b=i=+Bj&n$<<%?dZTbk^+JBuYE!GIt};Z^f)Ryl?QdJ7l5sI-P+~&i zm|9CEyKLLcUw0Z9P_(L+xFueSF~+La(!_Jqvi;<*-UpaZI3{6aQxjW~O*mzePiQ4w zk@NYMC*sKyu6tiLgf0_&?9EO%ewCyy)~O|^4LRZ3pTm7GTYE5hZ^H3RESpsB2mLi; zG~v`zk(V`pAGc$|WWp(_jJfywZPMAqgmcDCscIJ87pr**CqF92qDEfbR8&hi#`v|F zUe8~SDpf+MX6u{OYEO;Tu3C>$-(;!9_>^#r$(Xj`!o+y7rpaWOfSH7goZ3<*7t7Yr z(-tt2a8orIzrDY1XYuVwai5ov%iE!<83QH~j-_NVsutg4ZSvf>s(K1AkZ`ZlYSz@U zPHaxO@kcoS*|Md#?B8F-IKs)-Fs=A+?St;#2&Z1!_E0Igi!Jt=Mp=wJV;JGOpY`M9 z_1Y(9nGA~&m&v3>IOz?&msI8QVf)5a18N0@m?B(jIMp_zFavG+Y|fgyzJ zT`}rPu#@gf#SFr+`5GZ)(Rd)tM-2$@*r*U@V*VyZ-$8|ySOb-sWO-+4VsMeGU zck|$;Yt()$pK(&{y|98pAWu{zz~I4c^lu67TCI^eo)>focA2Z;?Td2vc=%Y$ZSWtnu?iji#x?(7~ms4ZgP%LXP~gy=V$E2e&Cf z_3PPFYs!Tp1s_Pz90b(3x5J5n+k z79%T}OhW?$2Pc*L+o@z+Np)IAI9{fCDDvj(@&A1)Z>vtF@T=Y<{*HMq13 z*JXSTRf28#4KQhN3%2!U`65fGO@%&h1PxBU{KwjAC)QRfkah;Qa5dw`YQFd~CXM0% zV+Qx>y2+1(-6pVvaqVfgl1bG|<9i$= z7%?ox4%2&0&0k%GAwElKtO7iirJj)hbYE4(c zZI5a>N-emj+DoDK{+sGy7MySUmTfhAsin2raOu5*QN>>Q39`n5V_!0+_3QEMDmZaWWaZrKRgF zbpbO4Cp9*O4f<4;)4xY1ql$o$f_tA)MJbi1mb~?614^pnqcTJT156a$b7Y+#zrm-H z##N;8h-!uchE?i&=t`JeBS? zj4HJ?BSr~M8DmVLY*o)0gGW3&G8vWwOcLCbEWIxY*CN5qIiE9QtSejJ5gb%H43NY2(!xHJmRAAMd_zuaOOb zb#i6QnYP~4i+w3f&DZ*!ip9nVp;vX>W-8;e3ML31SzJ;^w$1wk0|bvV&Gp)Bn;5nq zY}3bYu@_lflCE4L}ZqBXY zV6Jcbw8dpfw)pP|2y=s1sgU{fm8|O>0fB+B!FoU2dd1!m&?{O!OZ~oHLFEeNq*1Mo z5yqsg6>}!I%(f+L+1eXdW`%6anCDcbU{r0rBcN62%U*{q{i>F1;~-VY_juRZrBd5U z#j@qHy+TElvMFN*r~2ZJYo8)P#Z-F5UiFGGy1YnJsQ$>-r}Z7T6ptCd;>pZXlLEd< zpJ}ypc6ND@qkyw9*mAm>+s)-gisBngtYSyrv>uAroL+0XX)VW%tAnC>!}Ju- zjqCbEQ!s6t%hXEt_BXD|6HKy=Db1hU;9|RR?M`UwnDoUanPg5h`PgHxd#M&-##gmI^xOKV8bY*r)|X3sivAxww}6i zZH(~96gJ+e+>n2j+S(2sq|a=-=znI+ONTv*v2(&Krb$NP_n(& z+U~xz67duIJRdL z0D}_%FgPS04o1WAaHz?8?*SBm1XE~Wh&m{i$ivYGV}4 z%a24%a7m?{At&9=m^>C-=O)Hh@zFv=$lSwBS?ElzfGIs)M4xLR>i7@tW5DJC7j!_O zY!z2MV*;U=b_@%}ZY6vZzcRLK;bQkeP99JxtW+BQ(tt%GY%tc& zwfKF`IdDd(NgK#FWz>cSzBXB-;GP&O4yNB0a2fh99|-*D8fSi3My z;m!TUjsfFU>I)N+cNh<6 zh+nAdR%U(j@Efzy!Xv^4Z&8xWvcf{E5uV%(d%OJB2=Ud&)NIMB9@s5viP2w+R>*i@ z1Y`y}B1RdFGx@zlHw<2!_42OdNMpW0Hm~&%_Ln~_t4#wRWbOk+ux-H>Wxny$0dQ)q zeaWySK)vcy4hMnhn^kJ*SX^|ww$w~r0UA=Kzt&z}j}(NB;04@?NS`4_w+UQvJ9D$~ zh+tqyL+I*230#JcPlKhk08Kw!3Nu4d@Fiu~M)sgd6H3MBE#48lYqn+s$OeC+3`RDf z+dcP3(Q`b`Hb!+`Bo@xrLS#&jCyE{AwF3HeA7vDQe1sw(m!{kRv=bDYaO>!a9&Yxn zOhhSI%+^Q@iBv%QhPSyv54ydSt>wN`mM4Zny(dwPbXSqxbK?!J*$hJyS!Z5rJ8JW5Rb=u{3U9G{Arj#zd{zo8IojyK1$U#hj&24 zhONzX(ISOAs3*LfHN7L@z8tlbM;nG`-S^mNj6*3*5EP_SW=UCn5LzEr{2^U54ECul z0gY2^(F`)vdRsAj0SanXJb8HM#J}In*fn=J-i^CR?+}nuK_O0*1TUxOkcS5dffngKnO)(<-3$&v0!iUFg;R&I#Qw65HZ zi`)P%$O9b3G0c?VMhpB!#B8twD$eM;bNaP3>4Vf$4Zo)8=5h1scux_Ci zW+cG4SMUN5$MjxwDAFg#ID~8xQWODmUh@JBAuRxd3yekpuY{0-$TUc2>$Nr(t##ZX ztO5cd7JMiBm+bfyM$kq)tv2c(7Q|EH!#F~Sg?yTjMom1qbqV@nUT~Zl9OPu0VUn^f z{(AkqNl(tt2jWdY<9*A8`@5ipnZqn ze$mcPi!#0e1iYuIgCsg<{{v{Gx^E3Y50S=JBDTP0e77{*6@2!XKQHDcs()4KX3#;N z^j<}H0v^Lc5=^xN@}0MzzoRE=LbcCTtobXQIsm`x2nTlai5s|muM-9Yu_fRv2|qBx zA0R}uw6Uu-gl&v~TYodsN^l)-V5&laB_4->wbFO4Gy?b^bcjTDxq#jh7$oe|C3pr* z**h9hgoucCF2yq>&Rp&(`hcl+3rR3&+yo2_#sO&y5j6WMI&%3wczVSk4*t1gdMNRa zKC3aBCZUY%pBw)f3#2Y3+RT8#;$btv2fLb#ib^O{w2m`#Y*30M0Of1HFhI_q?EVHu z=!h|hwDc(y;hA(Gm@Z~W++ZAul^ljhZbI#21`6QtGohymEMUULe@=%#B3kw5RB_5> z*DLV+y+OMJ+>y98T#U&e_ZcwsNnFW3aaIILn203ki`(I zx=z3db#SG6FIuyPynB3kk%D`+Q0ieb+JiKt8w{^x{(*ajlglR1)G_Al3_Ev6@K5|8 zK$Aq6Z>fiiDeSDCWg&tMCFh`R1W3EZB#N1oM8Q+joxvFR760J8j*S-BO0!@MXuV&% zn_1K}a~^J=n=e}RZ6mAu4kY1b&8=PT8OK;{E@OLOUB2d#Cuq8ObS(VRx&Tid*%{IV znxyIxkm=bCeyg|XR1{&vwVGb&V}u!s8TlAQS+2%2vnASH zq+tBmW(pwV$#4%&ig??cUGWtq!GwgMLNzvtb@Mr_@{jW>rGPE?M8weh2_#_iX~nt4 zmZ%b|f2rdMes)Mm!R_RcDyd_*>OX-Mi!S^&YF9b-ULgbn z$Iq3(QBxId{89HBpBiVt$vNgh)zEZX#2VDxlnQjzad74}V(?99BV(OY@3|tcV?Wi~ zAw@IO8blS&ptG6_H@F08tuMoL11#H+{!v6|;3&lLRrWMtC_GkYj~4m6Z5CPX<7p;8 zmVks5kn)=;#3FOJZqtlMj^z#;deqZkl08LmD#*TE;Z#C5Ft288V>%J>HFkVob!`BC zsv}*64qP5$g#PhmhO}$mJ!@KY^5B<5S(ZQ7RUR3tFX^mva~FyP>4TupRXiPBTx(Gf z&J@s-Blo0;ytlRj$l%mpcSIB43ZEDO%7IzJ+Nl}BB)g=BzmF++1mE)Xf#v|$jVmeF zI?#jzTUc4MbUsr8&w+jRycLkxfzcM=Tr3+RUOiw?>SYfws=@^+toHDmrWl5MBhH5X z%eT<70(a8438Dt%1e&~xGvP>9eh9&F1W5TBR@ zC4F`NV9pONB)+96jp0=XxrLGRp9)eg`_m0T{kBGn4cf6I7gN@ItQGhxTvrY*KSrZa zhRB>3ERM(Y5D)`?trZME2DAW1GTeY<avS6f#;R>I4SK;$vBl;JX-9m|j%* z;9|e!jU+PB&enyMJA2cMLWieSSch)b2cuAchJr2E1&vY7op?OU8# zOAIo1>o}MhRbWRV8=wMSI&N!y(Itp{6pB2R|CNOfGJBQ0Q0o!mbH{HFh5Q8zkOXC^ zwZtMMX_h4%M|oqZY&JMLw<^zy_2s5iJKCus+fuP?vwke1N<{^DD@_4< za-|SCQC>v-Dc{j78D26J_l#CSid4+VymvCL3V%XU(CkL#{&jJAl;r?2=vEo6YQq)9slcS_i6FX4NVIc|x<1o2z4vPQ7Z zL?Zo6=fl9oIcG{^29``d+nQK_Yf{PJD<3Wg<$d9D4qJn)7I_eX&+bbt62!j+uJ45L zZlAsp$Lb&~-Uee9_P+|Qw*o)a-wxR z>t>V#ANNy&B8=CsGAlqpBGklhZ-Gl1H3NmUGcC*MDPtU8AXqhAXBY8+#wc(M&c@U1 z=zOLBjzYq;Lj2NK-7)Tro$YJ2|bSHZ!OU zr@*aB2$(#7A2P!rC!9sI(GVmOrPK(6=zPMGr_Dv-D74*xCGo9cdo#0$&UlDR)0PUZ-iwPf@Kd7C;haUB(c zh$<;S`&;Qk!zSqk9pF5@N1{*81p4G?0XLLKPAUT}QP!+yHd&a!gJ4YptX_PRb;zp% z;1Lkjj(sQ$s$o)UnT19ocfQ5@tD^GWHn4*O{Jch(Z@_k)rBHE4_0kLh=Ku4;9{mLO z3_$(?LhQ^Q0*W7A z!sKv7Z?N$w#uR#&si?fGSa7LI`%Qqf_4tly*;14bm-^MD3G(q(^(3yY>%p_q-Cjj@MVt`D^ zcp_O%CLn<{(`_n@AOEU{i|DonTP9BOt?nk5yd2YKBlyQy&d%H`<$7olx=?(_k!voj zFvVMK$k8-uolG_y3Zp3ITA+f14*er}khA~x|470(f49623anOHsmPIZ9M}Z^TR}MF z87kFLaL0`&RaTZMXAOKdmkl?Z^yrOtFD`pYs~fP%Mfr0$6jvAKl+~N+{^6?w;>ElV z+*%Zn6mT{Nj_;WJqu*06@3z-GIXH$KVyw>XM09Ne#KY!~jkpGrb*bUqthecYJayPd zS?LBKp?H;5yL73*z2!KxxT!oJXw2gGL8;*36?DX^eQdi02bmdcIgTj)k#7lMBhkxf zh4(rM>$6p{X%OK9G&4m>M><1mc23s_xb0EX8)D6trE?C(8r5F&7L*DM!iuWdka}mz zIR9h`Lijm`Ma@_|B=!U?=NWy2c?c-WKde~i3VM=k|L5D--{;t@UIg96^3?R;V z*X>-JdeE8W13Tx<@0U6blAvS~`ykAxdQo$-Oh#0FBbM5NQ*%g=rT4_i3qCMq-xnX`J zN}nW;09JIS0p*o#vN1Ca&<39GTJI|c!xERo*HYEpc$wlW70bc)I#j1YjK0xk&@^6Rn zPxi{@oE;*;%FW4E#Cj!PBO1rI>RBSxq%-0*fi&4_G3SyB9T~@=0I~G`e+6U7it`U@ z2(S%Kza&X83k@d*K^DHr*HgE6+2nzP1-vLkB6+UI!*v%A1hyF=TC9e`t|Yli_8A(L z#ZPmf`*F<}0u%Vf+y$DFsrYcz;xg%zYa4UCC-a4n0WeDd$VTLscB+deraYgRSRs)N z$T(&rsb3Vd1q}C>ERtw+_CGO4LrniIArmt5&)9PC3ycyW8_~sy!nF1joo89UDt=)j zOwI{@?+Kx=19zkp{)9x|?m%K1q>cB!Zab%}7lb-Zwhg#_D+nI@CZ>(L{L9dTOU?b1 zl~`O6*!T5lNNE+docIdbC7I-LdjTj>RAe1?ymSeL;4{x~n`+~XD~Dd@nehC`5+{<& zTRQY;!jp5_8gZzrsU7*$S_*Qxn8VE*^Y6IE<&J4p{u7VITXpD{Q94#42Ou$JY#8C+ zURqvmjt_w{tiijeUBO1+oGB{F)-=TP!t6I3Z^Z(dv4u2j0oFw3f!&xeR**={)&=LP zxJ-LsD4&Df?WQA`13OPdq4YZ~H_6yD2w@#NNV6RyTYk07$rN|Vc|+Rb zB5_?oQ)qq?T$p>HY6~d`PR)+$Z8@B9yK2*+jD=z4v;|=HLC;cA)W{*iISc|?ow7>@ zToyd6*#-h2yHfv#_P}xEmDys~KFa_B3xDT96lVT+D<}$^fvjbE5}i-Y&_Cf`lC8Qy zwb~R*f$bHyy~&SSO=>nxV8l@_#^jvPLSx!gp6PG#gcUAIW+~!=g*i=DUZ7|EEl5Es z&loH#>DgkbE)X@6+!@RInru^PL_W->si}csaHUu<*n^;LaHLznw@Oq9RO^RmW-b^W z(`E9)`yLdSa=;KZ{n;kY#MH#x;r;XZ1|WyP0D|46CHA2+ujqez^Z@7}+o}^U33ph3_TkRapY#EHr~Oc2?=>l5AW2UU{T&0Vt6aM+>!KZc;JSdDCNy`zt#A$} zUiu)dGmkeFSUa-~aHG>jlMxT={i8$wD?LNL1D7z#;f^R{u07Z8nsk}sE`HW_Gl4+5 z6?qZqgC+XRKVz~myt~TnXduuVMInL>tKO$Yw|4KoQ2m>wWJ_W;CNqxM~-E>QfY(W5rIXIbSu1foC8c9R7Ix@q) zkxC&<{qX=QT;uF& zR9aB=N;2UezZQkK7UbgZV8BWyCTj3H+g5WY)RN5EW_DC2~6hq%B;xdY8K}YtTahcL>sUpFx3q z8h-YZX9JHFQ_7A@Chxs-hCqBQ8l}Y!NjdctFERfpBCNH3x15&%bD$>tfaliAYl0#u zUde>3THMjCKChR+QH29*ex>z2&19u;3S(y|LQl`4c&LQP8-1ked6YYCW zhKg1SIGPReg_)SV!wfB0S&Z!f+e2VfgEG|Y1W|!Jwk+szJj>Nyp+^rCP5ZK6Blqcm ziu**!&OBu(vvxFHyatr;@(Kb*!NJp(Wiyko^bre3hm4=Tj$s!n*tn5W&l1-Z-3f~K zx~gcG=IpQ?U{TWhoa4ezjwQlejA-AiGG!XmiE1>zU(sz9^Cu)9ZT>pU27KlB$4-UH zc>?u4ae)p@cq5rwAxT`Ob2%6U=JXnRH`!`}M+EoN%6Joq3GDrki-IoQH<4#xlDAA| zWj?@1NEqHUK8KY_cbI0S!wvYLY^e}WBmXf8Csqb@Nj-R!JlEP_)a6I9fFh%qH7_%? zTORSK1mkD~2O3-zqd-wd$rXu*UJ0`yIHpg)1IHs}_!v0OApH(2=R()oP;3L(1c4v! zj&4l?&?yE)d%fZ?cUT-F+cTEjIiV=13 zFN#6yQVD-l46;s&W3fLNSpswFcH5fKgkoOd!hKPAP3bQctt^tdV(do~aJKeY4=Q~2 zI}=H(tf1OvAxw`4`{fvJQP>9nrW5yt`boD`)flFwPLBS)_pY`XY};7mFEO5BY7odX z<^>o3)4c-*@cGec3SbxP$J6O`wHAF%_s7;PMkZ~Mff7Hul8-8JyL0)^tkZq%_l?dJ zhDC&o+3f~n*RND*Mqvx(p?ZGfryJgT|4}cV%5>@ zVbua_^Gsq*QlC_|n-0q7yet%PBbjyt3+HqQuK;ZadN>E+?9DP{XH^Fv&L}}_Rtrzx zl|_Pg2WhGeHFQQrQ-wDgX*|_mM4%z-`>La@F0|zq^Mo05_wp78zjQj@63VhPv@QuH z{BZcy%eFWtRntZ_k;O?>lW_zuNP<=xW3Y2oxh!++a${k5sIuIEpoE*PVLFR|xcRH# zs$ptoSBiJt?BJ8+eb9_WtL`+W-lU| zwJKE36=5Z`J@u;4fqN#@baVX_DM<>xDRX!22I3>UWo!PjhisvcWpC--Vyg`+J!dg3 z->S#;$<)+MQZ_V_&|@FH)9T$!68t(a%=8C0wDV}7bSper+=!!m&$I*wmj>jwZ=vE_ zUfml4tuk7_nQ+%YRpQMlIya8^bHIRNMXTo^jI4H;R4PK9<6urgq?Pz!Y@mTs^+C+w zu-wGra3sB27t(8a8S|9*d@=M6y| zPcdr^^84i(wi4aLbe7;7v6T|@^EuX*r+C1n!&W;FCgqoy5kgL>oRR@t!{3<%RG?}b zal&e-iJ@xsM0f<BW@vB$lAe~y8C}1MZ=6HPwO691&|pzH zT;e%=(4N5#2D`k0aBROY{QBnd>hV4uUecp$6O3Rq%zN& zV+@q3%cKu7#;abtM|zDlnzk!+O%Lhu4I*$%*`@rF!6Bt^dSwi=op*Rt(c)oAn`Q5c zgZ0*xF3fMVN38@8Or_OhtV!FZqinOws*C_x zvy@#CUll$=l21lyh?2yiCV;~a^8N_o_&6YG=3WeW-+P=gLHrCZ#{UpMugGRIf*6E7 z_}nIc_~?Df>O6qzLr@pv>$7_mN?-9tF=XHq&>S3Lpn&$%+D`$H;9+Dm0tuRGc2hah zK^pJ(9>a_puD*UIL4VkN>ka9s&hUZp{?f@de1e_sZe*CTq5~8@^RO6{0b?L+0K_IR z+nYp(TCrsFR^A)%cmO6KWubVo2owv}Oe-y_f{e87ZqAUSgqE^YfZ5NEegPcGkP8B; zRkY^O?r}JI93fbdXrnb@!8&MA*bJ?qNGkA<3bsS0Z~_^bEYwDQpcGZ zI>gvEyZ}^yZ~@wyCjmKQC)PD=vp)ur!F>~o>*M%Cnltg9MFrI&S0D?ksXUug+#-vo zADn4t$+h6hA~+bj$G97HcKKvB`eF@S7+wN#LMc@6l0h)dL)6hYS`b5@pLLA!3FU%j ztGb>*B#VjbQjn@t-^?OHp0bBiz6h_SargooW9{tyt{QGRD#qjn(u!$ZJ+tS#*q_yn zY7dpaETV9^SPz>))P&p10=VKcYGOaYqmtX#BdovMFXuL>FMSNK$&7Vscqs|KU47cRjJ+Br~YYZfWk9mvtv)Xi{ z9}~b_cl-zEE2Z|C;oS9&&2|m?<#JN}l{ZmV9($rP^KtM5^Fh2Za;tEpucYaXQ*uw8 z$TZL>M^DOR%d%Q|p83G=1M2_vYBjUgjF#ME@`!C>@1d>fB#g`I2FP7Nr{dHB)F& zusM`rFCLWfe>io3{nN^a zvt=Kg?c1_1htne73!wkF{24Y>Z|L9^zL<+4WKq|D zFj~<5F;L%D@ZV>+sQ*)4hCEK&d0_0KxrA`XqhC)+T$hFclEWIctwdb)>+rU2VmTuT z?s)C+=E4c%S}NHjCT=m-XWWT1h|vU)KZQg7L3_DnD)~P+=xYIur{IX<3+|; zXiR1LbI#U1C3RI?!L7>Z$K`)TA&>TcJjfVg$#=#_G zj~~MJXYqAmO*&;ij|-YRg|+t6f@8-(NFF=ONowx+paWFV>#*k!g3c-W99erJKz4C! zbFtGT{!<>_Z!}e+zrGqIzmi#PVfPJp^*XE0q&(a8ocWz5QrMuV#p)W{+xLE&P9^xL zn$t8O5&qV|nhTar39-TBsECaKX7>oY^O8=lAS+Ddtw+1LQ$`G)+?G|%4(~!F0#f10 z#(+*K$pEyR^drUTx%%B+hBP`vRN`aK{&Z2O%*}1!HD@kUiy|u4+jcw_6vFab$3S zVaAGXEjw@qzgaAyuAnBe3Eo!R_wXx3#vLHdOqrBO4~0XI8Mx3m;&YSh42 z?7k9n-Y^%o7BRb9I{1eC;p#prx1|dYO!OCxKEe2}e^ksm!QKe6XFtCD6+MD1DaV+z z1_ZoVI%(jGJ!thnI{>s=6w0~en2F2|p57;+ zEEEj11)9Tv|CYj02>N=9Dfnr&f=ef3FV=|$hvhzo2?(!W%s}Y}pPgW`aIkG|nYuR^ zrGkFB>Z^>efgI-RecON0H}ty>YSH(Cg*0h)wXO&O_`9rpaDWgEf6XhT!&nR{$SjSj z0A1pL57~ zsegA6&8{|exzXKRx401*snJ_&utzi3ODSsOIvagZ=x&)TajvH+Bv>0?z@M7KXmnF+ z$$jl}NQS_{>AALj>&6gd+bTkq#}>$|1rDv3ZM z6uG+VLU+KFK&NIkMeskVTy(nHrS>QSsIqAoY-9hwyuaXHg2{7ZyWkZv2gY>As21uX z2qZrZc&BSu6>a_Qyp4?x=2FP-Zomz%pDyRCX%ciG!Sy83`JG6F?-Gwllso!P76L`_m&ll$}0*oA3FeN6ba zm+?N@c!C2@`=KjWTI1|)M=8D%F*n0TS6`b1o%|h$1IhmrM(&p%J=r9x`*n@*a|-R1 zoubIl&yf_?)^HM}wBHxG|1}?=%ESXDP*wu%Xpko! zEa=nQ6G@c0(@uA0Z=l03PmjCFv%Pfr+)q%S{5hAy`utGQ`vemCfP6?M_dox)j^)Y( zbHbcl`r8zDkbaJ0&^@?+0+<5osI2i*kx+v+_Hvn-x=mA~YW;3Nrl zHqxL{!5xVCn#6(-ILjE3o(pBlE=?IRqx)0g5*&zt@u~g3?Ca z=3^jeJqnS(wx$<7o6HFTY&^nQ@wSmZEzvc|{TzR382Y@u@d89Pvu`#=Aj(FGCFm`( zUo!mY!I0;`FMD_0%Nz{17mWH85k=}w5!s$4-x(&u(Se44yc_3XHM7@bZ#rd#R8=kgD-YFJGpz z>jJH^BRy}jQfTk}bOO6BXC8^CfxaJ#d1;vY<1dMmN|5|K4k(O@+L7oRzPouir@L~T z1pnvi;|{-QS7C2ut4VsNS%Kf_!w;;!dY#KX^uvyyVJ9YM!|kj=-L?6A$LQ1`Ho5@1 z;MR0~>H70PS-9`0_l zIx36XMCPx9G0FgWTetqOc(qZ`@u|FRkC5?YYs19>2U}n7KKgPD6zKD<`p@^ z!t9a(@j-$#9b8It-9KX-oIfsb*=VP{%xF?p@cYbeXxXwaIC|Qv(Kjg(4`}MnfIt`N z02e)qKx8&p<|9={Y%ySw8fGU1tj-E+VNRCx)g!A~zU7m{U0Y4AE9ktp7_qhstA4X@`m*2NiU97?5#IJtG~71;brIf&XK;slmQKuLM z*(R^l%$?9^Nl-ZaY$61IP#{qZ7?5Q!MR9Qze-1e(PT!qKXA0Q;=a6`u3Ei&=desgbtkbuJ%9^tZ+#8&#vJwd|4ZhvS* z7kXXf+d{7kzbT5z3>4AQ3MySh)Y0xA6QUP3CodY93>j&14O_m9(9j<|AmVn1$2%=# zF)Ds$kDxGt(-|J`u#v~E`x`xi0t9Y;h?tv28nfFvVwbQC`j#|$Cn_HH=i*Z@PHRC!rd95_A{OOA&jO-F*UHaX}wDDUT zhcC1+(#X>1uHlxiVkl{xzCg#_JA1yXhb@7KF}s1db{<#F?EMxa@`UTgwJ!27YhoTZF=4(*w_ z6eRoL2*}TbMS+e;$48zw&}TdbrS*fqNrH*KQ%p^pn9PE~q@GBp<+&Tw)I~m}bPWV% zp+n8^uH%W?GsPlW2$t>0rpHwYAv$F9rQ} zIy);3Y(x+=1l1WY+R5=h;Er=EY(&xy&yHb0JONj`+8@8c1UPXNC zksCJ=6JW%3Az<5kE}1*61`h?6G?l{TFuyfRqs-F>HL#&57-rn41Dk@oFENJhCFaCV zW-z#SJq4A9v$NQhT>#1-ETRX&^^lwKxaaqGjMna`#iIgWX-blTSwFcp0Nq`ddg({p z!(uJwcq3}KnoYCbtvZ*36@ii-MVu>A{~S&J4szTDwQvj;&o8FWZ6I+G4H-2OL5R%N z4xcL4*8I?L-beE{&+LE~j@D#b-wi7n*_zp=QoQ8Mx6(m+HpxtlNT7Ac4?~2xpa;mX8JB&I*QS>tIKHempfIl+1sXBl0sKdi4Hp4R&+xmMjNzV=0V>=v-l3uZd7ONBLr8o9^K%C5u|6!qp`H~6Y5Zy z&u>qE3W%ySVgyqqv2*$jp#6VBzOXf-rw_Ssd7(lBX}w`qLuRk*kuG6}$%GQq<|Nox ziyp?rpde_I5kf$pqxz_e(|A`V33xT1_cO1-S7|lvE!wz-SMiXtx!XamD6Z*$zrq$Q zulZ%5{YI`P{Rvu;N=&fhAYLWc=bsHqfYy$SB z$1>lzeM(Eyax*fFnGXhvbd43E+U>`^Yd@c4zyG}fW4B6}oPT6ik8_ECpXg@Q*(d-UjnaB*BML>(^F#U_X0W7%3-o*$;g^7fqAof(UTfwBw>WswXwu2Plxd;6;p&}wn7cIYz?5pw)(|`S~ zbsE~a6|Fv-)7IMDdm*H==7GkH*(xu|LgumyLUmCwcQ?>QQo(%D>q#FOBd{vU&%5c9 z55a`jrg|mUL>!hHd6&I|-yHB%4gkAXNM#3&s72#Pvrh)AE3Y1oz^(&KY{bqfek93S zl~oG2s;g>@WUU45&(PQzg=-J{E^ePTz|E}%%+*Yr@yN2J)YGI+-gEoL)G__)3Qud9 zbts9^%Q$Mj1zanDvK>UP0N?pR%&L4Yxj!2645CVpUf6F-{$eRPRke*VgnT|nD8O0${!^DF~D8O_SdCO*alFeAOvqFKYl6P)`Gsi z_)dCkd}jtQ`OH+h!RF|^t5N*ZElQEGCHQ;?O<9&>u}KoDeaM64QN`CWQAakhVGY_{+>p7A`3LhM;UPZD+SYeb6n{q_ggG?4QrCzgV(v_OuwP6jC;yD zE`?RRj!M%Ro8M7g%4O_$acA~aVpK&Yc7AaDKIY$BY}lUy&fUZFyhISN_SOJqPvU7f=s!x{ zy2_En1;3v-^CdrXw>8Yse!Wyi``f;xdad*&)KfR#^IA?SCH4Pc@`^}VThR(r2T}i& z@oLgG1K$eKb*%b%UvUDWkJ=Im9?%VXifH+s4C4&$H^G`=-vl;cfS&)r0OOV;2$?sa z82Y7_5fc}ux`oq4OZuWpG!q#NRpQdWVn2#B<~DzHwLHfrd)!{`{^GF>Q^4Mtd8YB& z42A0ws*JBb?dq)5;G#O2cZ?h!60O=8#BOV(Kl^BZ!^#&a{tlvj3E43b;#*}wdr(-_v+DWcjUHUTD{)z*4r&#f_fKC8F))*na=CX5`qb`9+n|_ zeHl5h{K=bc`;UnPe5iQ62z!Bp^_2qtE2#)JhJ;b%hFKCRF(+^g!XV28OBU(KMpMk1 z|L%HTjPMs`@}U&Ze52S~InV1c(0PqZk~k+cut5y>{NeNs4; zC0~OkE;(nG5#(J9XqsCP5B_fGP0k?+sf5Avy8bl{fPDr)Z>822-?`};RK-n{JB&b5 zP=K2Qcx^&tEqT5SV)!{)D4c*d2cA?b-NeliyQ&Xo6x;@_EQ;J66%FB7`6YfJK85Hv z4351!eIQVAH)WJjXaSL1<@`mw{u(9B{NY2HWi+MXQ9M~^+JY>MGByehRDy;WvpwM8 zT)w);0SK(_1n3CDezVG5;YSq)B8E~E;@+^6h87Eoz8TR9Zr18s@AO9wqcVkS5h8LJ z6}509D(} zhC0N%OMF!+IV>->LN}FShL`Ju^5A4*AEa)L8{uI!HC%4KS6PhP2R;&%?c-hXdHHZ6 zF^_mAh#bbq)={Y{`gV!|q!@F6oTBvyOH`|N2=?0?72vGCvjn_jCYONxohMyWCTRX; zXdMRtW}!pqeq|1xc5p!l>ntF9LZC@hD%@}^2qv(HYR?OLC($bcAEIL>%&z@npx)n~ zkDurW_MIJtzt>3GOXBRE^$}xx|I9*^>oX({Wn;gaiO#U$?u8Ozk%{sFm>KU+i(;jt zYogIB{pAbk4-BB4N`mbJ@5D#3Ly7B%u4Ihz4Ogva-&GlNTph03C6d;u%8!AIl-|H} zwq+XzulRVvYJ|IxsJ;%{$ZWLi6TdLA{T=3EnLgI~-%Q?6WIgsaljJyzc4y9w)ZzboTtj6$iG}u=63@aG3f*v{i zGyx&?mGTGiXMkmxLEfML5Y~8(v+dxV39dfZ6zH$QpgY# zSt5E0rR>K>-a2w&Tcir7J6Nr+Cw%a^Em!dg%{dbYXjN_sF%{ zHp`c(@13XecN>GRrJvEh9@`%q^K1)m+b()vtNdtG2K&u^o-5#p$rq_?7F_tX?Ee4d zDS+I|Fg~vOXlJoJJbx&r_&ib{U$M51qJmGch;vH?k5PZ~G^OZVX<_OdDOjx~HYX=+ z%~A2NBQ9hqcRMhpCV63pXRVhtIOPBnQ)rJZ)G`t@TKrfbgpk1(Hf3{aHiAf_?U%2iO388A9`jCg{1UE;yMhyt|Yu8RT6Kz2Fpt z=0Eb~wHU=eYE~gSdD@e$5tzK*D}Ip2YK^L|BC(8X464NGFjgXKC2rx4Esi#SeeDCc|?n%I@IxpJx%c$tq z&^UR0)c!iY93>|ZnR%s;K(6Q>Ajc?D~q27l@-jgb+ME2cxwUtVxvkVojH+rHG%0SwUQCk^%NOT#nuU$E^E z;x_jAon30otzSXs;!wqipaM9mA zBvL_um^m2&Iw~5V#eKmNtrme82VoSQwtmx%K&0KPcSxbQ5$@$G>|B=7MR5OaPq*a`_fTE7ej&w!&WyBgdPwT& z#q@Z?hyKvC&Tip89hN;?0v&akQIX;9`H_Fu6gQj0@?Q~)Q8Cu{Mv8j}`#sO|yg&?E zAj*BL0Go4$(s4+FTdjKx+3P^sa_y2`wwp@^3!lJ3Lz1U+cdB=WlKl}R$j{j{3Ifv+ zB(l5`^?E2&b9?IWXLyjnx=sQD&ZFNiNfMD4oCoWs!rm!dfoslC*r-LJL6` z6AHTC;B8!&`SZ;jAsip1C!?}U@;Lz=s_@Uvq#T915BPj>c@SDChdv&3RZ|mdahCh_ ze1F>Nv(WqcxyQ#|0P^nEM4pOfk2vYu(&Icrt_0Bw`M?4!Ljq1eMAHg5V6Y^G128i) zGcz+YGcz;et<*oa{!eUUOR|&3tD6s}9vCYkA|jHN_;j9`iBD%HKAjgfv3f;3Yzs^Z zfeJ(DtIeq!8MuDYuWML;NtAL1;qkN=ApL)IJahoykT0+?7W?c<~2aUu?_j zn9WlDe9&q#QH#+nZ18bCXeEEPcE%rjju;PG5mm1qUW%8q?Vw57qXvHoaz55{(Dp}* z-ig=btL32WymHC9;*TUU95kL9R-t*^px>B{Um@j7d^YGZNlI1~@xiOAK@*xgiE5Yc zZ)ngDvLeKUm=88PgEmrA^I&5BIINU3wt&D31|Wle6tkorr8wQU7}XCrV$tT2CcPM2 za`97wMN|IO=9f28$FpA1YW$gxr+=O`hOX$!bfPWC4VqEER`e<6&KF_?$rdbQMHlvb zsQLUdN$CZ~8!kFJ0ssV#RrGNhJHrp-mj5Un9UZ8OHV?vEj@)_BS-X-1M=BOe-My8P zW=bK22M$#9<2>^5bZP7#q-$dfN5IAL;tMSn6db2$%45tw?4fq}!HQQ2;4nqs<5a=o z#ma;qT8hRqMMOwQjs1hW=z;||!XQQa8{$leA?JK}+Stlbln0k$TOMSODT-RvV|yMC zy}eL$@j})ykFle~0*X$|GC??>-0@;Zsk3xMv=XD&fxWK`Qrd)olLyEe+o$@BSkj@)I%(6Z1QIZ4Z z1UFa;9GYl#azcD46{;2)I5N?M9jh3Eh1jWl8(YW$VlmXffrFusqgT(47ngNqtfYl%Kfi^QC&d^P+v!uSzvRifSbU_o<^DL-V#fsP-+2t14$ zH@-MEx-kFf;)^d%P=n479F%Bs?3YyG^T*@7=YV4peaz#`i_*h}z#)mgH>73q+>#^Z zYS7q%0yH$Bk?4{SEKa;zCCSf5jT$WQ6KHMV0yMUu0F4T8puM<2RuniO(YI)d;m5-~ zSyEO<$D21^eBlKP!r-Dqi;fO3FhBtsG_=rS105Y59U4Ok9FOR)qNb0dCV#U=7(as4 zB8-PXM@JZ8JOqk20O7#l2sNeh@klHid)A01tlK-L45@oi4>%ank6*%AH0xnwt118h zA8;(9=`xGg!;BS@VmdlV5zUAHJdp=J9{T`;i!?zBnk1r46*9)(Tsq-7HnzO@g1oo@ z%7FtBZA|vg&)vMdMvcb}SHX=7-1s689Ea%Q#|N?PDKwj9W9$AOFar)lG&wgV=}wl~ zf*}D5baa5x(b3V-k%2D!9l)&MC`1=FWFM4#%=4c8A`I*3(1J!s$Km3}bAZMc4+(s+ z1sF9tI*tU;0}ev;moFyG!;r&*Qp3!P4Gf|W{+j+isHEFHZ0wDWj^hwSn@!?b+{r%n z6b{5WPQ;I-LI@uvPT&AUKhn3>&L8hX-E?$V3OYJC{?O$5k0<42%8WTLIQ)>ScaLI5 zSB!A<0nPu?10Q!p^ovJFM@I(>R`A7*6V#xw1qEn49&Q211P34JkT7|a!6J``3BI^- zsuCP~C^Ij{T@OZ`=p7_7ej_Ije0WGX4}L6hG>(Tp$(U#lHS5V89mlRX?r`e-Q8bmX zIUWXw9rW+R-8 zTiocEN0vgg93p|k4PA7|A56EiZoG8SMYf@h$x<|R>Cb5uHZ&o{#`vA(d=RfSG!j4b z6g~Ddk1T5Fs$&dsQ{<43TXUqLNv)7is;>tTQbpiELtnX@KJ?Af^+r_~T=&KXO);k&VCeJc zTzHRvpwfACbkKdFamlb2%aLJljxKbPZn85SKm7dR z;+zwhKmsgi02p9620A)A-uQt62Nyc|lp38!AyO)hjjc5S#}=xrm6Kz|R}1a=Y4spf zDoc-3BdY`)S?HpEpJj&6$P>wf0}IVY6*Zr?6z79%Y+Zq&7RCzRDvT9;4KU6u0D>A^ za9p8_d3z+Ehe1QqyxK@AviRH2FQD<8h(#i!uYiw^?~E+~+K z?&!GjhJy;dYYrhq|1f=hn?k=?^0ZX@AjUm$z#)YuJd4Hnn7qe3MxpB;Ra{l=L9D<5 zg*K>OvJ}!2`g!?5Ssut}%uN|MoX`&}zlD5ts@{{M3HF>>52_~|Oy~#WKZp{-6$FkY z)bU;w8Ll!jv$-D{A>?Mr`oIE*655n~P!=9n`&2gqM-mzj(<95(z0}Lu7H}Y;lMNnj zJxJ*}VmOY_<>boe=qiU1It$uUmHKit-*6P6Hw*rj=Ry$IkAn#PYiunmYm3Y5N8rVG z(S_SESrFhDLKplh2ALqEQ$2t~2>pdzRCSRg(W4ZV0XTwSWJS1)mavSlh?AHim&cw% z%xZYS#R$G|1~`Dw`Z%Q^8l5{sTx_KQqF!*(#f>+CS^xw!j^hV?NKBU7Jg1A36X5Vc zA3r0eRl^8y^q{NEAe~ZN)Z|itg9mJ@NlSJO6}9%V%3NyUU&6lUM=*jfC~$%=ERZJx zjvaKlta~b6EKB;av0R+MYn%l@P@{uG2fSxTh>z4RSrWP}cdsI5Dm7Rw0D>9|;K)H& z{$us{={c7Vya5Le`V4s(Q-n-CZtv02!2^yPG(M2*tHDxKH6LKO4Gge=!v>AYgiaYH zW42V&EWlBN=120VWJW)R6rn+v8#N+^N_C5@3LG*VH55)HoOx06`5K zS)`(mQN7xpH(Z%3HZOzvnTg9JfIwVaJOX5Wye6N8oEZ~VIVkb$D{fS}o=tOVs zseKf~M|SqGv6TfUn$H$f8% zhA5(s9Oc?PkIRReC!*IBa_IJfNB<5YqWzF##ETz}ckm9;yn4!6fBVzol7%7q$-9wv zQx3WE*g~wO5k5jpi>=6cJR$q2y9XW;qRs5XB>Al?r|vO?EC$hLNAI{FlE#$sPr!mL zSP+IaAqzqDK`wi?kZ!F%XAy{ILT_cOnFY-sGsprEP0W{r=#NL1bLt-&3mWp3^H3+3 zm4zSr{Fiqn=W#}tREtIkO{CD0DnV$@Q<#j4XHiN6gf4s@Wel3UN^^eD=6uRMtn%T9 zybqebB)*le(t|e7j0H~#51KiVq%ywO`VRWeS(PdB_2gM}(8%T86ueS}P?j9@QMW4Y zZ|9X995j*>t#cVKWakEL>>cZg(D?e>pbt`-V(cD#L|=m@k2FO+k3Wv}ph2Ub2kx2I z2O(Nw%%IWFar=7|RzHm)gD!{A^lV?r!(=R4u^iejDtK?{uxNVVnfqgo(4&~YqD@vF z)4}pUT;qzS`znReJRV1-w4&Wj>71&tqRB}!<&+S$M_xsvNkpQitSUPHk*SU(6>V(3 z_m9JR{357m-z<3ge@@Z*P&-9Wo~hzuil)TM%g0I8#ZvS-{vQ*g`XIEV=*s1SM(;6EaSB18lXj6m~QPtxda<7Tj;|G4BF+5dFCYo?D z^TaA%Jp>bNjM9}`GRY@$iAK(XZp?ZX~L z4}93_B>Gm7{VaMRBu^#L`dH)1MbjvqG!k9T^-n%f^A8UsdJQRywf2u_EL(SMuF8ic z9ns17u!kWwnTL2bqM4EWvE+T2e2`>B>p>%@*4)^GkX%GBqshyntB5uxM2KG>QRBC9vEvIiA{w}(zE{5)qej(VquPA8%! z8LKYWSRVS%dNC7GCrD~|=r3v>&v+KqOxhiK?{!&=IXmh2N1vveO86p zit~JxJj&2nX7rqjF+|5sh9<66d)Sl4&}53Q6GDU#Qivgd7@8Qu_kU=q{&<2wfG~71 zc1)5q>xK242?PK`KZvp0^M|#{9&>|>Q{!)V4Ye@9xWUB({ssfU_!}qy!;5B85a0`) zT2{}U-NznM<4kJ>-O<5EAb=Oz&X(Cje;1SN?B0L?UFh?q7(J|Nim6F1^rPh7AwG-u zFs3jM2(X1dvoGeSj*b}S5kL!Fu31#BZ_56hEcEAba*%T$3tdL8`{e&qi)Es7h`&ip+Z|Jbw|8o#g8;o=(0!D<__Hpb`=*M(Kb2Nn%RDVL3{W={!_zDqpCv-6?_)idzEHToA zK0?E$wD_7oB1~vkJFN2HGQ}UoOK2-c@aY(`O6W3ETgczz`4n#wI_*4`&94}q<07FS z_C%}5tcpq8Bec<~O`@LvFjH%UE)SzgspeKzYm3lc$cb)wQyy-P65%WPi1Fb=htQ-* zOt=^mGVUpa-cKu}Cn^UG$sja6oX=5-o_gg3LUY|`W<5N$Q1b_!w&kuKzHZ83`k?Jm zdwkrE=|SHXzDq98MEUTbkJhTWG4q`V;|`k0*j#xk&%cK{XnG`35qxC+BIlrqQ95gC z+?3J8L7QScK2}aKet9=&;}6xxZJ9ccbT;UH_hR`liMV!Z&<|3W>`|n~bPWy4XyMMF zjsFUH5E=VTGy=$=%h8AV$D^D#C67fvN+H|U9%V~dG)Xna*!)rVz^WPy;1yj;p+!=1 z$Q2^T6;1YtpZj4mf7gn}M;<%=^2=KEU`3OorM`HjuA*xV$t6ExRMC&a4<_X3qmcYF zspvZolZQNxlHoCqigxlqOf)>iSmvkb^FvJh$oVb$Af{+HkHU|Gq*(EZl%kE)GanDl zSUyP6SNSk9W#>_}as2}yi0=<&Vo|h~$C)zcc|*~hSq?vlABOc|3yO9kQcpI|9wBsnrKqx z&G{>{lIoa=-cpRDI##MPA|~1hdECQ^?Gk+o5qy1jI`lP5wBg}Dc(1Gy&E)aWN4gey zSRG0<;XkH|{FCT?BL3iA!$LSE(WD-wXtB34Rf|Ly6LV%gtH=N#(acJGyK}097xwB^Kh#pc7(RZ6pk9<_NqQwyH$M8MSuhPD> z6r$-tZyXOx5lagpn%IL#p?5WUh-DB>knH0gMT(d7b3t@HOwWG#`})U&1ftmy(;w!~ zqj(<#5N#|EG0*0On2Y?OX{jC$LuRKK^I$(Tlc$?`RAD~o!F_1*H0Nj0jG7tdL!;Y6 zkD1>?E7_eXs$mi->!FQWU8(P%m7YAbDXhotf%<&s@zBORP8Hfge4ORILz^kQzNDpu z`>;bZ?W0H?`ahnK*5O~@Ptu{Ol;Y)$n4CisQ~B3(4^muCIkdi$K`!zjV;-AvXn!n2 zjttSGsvsQt$eS#E^)D@tdqbBua!xuuOg7IAoyYI0Yb*^9TN_#(`N^fBQxwBsK(9nmg=psK!V!vnTvqayH+IiF| zX6X7vbk}Jez{7)Gyw4YgG z_Oe=>Jg(443_Y%}v0{a0^LRW*mP-|y=vku=$3o1Mq(av{md!bDYxl_@n}gWQ0RSZA%1uZQ~r`C^kb1!!DZYBRS_q2Z8;Lo zL+%{^CbXp~<(KY3&ZjV;zt|m?@fTM468itiE{zsdRaHW-+aB7(;!|Rrgyu3>aQ{5? zkW!3lqEBb36ndC^>a~|Y=P=Hpn!J>uu zx;aQpO95EX#P_jI5mkN^ULh1<6X{b5Cl-qgpH=i94e zKA}*6QS>6^@0wyuML@dmyI! zKFAZzME{RpT7pd5iQYX!tN!KXl@KSIJWiP&|7^Ki?Lh%H(S;vH{^#LOZptwr6hIUG z@bf4mraa2k!!Q$lTil7xF~zEWhfn}abQzlm7M_17(esXuGeQ9_(RYl`6@t3C)LlRxm&Y74cpSOl0 z(S;8dKWSVc(FE)HaSvtlh-Py1c9?ti=&vK%kXW(HFWZQ=C+}yCn{g&~jObI;?uqz0 zL+lpO_vasF7zrBJLW*cqlH^G0#Q8Xuh|b5oIaVI&dC&zh24Cgy^DGh|@AAlahmIOC(H$|Djw;C5SeQ4?a}# zz|8s#M8Do)bbA6N8;8ccGwxXUDCgGT&`u=zafkRxJ=Pog_6p&=Ds;tf-Ovvr^1A1Ch%i+f+Pt~U zGWBw$By8wC=iysSF8PBTuc6gy&lcHZPOPjNI_bz2ZI;Kq>!zUmPI^6lQoAI`A*gHx*7VEI=jc~oM9xT3|&%r4@nv<=2SBD-QyHf4u09=v1JTR z9&2T}6ms&+5HU0#_g8z|gW&NYVQ6(fu5$Ka#j${)IkgBC@0-J{@`Wa6)ZL2=i4j9y z=yJFWDaB}Yq1Ec1%|AWvm@O_e7h>!Cc+|e~g@H9kUNiwS7^pUN6W5Ec@(oklgCwYbM^QtG#$fxwvhKLKUC-{ zENPhPcM44kUNQTZriC64DfHVt$dj{CWPYevyI)kD<^8&-SqKSyPbx30>?# zW$chWPH3(|c!zd=*_fFd&=X`5!x^^^D)N`p+gTNba^NK2i3itFm$`87%r;}5BBt3cfpzX_SouZ}Y!InMfL$}WORz&4|JZQ&GI_z{f3owKB#}Tu)4?=X3qyRGLN8-mh#+)A?Q!Kic z&4Wl9`b9Qav{5{yLj~0e@xG!RAMc5)TUw~7E1D4>r_kTS5W#}2=qt)}4Dt4X4=+}< zvY8)VJZJ2Yzlx?(Mf6eX*E1ibicaDy50c45oKsWLZf~0U4?Bdogo;M8r-M(dwiKaL zG%>Twlf=lwbxqNJcZr4O${rdkMU&&6m1b7Nq#!Apc=PT&J|Fck&!gzVqLZjuzW!N7 z(Z&q2lb$s5@bpkLIyrx?_KqH51By0}b_yBsf1(Q$E%)WM^c?EK+INoAt>QOM{ihsYIv#6%la ztkIShwqSJPX^VEYF(Pe~GF=_peU#%g=B6^D{CZfZJyi}vE2{9DW#1k(cW<<^( zI=dK&Xv<@kuok<_TM~vCi0D%m-;Fvca{N&a(S*ock8))(ZVC)B4AEvxi{!o8LNu|X zoOo}tjxmJjJG(_|=t>7QZ-jAz7=vg!dEBa&_~Vee30zqhVhExi=haMkf3$PnEn)=N4jzerP$!Sfyy0=GLLfN%QVjh*fS%hkkGxu9Bsk$0?q3 z=!c~l$A`HgqDBs_&Roi$yNg3p7Q%ea2IXfU8gk-9_-G_)x_ z9{4bQ5X(D4j59Pbe-3dez8Gfc^}Br_(K@m!+t?~CXwY|Y0u*dP0|OMGL4+7(XkBxN zKa8GaJ%4-=gA7e{$kI8k%n!6OhE~e^FL%tB6k9Pgrc>1-*)=t!VQ40A{*kCj_^#ZD z0fv73A(&TdxZLQ2tx)iV)>L@IpTfA>#K!4F98|cA<@wt*?21*m0rx z?IvCzqd zjK0bqbo{VJj4N~@$2H}6seS0N7*^bY@w(Qja|4Z)XXOhe;B0dxxa3{v#t z6)q;nP@-yS*xkXM@Tld_Te9ahXlO1Kt~4{CHUeC8)uk-i6sx>S=I<2m*{s^CV~%r zK6H#F`f-Pi5%t$6e0*}4QHf@*V+QLSCE5;Kp6(y4aypY}JL-JqtscabG;3~{A&Dld zN{L8IV9EM`g>JmgaYB#v@t}`L%-id53x&(P$=@ z>iqFW^n)4GO|iFPu$U2Tk0tUr527SO3@Kp7B3d8C%7xO-KKO|u+W0)2kjcj}nkNx` zc#Y9l7NRjL7-k@%sfZpY%Z`@gTZd?(s)7Z}FG)dShmK(oMJZLZ**%hZ%jC!G|WY zBzDXh@p5ErY$XF8G_=ry4m0-9#GEm{lVg)adW>dZ#v5ASjq?*0l7ty<=u_4l!gYHjpP3nLC`5+uba|{4Vq;4a5i{7( z=4Ky-_CS40cN$vIprHi~8d}hJNPvbGH2xnzV+#tfz!wVGLDJdPy zI78Ee;4#JL?VQKeQb}Nj8CsDP=JjJUmv zPP5;KVMITM^UM%KbCxPbB{Au7Qf-8x&pwjQvO1bSU}(qlFh`l^3!TdJK$FG`tz?-z zEG^$8=|UGY{w0U@3)u%38VMe?+;ui3$rk#GQ=N4G=ZB*fn$KY6d6Yd_=u^hcCqJ;z zL?7hL_{2*Uy+Y?3ts>;^@HDm0(x?s+yu(~JsDdmd$0{*WP3KZWM= zAa`?1ILSSv(8Nf(y_GUsk3y@-J(c!{+z>;df1TQ`MDvj&xvs8f4q|UFY89;LBsFLv1W%@C5j}W$cn|qXRDq0`K4x(9tir(_Ibx&FJAaaWK zf@YU>PCeY%6#Wn4t8DV!AD^Y@qPwTQ|6p>Hq-gTsGHJz4{E$ESDp^N9;&;qDdX+ zG(&7Gy)YMKaH5w;?XTZI`EG8av+Su7y;ov#Qxknl#pE75`plP^==C$-J%;yMEHTkp zsyxWqL9N=#OY~j(`G-k6&wJ1kt*1P;>dymj@qv|SE+;~XKKej^_@m?*LW`4VGIw=rDIa2;*Uu5gWOEH&HT$Okm&OuQiL>(py5ZfsiQx|9<)Tv5$(xnk{;y? zok$}(OCoYXe~_j#BN`us?;m&!Rk>S4morQB2!0;-Iz=>BG2=tZgZx205q+4@kYjo% zKk$Kwc1*fbVlU`xhv+O$mi&{;@-Q+(^ts{Dqx4aTE=%G?h<+z^PiiuYnb#otLC7SR zd92BMEtZ~ zkdODF%l$lznR8Dud}#9}=d-!^kL5iyF-43qcdLgcW%ck`^U$nI&W;!2`V--y)toE( z4YuDaUkZG^NCFS(Y@`xLf8^(hHhRb+Eb?A}dhIT@T z$l(X6!-9-9bdfT~&7pfBKF+YA|G}1~Mzg3s)Se(?4Nd22Nu)R_#6H!~2FplE!pFk^ zb3ly09>ti3W;aEZ&OaXIu@7Q`3^cScKQ1kQck5yD3|+mQ8&8U@ritLm>46(5VMi^eWc|gV(nv6ZXwCol9*UAgX5JQ{# zKMynJocBS>4nam38XZ@QcFk1?GQiMIk6deg|g~qHz!=9f0aC~^7|KBWMWq4WU;-g01iavM*GPuxaj>$rKONY>+tw6>WWN4wyinny>PMwTwtffFk7W$DO8Fz9e zVtF>UEM;J!owP8MeDFHy(G}X#kFL&6F~%Aeh72q8ewNpne9)s_&&C!Q560i90u}m? z9I4_Oxrdgq>O#g8`fNFs#raeukRgTMMX(|-^T*I#rrBbWDhv+;1tzG$f*WCM z(a_=qH6Do;05QlALKnUBbb4nn75xA*g3#sU)Xgo)#uk~$077F@(LeY3u(4&g0~tT) zbLwwO=z->OdtPv1f-k)AK_Bx}R1s|kGJ25Y@xW8(ZWaR>JZO5ZVp5c5{*lGy0vS7K z!jx#m6knk;+t@mjfean=J( zOE3P&|6=6f#TVsokikHP4chE^9Fx5ALWpK#s|Kyi<{odG>Aq@gY}Gh{32xY^QG>6G zE?kSkJQ*~&y5gpkLw0Fw0fCN=jt&}IP=Lmb8&QxkgD(Hrf26@hV!E@j<=oNH@h}-O zXx!rF5sF)=RPJQs!9W-c2Lqu{AP@kf@-}l6000mS7?6cxp-?IlHi`jy*&Y{&hNhGDJ9=(pW_g7n?H|SHiVla zJF3OoAIv)Al%km|NnG02l=<@GV0gk!e9lLb?+&#f#4H!cX57YLLy!@6V}q@{r`cQm3^A1Q(ygPDN%kgMHWG`eW&JuVA_vpFzPfq&n1u>O?;3^wgBD zJE)WGm4IwnAl)WF&#dGl?7TwXs2pZMCo3U(T0sm_&?_*IV#nEmz`7u)ldOd$gH2S@ z=ZCHns{`*2GNTgRvs26a8n$FIINAxQMVbK}lXukMc1;WOAPIamtmB-KoJYDL1sxz$ z(j(QobrnRT0VHQsV%aSzl-ONfXc7m*Baq;%H0fq|l7UrK$UWnP+3^I4+Sybipz6va z6ydRn>@!YWRZYJ6v}YVgne7C{>lqT6cd$Pen+_MEOpauZ%acoD-kKrhY?4dr{Jo+` zO`*kO4%pzUU>Xv_gDZ;Qo@T2x9kC4TJ}RnO$SBF&Z>;XDbKr7i%*nyBxnR?* zV$Mdx@>PItNk=S)^QvO&$y4zKWR`V1X#*!QR(4ot55baK>jLGP%P6XEyIS)YSm)4*26H*OOjq*UE*BZU$!qr%ilj_0G*$3 zR3^nxEn?GtJMjwd_pQDN_*d16^;_@UQsYwm6%;gvFIf=Y${dtX?!|0x_f*hDlbpWb zFt?sSluK|#L=Me@l{S_AU)gNJhp^2nx1Tx_6K>vreOuoE_g<3=R(G?xS}^f9B8oYC zCA#J{exmVEay4|SB^RpFd|$05rD3}hn{&=lq`jr1hBJ3}4!iNtwqXUhctW8wmQbpwK=vhXeSRJ)2aI`MJ6IzXq7C{n& zR1`!w6&Q-JBjX~mutccDj7Ga^aB+=Bgoa=Lo$uuklCcVyLRL>sH<6JA=Gje2M>uC= ziK*qWTz#0%AB%nvOy*A0AuwGrPR!0&1k*6Z_k257qiI6c)T+Q`lX}we1P75FJWnI& z7jsJopd&#Q#qU6ot)?0SKW!VGDiNR<3PMIri@OR2G` zlnbQ<_B0nT;DD4u0l^X+=&%)R7EB6RUsWGI>hT3R;Y#QTa`MDspuw@Y&1I%seIMrG z+Wr`=V#L`moJu{0wxvW1E#(F>7GcL7SVBNuzGdQry&F+tadIAi4FcW$QyKT89Xy9b za2zau!jAg>kH-SCMmAQ-jXUm)^TZLSMy2wdg#lS`d7S0HBY2(p_y!+LkB@08ves;# z?4z4~MBhimc0Q)@I%u!(fqc^+(iJ4c3dl{k?Z-}0f;j>~^pKi1EbhGMFww&fu~s*! z#xTn!whcnn_%@8b>SJG2_g;u|sZ@BR8+5!CRL2_=?2%v~TASTplLwXeKtITOwW;2( zOMKR_#p$Xqp#9SY=-9Cvt2z+z^cW8%&2U3Ds*9^8G2q1-*?Ehtgo8O+81=8}Am_-p zhEIc&Pm-)HQ9~j+B|Uz<>>IfaP=_;?8==Uv&7-SE=vw5*auW)Putgmb`IaS|HQc*4 zCSDZ0N-~MnuiRXWm|@Wu1V&h3xx6|HhN4ep*|$Cspge_c^ZH~{2my-Gm4-NjY;X$f zHIM-$NM#=Eu@wha5{uAo1M^(Oof1&~OcPtUkp((q8}{W^k@xu;`yd5aE`y3yD$8FwwO;FAlTbf41S|eeveJz$CqSFdby8%gJ z6n<2<2=#g)cQPNm&&Q*pL&NhJa&LE~nR zL*d*Od{NkbQf|I3tZoT~0G!mB26q?>P(aptzA~=8c~cwka#JD!+@HKm3XcV=!L3^g z6~Qmj3f_y>0EW#NS!wMjD{krlfS8;<|lNNTB;MuprGPN zhk^sehSG;Jfx;`O4oN`afpVZMf+Cv=)NCjUC^RWZUjPazRJ&2rQk9|N6Sbb90GnqG zbsb6@Dj$jjiZv9XsOf-IpD)La6UA1XqJ2J;5`j=%s8CSrP|Y@~kDBqALqT7*y}5FsW*&IjB;JqJ7aNb5$sWP;5}Tq39WEJ;H$3hW=4dQh1MEbT-J9J6+Ob`kiT!G`7 z5FoZc2$EOJ*s*VcIY;yXoge~s=+qE+GON6m0^|yRm+ecDSne8`iQGJ7r0SXpHGHC! z>((~%kz49ZJ<&blmJV0@lt%7X8Q|mEN-H08!`7)$J-P)>VUt3hp8iol?H(ul4FZAedonyv-vm?XeZ zOBOpJdkt+6yv3_qT;s{>fjvhhl&>wbmN(YWd~@VyUB~Bx)?*sy$qk9#TmCsPOlXD^Q{s#F(1AItG&HMXCsN9Cc+P zf-@&kT1?P@h~yB$IW9i^WPdZc%hqZB@-2q8%}CZ6bm!jzPAiyui{?|nhv({maqn>l zMVOW5s?e4T0}AF9Kl&W1K8?NiFC3fvqONle%L>|61_0if+uxA)Vn}{d37n&O_xXu8 z5XX1=pP#17QWsCyp)AQ>(F>1?;#75K^KTtJ(Y0mB@y`E%xPI$ux=!yQPGM#q9)cdh z5ilBl%A0J55B-7zQk3S4V^igZ10R80YL2oKEX1(LOTJvb6Y`x-U5=utX>%><8un(b z99g-CtWT6yt(0?yH$;Pg8JIo+UX`j<@sgXa8A)kD31z5aFM#tM48(CxfTDta9^%e- z>&e<#n{c(Y zSe`-dxctK|U_>SI({4WE^r4W$>kj$b0QX08;4;3)l9NckVjkwlB`k^nxEZ^VCuHCz z>3yDw^hTV^3?^h_Ww6_0N99r|Fz$gklcH;9Pu`-Iv)zyJut*Ovh{SBS&#lzF%5URV zPAYTBE4*C;t$cs>YY-(#c9Ul`E?l>7su^8mpLBn7y|R~a%?pzlfp@`jh(_2jJ;6@afxyXp4;P%`@Aloq1pZR z-#J>+tcV=Gl1f}zWVa4%QGpQ@dr?19gzs1e$M_wK(^Mi-O|>6~$|hUf33_06uz2n~ zHc3Zt2s2FD_I=xWWll~=A;_P&D0$^Way>_Ts8$>68=`wX(+(4h*oX*8+OvyS9oNy$ z1wt04SP5}Y#y5#|Nn1>JT#aqnIB3c&I8>4pBBURU#On!CnNU~^ceH#SMl)80cDYCu z@4dDNxt1*=AXcAXsjNF)jfGYsq|oDHN_D2Iq3_`kDX$Ir4P=nZmgq#`CT!0bcK8~* zUTKV&HE|;_F-g8?EGu6G*<-=d*jsW;(}y)9kyi+Eh+{l>&$T0GvOTWSdCTB&qw3ry?J_${_NwuV%#PBPVk|?o_mw)C_60_9eR4^IHd&>mQ zSY`w(`>mo6N?**F=*k>rR1q7@nBMa~J_g`^purW@JCp`>!O-`)seFT(yHHW`z?rc z`IVuMK;R>_0K7F3{uFx9;eq_4wOwH}$*|TE4*bp$f9;SwAcx2lSZ_@dViLR*CY4GP zDYS$@nn$dZ-Ztm1vEoQY>KksKM3 zzzAUu9ZCa*IemEYvO2qV;ryC?rU&Nv|Fk9Wc2!~DO7JmdhOQnv=s*>4=n7s>f9Mpk z<+xXleX8(LFM>xPrmAonVXq1|GE#YrMtZydGu*oVis6l+db4J&#e*Bk$4zuQI=C*W zvYpP6PPmEH4Nld>*u?LFx4g-o&@Xoi0mwSIj)xXMDI>aK;N!*GmRqk2Ai0pr9+pxz z9S$`Hj=u(m?D|?3M491g7F3UVS8+S6&CVN|v3rNCM-zyTc}XDo0WP_KRuLH6eIAzm1|szn)VP zTKDND?oKGIkxFO{tc^`!ukkl?Sk^IJt%{b@V?9|M z&9Nf>QOkC@BZnf1hz}ewVZ!AgItF5aHqXOXSUQ`@iSe_|-^x&v3 z&*H!^NLL~XWU$4?-rMSQyC`<5?GH^Gs&Z$+0CJ*ktZ_B-PSXII-9B0i6R^B*L@pZJ z-Na7E3^(ek?h_P1(t0O=EQs+`o3$of6Y%xrVK89^m zRtYf5*nXOTf$ez+=~R+j0z1#;TGUAxN?wg<8+iTp$ufxJkZpG=3RRFCVq%=AVTuhit&oDK9l!+sgHWrZ zz-*ol%=m$x{H+!ODZOLg$_O~`(C5?+pI9lGkFm+`;WG@;Pw{G+g=KZC(Oz_>KkJEM z`q9tBb}Ma|l}nx{Gq5`+7LyW&jk-T`F`T?ZlpNz)F}UeW&a|16?NYt`rU<3M zyCo!(w6%nXe?ytn-^@Oi*RhR{Q4^JlS5Y!lyimq7e6Y zlR3aMO{`VCTET3+J`$)M9rO%ypQO#7q~<0|l$fo%XeM;|TZ2iQ3>(HC3cad%!2R!G z+3d(@nGzIn;m?lOF91ATel@@rbyz1ZYj0#-#KPLEJ7U<=L+ib`tbzy3&ooOvBP!2o zQn5UGZK&ebSr`I`ln`a4DvAb1p!#*-48@<(XaPuI=mfzKHC*Z0|3tn{MzO;y%FI|L z{j;qHXcnna%p?`O@I#AlJtjttvWf5KR&0O|AcoXvsSYWIuE0046YH+nZ^-A&0jW9E zkG7%+n`7TtQbwg(g138hcKalzRm&Pxlr4lXFtuk2wn>-0G-Rh^Y=RR8BE0$1An0i7 zA{tN2Jn1Nsh?e%PnvISa97o4*G45C>4yZ+@s}qy~widrf^;aDwUt&U~1py##7DsTZ zBr86KW2BI%-@Zf*cJpP^}y;r6;!vXybxFz}T!g zBN^dsD#B<|F>IxIG?Wz78@(qTj_jluFp1nIL0)9Cb`Ib#+tSQmQj(WYvCq4E7r2^f zd)Y8wC;&b&&K*(e`JPu8;3|`d4o1d^RliMR7lq1fLpH4lm0AeMNri=^`gD%0nNRUI z1&zo(6+O?iwEI!Bhge7$0l;yyT;wOI(JRsR;YU%oq^%eWoVlJI1N{7yJ3k|p9tw}1 zhBBNy8W3yqp6jZ%Ftlb_NBu?^L9;w85NLcN5Vyt6x&d}VmNuSU*b#upkgB_43f*?( z8nb~>O?`qN7ASdL9;cShvSVWn@ojgCxGkCo2f^3n!vSh86>@`OrKNOaWCTS=aYZ4e zOKje5G!j2=E0{aL*}P_WAIpni0-%s2WAE}69xG#*_OgnXdQu^~4U510HWdQje737d zNVXy;&jOaxmDIJ2m?Iz&KC0JB9S6t?ASXiv=fjC-zi8;C2M3BJ6>vk1G#L`78_3t0 z^lc9BjEPQNUBRo>S>|)%>_GRUNCAx^yPyO^45zw@>e7RAm@9hW-K6Zs3&{jd(>tP_ z6vhb4YT%7g=_L%eorCjw^U2MvuNBJ$Y3XaN0_UIeHE_c6un>$8@ab(77Qmr00nd_V z*0IJEAX7CQ7V8HFoyEoE=&Nwl&K(5dM1uT@VJ~AA^i;yZ5C@~gm_@BnXhwf7BfT1D z3s?A`$0S?NyYD)o?U3PXNm{OMV7F>H0va&mqlAj$GV6h1w4C7*d}^2HDdfUz{xq!> z`nfFuvw-GPL|O~D?ysD60~E{1DKBC-pZur?Tm_aLCidm2tpgTy5%sYE8d{J;r1^FS zh0FU;_IFpJ)Vwo=J9@t5bO3RkQp8kj1{=ACE)phO^7%V0(DM<`;9iNQ*Hq>d#FkR8 z>_0COCzPeRRPX6VIj7j%;SA4W7QOzYBM#py+s?gI(=khr|AmA}H&)%^#l~F*NP!b2 zW`(bJ9V6R|;u(DjMf&Ej#@li`^HCKb?UQSmhZTh7V=ffEATE&0rvL*2LXO*}E8Y7> z97$JF=$p>{AhsXOGtbV^T?(l+g+gfaLqj_O6#mav*t5K;_k z9}-oBrm1ZVl8WgigoehID$OE4m$QV~cIe#*Svcp_#Rra#(m~2)i5f2E=(O5|2%;ge zMWPyirGERWlou`VOPrv$!G*;<@`$ZeIZXZd5%A95qOQu{9M-EBq zB1%pKx;8&{n#V-A!>D`cx4hTHfn&5vu}{^3P5UdQJ~4PvWZC+3VoGcOgmi1m#B zp`EXWbAI98JR<^W0H5G>(`mJ(q$ z;*3`YsslY^|F?|DR|jM;^TO40f2R2$R+LGVHc!6m=xbKtlp@jp+&(?`jd=x6Xka)} zwm1yxCO36pbwI?i-{I=k%D$lXpy=6G_NO_FzPaDV(=xELmFg%2>I7M8W5`N?@t=3k zKv3s^Ox<(?PKd%;En1m$VKH%YsQ6C~b70o-FB#+^L79@^k=;C?lO}BdMcFsLr){q* zzegM27$lZ-W#X7l0izz<%yZbSHng02!A0(p-Iv+82oLNyH8wSOsgh%#Iju53JFW?n z)Ig_C-+949+%n2HZR@UeHE>Kc79P4AGQ);2VF%B>aaBipcbfzTD;Jw~rL{~QKN+kG zLN%yM(_6ty*a!^9G>ii3;6tK1V6djp0WdQ&Gcz+YGcz;Oshsh@*?hBZOh%GYN}(#k zE>kKeQ%WhNlmurcKKvqW_=~xbHA`r-(i=qz9SXt;TC}*$qHc{Ue1IYOv}yhn(+1zU zwm>y%+~_kOUr4yR_|(0bV>(lf4=*IzrwmG%i+e6@2R^!x9E5yl-44o6=svPVV)4O+ zB+*X$QN(4^jV|G13(5W(+&I zPB}})d^I80aRRl%goLZ}m`Z<5cBzApB_xVcpGp6dRFU$B5|T81X&NOgA4y0Ul_qX8 zLPBDQlbu&fFZ!VxK8}!NIq1I;RrOFZMo2ChgHZA!_Ez^t5t6@Ssu(nB4WZN`Y-mS> zguDJ6*Hp!5`-hO=B1Xe^N|1i6>Cx})Ps_JiaN zdTA@i61}PQL4vN_X*;Oeg9PcZ+t<^`mZm;v@lT~Hs0x{qYT(FGW29t}LnI{R0&s*6 z93+2+j%k;tOj|4C^KpaZv~QzNh3>mgim+8+Q5HEw^1}v6GVY!jyVr~98GO_rLF1Mb zakB2%kw&%xA2dk%9Ira1PZ43$VZ*h^34F{TDO8$P*AX5<|1}E$4?bj&aH{kry%*Mm zPA4w1$T5<1taX3jBL)e+TBc)##_YLnIF1^3Gq8Ao20}to7REzDx;TdxfG&K%Ao0Tq zB~!}ODUK*#kt9zEnVOSczLWWahbt0n`@>>>zRRpzkr+Hwl9sOdq=l?VEE&^fk6xl` zMXN}>%Zf>y+gR{WMY4v{Zzuj4L&}MwM=Fw4lls~a^(05xg^nGi1RkhJ@^R0>G-GAE zN`!5sMh>(l0*_N9rjRosQg(LPA19px{9Y<)UYNTcxphZP8;C$sgBb>L(R1M4mxoBnulmIB?^9;KpIWd59wM zRgwZ{K=tlbt{FJdv0!`kRFd z=Ie48JUWq-Mkb+@hOl&D2ha!!85z0Z$#`TU>BhWceyEnqIwZun2nh)Z*)tDJB>QIDXj0Uks91xO zyMo6hl9cMoig|-s7Lz5CEr#dJSC2MY9TGe$k(6TF*T~CRFTDtxT?RZTk(kycO;>1l zj~Op^<9s011w1B^9E7LW9-EC~jWi2{pvD0_B$1#M=W>c-YqAcHNF>?iQQ4cKa{i(o zkVw!;#iW;fwpo`w9+9xYKI5GX)f*-e-t=%p()E>=v%2`YU7CPByQKorjNV5tQCM(xc$znQ8d5w;q3P4K`&QZ6y_EZ(y^ZE)C7J0GY(NQjPf1dlr;jm2jQQTcbh zPJ)LWk~GTLR%s`l^5s#7WcxB5HoMG%jES(-(4#|=iX*CY>P_-ZWP=MJc+4R&J~Us+ zrp~ih4jvwHNVbv5WNsZfqTm6C4cfKJx!>wm;B@s`ahZ_=OO80&mS2`$h z(3qhkiR?&pTtEXixJb_6(S`)k9cGn;4yU4V@L)rtC*?VXeNa*3tr~c&Au(k;i3*b^ z*OWp+XkbBskdToSoRJiq85p3zjKkugh9vKiNxCK_L!0X0*doVCLxP&P;4z|Mp&dIu zfCU9|>^OCT2O1J9L#(<89eTO6MNz@y4CUx(r9I*2y}-i^NfvgKDR+~4y7B{$G9>;* z@0iSUe8ekcNX!>Xm>DSDZ7S}UknLaNB;k{ABLnAKdU`y`P7-fkf8JW zLCL@C%zq(ytkNfs9bF%JAu(oDrBGf!+Abu098V86N@%SL7m||bQ*&c~zMkGfqPzv2 z={{`wDz%WPSv1tAd%tXFAz}7(_LLTNYtxbzU0{I)7W7t ztdJ}+e#y0S&{4YPi6I3JD@iM33&vCxj8$B6v(8 z(MzjURMXg>nFBHi9#Tj;Pcd7M<+Zc97zZ9vNKTeV$DAvLLW1fSOA%Rdvx*4Yjl?VP zctX;9%H>%uu6HLSSLj{++0F14x$tO0awvO^J-@+XiwZCy>3ZkW`&CQEr%V46R!X}@GwH+d#02b z87{)=A|#8YT%|_H7)Sp^NZJ_6zcN+!n#f}aNnz(xlY0ziI>I^xhrT0=gtR<%kd#WAS)GihQhjug7)yxy?Jx^dvEq?~1l=-UIdz$+ zJ92^?S=2}m93-ZObxpb3WcIAb4U)p8=-oMI4;v(P%FE1eGRaS&2pemWkVg%Y^Tp1e zLd>SMPlF^~X-6j2*(zqtV+M(z*TY%Rl!pwGQ*REfw$UR72_Hjxk8Cf(H9TOD{G%${ zseE$3iiW@duSm+tgNi3)%yK>(z!iyOCRIc8Q<%@UBEfy+s{|J@mtAssow|3(>*=s7TNem0wflY=0921~^6H=J+H( z*7~1l=(s=@SvZXg7{C9Da>Gb(R2*IqzGfL!2qPV zf`)(DH}ydq0lBTs27?9(*;LE4r6!*QV+Ngg5HhG37&17CC9UB#1>F*i7<8jP%yncK zF!Hr3Cm-BTDnWz66~$2wQ0STE+&@Tw+r5GuuU zv1H7nxwTSK+)2ovOBefGjp7bkzbw6{sPKzoPowU$r9)A!6W#oj^38mpK;^vmVf@6= zgyj@cF9pvfPaxK{mFrUd3Aq!OS-9W+5ASH=1t*e5FGS5Zk6V?SNV?mK4`Iod-0g9!f; zZ@jQXV&3VTUPQ~uoI%XuMJ1BNUF^)4UPkvDyr4wFs5R}e)Qg_e6xw((i6qhSb6df~ zlTM%Dg(Q-~$&nT0-$=_pea@|VWfCWgl$BN96M^H9b0H| zBgZ*^@rdLKa%o2-=bXEmWZhj~6Je_{V#7@Eq7liPeJNZ_IebtZ4jVV>YP?`XqK>v$ zX~f4*N)=%{DT_2xO7LP42_`MmB@v?{k~UN}d3qL|^OK0=5_A31TtZGGh)CMlqcwF@ zhe#A_52rF`b>v7xB&FR8oo+p>s1Qj}LzC7UjS$JAas^in8-405a^%or5T>j_#}foE z1d-TTHR$*$JO)h$BFX#L#O5i@GA1ArbC9JcO{u*49};wWHyhmzzo{`|<2>-f4~e3A zVn&N3Ig%@Q=`YrD}=?gL>f2Q5t ztZxWjj3M!a4#JXurtu0d#E_WPVi3(xx^vjA@FENe^Zl#aKW-iK3os<6ldFzdtF$j9 zmhG5a@c16n$yIpah2*SNT4pOnQxMg-d(nl&v|Txh=Y56e+&C<#QC@H%!DVYx2i+f1 zcM&$EBZtV2Efx?GQeJE!VMAjG`OUe=QANNDEhJ{`xrNVp7Lv0D6-$QJcS~X+In61H z-q|T4yh6e!?{HSiRQwICkod7zW6rdFdQ(+MRI}I^%YG^(r{A8L5~eP+X$r|#GNuxm zl|qG$6po)U^m~t`7)2rRyDG;i?O{7L33vg8#4;D5+@xOamYUot)pO8_#3vg%XnQgju%Eo0D8V z2}xQmwPW@R5)!;+M$g5ZF=M|tLXxVUZ~ib^CKn?lRm`E%$-GbU)FLFj$TpqnlY47O zgv2$`_7>FCxm+)Xkd&b__mlSD@Ina5mt*3-H^-Dr3PRFmlG~d303o?6=b%dIkQ!_L zAUWt5L`|E{s0{faF(+-7KkM0Sp4srC2gw^$R@lp*S^M%JG3x!eyk?o2a|g+KaVhtD zj#BFCATeFY*=M_y*~ulm$U)+W^3f_frO~*&z(K<4P*HCm<^DrsMqOYAjTvQu88l{8 z1!mBgQ52X#V@3g>4KHqxcv({Of?rCSV^af%pXEcmutAc{X&vQx;ifFaiy9=T&=GDq z9I;WB9DqQ)ph4p3OAqR`2wuz}Nr;H-iu407WRURDlZFuw-?s5HI}W^vL2{VNNp{If zGNRK^cmac?ym~4;=GZF|<@zm`$FvtdT#>xb8ndjDcncq`NKAdrC*zjx?d2zYup&8S z1yA{_M0Z(c&=^Tus37esl0W!eB{4crD4EEJLx5G0bfv?o@YnW9hxsEFiC6M2U1|lc zqi=kmBH7Z4MT=KIG5aYJKkMn2%>AIL7GXicao2(mQzWX%>5W-aiX`nKqk78zZ9zkd z1XD7t^zKzhb0d6=A~B6e?afJLiOEEfm`7>3AU$jCgUy1EP$Y)2RJljx?NVY9HU!1d zgWhhJ>@@GlkweEPlG1j%ptnt)D6CwWW&6>Iq!et&g4*VwN<2;^ThNp##}j5An+RJL zADc+<)2C%k3Av?%$~2KUnlf(8$qKF-GrPn`CX!Q!(RtqE+MJYE>oAdIYDIl^(rf@| z@NtPGb+Jh-rBIm^AC^eiFmo}4lB4YGR7!kQB0-Cl8r>;a3UY;nSmMIQ4#%-MMtT>u z9`xGIVkVKClKAD3^DC3NBofRvdWySG`EwPC1Qmnnc-fFh){!B8y7R$e|8;vTswtBbk(^7Xlev56O;uL-Kty7R5SHvu zR(;qHksLlN_2q3;5Mo0l=H}c`R@oFj3X!B#>QtTT+PywIf)7F@hh7n(HH45GD}zXo zUn`Y8a%WUD2_J$;mQhMZXo*TD&qBgSAd*Zsl(zP0%&DQp7C1a*adNr%07PPiElb)W zJ*Yq8J8G2a`1nJjXZ$I#Su6Ng*t+=eL*o0{mU?m^vyqQJBvz$ZUP6oKOPv}yP|@Op z4++xc)A-*Anc`Rg<_e$^AA3j&N~RR-bLI zh5=v>A9+arQc`P9=?u+KgssNss8JYzCUS7N4zr7g#8A`PPEWc+^61OnjLoJy$PP)> zzL|3{k8wQaKpm1Z-$ymsK@i}<2OW}DGv75#OD)5jfB2X~l9DRBx#Q&yA96?#O4a0> z&TFHyjzglQ92bP;(3F>-L1V@Y8i;cEfJ1WS(P*X>mb7ahZ%7^$!%34liR_)TNH!dR zBA|hDL*nR*TARf3j@4cGXhULd8<{232B9g;hQwS=X|qy{*~Gbq1hHwfGo6ro*=gZJ z4avKmbn5?=pDd*zF}!~$O=iJ_zeM;zLsF6&w5Hh8+!#MY!X|YOOD8hsAmc22m?25Y ze5cfW+|>4ENKmy&kFe62&tu5&&iF@dUG?i%xEl;te%q+DmA4N$^NG6 zVvcp*cqx%Emzf=ud@&}WdrB#fA&Ermjyas(TvtLN3IJMACa*Mk{yqt3V>j zF0I$bDCss@6Jk6fDV5ikFkP}KlpK*{nW9C-5M?<=jYt%=eL}0Ipq=7Mh{1@&N*XG= zREnQWWf2wxjr&>`7kG8vO;=}*hVm_vfL_={}Nl2J=JBxU>XkzW@5^MzE1 z5r@R|Dwo+m>L#m73Nhf2D6%osrmPF0ZyGabbQdw+kf3K4YIn-?YK|FVxFJDXhAQ!v zGrhcSSL_BC6{8JFqDfk)Zl%nl#Df@YND85I3NrGO*hPnq90%_SG1icrGM;nj$uLqi zSWut>9Y|UYiKbUWgqjlbo~xmF76?I&6vRkFQcQAe#D>Z}k>*e%#6UyBDA76Q-tfDj zjd6y=&LQSTiBXG5Z-(TGF{M$P3k&X-Awfk`LCsFT%#O&Abe@7x?H3wDlCl{Qa-v3h z(ug4`L&Qi;Z7)wt7?Ss1T|-5`tT6^dvgeJHx#Gt?X}^#pHsxANDn0tSUPzMbnfbXc zE_JjEiAj8n=|!c*oT6Mvtd8$o_L?&)-9nP*%_O^2Yp@=*keITbgHG9XF^pMAY!9M> zR(H>4h=rt-WDu7xh-Rzs3JJfj;bMN(Fs8FYqJ`0po^q;?v{@EZy0kXEQz5BEYuHtv z(j&boB%6KSByQx7Wu%aNn@_BU6E_)K6p}XP^rAhceet1?e8Kz1b61Xv3j{HqkZ>oY znx4Oy6ulD?)I*(oYfL%sHz9fRR43mM6Ot}vpS)G7cXJ5|vngAil$Oa%35mMdg9^1$ z5)w9x?lYx9NJ!E$jko+cq*mt$$<^Pt+0~S`Bx8ic)SkUh#*wqvi;$doH*GX?6H0U< zB$Zm`W#wj1;WC7zw~R@Y#?#Zd2qEDwSh&eiuHOeCQG9MJl_i~gZy+S=Z;$@w%(!x6 z=}k+UmF*UNC%C)KptgCxtEZPzcCY?22_dDVAoH&zZI?;tt&yM^nR@q>itbG^t0$#N?HbdKg^m)0OT<4KFF z%WT4@L2`d;SNV9xm_dSDj(iC1Ena5~86@79Z|}veOKHZ4L1G$Ro72tc5njfCLBhRn ze803JJO*Epp#8qomEW#N{tg$lO}ejRT9LfnQSVCQsXVhHIr(o6&ExW^T}6Tllcrkg z)mEw^K~rcL5wde_mx?6M?Yr65!Yy{FNX(n%E$O6t@^p%XOVTdnhVSSgQzYC5dGdY3 zZ^@J*LH4AjBs}~Dp^+j{bXu?+V!d87ilhydywo%7uPllrjh0=%FJf&CMdD|vXtC66 z{RBm##8MdR|=l*s^vsdyxof1+n~ap zHj&g~sWav=llKZk6UCGfb(yidcPq=VOF50zC39e8B4OJrRYS+F%eqJ@sG&s-5x~Gi zat2MG8Aa&yTxzqlg$i7Y9D9j`jd!b}y73<1xjzktBodU@sjz%?xuzz-6<|anxm&lAb;k>B78sC7(jw=ty0%9ods6#- zjrTWRf#Hbc7&UdDhZ>O}gjcA35_0FQE?kEW*BdYxksR{Pf)3ioD(fO_b-4z{A{22C zBM}D!5$$C=X)63(Dh~m}5QPd>akN^~`v8nW7=E?##%`bi5Y}SwUoJYvFDg>gsEQ+#Dk%Y@4@p5o3AHTaL8g>+1PneTb+#0`mc+P+ zB!5w#LxojP;i3o_dPq{Wx1ro}dh#6o03#1cDNdt^7M0N-qz4#yNRSnEd;R3dRN=x0 z7%o zCEFY^m`7TClfN-nY+*3^cxL__1cokUbL)%B-&MX)@2TF5wz*X?UNDqaf6v*TKV7&+ zMd|%0qB&+yjADNx=ER^kUxoanM%tzH{lNEra|TWH8T^s zOeHpXmcR&)YcVDmN>EK`nO>6MRd2Mr(iA!*v^6rbLGuN@&Jm8Ggvmb-FC$Y%ILL-> z4N4eAD3%Ih%+0dp8DS8C5$beaSuc&j7{VE2&nsq+;Sxd_-#4{u(qmZ=3SB2IeEgtp zDiHLfz5e@bEA<03rcC*Dvu>dej?>dl+DvF)JvhbB{2LfNC|7kyt(N&3#txKC>M5v6 z2flso%_(&ICkN#VpQV&=a9!A3e-)YH4HCnp5OVr1X*>oPHt@_VXzH^ID;q`)dXKpc zXGjn_j#vuv{ZD&lNNhXRN*&&9<}1S)pL4dh*~oB7cd`8>q~-p{kQ_hzdbrfYkeEI6 zX3m#|!O==7Zt3^uc`zi7x+baZ8fu*{BzRUH9eJs}^zVf~Q%;j5F4)N3g#>YDnH8hQ zbGXoEl5u-F=wxjnNuCU6YeAC}9YhEJ+*-4cZ27~?Qs!U*6;#!1cBQ)I3Q46`l<>Hf zODb)Jv`3x>7gZri=;a69QIiT&sgV8?AG_b=v%gbF?DT9;^2S0qY)qgF9chaU%%Cx2 z28|hAqzTZNF#`(<%&^wNZ{QJRNFga}{<#ZJGH4TJL?NkCbybS(QA33?ppaNubllZ% zXU$|hp|Oy+R`X7cF|Tcpv!%K`O@^g~+m&hIH?TM%aZg#M%cU{Yt#NFzxDSCGMk18|>T3)MRXKs)YgaoCNG|iiX ziinX6AS7wj&HJwxUW8DM96M@^_zBQvVDW&E5P!f7Wc(m`Q#F&&wjFR?$nZgeC3&AR z$G+QSDi9K)1q%|&aiazcWb_~aVL+b0Io!ul4Prjd=|4vf9T<2W9S8||9bANjXfdKP zc#!NdbT+@4%*oO+c95jBK9+DDlT(ch9VBaGH{Tb z%}>jR-6@q*#tjnZM+mpk^YQ4~Ai>QyB%=liddpKaRi(Bt@_+|q&>%ruj(HTBgN%}y zL1GH^`J6tTcDh~Y*kRT>(heIbLk1lKlmUZR;8BCz(MiuyF5rqpt<7PUM%aqva53&@ zs#UPOLPA19MnG7Rpw&uln3vJ5mI7IYN&rL^Ngry&&AMcY{vhwA9j)zfS4jdXSuYdr$1+@Af-sq=^Hkm zzs=mK^8iAM1XJy#PsbcYc?V<^No#uHEU8pNV^Jigs3NZ_Ehd13BI#m!jH;`-tu*%r z5KtuM)_8NKgT`J}?F=BFNcxoGeU8l-KcOcQHvOkGpE@NBAe~5_vAnT6={b=crgPr0 z?a-I2O`zm|PVXL5R8|v-DF|KiJux4KqiqW*OhkmcN{<@ zk<@3wJqaB@a%UGnB9Zv)3tPf$GhFx}jYz(%bt}IL;$jg#IRR6=ClkaV~!#c z)~imYOy5bUIuXg6LFS}4cyf=~@nvB*djnvnyIdr5xk{h#?Zc%Qcj$x(}vt zpx6PV5J_Tc!zNE#mibvqf$!J=(*cAK$@(K>cg!PxvuCxqp#uUnbmSOBaFmk(-bN7_e(Lqd=hAd-AT)ccLRGf@&@3{YT3NXQ6{ z88~d3BVkAERQip_#vbIU}#!lDh zLdOm|fXpHBQ>Zmj)}DmAZRki_sGvrU9dbw#D(**n46@tP93lsYCmn?aNE{NA*~t9< znC-X2Avx*fown^Z_Szc~-gC`MHY?Ai5&+_cBvYw(o`Sj^``eHtH0}rCDVWIaY)H=E zj5#Kit-r1ZfUF@&&52Jzs;>N4AZkcflh0h?ENMtq6CFdO-{_5rhGg3qDw?|Uwa-Wn zEzZu6TvDt<$Cvf7kq8^>6^I#<(}kaP+nmR$N?JkTE2M5X-t{o+UaHL(*%uQ_0dP42j>`aqGf&iW9;C z2pAIcT9|G!J?Yzuu&oe4zK|?(x#!$e%ul%pn-`M8ta8w<6pi7~v4!bEQcNp^sMghbM$s12p)XTj8->Q(X`s+DNH4(N10tginbUJliLS0bd6q0jS zSjkps%p;4iu?+!43W*u=Pw4Ozy?qvb!^TM{3Q2RCVq97W6cS@KQ-%M8q#UVs>hg|9 z)vX60PDtMF5LfFznPhzfc@q-U=*?*>tHn$U8zLjegydMGZuH%E3@TOxkR>E%>+LJ) zR(GX|u$}E`VIwIaVNQlp*;jL&-4Q^NkSI2Lp~m!##;gVb1PKW;X!xw9J6%<0Zgeq% zKL9yGvgl9JKB-h6SuTPYA*sS#jmBCxkb>hoMj|kS#s(Io2+4VMEYr43grrzvbA%A* zqBUzo02xAJs(+IESkEdlX8}YANoy*pG*JtmvnU8jGXIB7%~#8x1wxXS98;Uow)8(N zfczlIFLv!JCbf!@4-)MvJj)0DoF(l+f(9+Z_jK*2%YpD9(JKE+$0Sp%O0@>a4iaOs z`ye-SX4G3c0HTA0ACv}>~0HHymuIJPDIi6IgSPCFB zNEQzf(&Xs<%HaV-28k*z*P6q&s7uxXBnHVTDqC+lq(%UNL9$8JP#)${P4^?Xh8V9% zT#*(u+Xh2IPGDoi6-inrM%J8p&D*U=Y)$_h`b?}y{;(KD#gOgvn^h!^g>yUm{SR$X zMN%dc@7v5UI(jM+?J8+I)#@i+&Y%$zlBh@$7BckL2-oznK*TsjQcxCy%8*mCljesQ zrbw)ml50%Q^AMvH$tHt)h+3EDW|0ts6v;n&8vMlLevNjBF^XhOo#`$~Q%PN%4lzWL z)KNUEruaDf6^uiSP$am=cQ)NQ-(|aiBC)(yQ_Fam)jfj-78ICqh8Ukna?>Nn+QY?4 zzoHjncp`B>nRqm}4H?!98avX+NGB3D#g5L_dcwlvL}EeKka3b zbwOEN6N$S9j%28WQD?JQAPxpm6a+ySgoEw^LlXc101OtCMq|NfKqBb!-T@Q<1WYz8 zUOYA&BpeuviQ)h;6bJHRDRqb@GsV?LEO6dOGaF?z*6Nu)xx)>s}T85PPc zhj3v*zLTuW8|jPA>w-6QpB11Ui9v(vfiu(X!$Sz#1O|=hs8~~TV9(9iH(z;&K&~6y z3sMo@)VAlFIgk19LV8S@O+)23?POB5{UZQ0uHXHCvhCm4%1SLC2nhfe*9JBNnL|>J z@td(K{(gX45Ygk58age%}9oY+OKb2Udt`{nLF=eBU+$fX;)x%lx=S=@2VgigU}B2V4KXWQNyuPRTu0Z^=U}i zX)W2l|KmIgheivEOhCt7^R_3qm&D)lDqN-_9!>8G#8d)I<6MN@zi>3TaNzh zFCaK))p%Bc(if|F z8g?*TQax>})deaZzW?Im*n=4mb^QHs`o_Ck!{@R@Z7Z9dfgxdxSs&5Brnj?@I8~6O zZm&_cC>H!=T@};0xe#f61dE=<%e%X-*7!e<1K$0pk847#2UB+1s!8BK4o4Or;W8q1 zS7E|?%^5sK%1t;5Wl@x+dMLX#Dl;vC{*wphzp8aE9X3brTMh>$EhmT!M7=_Y+YmpY zE9?(4w=Zl3w2u>s6dy#=eL*Ov*7RoEflu|jy?*hx6TsF6^|bg;&fy>mX+4~t1$vR(Fd&oeLJ-Hd*RF#|o(JmgSh2O8r`CiSlX$2usjiYZ1W zk?o2p)QgA23mP!!V-yWpWK-e)fI=q_APls$H^e}zTYNvITuUxO@entg?|=!b)?C^D z%T&DK$(gyd&=0B*mHhft6AeI|h$2rH7#x7aM|_aRROO^@KycgUOZiZImyj{qGLJlJ zMeKqaDRlHc{qEduvGpePZNQe5TGFM77S?wOgodcRfhyW*aLTtdVNJ$HOK;OU$){VE zsXV3)7|%vTAemE!Ezit}?iYY?RPNW8p{lsx|Da^`RDSRfEH7+hHe>rGJE`xcG1cYhY_LZp%y`+Ha8tAafO^zQl5WXh+x??l5#HcF4XGCoRwj~=wG@-);M2a* z(l|w<7vu?iBK!u4V{%kbUa|t`EOMjP^e!chop)N0SU1q(YTq>JpJsp|?5jvVH3o%& zii6#vFm7P(eIGp5v+7_t=LxZp=x5^mDd!!AWVD7vXT_%(%Dg7ivhUKDIqqRc6@p(f z50d?V*M4nNTLc|e0?{WBTVr=ch$;0V7mmt%>h_?ZmoJ|oE+qa-Gf{Bj#uZ=UsuG^Kw5XmJqZ?#NHY7`^wSy!>CjP{Bqr8c7lpxvz9FPP zehbrK23kMe5eA3_%7#g75Uo7Far)0HM%4X|wokuN^iw4)1)BV zeQlSw%s_5|{Gj&Yz0_h3lUh*)9i6ccFX+ZxmX?{X+ra87^+GHCsl%T&waZDlg}MdNWZYij6N>b1+#B${j*OlF6hAg;g1aGXM+FVuQaL$OY%+vmrTwt8^Kij>%CHq@piz z6jMyNDY@ydvD1nYulQE-*8yfnE2sd)?h??YOP8|0V0S^T0!-H0dl&jI9D^IF(z(JW z4V-k71jUpfC{!Yg=6ii|wn8-t%>o2T5VVWh+mp)oQY(QzGtol93^lTZo2y0txx83w zl`u|(EbX~tQ64f13#$P%P1@a*L%NcL5U{8x?ocmmt_B!$#q_4G<&Tg7L>RaV=T(T1 zaSYXs=nyWk4y*0vDfu%-6qW6&WmFD#Q%MzAYJR1|EZaV`M8Hmgoq*7ml6dwRxSzck zgCASZ{sP#-T{^3^otbSN0yq=QyfakRTOa}C)2Cv`dI~cW0wcxt0Fq?NKh#Rs)de1B zPhDHgi23~CoTKPHP3+i!>i2>uFBlb?gG6egcCFeNF zpka&Hs4U2}*-R|_{&T4|b4E687ikW^3JhYy7Q)W3d4Hfp$D$G-k|bWt8K>z+v+e)b zANo8Cy;N9g2!(C+CesLNB*I}#)_HTzPJ>7(Bn5F^ z&5%b*8KZuI@u3~DU29^0mwFvH0dehg&i*7*v2=4`|O8SJJ?q$ z_9KkTo!B#!EMhe3GGg_Ida{-W?K3luw18}9VDjI|Z{ zvSmE`Db92e&dW=ZZT}5W3tDHBBK?PNuSG9*yMB&qDN@i4gQOFD2M>pGbdUX-;vV`8 z3PI-=+rKiJY${oOFzq;s;_O7la>woymzWUMASvDMT;_770fxkWN`z*YmpDB+O>YYe zeJC#_lx%q!yr8FSmy(${iIiP;{+>^bEVoz>Ed_~NVW6LZcxsSz($8O0CMmCa1G*b> z?spxBK)X}hh#B(x;OXyP^Yb;FX6_sCs%=X)oJ2s*o9a4~H(B34%1TxXL@~M5ipjL& z`d`qz(qwvJ-GYeTy(-;JZ%g(wYmt?>MnMp14-qOPIk~rEK9eE>D(NAthrKl?jHMga z>Nh&M6Fz5%B0QMpXz^I!N6W;)k&_2TCWiyuB6D+;J}XS5XgXG}tv$}^FopjBF!C*hXLYN=Q1lp#rO>!*R7zCx&6A=s(ZxLQ>cjPfERN`xtRHHQL zqfDaK#ePnWx=W&r4N0_fl-#YmIb3vOhdTS1Kh6ukMQL7(E>`lG?)?UCV}WU0si z)@=${Y0UG^C$sL!ylC37*L}VX>%3>OtDdZj!aFv1zib1dcaxsYq)MYMF&R5SNxOzw zMWK!O28j@->1k6>?^8B(ToN3gg$ksP=$fdTqK6cWW>fu{?bB;_AU8kVco;s``zUEP zq`A(4!aU`CNe$GJ8YWK!5!`g=IO3flUB<`jm;54>_s5Wxxbr(yPQ3PT2DUt#Zcx2W z3wC~LdhDhN_H8TKQ)j`?-=Xf#sM;)o9&tWHKIG4fv8b(S;ERywm__Z}OkbodHSa?G zDTL!-88IYuu}LGS{31ykg5xA-k!1Z^tWw}vKFAo$;VNQ4GiB-ucT&$ zU{ib;`22*o+{{1Mq@;C-qEr3bqNzO^{cyb%6zSyOIL4-rqEB5v9;`eW7&lVUQS5*d zavF5R|04R5oqf;|kOVChpLmJm6dUqV)RC+d$v=;eB~(|D>R^c$Jq(_gT)mE@9Tn6K z2w+p?PjrAUHA@mLxM!-lSOd%(pO8FBPN?%!6#WJxh^nATD12t%F>Ppys)VTMgQ_8; zD*F1IFN}Gu+{#{B3pQ6R1~CB?YxQ%53kO)TyG-vP0q$Hbox(GWg*Q6bR7M3bU@Z5P zPo3_I7TAojFu58EM7j7gI>-8}V5oPQofO&F`L=Xir0mx>$a2o6C=Q|F;$O9*BAw6i z*bIo!R~$4&)f-{g;+uLGh1Xn+!Z@*wi$czY*Yb}5b@-ont!t*1!gQ@5Qm!|}js4ya4!?T7uITiu z<=Vt`JdE}Mlj&>36Ym7D5&FL>)a)>7Eo`QE)g6$`rw>S%*!;_*&!I}N2^hXVi=DF{ zi4U}_&s%ESU4U~qU_=hwGCii46C^67-awJaO@PpGln;P{z!S)|%uMiJE1MrU%!868 zmiTjNlz}GVnqQ$EslYv;MZZYpWIqxYJb!i^;A*g|><1n+`|nh^=6+Z|5C?%3Gq9Lx zIUr5@pM`=uP;^XAphs~4Fn(+bx+@dV2NM`@eqJnS7)`i47SvfiVD9n*xD`@L zpnvH_&~#lW_GgRIIr*ae4{WHbA57p+N}40hkieK&YS@&3H^|b|LXl5$Kfvjs5(lB1~7{s&|;3!ino}t|u&3=Rf%`w}68~}h35X3Qw zrGeEZf55L>^T4^k$#o@%%2l;*{}jK4{C1|%Y-O+gWxxb7>;a2j5C__$wgIOjq(ooM z0-CzBn+p&{WQ#!hak&OL`_nc>c>a_6-ty6c$S=M+A|#Y!I|$syQH}zDG849WKtahu z6-92q_?fOYw>hv4h#Db2#Hj;XLGF(&%HvViVnE}rGJn(Tcl7?)|AYE-cdX72=*8;n zV%1+a9Kp#HKOnP5%D#v3pf33^IM^?s(+-4~D}#gH@IvD*+=1v2#elo3Q>!mkzycCH z!55l9R;xCD6m6ho}W`|1U zxs!m*jeWv#LP9+v=))OBt5OQ!#=z2~e?uF~7`p&`ze6 zR{EnrjVhtEfvVDh8M#&)2XIS`Mwd()WW(FMt#Y%ditp9+B`?~72-R1f_hfv9(6NTl zqM+LYdpfx@^b-z1hY%V`SCM_QqTt)Yh`>ODPdF!9@b&RQx>lZ%*OC0-@Nhwk(9~BB zU;^@mq2Yc@&nhZS-KoDh1Kz+wrCT&{*}3qaTpdR<5#1)mqYC*`zX=4wscV~ra!GsI zN(@U-@9As|nokz_v+iqS-102^z`n#n87kA5Lj}GfJQZ9kA!ysVa{6Y(@xl6%Tl^dR zCuKC)zk!xD5TldWU_0mDwv8^3mHHK4w!Ynk#^5mXoXV~+u2{^_Vee|mRE*=qz^x3v zrxm}Ygm1-W0$+##F!!;;JlR-OsJq9bDe&DQtAewMP`;h6RJB-Zz}6(vr7pF%1_?!a zKI4MHv2akHM)c%|LX<8!@C-jnY74n@MH)d>LN2;P#l%F;g6=~fq=ea|z6QaH3w1MA z9>6ZJ3AjE?`O(p$TwOUt_}bbN7Zs!AUC9z8tqZ$iRy$lP%8%q3a z7s^5sEv*Np`d$P8j)n(&+_*S_LJM8P!KdCZd{k`fvuZ?SFoIm$*`=i8MDZApC`#aJ zh^w!(qOA5+EL(Y_;uwbfEJEy>Oo`@4fC0RoG%2%!g(r@HTGVBmmdM12A$qJcV{~xP z__%%TR6+C+DBuYMzGe4i#V8>m@DpGAEZ+pPctio!rmP-1*F9?Z~jC zNBG09sD<%~E?PX!&tQ%8u-e4X?+0vlSBd=imX5nDvfpwFrc`F5L>_%u>jVc#S0-=- zqbbR(m$n4XLq)OB2z0aGjB;!bd2y-M>rVBcbUeGLRO9d^xq`7Pra)cC0qJ!tmYHLE zR{hwptZWxc?N;g( zf-~N0@26e~o4D??+Fj+z0I7^sOxtlqs(>KJ6qf)zD=?S`mg@%YotqaO0ThQ@D#|q3 z)VXllYJz=)bN@O&3G%6MwK2Z~RE2w*wv5^=TGeO2c4iscOy|@=!N|sd_FMf-%J(cq z6@6vkzT0KLE%@H{ZArK@c-l5t#EGHgK*C;~!8{o@jK91#9gf;yYKmZzn-BKK=^^Pn z_A`%@;dJbo+o~bI#_H54?FU9&F!VW0-XwLZth#6(tm{@Od#4Z~^%lt|i{gLh3gDCy zxTeldLSe`~ycFtsNt0z_SoR+mjAo{oxPUF@6kSDY(e1(mUaqX+Aq6y4k`p0LF+l~S z@vxe&18rNYm*vtyCnl}TN`|dao13)oFL)=zne|E+tUZX2E>diKOI{5P_jV$d{0)0K zR<6J{>LytOVZ&YY06kq01`FrWkbTk4#I~p?L2iSLE-xq>?t)@6t2VBIk|6{{y1?QJ zlk>F>ZdVdIcdNSi+G9_^LX-B7!C=&9u88UXfLL%L@6Xc);gsVBr=?B2D@;dyipI9q zpo+TR1XRfu1Th9V0H8xM%CpHB4eE9#GWYMQd@CBI6--SUq*a+qT$QUTJb-#;A015K zpOW+fradwP9vO|q9kNpXS|48UIJBb;9Z8sfSGnGR=`S-Nv^J|hg5>)HDCn)1NOb`@ zg}!nU@24wJi(g#-phOH0Zbr11u2u9Vv>69@|M`vmiS$ zGPee8!Hj5d%QS5@?GfCuJ{|yvUK#Xd#O~fW)9f#Ot_pJ`GYZS5q3kJcG?kW8tSP>T zixXyZ_ZJ(D@xP5^!NBn{7;h$`3;JYx%sEIdydN(nz3zeQo&&D&`jeS-=mLKUX8YRs z&b@9(A>GRihdfWhOVk{TZ4`Ha(|>{|<>=caIPl;(;eWlDDU>*NsuwtB89*2;J4(rq zqiyHURX`wx0y7*P=Yob*F{0^cy7iMVBo0JwB8WJ#f<6v zbUU?aOJ>hDIr~rEX66uSEDWW{Mb{ut`#w0OZ_3<{4))A%%{)k)ew&$0IE{rhY!n@zW&3?B29sHR zTKZcIvFDgh9EInZl_S!dDJn53Xjk@gwq7-VtS9=Cnv9_-tBNY)Q4#^Aetd|m3%OkzVT z9y!(dT*q(r7dbAt#G&spR^7;e-ftGr=D@JFganYNv^?wFx0~Ih%n$2LLPHXj64Xcz zG`0Hr_qx0F1x73frT@oe8;aMlJxn#DRkv9QFO*Eu4_}umqKKWpC*6tzdM-DL_i5!8 zAk>qhvjrq;U`$z?n8O6bQ+t$stnEe_?K2pcA0i@Ve5y`-=VN(Ja=0LeIqKL23r)nJ z(i^s`G@Hz~ESupy#I2Y|!?w!2yzZQ>>*Od5vmic5d6`UN1)4-OxZ5MnYrUy%I- zu&sVueMnm_fGC9Yfh7?L$MS!luwJ_GolW#kchqq-F$Jf|1kP8mqV{qg3;&%EPb^NR zB6LK`$TTRzDMT@?tmV`{OdjDg+n5N2GiC`h!z!F6E(6R@{*S1X)gbGfBz963a`9cW zcMM7cLeV}cgmwt~v;oi#ixaHVXj}gqwscBu`WhhGk5HDb+e(3SsB*sy<8@0Z+dcP8 z9h{fXYv3R1lQ8^ns3$Jm=L)&R(q{B?vhCHz$_-z&cw3lmocTFbRofV<@UgCCv?mk8 zFs2tl959wqKS}3l^j+J)m0RE%h!Do8xYb741HYmv8;>G*vxgho}Wap25Y7 z0=0_=msY6s0z+trWmilK&S!<@$R)>6_wIS_+*r=?F01$i(2-5rV&1ZbF#+2Wb}{l@^nL9QB&z5Y)jeooM~TYSKt&Q@#j??7s2=KLCz|zo;{@zT%>X%jT`Gu- zxwzZ2%PE<lR}1h$q}m^K;4M-PB4im z#XE&^j0GeLx5)laj@)2bWQ7x8fpkw`!H#I&7KCTCE+f|t#8)orUSSXwYj7=RH(8pc zRa;7+mW1)d6)yd|!kQo-borz^ZEwX_sK*-eBi|y^0B^u33fq-UiZ4nWAt=!YP;*l9 zQoNe2`@+71&|0slcj9iyP~_5UEuD^gO-_zQnSJ%W+yPrT;7HibPD}~08*UR0lrcwm zIxC4nS!+)USUkqx+|a&K;-aluY!ZXY$qo3@o5k?UI$%_q=7L6p_umxT4KU1yLp(IB z4>x=xD%oRwpWvQcCWw;{taS$~8mToiwaa}!B9X7 z0|yf-@7oD6WIeHqzE5PhgtX_R)FuQV zbnRz0pwS?-K^ZsqY2_aMm4~l4COkmCfF4_NO7nTxG=%Q5^^2%JxAKp$!7-KNbaVSt zmfI;0$IytQlL4Dy?*d4;Gvofzc!&=XUM|HesI<#BN*|;PBt*3i+*9TNzyUPC#E<|P zhd~v49_bh2BE&+(r*0T0gasEZTGahX#h4XG)>}y?#s;SlgD0^(0S<{4uz2o4eRlk99RKf@a#W?__UXMnEW!O&b7>+8kP zY#NG>?5{H8yyrhjo>vB_eO9RU(TF*USnyT03`^d;y$X1AGYG!-A+YCYt%|kKuK9NP@N~9qqdovi zs|*k|doy7@D3nkI@D+F9l@Ae*dn4a*LEpgmvHb78-lhA%w zd);)(YGnbA+*ga$GHwBI9rM$W*7}GBw=^N-$fyk-m6=eAyT`gxM8g8GBv$9`3=1Vf zJ^~pktz+$5nkm;<0;_Nx(PZiY=%j6e>84^`d|dkK)0CJbtY(b1*V@@-YJ2hF)eK>f z=&i{W(-5sfTq+b~)hLR%dQG+w3_eSFC$Y_vCn*gf#?`=zX$jw)Bjn-~>SAy}5_Mqj zNkVDzy#@EZIWEb7d2{OCzY0C-ukl+>H$9B$^opwig#d~gIAxUZ<5wysV-ekFQIx+$ zh;ArlkBw^SqUmawdRX{TXpg(CC?EdM47+lTa(m*t zIYM_e;fsh5!=b;NnQNLZS##(CZk&=lx7xf-d z(bH++86kv}cerX2`j)Z%%>TUB98fKu0muU6{nrc7taMDlTFAotGD?%|2tZS%CuB(= z)9|mRp@MBh@t)W$g$OagXD-H08QmrBr~}?=lJ@3oZdpQIAcFsPu#_x?#n{#GMAC1L z0`o4#XTcz3pr&P|mermWW8A@-Xa)pxE0WKqj1`=JDPs=g;|#o%3pG&Q0+%;|>H4Tq z1?sb8gSHC@^>~<+DB9xIL|8NpjUI=;$iyHI42_E~&HM&cTv9=v%`sXb{C;rX1J0O& zicsKBmdm|M1u+cb6sAc~ZY6g&cY|l^WS&j)^Kj`{L2vC@;~wjH{Rng`{wG}=eiwT$ zC`}mrm~R!|E|i_uJI?P1>79QMM9D2^95$?8q6U5HIovc|O>$uySCl@-1EGY~QPps_ z3k!hRIDDqoHj&xLBfEwPaLoR`nuwLYjwVaPnU+^zobJmA`ET8WJ#+c%vR5uFq^hQI z5P%gTn!KGC#HR8}vWy{W>r0(e>;X$KLCWws;VN~K0O!gFT#T)eu#>z}UZ<{(>Ff&$ zNEne9oxvc!F`0Pa{69etKA=7J`SHFuHLT??bq@lq+n#67Mh@ zg3ryTs~&X8WDNC2Z-Psm%S6#1lTiil}HpOfdShp0IVNQ%QIJZQQ53`F&Lgrqk`x4?|A8P z8e@v(2?RuF@iXcQ36m8w7(-;q`k_+kTpZQ9I4eSB6Ze%PEilK}bS@W$=0q*tej!ry z3-dJR=n(@IWpT=%WliZ@k0LF8JqA&BaG^2yIu&`~{3IUthlf!9!X#EXb-iH1_eCpP z8uG`CC$~#Q3K=ZliV$gkEzGa5-i!$_q^UDrHd`Co9GxTDmssS*4e!i@FOaJ{xc<|N z_K>O513hKJ75*jm0}ZK)TA()|_T|sw9uUF8>7jT#OMnm&L3xEBcho#2p8hB-O{MN2 z#ANgFFzoU(y}9HTL@ld`RI87(+bP(L6+ANGQvZ|b+I(xkeDnpnCf^$}8}+~~$z_Y1 zLq7DSaoJGwQ4`kEHP-N3xm|_El%SzH?DPeba;0h7bC9#HB9ly*I*sYk)7`uV4`ww8 zRZfG34Asu9G}K(AV+(-Cw`}+5&A~K*iV+Ddn`MdX36VE*gf7W6GVr{7$-_li+n6SX zjocUvC3i;_f<>4D5YvU&0mBXLn-vkhqZ=#daSVPLLXCC=(AE}ELRx~DyVs_f#0b|d z7LYnVXMadcH`#6h_!my#+)?s;<^4qa_O7UU=*REfR>#`0C{E(em?TeH0umm8aDejH zx*xfk6_7vL%)d15q<&8cxt9!XxtL(7J;_8uGD3F$Xkm-8KfsEi2IodF;Opfq^}CvN z`$sj$Fj(Ht8AZZTJEaA`rluwJ zGcz+YGcz+YGczmokI~PsB<+$m$ZCJl9zbShrrbz=2k*k~;1$!XWrM#+8~!Ng0;mW; z2^tA{?sTEWNr(Z3@_mre7a?u?c08dd9jA3s`JGS>t|!%gP)X9ACX}PC{?{Z~CX|!M zn=FIQPmV*EP!9Jtq-b-IG@%kob(bdUojGH@B$UKnCpXRGQq9ig;h z9Vdw`-K^dSrJAfC_sEdEK1C>p)Z5XF_J=DTB9ybMhuxuje%8(qO73|&tS6g3*@aM= zydTG2>Om+)sD|jVP3_hTgksRh9?i(rVMu>a7H=u@j%$K!(g&sT%THx;4@zmBKWpK6 zF-aa2B}{+i#EQ}n+(9w?Kb_V}M-kLPaX!m^+~swwT@K1YR6U8-a8SC+4(CMuK9Z0d zWE11&Od3+=7&a(};GG*hcDT8!2IY+DAS-fd2qnd!L2*9E&N*aJ zi2K1rzuk|6e#D{}9n7Q;#XY7DEJ_}^*IHtD$>tU1@cV&vR2$>n?~3wgj=xtvsuS;9 z;fHB-b4;p|VMTHON;AcZ=a{pKLin%}HWT~Ts-ooCHOI~|XHq?>AX&Rg=ukf&6~zv$ zLymnm>D1;Fh1kJwjG8m1SUV1LTvsW|;b#uQWbC9krASHp2YquvR9al%0a{djK>(vD z+{bX;kD@)STolEy<{`hH$C%`yD0ak;qX$V)lsDv`Qtc31!%viMzdqB4+7o4)980$F za?4F8%AH4oitd~s#{ZaZL+?E{L5fL|HTA4^p=B=+fF?>Ip(7;yITOV=LGsJS%|?_l zVMm=jG|44!Z;!#ZLkQOr1?#!fteqi0#+4}a`ipHzNk`sNqU4cw{tod;6k{ZL7^)vU zNL3QW;5zX>ON~Uq*806u##f0H5~YawW1hUDk&k=?pPM61-*J2$g^noHrt+{n)b zBTD6gPY3TJBg!Ga6U!q_>KZPhGL5;};2JYaiYVsUT=D2wHgs4b3O^sq%al5apcpGB$Upw{sDK+<*1x;cGR6D26df8e2mG5JVlF z-D>=F6^J^fYmXx2l>`vKdi=b`Djyg=8>w{YEaU?zzEMw;* z&pBrGa}Vy-YkSfN@#&#FIfhh(R`+0H9*R1aQEFzbQY3gN2Rb=x{IvS`4&|K>cSDy++Z_kZ zyjHt>{d_nSM#INXMd^EWydjC^ac@g*DCbF+`q}enl-~waLgXXoP(PXt_yoz;A^yBx zgXw?1^?P=5u7={olp!Xl`P+5UP|T3$Wy=ia zR2nBkQ^LOWq(ajZA=RXmdd=BDpq|9mnEPR`C7m3hJog>uMfhjW>O zXx3T47F!fS08gMgMKXWJmfZ>d2S1x4``gz9Cq(DZ*_>y>#)NW)_>unBOT5k!ipiNj zMe2R3gu_$4mIQU@!`vTho(KR5fAaX}H9Ci;j_|unNY__>kz^wjbDZhx2RV+~DMGP) zJ;-?yp`5>}bj0&~V)LVea_sbR zx|T)$91TGLIruzvjGHw5W=$O2GV7C_0B%s8kq^Ba_4{)i8bqU^F`8?8ff zaN{eA6(62`IuA6*pDSp!bX6BmS#~Rm@-g{k2;Q6bV?{C3_^nG0Q|J3uQBFDbp6lF9 zLQWOuZO-5mO-n^Nr$?^sqoyH3P*LifBaP0taY>(|c%Pf*`8!li$`oAG|A+exAzF&k zP6r(%^mlTG6z<2-I=&~HeH0~Y6W@@=bB;q%xTf3Hc_dOP1RxaW^c{-FXwfDpsIgr? z`#)jYoHd7yzF&qs!N12kAx2n-ccMS-J2mON9!?asU#5R^*hP91#Sb6lgxQ?GQq)9g zEmNms43W{JGVzt@2c}tUJ}^;7#+66Eubu2AikX93R}me*@36!k)>A(AuPZ^woFtm} zO{XYf=pYg9>r~#JMB#JrQKQ7{3>}gv$ZxG#sq~!0ktl1-NZo4nkYg4SWxc!)KaO4@ zwLYTC{fnxIZ;>O+?`br{s(jUmBU1|xVvMlE_{gunL@8?hF4p`(6j7$D zBlR3Q--0N`gqS^di48Ll#hhHlMU%%4r3Xa0qlf4DavO5tI&L%+tbd+(w6;pT8tZipBa>!A=U9kqBm59J&@e3{FRa#uVQ zUhF*nc9{Iv-k~h2F|P)fU(u)?ihmyLWLTZ^;H*QbRFia$V=W#_I%u8pH~p7yYz~F= zTpyi{SOzWSP;B$E{%jqt!(bc=tJ=|q_^3W)5e~jv$g6dbU-E|XcuYsf4kcuWZYY_` zYlhd%v6e;%KpTp&V@+;`s1IV^oDcvu6y!d(l*p3}(GU=decbW5B}Zoze5l_fLllMa z3+=j3Jt4=E5sKP^$N)ugH0pk*)J$w=$q7sl0+jKIlFr93)yWf>U;$ffaRL*BfPf&w z6U99bKIR~X5DQ(kxWEFmNWd0bOrR6Rh>1~lZo-K|yw8?74CcYEw29*ikM8s;HJ4pz z)d+(N#)1q@lsb-)^W->-+)0@zy=dI$n2U*mXl16!Jq(jRB2jja^Y`XW z9cB)Ra%>-Sd?#EpJ&!1#hp+1$`E+C*N0j4FKB+mER&3sg(rLIooz<0zI3tQGzBVaF zT0OECQJf@xk@Jm(N3$YIo+c4)El$K9$9XePs=f&01Y?kah%<-g-6yG0qQwOkK*W4e z?!I`dE66xRVLyDxE_)T(QbQCvx~50RvB@k%AtgT682=t7^<$E3 zEU`@xg_e#?vg48UED$!30f_rU$v(`U_vTu?h#!=($ViXGF|&j3Ys~6X z4`l42bO@GKdHGTul%a-l zST$+;{g;sj!};Km#88YDpN}FZeo{RQrB4|>#C+^=j9Ug6%DEj!6Z40O z?yZX&T+|4Iiw>iYjX=g13fWd(8D1!RNHwNnoy~)cE|fGf)mX-Vi<3zmWN@KSC7m?o zbJ)4tvO&fc3Z6OVI5G$Aa35MIeDp|7GyPd8d>ZwRgNXK4kA*_$EWc}+H(sAB6gH{n za6EaeP>wdGp2yGhH91u%+T?H^j(6<#h62xZO9p>aQZ#%CgwckVqJvy9L*525I)Cn43%LMQ|= z4^m@jghWYtDS=vVjb4+@?!_e9j#nst3pat}@ZN=;*=+k;|U z55vFo$4J}qpdjC!_DotsJi3E|WbQCnt2!vodsb|Y>aKkb3NeO_=I+5-X>d^NxZM*P za}Hn38@%}@Hmb2fX*+1g>9em%UxhMgQ1%FGpUBB3B=dk%QBt=>EHOuB8dL<*HD90RsMA`RDiIpfyk|PtnjtNCMhy3Bk zNdt<)2Ps`cbo8A1iSkcO7RimWH|Z*dC(4pE*tmz*5F!_&6GgL)Xx%sC!96iJQ4SqX zW-d-0ho`L_zcX-{h)2Mie6wg(UJJ&ZZdy5`~uukvEoS^SRIq#CSwubDWp)j8DK8TT~*39!eq^rbgqwxO!Pxgou%ca^QAn z8aaHVYMu}S55*Fxk2P&tCxt|aafk9INn(F8(H=!H>`*q%@A2j&X*NP))S(;!s<7AO;+aA?DN}U;Bd? zZzxTUIBD~xIzbFKAQ7MWT62mEFKUQ@$wnbY8;X-bMXENEFNnbgQpAd&+opP>5Mr#M z(4(7wGNhz-sS7dGP`K93;CW*bd{JWsX*hLxoTbWt64a>CMG1}w2+2bXG!$(@*1hir z>8-lZ!ZVb!?c+s|G0ad*5hZO$OH5b`0bPV4f((FBf)W@&3j}DP1p>4{fEEbQq8!z$ zKm=%o7-cBWclgc0ymj!b3^B-1>aLCK9mkBJsOQmC$Dt#4Z84NOj2a$DI*ltSF~kT% zIkUs@&(8m0$U%k}U?|(3OODO6oah*a7+)xUiPz@LNp9K_EX43aSyFCE$nmv5y1Gyf zC8IK}Cu4A-*t03sDLh*!%t~zsKQ?*utA%3R$dhtCw)?ovLRmJ&HAt3>*ikH$FLk=y zOn0#vy_O8f_?ye8idW@NV{DL&0S`9v5kuPpzRezCZt- zPQyq?4aHX5_&;7_p>G#jH4fi^MjFbRtr9zoqM;Z`J7(w29n&OdD0liGjooeq%_nQ1obBH_S$RnAsJ|xpN%j-#b-W>XJVp&%Jdvc*WKP>#dq zZkMSFG^U_-ASWl|u?J{Kq0s+5mGhGt zcO{hnCFjfRwIgqRKqCo-)HxkY_IMC`+2^ z*unhdbZ-$#)-g1Bezc~!g9ruN4jnZ|i+F^Y2sDOJ>~PwCuO>oVDunX8Y-9*abwDEs z#rLnz)F1kt8X%N>@>g0%A9(yo=77cz3c4~knmXnt+&(C8+B6=-47odudr;6^*PGN~ zcwmGwl?v4n!T1u?C>+q(L1lo34$7`}@g8GDZH|Xg!wVWYC~I2>AyYlcPS}MO{uedE zu)qUo;Gh(LYx1riH`nJ61Y-*{ZcqrRH6CQVPHz66;J)}2P{15O!v=+Pk|Fo`0va_a zYemiLdx&}5LxTq8)|Mb?9(;~RoJFZ3ZEDGL_5L7P6f(#8fp+IOMVrfp8L=pC%&uE? zPYAv+Ko?<%AOpOC8L%jM9N(hJ=2w*Vd|W!U>54*q9KM>wHlr1Vm=d-<4Cm@WID-`> z4g1X;hY{1ASzyL0O6Bjp(UbLDcc`MUvpw#0o820vqRS3nm5_e5M@3OJZ_tmPb8ItD zfzPD>iHYQ|DT?_eMMaHdN`_v1kpkxo%qRshVhA~AjTE+9r@Y4;_LyfBLC~3;>8>#wUuOG^2C+@5osb42HoB zPn1P^W6I?O@Aw6SF)*VO1@o$$kNR_>pt(Hq@?#Ul{opcP$hO37G*O6Y5!z9ECW`4T zN>*cvi9%#gNIs8U-H;iVs4W;U!xE*z`KGyd|4K4^UBNFA9&i!#{R?{q=FKU`1$I4&@no zC`jnQ+uS@9a}eqOrpz{OH$0T%=DS{vpEMuRh1P#@0#Z?!afiZ&tE_#!5y{*PI~3$9 zO7e!Zpbo`NDcvE49E6UL5@yh$^pk_|@tbkOcFdu?Au`8a+MPFijGAM=x(h8YT5!_vFe44+4r1g@q9fP*prKF` zRaUOk!(@Mka)oG;i7|M_T2_P^W+>zw2J0y6IX$qg422ARk^VaT9JV)u427Nzozq-r z3?=o`@Q^e9oo2;QY*&%b6Lu1YKGqKZ9-o4tEMA@2G;)S8;|t}W-8}8DBDZs1C|Smi ze4NyCetq#_G@wcdGrCYpmmGVx%2{Sd1z`pk${{xTbXXob+gm7o=<)L?&89PC!VE2x z(|Jy

    15EbqC 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 A$p8QV literal 0 HcmV?d00001

    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

    98Nfs=kbj)TRT-nUfmLeqcnbPo3Y4^>XY(Q>E@ z230*d;IRn*iP(r9`Z|dYnBHr0TUW&(3((6pzhXv@e$-aNVoV&=%31 z*3fZDifj*S*KGrnHEww7<%Z%31`;%B;JGA3?>*#WfUPEmGDT=^RoAJ6kQjT%S5QQB2_Ojb=$O9p_%FE^-}S6p-m= zcfMwtOz*$Iw6Yxh!WmT&lGKuE?HO@vbsPuzv}<*oGa;~amb&W46iyf6M719t=U7w* zIGFe)|7r7PlqE)Ze$_FLUBvJc=pID|p0mCaX%t{${i<)jZh085F>A)|&$4IV z&<5TnVo+YZdh173v{Q$Z=(7=j`mkX>zdv7Q$LL?QD+ACqRQdt4?lN221QvFg3V>3y|1KQ`*lSq z@URu4Rj*jy=Rx2eLWm-R^w(f7A$Aj{Z~l=RIi1;kDFYAkpc$+fJ^DOS>q*rqSUswx z6c(haBrqTd-(q>H0{jsKmf6t*Jj-34ZOC0(YNSvq2tvNj-KPhf1ohaGW>(4jyHDX5 zrfw`AMeeC!(;q&xM}O+<6XT&?;2b9R;Mbz*Mmog~xp_5!@>y^vu0zrTqaIfa81Zd};PQ3pQfOcRDsSzVK#s`Bp*#k)*RyyKs$Idr!*h3A*=z?S)kL zQWzC~fKK@+oI9Y@1`m^E>C9=N zW%NoA&FTM?duJ{lMH!8=z|Cob7${L6<2WaSLS`50x3~TO?Fx!8l)a0OpP1xp4QFc_f8cH17 zus*la>DP8)`JeS9vDoLn;HSnOnKtCc?-@@tw(2SW!Js6U{f|HAP4niDq|PX_7hezq zp{Qj1ICv||&-l!eFLp`MHpPULt-?nhHQZ|+71|HU2>?bM`JdG&-74+>}s4F+N-U}%?LOT+^VVkeGzHNLL8w143>^+Lf&lsD@C_!AOzM!Bk8)x@iX{+2! zZUveGr@EnexGi`61gDFJv)IXR@2ufXq;sDFB=DY_uo-;XKQ>q++<3^4N|5L}uq3bT z6I_eY2VF*vFxcack{cQ}#?zR)3+qI18@A{y-c|nLmBD8_KpA|Km;u)%Kg}7tztk#I z#`XXd&g}DW&vVQ;EVrnm{wMPr!1R3X@NAr2LF}RDIwEW^vmc>NFY-`Jq=K$pgf>>O zAynh2sPv2iAWo)1YmJNmfS~(^M^IvcVt%^;P7+x(;1CE%S9&1KGfo;C4NlIjqGewJ z*dd9FBM@$NizRXryG*CDPA)oISkf!qxepS*hSkwW_e|+UASSGN+x^1}46GAaPb7V$BJ! zl`pejZTDF~fEO21hV=ZY>w@t0&|{>HfI; zKrb0@F%k3bQu52N{eA$PIO_yNF3)v@5wgj8vfxC^|Mt*%Bnzk}3(|m5nthpANKHCc zJrhp8txdjG4O-ii0psE(*a3G4icEeakhN8AqJg~<=FF9>Fz^Lk8S{i4229#>jmjfW0J_IU55RA0;8Z8D9aqWHq|-1KOtF zKD2CL0rH_k$gDFP`cJ_ga}{}#5efs|Z@~bc z!MiyZKyO~>xwnTu9ONc^-6WUL^unOj5hcb1R<3kFIjeES!aiCul+iZxQ(_%2v@kW* zm_s88EFlT4LAWwn7B>Cp0ym2%<{hTdivm0|``QnmHk`p%P6QcX4X|iVTaKw!y{2?g zuY8oy4{Zx$6Ad}2uB8|?*I32qcJ z&ax=Un*&d=e?e)?qon}9U|_Z1FO8@NBCmOw`O1fLfq8T5dLXC&L*Q={#B_4Q3**-) zrTi=U;XT3}gOFpmoFw?r2Hpw4*QQqjy}i8fZK82boFt~Y_3Z*T!NfxUowK+i-HlO9 zGh{H>FQ*^yLAAd*3RhD_FSGX77DC;YC^fKzIK&r~gNRJ5u_Ptptjyv`U5(Yq9yQ%+ zp7^QgS3aUs0MXmK^h@nJo8@kAI?j#|G_i2V4~|0Xm=+Xb)>I6Gi|ySy->w#<#9W0} zK*}9VHO^TlCKFgY!(K7kP9XUvoW&K>ZX*sVP@S`XO4+g88-r3yAGt|TCi^=E9g>~N zAwVMW-;6bCY|ot1aos$0{>^Y>o&Aj%yjb*NcgKVMoZM^Sdw>QwgFBq+3SCPuQNcCN z9UqkQM&yfMq9)Z5@E>2KVA-64h08Af(Aq!pNN_9Y7YfxbXa*OFGCFHGVx# zI{bT-%1;3!5>0BuqarsFR-i8mOvvmltlx82C*#-VAdqtpMP8#bkT(wqXj&iy_d6xr ztCoe%hK99N4nm?3U>(B?4u(Yq`=?SCYN-PHx2{G7iFErQ921lu1pf;KN4tH2R6Dgv z#8Tw{R!SlgH5la@*&vh3mW=%hrn5dctw%N5te(=x!8^sXH!*9!(o*`@5xtLj_=cq4 z0LgF=|3{UsRn>DQ)}kb4kRxtNfZ>612!fNVn^yz%YnoK(0}a1POCRN-7cPJ|BX^U5 zTEby{P#$=69UXOn(Q9{cq!du%h-5JI=)Z9mmtxv;_EdSa6mGUO#NIGRt-LT~hY<3= zur30n%5JDqeK-noTXpQFq_;-m*GGKk{W}@Fzm>a=tZh>dIhT-fZvRH$qY-uhX z1-4D1iJ`+S ztf}Pua$&R)s@T2$W%k=YLhx0%cm;ag7cpzL9)A@QV~=@W$pSoF#FDdbgH5GOK&c2X z)A?NA5-ad{BcNS|^^Vzbay9i)AaM&vb=O1XRM2#D)9zc@*P3TA!@0~{QhXump6^A| zhELT{S&EXn6?G(#1M(0HK9)Pj)shA-N2*gxy@1W@gA^5~WZ4p%xtJkR)0+fyOY$)u zP&m|T+_1MKmRQe2(#5dItMzenhr`H)@OjP5X?2+&#%(l2LzsP-Ox%-R<;|&9vOvHJ z4L3g7JvBejq@ga`HfS$DzI$x+o2&(lquZ<`w$$y5K43g8g(BlJ7K{R z^%hjKCn!7=&cOd8$BHVyJkQP2B=+?l^3^DejD~}L`+Q?jAHYbO;?d(*S_xXe;bMeJ zB02oT9lFg1bG%Kd8zKg4Sni;_l~=rXa#i1A!NuCf{j}*i`)*LU$wNT{&_6wR_Wy)! zABv&2jEwRkFu|nejCk!3!ziMUG|ICu)@4skeJVgfG+-gWc<#FYyUWDcinSFh%5(@( zI>U&n|G?*ccPt;f9k*ZY%&ShbG8FiaW%UONv=<)}@oVS2ib-&`qc06sqow%rG1O(; z5n-$If&i@eT*>R3rYtII=qOp^L~d$*h*YQW{mdNS8HqwynLXqt`z0|x8Er+jj+BO} zGtclZf19-Ds9z^8R&;`fpZ}Glrw5MVr*F8JDz8%2$brW>-FSB-?oG9e7o zdR9HId^u?3EXuE|Wo;oc(>9080{)S3&6$!M&_ihf7PGlNl3I8b6va@?D8|*}Z9`H~ z>I6v?+3d2gye*e8z3~OVkB{NT$Mh@;eZ9^W)|B~yf{CtM4rUJAk+C6>D?8Xn`d&_{ zxUR%9OI2!{)@T)WGyH9Ew4EtlUI{ykp7F$tocB=nC@}h1uB?+T_8{ksVGUcbYD)va z)8UVPd_U8Dbz&Fs%T5w99Fgm_OkT>Lf_e5i0&~~pUAIYr)f)g)hF_p`h1{OSFu%JB zCmtXxWGFR`AI#ZSm`~IC#Jt_b9%A#pwIfj#!p*M9SYPSz z=|dvf){YA1nA5u9UxWp}W*)P=j#mgla_2GU0fs}MEDl&N4Ml0o9BviB#yg_m3sJW3 z|Nb5P@TZ^-NWNkl3sHmg{>2kJG(T)&wGwzgiAGii-emBN9?ju$|6vC=`go{<1acv? zMWNAC;sd8ZGFdob4MP1e{J^L6%us(=&Ds_BvQFJ7-at@j8gIMb;>I5l$?pabGXenM z1ZX~j_VLqz%Y$a`AD63l$3|u{jacj)5uRd4KZ|i}q^4vf{ELIkNlZGp z38HOxb_}IEK@+8_>IU&=b24;}MMDxHlwIdjQ%FoKglt8cN46Tl@-L0{#?{4$)$?pT zS-3@*|09LseI{YV=cv#D0bX6%0m_3oSnT5n$$^T~p*cAU#@3>Mf=3P@e6*oOE`4Xu zr*8?q7Z{NRhwmY0;$~((Bvu1NwW??T51!D#J1>QwY$-d4RlL7Q4JgaU2gCH*l@hy3 zZ57qB`163Lxy4C(*gsQSbx>VCSd3547sX}60-xxJh_wu;RsuY4&PEx@{v+668iXyi z0=S6*#}^gBrl9E}J+sDXCp^StG`EK&4-`uW>`Ym@D%z>l%!x|cB+#NDbST0^w3JS= zHP2$wuwLiSA`CtVHQrgyMX|FOSIND@>H~GDL_8^QSc(J)F?!`?m0~DV7CMU~p_|TF zOAPknWJ8IK)gK{-3f` zB?(K+i2vxSB4s|=!ZB9iA;nZ7oAEOL$@A|0nG;K*{?P;JlaL&+*7V?fP5fa2=o3=n zC3u7VVr#MseHbdANNrq1Ntg#VOJump8z6&goUBmdq(ZB$7KWXgd9GdLqMWZ-43Arophb}do@^TBw%C)<Xo~r%3UPe$m_yRUhIFG}w8&lry2?UUSByb62=V6N1RsRAEfa1{F}%~ON@@Eh46}sL`dnfSxH0Y6qJvYhG(k$gIa;RR z5tM8;AyaunmJq;7YWzFswxi2dDy1pT%^#zSrgq9dI*qe7Xfp9&V_v7yAef$g-~8)RD%N5Wjmlm2)Y8(C4f#^+lQ* z!MmhOPr3M?Q>mCmfkPst4Pm;cxT1AJ{m%#cV`?5a(r;PHK*0ygml_R;FF@vOsK83g zIBA9MLzJMQxyV|$2rm_C_?WNDI3kGcukQ_xf|YC z9i>ffVztkWYIFr+OoJrYv?PA>k*!j?MXXfElmCN0LLlF~t49SSb}E+((6yO5QIdoB zr?MV6n_Pspc))jCBnb)>aGnyQ+Si=1d@wUQ`;`%!-j{sH{ zIRq1Zb0s-4F&Unbwb?=@Ivp8%jyIqBQ!aD%g#6raN_`u=61Ypqn85F&vpDvY==ZS% z?{)OgNtmg;>y{JynZFI7#RKTFrcw(sCM-gV=9NpX0ksKw8K3FN*`Jx!F%{xl8J&Nu zT?gI>q+(+xUV+L{VcWcUgqI#?UFQo3fXwLDS6I7Mh>n&YW*4k*dBXy_xsXFsG3l0G zyJARAj)qddGrf$ag@E(+Dqw4`N8}p#cXgI03jbkYVenWC(~odAkVtu`qQ@HQ+~OGAeGfyxK+3Jd;w;Ok zzbtH>$_ow$mwq=!(E?dac-eRIYC}wr)b_@(TX^Bxf1rbLxOVVO%lX$l=?x8OMZ=af zOi4dfnWkzav3s?otahb4U_9HKm!eiqNM<7}cEDp>y4Q!mD1_>ap5$yt0G3ju9G?Q3 z&~0E@AQHNoHf2fK17E!7FK3u)($DyfUo}IlXZX9-vf(G6n{Cm1s7c=i@;N)d3&KzF z%uYiNVak#}!#%7029K!w{~K4Lnt}F&(UM=yT4FK8T0)3Kc6WF84qgVs1-JzTka7#4 z!rDuYBZ8m%6uJ@m#?N&%_@uzYk0SSe0lK2Qx3*Q`DS(m=5gk-DXg_P{iZ&0C9k{8o zRcq3F`4ijl0+_U3T0f3dVZ}qai^iZdP0y}t?&@-uyGiFx2qJhn17oe zfD!Q!)$W84IwCKKIXUNeDjlL3LcJgOkx}vCNA^QZ7UaY0r^*knpDQ|kfc)^o%9Zd3 z5I=gZsG-A$t|;Tn=a3G$$^)W@k07Rx+MU32D-b$C;2?YmafN_ku~@ViLZ#{f!H>=j zvg}x^(-qlCg!NRbPrI1gR-cH%#`rn>n|5_NB0ahhp!^0g)?63y>M>8aUtebkuIiW} z_&j}QkNm3-6gQ}Ewcw5&_rCod^{qJZXHO-99TtW9_j!0Wl%Wj4SDrINU{_y@rEQ&Y zi}kHqtQPBAwOB3Iw`#FktZ&s~wOFgK#k#n~vR2=ZvsznutB=*PxZ5~w>l_BqRjKYQ zfso4cUgfD&s{5^4tQKqawOALoSgS9`3LoBC4-*)G^E%j7J!pl8SdAi#!9%nW|iA(Q6hhylV!3D(FLQ@RC%A|O8|w%&5u))!;Z2o6iz zIssl}K|&72(F-GbhRg`qAc`IlT4=Fs;KNQ4owfxqMDRlZM_l;g3?BiEUqk^DfD1ba z>PUDCgt6&~pWYSCA`t{Sl4l0=kqt>$)%sSP96ZJ*9eQ5a!Y9b2T+W;}(l<^5@{5+9 zj$hZR@twj4Lhh)=4nK%q_>zF3(k%!?ltgR&8w*?pB~uk#bPEFMAvmB4Ej}U8pa(yA z2%6h8=)w~KC0G2Q6C?qZ12_kCML0|uJP&vQ3lBZ9z9G_Ot$#q)zbvk zB#axvo)|hOWW?~H)5b8x5;;Gda8`0sW>dRL!m0(OKEJ{A4 zDUdYc=9nUK$mWM46s9g%G-i@`dXkg)yU5`3IZd;FQr!Z_{UWcKeRp7!=Z-#?d-LbUJSKaa5BY?843a|9BI z)*zWk*`$If7JI$GK7zewra$S~M7t4c(p;KNWWmSpd%uw?+oFGek}Au*r-=9_ggJ!je4D*dLyXkPGpcm_4jYv1&#WCoFhJa6Wcd@GewOwbebe# z`%&Qi3A*&t$6693RQ%BcZh!w0Iip~xxS#J&flOQ};HQ7&e)kmUMxech)ku;WBH6!W zhW!)#`r4tZ{tT+JE_7A;HB=$>WY^cWo%R*f{c77cZ7ao7X1zZMl|pLnlY9KzySPvV z{HVWA-=)I+>DvAXe$*eiPmQ`x0Y55inzQ=aZ@bw<#r-WbxE3;*-Pczb3ENM_$gXG! z755BO+^>aBsJMTeO?|(Yg^%C&w!eS>-Y;`@_ySE5sV=c2YUPL#kTJv#6!2A-Ok~)Q zvxU>FK?YZW@tVSCtQf%2skw4<1>H68C9E(d`*^oRrz(DipE|bai%M}sp%Cd!Slwu zBAj|~OVOY5#rJ;-)p5V+&>^+0GrqRQ_WqwD4V1R3*mQtm`j!G=oPD%2OwG)Aky7+6 z1*C5&5c&c@0=oN-3qRwcZ;GTG6j+?%5)yWoJl;%67x#oFBN-1UQF^!Z`$~)(L z)mkye)@yzJg4CC^wN{LAEQr>+(pkLs>O5;@c`ANym_gY>0reoIoO4b}DXn0yUaxht zG~M2AYq$4aoVnb&WDbgHt@YOAQwv>O(PgK?1Vf#S$SV4_ZQI6mUDwGU=W|eIEEQjR z=_$F?Qvm3xAR+XPbIxaGW@cz;XlPU_mCDo6y;k>D-TT(Z6a<8w9zn5J-&U+vjg5_s zjmzb7-Q3*V+~DSo3EF<6-{2Joec9`_qlVRG=c22=;Q;A4V#nFhadh;WYa9waVXT!fTJZ++i1g9Tf zy5U5xb%PVV77m;TIURE1*UFI-bDBAv1UM51y>aigRZ1!4*5keR-YH=&eQj_}w$@51 zrIanr+AGawYwf)O=#tF67h|l$`s!@+IC`z>JDS#b-`;=0hWDnf<*$1$#+dWe42q^x zadXb?lTy}uZ>?3cHn!R<-O8~s_ug>4_g;Cg&2`zEdgIdAn0xQNlghT9QhVLj*cdyl zZE+w&it8c5k)pu>it4~vTtMA&3SKo%S{Y`5cPqq5^jMY2Wn?h|G?zkP5 zxB9Nlc=d5xXH&7=xbJk%sdaPDJrpQi|NUA5D80_395En$l+cL`NKtw;*#M4|R}4;G zOQhi7fXJlDtx_hy0j^bLQndp^R|G>x1P0Cl9VJOQrV`ckR7zf`HYs$W2A2yRU_(ryGDj@|~fNr2gL-+%8`;&od) zaCCHZ)WaAcjAtK$LsFbh_qvFr zzJ8VcqW*S&pLUT#8~3AJnoB)F@cJ7HbP+*4evEqAZ9FD;eVSMOzIIl6QTex7BnqYT zrNo5rpLvfyMS&CwD&Frv%5=YWL}uSY+C{>yY@=(`%ce~`q+pgL?7j+|vpQcOUlPbT zrRewh{L=5w>4nMdIh;)rc0UIjLty&-y9OC5qe+!;nlzj6k8=*?A6I>xO;gL{nPWPhNOaLL zo@J;}$FDKQKcRU2G-+@q3M4W2Sc5YKxG8l6mqM(TIW(6hj}L|9GM2KJx(Jdwqo<&F@{kX}@_;pCdNElw4OghgQ7%Jlbu?4SN15!Bg zB&4O-GnEODup?7S9P})0(DRQP)j1wGlc$`2CQU0@18Z#8QX?+lqkQTyCs54rgaYBv zbLKX)Qy5zJIIS z4+U~U#l0yODpcGtt^NK@n-rmhGfI0ivG?A;T`&o_UkjH!!KqjYb0r5Xc;g@E zmcD=HAcbgmX+K-2GM5%U*`kFi*q`AO`j^i9ng-s!Wln3`R+^{OTLWd+`a_rYF1@|| zZKEzNOyNHFNA7ds5&K&>t<=|^O8M*4a7caKPLoVRE+~f-K{DwT350|xaoJF?LG=i= z2T7QHS-1Gng9{)bS;0mBHmQDreCeM{Kw$Vdmw38R2h9sL0w<=FStXgXoGx4*4iI? z12pdJ{0$b$1rm}ME?>Ch8JkxiH%qZpS!>3LDjm`D&oty5lc$punxPx$*`s2}!=Ozf z6LV=YF`KAa1e&7N1ZL!DWT!k+AYu8Z3g!?kWAfzBFG?Z(`KJ=%bdoSKEE7vq%x}Zl z1a;~jmzrh?7lDL?qz0G#m+LB5yCT%f-%z0K+ufY^#3@df{Bx=1Fq6zo;wP9f)~6Re z{~V*|`K0R@>*J%Q775Fb0%v-Y>4b#kN71GHD7w`1ZyW5Mb}0Dt?l)MZ1n<5p(z@Ge zDqj4vL&2xx@3zNX(ROFoWXI8*Hnre}qobpvqoboSSF&VLlj!%io+_Lw-PfA)R_k9B zV^k?cYrS^nTAVo?B#!#T@R2Gh^$5YooZQtQ!DSckr;Om-#`cenUB@ zXk5peiA8Esgi` z1)5K5650nOBrjaJDE0gs&JovL{tqeRNuYYpSvGB+#r!!`q)CH|Q+oa!yFm|ZWhZ_r z(R2QJh0dhvgeLh|l}RC5h_I5Q&>ZH>l#4{cJGO&I4bj{G5#v#b$*ApB$K_s@GJnUpvKj&kltd?f1(rJ5A#+qU%e7 z=@?_}MZxFnI`BRR+OI_?;Ik{5M)IjHf#ju&6-Y>IaKV8Nxa5ohk7Mn%H)DHmruI@= z@lz|GT23jY-o5vy)+${k*iL&5M<)CP*hiP460g&*wN^^$(;2#GP^BZK_kO+gCLD2B z;^ihdM@6Z`qtsISfjQ^A7w6c&R{ne?9**t&)LL!O577`>s~9IhBl!Gm?bBX=zEF22 zPp#RBsYDSDqq9R?fd#GR zC=N|E*5VKY<6AkO87=sVL&;K`_OB^UnL_0{!)oYL;|P@w-GVuNc16{t0%a6ql;{@B z(QQ{$I}~i!FP~@=@0ADSTM40Th&alHx~VCY?zoNPn>%jPB**Q#E50?`)xAF+i-)MS zM9syu8|_94b*sg(+KJ*0ssuY=5m>ae+H^%$&kJgxw%MT~>g#jTlR)}wtu+Py&>i}E zNgnz-qJ%Ml%fR}**=2}dY_MnHG%Bzc6rsxpsWKz=MSq5biblGC(d83SAl!d$wztx0 zHEsfbXvL;duU)>}az+be)M)+<1){Hny}&`KrlF;e@(B$ydbWM^`n|8w_~DEwWD>l| z>2=(>!i+L{ecsBUOC}wB>6Ph>ADGOr5~E$wRO+`3-Qrlf?gK}pwxqZ#OsFPQTMtg% z7nEj&2~Nzmd$6*R(b@+i?MY`VWp)nAU>};a4d1H-31({2eS#9;2PW)% z0+X6kY7da9FR3TfQx|-C1gJt=vtLaaV>)zi9Rw94BdFwX0~H}&VW=3P)MB~o@Zt9Oy3~JP_OALno7v6 z>Z!`Ks*HDo6q@+;tH@MYeoCe5uZaQoaF9c?YcGfX$tvaRhNEtxqJAqRyXxm>Jr1AD zDPlbE1(zK~7(%{>B4h=+R9HQ6vBIufg->*<5JH0|H3?x?m|V4Qv*lo&?W(HeY4!F!sz=Ze~%FlDl*gRG+>k2mlUZoR8oEE*Q4g)$Xh8?(*3P8W2NgFEM4WKa*{Cp zsH7^(v-;BCYVo9`u5~yA74$d`WoLo%8PsMO2d2&q#uGXMYt zAOPbQ000;a3WtM2p(II?Oi*kG6o3m`oGwsaDwhUhu}B~eq$muc7zkky1YjV9VmO9! zQYyL=0Fj%f;$9GmFo9;XI!vEvRn|qq>q(X)L+OgBF3g0^9p}A7sXr7HbG><#%$Q998n3G_ZbAs`ysGmB`8rTyGsD=%3D>_zJx#^nIDcjn#z(A&2$nBMcOzi zZXQi;aaWP{>-~DEEcq`*ysu{`DZz=*(u}{DQCQP4%OS)4N`dZ&bW+)hb^#0W8y)vc zd4d~tNKp}3ThGhe^$0Gr5a53eXWm6{`qoyx1_}#Sphi2GMsi@`Vu`f>ltjBdZ#(S~K)O6OTDDVzg)i zl;3_sPLQyvj6#QYw4_|)$AV~4aN7DCdauQRuUuN#ug$a)c2zELs?`YcCS9&#ow*p8 z)!|a~-yh;;T>=ns74tIXsWyu7yYI`-N5xA;_PgUw8UdXP zFK4dkE;%yLvS(u&`1NK}@*MeQEg=eM&{LBw{s?yIvE zZL;!f1OhaSbpere0huKxfBDm+g0Onjgjjf%AnZT1s?2m7w)Wt>EcV->MlN6|&c{qJw*OKIN)2$rpCadajSn zNN_1I%^kQ4G_*$>W;M4A(7?h=akpj~Vee(A_X7wr1oP~`iWsgW@ih9PFI9vIx3V6s z)|~M7_4!YFCnA4?;-JD9A59owIMhBfm1mPg7F>w1&Tc@GSI?~kyoS1qx>nntbHTJB zbadd`-0xlhML@d0bCv16KbJEJ<6VL}Mb!y>L|WegAc_9NKJ2g^tCz9)WVKlBGh^FS z4IF3AWz=WRE(rlyLV%Q`MoSuC2)yj|QOys2f%3>81F>DI>{1IJkkXj3KXfJLn@4B| zh(H*^td#_P1?Mh|B7Y_Xxu5a)r8hbPsEkyGxM z_sHfMUT{qJsfkm1_EiNdM)*3obYDklh6lADFP2u{;`OENop`xDdWSdyf#i`jf6gZT zV1yT{O2Gs>D9Jnsg3bd{hCtn67M36tEsQGyonx!QL#EjFto{~h-r?p3!|ZqLgaJkD z)oB3&2B#=u`C5AT7JJQsKE##iYQ8v`^} zUm`pRlwxWC%|vL|a-gbmz)k%<2RnskQbg9ehe(Vb&}B3sawNmYBP?mQ1_U66mvTr5 z+|k1M`|_0vXMIaU0uj5`~j0rhuM zW9l=DVsU$#r3eDeITN&uY(Sy06AkFwOtE-LfK9B#K;u)+v{X-Aw81YHfiv_7%H-Y9 zDloWA3!lqOC~xv2(STT)z3?D98=Y4!f(?_6TNGgx@KxH{N-A<%d}Ld4j^xrc21DR9 z-=Vqe=eB;T6QRBH9)jwOECLK^&M(P}$2Cd_D7Q^8EEdy_l#0a)T5psH+8q zYY#5OXMfPJ*hYH?Ya~-EhXi{+j4L{83vK78iY*)@yB8>W`*Q_kw$A!29HR*qD7%T} z4305nAmTR-clN!=C@btI$$A$ zf`V#qoWY|Qiwr+->h;EFp`~ZqFMbKBHBXZW+vvD_NPwP+()MnJk}hWGHYrl#sRQEW z;F4IiE+HAQLKeKkk?$XTBtJ!PLUZ55qTzxCN=F6TP zldq$!&sKxCgTkqPz+<*u6<#&VENHZ7kl33W=M<64QZ~G@Zkk6ejFWsD`k~LE+ZmQfzo13Jn z(bb@KW-Mr@W10EmEo_eub3Z}Y(Fn@W)H!gbeRlM)CbLVfg=qF3NWi=C@M2p7%C$h` zu3-s|^=kTp5S=xAntdLeoPkVxKs0B!`R?)Usi8JmBeW~(P@1(OYy-6TV8}3nruyq_$ zcbnpy!}U?A##zV1N4O1p4RA#>P>s7-IK5dPO8CH?R!J9!97rp56{NQ{jv&07>|gpJ zbARLy{*J|s@LfzeKfjQnyvw9ukGF?rO(e4IuY7y>578u4iF7JX?ogm(xzG*B3&C6t zy{hSCgTr}ch{``=(J!6wkj|LAgYz1ZOPlJ@_xtoOeRc!f8S{nsk2o{SXFz`5D#Icf zv1JSh&CA<;oCTM!`vb*G1jgt-z~jUN?&1fP3+eB^3Sl3kr=#-z*_h2 zWlfZ_aL{keVLSB17Do|3s5)&UU8xyh!;e^0WZ~P>kk-t~nFmW*ln)+ilzHK*AjM-9 zH-N7)DuRQOa=*M(aPzD}4WOw-Xu(4%`4>+V`p5)%WHiup(K>~)-Yh&r^W|ENGB0Ss zb-{#AiIhcVS}OqKe)BRaD?VeeCW%N@Sa7ioi!YE^NX8GchE0^nM5J$2J--NJ&Er?A zL=bcx45qvG*?h{t&P3nqwzvEtP{2pr^SCv$%?>&!>e}0QUMqa|1Xd$N@I*eS7%oX@yl8ooW!l8KtN?#-w_VGo!f1 zA2ShraPCS>s&*a|fFU+4)_e0pz^5U5-W>OoF}D_HHBt)N?$0(u{@3XIaNBv{3Y&3u zr*^FMiyujMZQaB|+EXmFHFtuknUeNB5H3n7hd<5;y2dzo;X$RK@2gE9@wKZMB9hGI zmZSRKg*exT4wO^(O(UHlTVQ{Ww54VDJKBaF7fC1W3k8V^ z%^R7`@wxp_LD;)h;aG*{ChT<$SIB~t0bTs75}(-Ej`$Q`-EB+CIqQv831EV*l;WGb z^T#aXLv7XSunmRF_vE3c^8HHllLJlBCD$TS$ALtvW7qJ+%@10@ z@ZRriT3b(Q!>H)623$wOd3peZRbKtr8%Kb-ZkB%T+F;VTkUv1B?RF>JNft)lIAORO z1<1!6@nOIkhO8i7*h4VLx`Y)uGdc;RkLr@GJyZ`L#$X7e;xuYuSm8z4eBzA<2x%#8 z_Be*GURKtD2~+l6r1!QpiOuU?)=7 zN(ewfV^e3fZJ$&T@P6lItk-G96KZY#-_=4>I84k$L)rCa3U74|cBun&rz)I>Vo)Q- zQ=1;n4-j+l#zy=ZW-?GL1bqY1+FB+(0eEn^0sx90!cPR@=)TM6tcK}5Xq1WI3~2BuMd+!7NA+Fa;z5Vv{&HGb1l60_F&wG zBANQ3N2lpV$6U~hdX7V$YVRa%c0*4H1?f^LqUtqqsv!n4<6FH`VG0Op$l+hHQ4T=@ zWQ9S=__dT%!a|#AuSeI9h(T#3Y^rq8oL>ps9Z^y1dLtifSIt4Y#hD7-1l$T5)7zh^~lWq#&7$U1k&_Q=M(D71EB|b1*=_!bw4FpHycLj1bps)GXe= zDQN5Dv4xUe4Df0V?x#~>D@zSHB5yyv8sM|lOr69|*uj6eCmI%Fzzx1ryin{f_7`?E zpw6*R>C!M!hyjOot3qGX^fZ1wwOMCHyL!UFTgah{5axcbH#;P5n=or z@x>Oh>_L#Rr2V|9M^`Mid}(_6>m+fl0~$}3kL#F=H{(yekNou>D6_()0d9o5Z5qVn z$yT8RCt@DYi^Q`DxQKb3NY$5!DeB7Ag|2klK)ZO?Ktw=MzF&8{WhZR)Xem*q9rKV6 z(E$f6j@R*~oVCGra^N7}c4O`jW;z;aaHms_lWPUXCsm}yrC-wRhKQvs*XRYB6`nbW zd9ncE<+mwe2jZbabI|1$B5jmINWvtbYK!tG`?B7Gs0KQRlvz<#2F7XONYTfkBkdc@ zQWsFXZe)<#w^z|Q1dp7t-iUYyQTq({N&Se$(qV$Fbk5%cS#Qft$&FoA4BNU~jN5Wg zY#lHR={dS@5JxP#Xcd5M(Vt&C=UY(%4i>Wik*t_Q>T)Ag24c5|RHc&){NmijII0%q zGNW)>2FRQqm?>w0Fmy?7&0XA-Vyg@AqaBg8f<|3hmj&Org&0IAqd+`N8hA|Rv zMPSTGbNgNZy7vNfd2yJTRU8TB%`m{au{_UZ5X<2>@_QE%&lF~2Ef(~`EXw{s#FE^7 znr0l?TV#NG1yPV_vtF;@PulIZKYg_qH|S~%JHw?2TSzq(T4E_b`bYX-H(U=4QNPO0 zjt?H$Uh(!*Fj!{dY*P4A=7mpkHipJL^sjlVz`$5|tFWzUk>T?TQbADs$#Goou`lsH zW#XvXN(KFY5HwfW#PmuQREM)rY~0-tS% zFc<|rs0x{vto!{<>7~<6a_Lr;AjM?Dg!AiKQvh-82gU9{9GcfiPbqTFfl z?48WDCAJX$ts|#9$~C<)6i2Q5(0rp@D&M?O)zSGC+k~y7@u4m$rUV6`9Slp$x~ZHC z3wAtl+Yt>m1zc4RT`O|AlucnxZ(aC=S^@)q%2SW_8U0QcBy^?vuR37#UN7Baalm1O zV-PlU7<$3cA*H;4FTe(IPx)hRJx4}bIFCMxm}Z3cXg0$B-lCP&!*LsFMxN7a8hZ-j z=(2B(ak$H|^i<5}*)UYW56malKsO|P%vkKW15Q-4s(U$IREM<@~dieKONAQqm1s*H5|#o$}lo##7`eG&jz^@!rTnYM5Le6)n<^yIf3nuPya% zA4~p0;VUL)MVzG_D{c(wn=CaAqPFFU8#8F?zl4>00W|l;eW9oGUcH)7qPh^iOP)7p zt*`&rgb();*4RhNT0*7`+coy3mb*R=)GF&6vm6x;l)n#k+FSR>ll94F*TntX}Ts-}}m#=O%#Z0?8&) zn57LqD-pS}nm%WJ;;QW%bxWI4{hWQB7IX)%Ca1{zWJDrn&0m;Ks!)lrmv(!PRRk9$ zmPw2^GUra+MaO{Z)+2@n-OIPmG=9LTJ*00~@*#j9X zKmVFuc~}X;<}`jE${2X9-XrKQDXRA<7f+H}ZN6$OLRws81&{9hanz>hLFj;!eGU|d zUGOX~1QKs0IAp5uTWKAzzIG{zmp7!Qnr=u|Lk)50wj1lJ&{5h5!B%N}cS|i{hBzu$ zqRAN_D|AXxguq$s^SQFUJe*JD=C0;c^Nz(%iYAD&R7xOh;Eh)(uniDx zs{1Zmn<2A2hgwE#Jzm}B+e~CwY#Vgi0~QGR8Qj|lXFcpZqG8HNp84VH?d3?OUIX;R zT?vNT!n0MnDaMgx;l1H-punav8rsQnAJxX2p_& z{IG$5bQsNBncf@Wlh)+pMYidE!AnU)L35%rQ;%m0hzibigy8!X|i}rl8u&3=}eAUii1a(cs;~#wrj5xer=&_Av<6kUYLuYxW`VtNl7QQW-~{48yOf?6)FXwa=`7T(7v0Z=1Yb^Vm$oWb4teNKv8VHBS)8o%VL8~dh4(YyZJv`IvAUyoLd}1aH)XSmn5nJYBE8))2u|d>nJjh;aOlGsy?k?k(m5+^=EQ1u z9ZtANo!|bTsdFK;BewcAfPF>6ms1mGorRs1`E+`yM|L`|39j|bpx=dl02B^`I$y}u z3bMJp2CzddvORSdnKxe8&wMzPQBg~yaC6NIs47+5{9H?mP^L9fmoaWr{D=jO8qs{t zUnWIU4|idUo4UkKDmns0%^0FyahW={ljW~hm>*T{E&#w3E$!Q_%SC%SWz<7z za77{A)zf?Y2gCik1MS9_R+yFCjv3Ger`yA{5S$|vEO$J1(E&Je4wmi5QJ$O9ZAXY8 zm7HxmOkZt5xri-gl=6tnXUKg6rmEyd$96N+I+7Y7p^GZv(hA*B?K zXd%YB|C-hp?d@e*KMIw;v5j}EL23f{KxT7el?}_6h9vGdz#2BjFnPW1D~t@PL-u7V z8kA!Xb$+IhyAaJCXn<+pvheD3W7)=W#KODA?QRQa90_NssrY)d+JV)#h|x%*7k;-Z)TG@2_s?b8>4AUskE zvT>a`kORzqCN9+2ZuP38Cs_|vfE#Gl{%p%NwCLdmn42Bb9)VD2YM1`PCT!+oLQ^+h zkhXqJ3NGmF0wX$)d}ME7ckTzeYdud*KW&uFf|Ay!R4-l;MWH8ywPhnoBO(_#%>4?e zq${1w;^KyNHuyD~s{KHQqTa2b`63G-EDDzLY*WwuuX*mIN)V|=i9@R8)*9a{gZ1Ujo&_a{1`ZGX$V*as^-Ucj z0#b2eB0n40o3Vd3c1E=boXR90nSmI=q$K2CZmk5vF110j&6@c-Kbm^?P#+-OyD<_2 zZbq)(jSypWe1rEg+r?x8TPvf9_Sd1AoP`z* z|BkhT>AUt~ZL)bNK$2LSc}wu{P7vB9GXM*FH9kZ=*f_JTJfVzLwItqoel(J?VD`?Ijv*Kyc zubu`Q_^T!YSVFq{k{y>=u;JtOrO!HpQvaDqZa0s)hTSX-{w&$)@*#52s+4u{P@uxk zpG(*7{c1aXFRwPsk>d{~ppR|A&V$~v(`km~n7KkL(}AFm7*F!Pega%m5)2jNBE9qI zr8cJtBp%2$=9x75pg$?ghipI(){5n}a#gYL{HGtp z4r_#&g+3<(Rq(!)HW7#ryfAYDH|u>LW9I}|(e1Q5BnQ1%q;BWYQ5{g%ma0PTYu9M# zA@p48KpGDy`l4Ojsc*CY5XKeK^Q1Yu`Sr4N*N_Zhvv5j{tDQ1OyZorIldp;$vJcZt z2^&=D)h!Xfda99hhU&Q+yRvo6AKhh|P%@QB)D|k8M1BL zFeW7i6sL3!9UvV$<+x`gtgN0|GY&cfgeq z=Fa_7AEYV(;V=J8!O*dERGCrTcC~*7uzj5wv2H_UEQ;_Tk%A(E2hDuqV=GMD42t*e z)4`Ky_*5F5JHTYHC* zq&TTxM--M11HCW#lY6h48RURjdltAkIWoq6-2yNUZ@uDyZNU4aXZ{X*sRw%tn#cnR zxEN!B+006%Wg|GBY2~1_w2_U{8(Cd)Sa-MqoVFdvSuU<41W@D+>mIAlr^LF$*02yC zY`Ct?XrOsh5e3_0{j*N$Jt$N=9qp{AYiOddEUU`Wk)9wj9exto>3QIEo#*^~80KwX zX|nay`&5n8fB*EPw70bduR-QRxjYitxw%p+Sh7RUS#vEUHt;zt61;l}x|0>Kxc@+e z-hc#vxui&H)$f*$Xl>nbLasNzhx6z75@7~%s0)H%+IBY2B1!US`|{E~pkdGw9^m`) zIwR{aEuUTcuf7O1-Y!!@J5d-{8XlO1u+u4Wf7}Caze473c6Bl=0lY#s)hzT>*hu!N zUZg@89eip7(zfC`NphtpQi@)6lC*pmrL{6~4RRov*W`ix{ z7Ya8>UdAh5*sH!hf6nVjPaZkyH_e~!xf1e=w2`LP{drMpJ29ZLv!dx@;)M$0=L+&u z`At4uJ$z!ZmjBlrDyj24XR2|+* zS~nv{j#yf3jM4jkP14`c=zRWs{yf>*Izd~OiIcZA=sB3_hi_L-56aThPKvx~eV-|r zy2_7jAASfQe8krJj%h{Aar~yK8M8*ymT(A><)y~pb8jpPT6$8@jve95D$6Ohxdgvo zb%^e>kT{kksBMW4DTQ)3&UCJ$J}RPsE*Q|g7~7-A#Bow5^*=Byzm9xv2Xa#K0+ZLJ zg-e9V;?9$htDu$9f!hX@R<={$#zX@X1=dAcZGiCc)FU|4FnQ>fW?_N5Bg$CM@)D*rLqD8NKV` zbPVVTSqNwjpS2f9DRhH4WYNVJo4CJD&=`{#i+4pA$|P6|p?3q(a5{WJ7SC}ui7zjk zFRx{^FM)sFWKr~8O8ae+8CS~RSXDXAFK|54sb^!=Jcd}CY)}aL zC<#^Rnq~g%GE+~1<8{_@)!povV;L0VZ+1-BZxaqQ-Nx(UZIpI$KuJzV@v4r>>c;-- z1akzkv`G?!Cg$4>Y_ zg;$5Nrx=rV8pIuY)Rb#3}K z@Uh)JTn{(|iC5%k7rjhz6Cp`F95GHOeDz(2W@I=2=oS&!LkP;Fr5a4ij=a|rN80e6(HKv>Tpo0&)%43Oiivky<~ zNZS1iTV5+TU&G;>3RCox5bU9KevJ#HnzUpDBH+Y+l_Mk6JSGV+!RZ}JdWaC9%!`KUIC@9nt0|{fM%|Ui;5ec9#us6YMI>f159nIjn8YVc zGw#wdIzk-rofEtvr7FU15(5?y0v|W08N#wb?~ug91C}-`j$#B=@QC%ri>Cydf-E$! zkrLnTZDsjSB-*n=20^mN!Cm!X%oN=IaE-k5Dlcm?9x$Zw$t|Th-KpSyeSmiraipyI zB^DX}WOYh&6g-^9Vaq`@-`veGLVDCBpoa*A7n`mxCSpPU==XAC3lYplNeSQp=f=2W1y(IxFgZ4(cUAgsehea;6O#UC z1BF+ZY>85aIY*#*BPZ;xFb2ps)^d}6r7%N}DkRX-57u5CFH=a7=W_&u|5?lRD4#DrTGoMuhx8vG{iS(| zabkeQmF0-Uq!>#6!P{};Noc1A?|Y4MhF zc6eab=;+mNd^?bVn#+W3bbArPEKZp<2p-j&Uss|$3@^m!3`)*OuCy^MI0wlWZB!H# znJ)(G0uK0C)w1)kI(KjkW3p~)A_fnqa|g$__-pIU4QD8?wl`zw6OAF~bj5TWrua&) zDAsEOg*Vh8i6DjodQV8*JO5=@gd1$z8w!CDzp^tk{LNvuYxAsy!!F8F`@&2)#I^Lr3^#bK9~hd z!`QhI;V@1?#T<}gK*W-W+sfW5|0nv!Abgea8 zt(|s-61=MNKCE=2r2*iCiO@|pssL9d)^r|;S-m$TA)BrmvLdvMO0tP29Ar}|B(3{8 z#K!I44(4q=6mXOV6n%i zohGtuthp*ek!QFmA>k-+|xC)5aHX4}QgUo||#OL%s8Z<@c3C=A(4Gxo@D&@ICY&qD*GD5Pt5 z>h7^k)>P9L!K^->ngkD2@hP7#L1I92x|2a1Yz}=?evCcA11m7+eH6@@VN2S(u-rOf zLxgQ8%(oa9Er$~xI+nR@F$+Ky)}P6LSfM^`_~ycxIeu8pY@-n(8rx4~6GsJO(938- z$!BNi+&;9ezxDjS7)?`Y5G(0w$`UybDtJs;7@xHgXR!bV;U^^k?{UNDW!6d=%MGtR27%1lSsat-T~Fm*9nUV0~3ZtiNE4tU#s#gWMU+)+_joO zl0<(R5gT3Os#=k*hhSog94D=&kW3PurPCxU4>D1nXEDLONF5}`_|fZtB%!3hsm#U@ zZGyCOo-}W|Xr`QB>F{jO=2AF=zXU0m>y?=m%JdVrD1BY=R`8}!^q?Tb`%P_ODRVf| zL0eNMq5iS;m`FEdLhpj?Cl1@ODfK($?e>K6^O$ojzoV!uL1a8+ZLtdFUe)} zQ00)7`?MYn*G9Z+89RzYv3|3sZNS)L^a5GG2=S$_qw%k2I8Te-sg2>5MDV^7mde*y z)=`pKceIO5%RQKg9grSwd@KjkS_&qQY{IXD*=fW%d5#we(K3v={gl_VM{7*;lB^0T z_aqrjj3ZR1+Nhh{aRp`)ZfrYYEnsgsFk`K!;zfF-!}{ylCcGMNLDP?Mc$v~_9MkE^ z$hLD@{!c6e&=o2qC62BI=?WjHM4yFd?)t?7!_K+?3K-7WftxTD3EvdK(-0a z@9sHm;VbVavm}ehCDB5UZk5LDZq6)LsEz>&8Pan)qWMBrwNya-iV$zluC}wv$bG{^ z|0Fe?DBn1Mic)Jro7h`2NIAjV6Q)UO(ZRzi+Bo46M5vIJ84sab9zO1KGw+MpPcsO< z%)?Wg)S038xM&s1Ixp|)CBP1=Q-V^KZZeNrSu|e^)W80S2+r8L%v`*s=$F*86)sOt z%S~EqqX&L*W#YNj@o!3kg_RZb}>i&Jm(*N`oGfC{vmpcLH$w|Le5{0c=~ zqByii%2H`i0VELq`2^W}_;{tIMl=PVYf55jvls*ho{95{ixq>l&3d0X5(n6g>=nUP z#7tzNnH~XT{(Z z&>L9u;A{P_af+IAX!)ceOuU4t0ZVgxT7r>^IE4O!)0lA~7*R2tTZ+v|n{y^ickf0EOxqcwO%CT2?!UcWDrb?Dq;(s~y*>A;7v@42H za9hk#+gztBhJr*2WJW;c7jorXD0V^I(RR7PmHZ;xB3Wq(OTjl42X6)Zwv~P%bmePJ zi!^F%uvQ467!t!zfxcwYRvWE27Lt5K6kWxv@W2{)^4vC7Hl)7t#9#}>{0D;-IGr8? z!z(Ae%|!bPQ)vdrNP`r0YcrW@p-p~Qfvb4R&^rp`Ci2*MD0b&g@i0MSev>>L+1`jLPbCj7nHYs+^nUk$~m+uHfvDd;>ub_NlaIU5(3- z5}acU3|>R99g+oK=eF*7h^BISR`KxMfRuBsQyrQ+vd+K5_|a4JM}<9wS@TOVv5LwV zm3K~5kd3I$s4+%*S}C{Yw=1M0v&ke>G+m;bZ88R_V0>=uE3g*Z-*O^^oj zpzGU|4k7A2Gra_H>|vmHO4GHJ#!D3$)IX?ZDSoZsp4W>w(G_B#!y7@VyoG`?^RcHCmpXa; z*PK?bsoH!m!A{CI931cr3=8i5?RiXW@a#6$*O*SG=oN3rX+m9#EiB;VhMX8e` zO_A~@W@c9;6CdB_Hlm~$NiCaMrufP?52eNqOG(Jk#aFszDD`%ZK+z)o2GU&uK`7vq z8->DvEihb=tPrPE(4P`mpf3d&sQMlh67V$%j;2}Yv$a4Oo*?QXhrkda zBL(FI+O_I(lH9M|u=uHQ0j04}Ns<}Q-a+4Vnj`N!y+3J+Fiu`@Znb@o!aplpuYr*o zzk@A)EKS!keqfkCQTf7~z`ez%06(#Ask3{cTPa-`a1!d3g}p|`OFbcPAgolNgio>y z1ye-vA8;x`9t|gsuP4SG&9EZOoxf!;XD|!^H(H5+*f$)%#kxhYsS=tbv>lw~D`ynP!=J1~6bIoIc}M`1w)0;8V`$^gg5_+{F62vEkOYWu zdr83CcM9~#Uk-z?*XDbLA=`w)2U|iTyrw`0!7pJLV!qES8`x^EXO#SRSz#OiBX4rz(ypp)Qb?b4atK%_;x6n)J)sT7iTni~`YNVd9VXGQfQ5;Rm)8W-Y}<^(1tYt{zOBsICYH=uE7^(F zFQU1g-3b7Vd8v(e37b$T$b4{NH7O(5wL=i3YiIJHQ8^=#XLJet2xJM#r6DV{h~KcI zdczZb#Xo~h=9R(DOhgFf&Jn~dqMl`3`MWg!h+0cY5oF31O$#h1(2q}s8|11L?K5PR zd7pZ*B7HMA(0T+}W1}^;@+jI=2domAvVXaNJn&WEvNCgQ{YyZK9V%uDj8$OqOQ1v~ zP`e;{{lwF^u5nAiTwhE3x77_f&%7+qim&q^tY~O^4O$5R${x}I0?N=m`%M`iXNl!M z=1YNE02OOWj5dGxz=;kaO48x2o4F2M6n8Y^8v6R^=-Q8&?>Gg9C@z!IfN6bN;dlwp zD3-0*$-1_8xp5JSpOWCOhDW@BwA41g75q}+Sy2WK>_1K!bRBcM8S zItlc?t{l6qnDsh_%w4HF^0*oddnD=|nAX&JIgv@NrGC2X9pfwAkE6dakpjV!c5lS| z&COl8>|)P|>6J1bT0-Zc3b-Ge@W9YwsvNcP7#948^zQHoF~(YxL5Z!hY&?Tcu>u%y zaDdhaPvRv|URJG;m&P#O)Po%Z+Av4?tjJr6*a7NHP>w};&;{^H1lm7A6GN=4a|*V`y+ zuz&!rhu(!6R-*P|-}r3U{1E_2d?cIn{}LgQ(Ng30JlKUMZ?C(e%ir%}v2*>9-|d4zXDk*J1@kI8m%)jP8gcR|cfpb&jRpezxF%GRZN;E9Cyi_l6XFzNmU zJGokg1$^6DF)S0&(ZifW!tim)5a-8H4dpY50j7y%Po!v5RuW*HSYWMR{}8xzIC5-( z0lM&z#1n16;YK4dp>HM$e%smL)w9#BXO}f7y5~r@lDXOMHzR9yl5;$eGM7{Ny4sle zXe&PH0J&y9id+`UUvnY#p|H49c4NlEx^>Kz#Tcx+MtDCi(dEMM(kXJ@kOh)PZME-f zq}yJmQ+DtLsPG-bPgp4{Xn+e2?JAwg>0nb3CPqiUz(k=I)f{zLpg-k8DAxh{nv^{l zVW;A?(iNs)pK_r=NF-peE_X4k#rYca6i3VMSE(nM#~BuXSU4l8TFMX=CMRHnv9gJ3 zh{!`X4(BwwY&VKVLbVG5uP-=H{LnHJ@(OU_egOVW)RP-H zTH10M+*1J(_<^_dc!=V`F0#Z;*KvkxL`FX*_CcxVIo<*g#T;>Sg+2Fz8 zC2M9f#z&-G@Q87~A4cs+pIvUsX~{wQvi^KalW6J+U~K-uQ!vCnndHK3J;Ub+)-N&g zBD4gwL|+Ss3KEIB0B#i|C|Mdha%c;X^2)Ye&~A4pg3OPQSZH6>B~*`AzW;|)>AM_s z`@s97wTIP$01HiP0l3AHNc0p;9r}#78J%h?5O2DNppj@8_@jjK#y!i~7rel*@~-U8 z&`OYARV08QGZ849AlQ$9AGd$JP%LUGUmEL=WGc->S^n7-&6HK(8g* z5M*A<{E&jh;`rYl%*n&lUGm<8pan8KsIGZzsB|d3&yj96>jEFA^z75{q4mMxRr+zZ z{>!nvv~|c>wq~(oHmX(kj%z9QjK@gqJiwKQwCv4WW@Mt!aF9ASB-C}^5ygar_B%E> z>W>yAbOTySMs`>*(6UMgUi2o(7dS6KuHnmWA+*rJZ!{<8ao3LaX&MpJqqp2w>|rTk zfLjL4wuw2(Z))n@<3w-l90XS-cm{_lT0#`2N(wk z2P&02>pK~uFWPF5@!=VPE)#{1WJQ*$9?N=ayLl|@Gn+q_b(sz4v8=~fzt&OKI=0nh zMGQ|C15cf0-Cj8KWXPmeMh7*9a8Xt?nP65WE6S!!9jGWeGMYoJ!wx`Fn0c&=Z+||U zQnMly;?qnuM`n~wfvl_wlySmGG9(_6EJKe)NQtKdWt=>8m=$G3T(VYHM5oA#W>TyQ zYN92GHXG$*ZxbSPPBAygp>vYC0ZHdHBV%yzVn`-~L(!0IrU?&*WT_~V0~y#%4ozUG z9GGA~pgC1}#Z4(x9B9$m_ejA)EP?xaRTozryLS2(B@3N2$0(FPYxWe|Y|8`2A= z?Umt0ts<5oy}%-Ys!YMg6<}&0C5Iu-@M4DQ1qnU?>LCp!SOA8NI8g9~8ADtdkO9IK zOG@yN#Sum}n1cpim_X)>6s){3_mh_zyTCgGqQ=%BUV#SA+bROcO zqZx)6-y8S5<8M|yK=|=NzHus@GQK1dRPnv_c=qoYB#~g~Vz~kNx<(wwR4%s20NYZ=%oZgnaIdjzw+>b<26@ zJioRTyVq^SmHWA!10lsYDhwe%orV=CLYakqkLSIo!_K;@i<%LDtOp@%;pse&EIPR(xxFM2 zAboc?#~mRKSu81SFv12S{`~+hM4=$1x>vxsB7;cZ<*vja%6~~hLP$Bf$-sdUP0|=6 ziVoyxQ8KPHA+JPnx{nGbY1MFobYaor(Ul?U7FUp{@2Vh;&ho~QWzs}tLh7z`{y4hz zUlJ1}Sippcqa-FiRG){%KBUvXBqlgS8*1aamewRw3 z!3A&sCDCw24GU2c!ZD%^J!JZnLL`+rBn7oG#Ao=T=btChPy!*)qGZwxJ|xZHg8*WX zO2`kSFkk#I0T?DMC&F;C)H9I&G!z^L`RuHv&?8KkFyG9vxh3;I*^TocfF;g(~1rC}5 zrY}ty5kX*>TvC|87gw#b%z1D*Y>2}tz4zE!pYbMgSF6fdTUJg=TXxbqTb5@1Ae^>R z`!3mvEqmFmTXlPH(>4!O7JIxj1Mo+#Zm`uGXI}q^jQf$n4p}IgpH7b(ZbvYey)W-J zI0oQZY4_<)vVuB86bUZB^~^huV%-ONcg)+K*ZB9i;YNntrz0?j+6u6R`L(^^0+OfG zo^34D?)jSUq}wfw^XVLC3a1wAHakI)BhS9`j4<<~0dt>YV5fVeGaB_?)rJAc;uhTa zdusu*n2YbQ?3UzqV7(m86EQOUh5pYR5aCSzJ0b|9J#!Z%*@}(A&@yMRfP6@0Lguof4-TXGpY@h&& zkdUJTZD(8ak#0VG`+>(;al5+Jt8&&3%F693S3Qc`MITx19yo)Tae1shoz4+XH^=E%v)1bp!bCW$QcE)1F-%JV z06k<$Y27leGR@Cb~5zD04_JBZ~Y zm6UR|PWk7u3Y7A49^|PN5<%AU>W|~0e=eg0NhoHFF@~X+O#gfb5oE$5@9X|6qm=wK z_oTfVa}DUwp_S6egRADA((J~0I*?VQujDXU+SALFX*9jff1 zmsCsgIJne1Z11IQCy*uQ+vW!7PwG!qasEju?|BBEMN%}x?P8H8cLGT%rIfVBSg8r* z7Nd7;fX)H}dC1<7nVFe)xa|FWkVg#U;|6m+Ztxj_N6$#TUE&(BOL38*%kt>P*w1UM zSxjXx-U_u;tVRr573HM$!fd9UP&Y=(Xfr7q9W^SO9jhB2AN25z0|CcJ2olOHHeYPM z+-7Q{3mO+Sc_j45M8Ie?L!EAn7Pt2(%r85yIp@qa`4NTlrdVd>bT-{Z>d8b+QP=2M&vMiXJ`NA{U>IB=Xo5f_eGk;$iQ-i~}`A zWrl71o#DJaX}11&dxh{8^YKIC(2~>?ToB%B+}qRk7UgemkGC-&yp`eccIM`7YW0?8 z$6FmXZ);R-GjDmwy!{~NZIAobQExrNw$ocqdkaGL z7RSEzfo<2@A1wMdXTAjzBHs0aI<<3;2oe%+w2V>X3l4jqy&@8k5%p^$ zA&4OUgYQy*!)m=BZ?Q~nA^6bP?X?YwBaRH>{I#WSHYrzbAiTYq+_<+fncTLwGMU`` z?Mx=O9&b~b+&P4#w_$*tz?O(r)TZ&BH``7kwyyY^vUDR6;GP#|6WOCC!d;24ko5kL;GPzwq zGP%{aK{C0~w?Z zmP_+5sRu1f4+Dfy6}xZe^fSj8BRA|DERQfGk1#HKj8Wz7+%d+EF~%5Uj4{T3Ps>e; z@@0$?q*V8+q>u423K%?m`5K}u!T{iB5)V#HmFjX9Z(#YEQW5zGMM-iod$>X~)I$=t z2NbA4Lk~EhRG5K_5JZlIy^x2QnVFd#LI@#*u)Djv`$7mIgb-$s6**OmTo+^HSPzJ0 zfUv@VCFR=uOM)VW52UN(UlNodLO8mpe@Rew_##4{*ni#mUzB}SDzTO=TLlxdvSafg z02J0&rBgyACP0=KKHFnOA6KPQHcPdm+Oi{2gPP5>%xWUU6KgipGJE28jatUaC>gE< zSeq3`h>_JjCIsLJkIW2eMs6THmgs}hl0+RlJ0hK|8bsx@Au++{3m>e~oKDpHsd{Kx z>c~X{HJfRfy(*0eR0nG|(=tn^j%p+$0{d_{$_paqqzo*mSNE+#zizN-v*}%1_S}Tv zz{*E#9+9Vmsc4m(&Oc27J>+%qUCnS*H&nw>-JC!GvzNKt}baBKb{Md^VkiV+ZO4B(rE+TGOmuG+7n+woBQ_}I*FDUuSvxSh{X z43mWIg?+Dw)=E{KQ)#8O(uNnZCO0|87-I%mF-pnJr-L2hAGb<@=AYC2Dh2lE%&pjg zo*&mz;{rVpuWT$i93I({@(TW%VKKqI}`om)@CG9?*bs*4tc@DXs z9q1ntWXZR%;|luqD+BODZe;+bGnVtp?|5FZYq7`i5&&9qLUbhAgh~Q{y9Cm9Al(KOeDrQPpc)ebp(7a z1B4hG_Tfw!9S&VVE!&NITEsL7D&?QkA7D?V@#hl@!g zcSObs6M-%Rg^hocOE%^1Kms5(D}uuWV(3`RQab`UfS7;@9h(~B0SVSxnWgT@u1uGu zCC|7l@qo!-6`4&4qVB2n-d$R+^;+FjibI{V1ar+X*SHn+*XrWXx35;MKrrF-~_5LAv@ zUAc}DeaFXz8Yz9xrEjM-+{j%)6z6W4r?69c`QChzlwjhU zi2&`82XmH@;yhM&J>GWBL!C6#NvjXGjlfT)F9{XIpoSIjc&<7zmBK9@d{_Tvd>M%* zuz+2Xx+scL#DWWX#0)N&My%ip$^$I5h%1h7>K7 zitRDRWym*U$jsf4VGM4h2(iO%hybZ5(kWo#6Sv@zNksSnY0XL1$C4=*vRLEJ6cKjo zad};|j)QP;@&k(NeE!t2s8C@dtCCbm;y}GO3MqF_j6cVK6OICTet*6igDri;}c2_)hY_9_k@D6vT;AwIYZvGe#L>jFD-Mk4{=K#u($2K~Q-qdqlw` z04!al>y>@2{+d;yDrIcd+gI)Cb?^Xkc2@__HmQZZ{^k`9;PW|Sk3{1X1@YvQ- zA{mZkSo(ILpl=|eZ*OnH70ih4|Aq&`Zxgm7ZO4fnuzbFhOxlPMpTQ&S`j>;Q=kAq;r~*BmjfxF+opY24bx(Fx zUWG8O^Y1dD>_{jR%DC*Pb9y#qN6^X#S!PrB0JVaI9;nsPq3@vXSt&vJ$*-eUG8FMP5+;}X;TE@0js#vxkkwZf$ZCm6iDAA0R{HMZ!t#9tS)Cm{ zot{k;>2aY)kmq%=1xzc7Z~3(5L)Bg%J;?P>Ou?Z z93r9Fqz!#{HHt!X6LFlpQ^{W;QDE3uIBC z=f=1lv?9Y*DfI13cA`>b>Pf@(?}kK4jJV#-rrFdqhzfO&=IwN-doo9ITPibdkt=RD zQ5y~F94a(4o0QC^&gs``W&T}M`u1)%eS2K$_SmJ{qf+C(MqdnP-w0>yt6c*xa3NSeq~RIg}_51N;;?mh#DXab?;Y4Dz<|?AH_bImh`P z|9cmWXRouPPv@8(h3<0VvfriW2YR57L}XRf0}eM+b@gw}#87&RlKFDqOTc?4Ko&m} z9zvx@0)ZgICM`Tlx!LhK?RjC4-8nFiH!gJ9Ffwyweo{RKm!r>CI5M;v%J9Q*_Q$%VA-NF~0ZS3tN@TE@OB)KToHHE=sr{ z+4%ru#duM01A;O@INgZd{l;y7GCI_fOcY`OWGo@hzd;Z;E_;Nb|20o+9Ju5{%7|3z z9eLi)M2^nz9(*boqcEQ zc>mEkCw)&x$Ma9Fi!V8#@1|lS4)^nmsiI>n#Aq>>y~T@iB(SgR;+%3wdTuVT0?b-o zKt!V!6dYmKP7kI~VhSMK_;FPlLKip4zoaWT2;<`XOS-Z}P7^ovFX_q^92Z>sFX;*s zG+f~!>52_draKC!AFSZuA*FEo!3rGDaeEzwq;WeT&)x~)A+30CsG-Hb=ML}!SojsY zGO8WUv4HG|VC0#7_Ul*Qd;WSv800@z-x&MRaJ9gBouq;waA0OHe=4Z5(MlXRmlpT0 zdvVvwdr?~zmpyiOjNPgC9_)8vLkJ;+5H^Gmy2^WSH=QqaA43Q=AgpbnuIrvV4UEPL z1^8HeG$IIJp#cAx@s9>?h8aPaG347J(K~8lqu1r5Z%;z(q+5yH_MXo6B>aO;W8^l_ z-|=hUA^nt`3lHhRty@N#w>==6q>zN~Rw%&d7W}i~A4@f?AX$L~TXO8!uOHU|1@X-I z_8wGR_IBZ!@y{bCYj@8%n@1U!eLnXdQcfx5dslQ{I8d8ua@Op0!cL%+X{XbLiYF9J z22iIhzMRO+%r;P~y^!O8S+AJxmciTvEX>Tz%*-5{PC3S9)s5q@ghY?nRi|_&8A`Ln z%xFAymDpt`ji;^>yO@Yf#2Mxk3dJnNmK05l4jFTGplTxO>d=@P6|)W`@8PUsxy z?~I30(t2SgFcF9)a#pD5X)X1H6e0j~pl@NJd)~dqxEU1JNlL+k3l&c&)QM3S3MsC@ zP&!Pav{{S|U{FN}Eifoez+y!Jx?74MD|+SukEfq&;PtT36L>tDKd->M!0R55M0)Ok zcjN>EAYcKn0dIu@xZqz4o&)^E&@wAe=(qGp9$$D&sVG)J@1#>l4LfvrLx(FYsNn=i z$TX^4Syhq2is+PSsj@_tWsN7;zoaTp%y^Jf(%QDn1os0R3@Uc|cv|fJphHOC<0DLl z8_ze-kOoqOfx`=?r~-{ES`Y?7BJL^HBBLq~t-K2T7V*$i&~Knm6Ib35mMlsSTP<|2 zixXKuAs}P|A*{joV22ZHd==yC6E67LIz#9YxmssjT!(#4;ra|zPIY?rl&Zp@$kQg~ zc3Mh zZ#-dw%gBk3UZ)(A5>k1Y#SNgm#>*14q?A%h zo&YQ{$47^%5?=PimXvY_P+m$YrIa;6IMLAt7?_t@?~R!DH6);^bcp!D5IjTuh zz|2?`t`O3OXfPF85R_3VqQ})_v8<{JR1{%l&`>L+STW_gO~p%0&mUmUlQN~MY_O3k zOff`Z5Hv8RR2K`DSkUDz@x;uL(GpnDSfR8;7&2Fm;1X`cz$%bbs6q+myzlB&HNk<9 z8b%mVB_|9cl2|Ob+&?5EwqO}un}0|~F!?{EBc|MlKnVMszhUs2|x0G^+7TN*i zoO8}eDW#NZNp@(_ZfRDvBs-YmP#kJ2OG{7)3cVd#{PVygJss$ei%cS8WUz&b zZlW>8`1VNjjLf#aTCL!aTQOiYeYFIh(S!sORf4$HNiJ8dheZI{_-CWwanVWJ@;qM#X8ns*DD4%E`&kBKIygh`FtI8aOF zuXVj+BN=C=ljbMaT!#DMrOs(qV)|M7;iJ@13dP#ehHWb)5c+C`r7)&=$pKMNQ0uyk zQ&|$@m}8hGYILOhwNl=}rPTEfGNJsnP%%E!bx@5%|Dp0jWr+^Q{6~lYEgDC0KU9{W zyoUR!ag?XHA1XB*JW~3BIyez7?f5h? zR5T+15CA{`qZI%kC=d*X1LA-ma7Cc&vM6XS0`f|DNmtS5h_E!d8t6S=J|h= z>TI6C%cdc;gjY>(Z9d$$_?2Ez>ob2tf)=KjL3s0vY15N8<+s!VXHKP;H#-_ZLS45k zYDf?oB94gxdH8G>C0i@3S)-U$*8Hq;OtnUo&8Y8w}<;20g433sr6C!}JoO7|e~);0am@?sI2kOL3xj z5hb9_xIa-NlR!#c#60^&+aFE|Mv`_j@vdIVY+!(DW|3^+Z3_LcowLV;1?yz^3 znw{TWQH^T#5_Hu&&a-^3DR6)`bMees3+87U2_RFd=%NOO)b~<#y$q+O&l&&_|3}=~ z*pzK-K>7?H&PaxVo`ug-8e=DG%J|`mW=jZ-M`#N|nP+=<#te(LdVjWkR;)0~hVT9> z00mT@vJ8TFlHY_$VztMDxkcRJ$YObrL#$gO{`_lRK3&GC+XH=xvdMVSOEKa+`7;9V z*3UNP`M2|O5xpGUsvdYo;75qXL*yPCr)R%cOc5|DjpMOa?gddPr<&1@Eqrp09l;Z|R&li?Z2mkjScUD`7XWru3!$UqwzH6zx|$B(;C^sFR%?j-tyiwi_uLtCiuGb2Q#~l z2LX!Zs$4vbog&Q8h1r|Fv&~r-l8fhs@Ng3LSB3^4(>w^UCw0iLqhZpa;RT#zW_m2h zQvAy;Z@g|``2XekLZcbNRwKE5R990dj&7sV4%(itSCYhB^NbxXW^8BpDmwHL$Dz5Iiqvi~hVM zC_5T2u%Gx2a{;P0Cw5N6vDFk|E z))a?4s!FGA{dK331RT7w6P>^@oE%-@yA0N{RnQV-UPN8S0mTiTqxT~m=JI6j9D8fXGz)-0BUyE-RXoVpe=@j?ZYD@^Qm&9 zN%zW5=Sr_ddho7F1YBbJ_a)t>6fb0~k3oeydof4h8JJrHtm?i>r-VC)jOX^Gg=)|+ zx`AW!>v@v&foG!4?7`UbAm>fe2UXQTFoMJhQ&CyVTdu1?v!@`E$*~j?rJQTT^v^;u zk}8LDDCWz7F`yzN5FT?JT$3*#bFfCAM(s_BXyP|(x|$1@i>U|Q#6&$J2_;v)y98y zWu{X(+Du1&(OJsD6NgArTPY~9l&Ed9682z|4ftx4Rlj7Ft$#PgE0Q!QmU^&MI9T5< z3sFel2XWgWQ zN2C6Qce+7I))DiZeBWcUpkhJq00maIGcqTrqcR}f;J#@~BX$DBf_%r7)Azn_+Fj_- z45_+YY6Z1!ynNV*!6PepxzTZq%Yy)NY(*2@x7objC!jI{ylt!;1Kc#?YUIyNuGXwF z0(@f`w^9bs8D?Fme=*hhFCw&7v{y+rBAld_Y%C(A$_;+5O%IJ@`4|P#REuPk0bFM? ziC7~4`TzbRDeYSNyT&^Ns&aWI#P^?sWu-g;{nmJeY@_W9-`Nu(Q~%@tM^SBnv>yi7 zerFc|o`2-&;pHLjfmg-u|V`Qmf`>}EkwedqU zCl>1q-AT&S1;(Mg(I+GO=wiQ)YWAeC?T44qEnl60;nHSJTNA&*gOH?49R7(m;)^w zdHq|hVb1Upr2H!1MCSzMviUxnUXqaEazrpcmQV|TyQv2v@>GI|1`D;`!7BcdBkfNx zr2J2%v*=~_o=X%3q@Se**c~_Ww8dV4u!gpM<7@!^& zR?nG4((9GW><0Z;gPu50zrB6%ayL`vn?EmCuNX&146m4=fi9(pq~sa8*ga-R} zRDmuU$7Lr>&|!0Y=474QX+&K91xnd=M^3ITDj8k^yqtkL0E2%V!gw;Qv)La=yl=`c zsi*!1jhW@ew6QI_glAc44cyi_X6=9v@1i!{SbT5#d%KvRYbow*R26^y9)z;KNcSx(FD(vF)g0kp_-00Mi{T*zgEmd7VKHwV% zDFZMNlv~EAjGzO9-$@5pDi9z9+t$utGz`TC{Ek_rs}w*8rAh#>TAernja>Sr!bdgk zW3JXKyzf|GXHxx$e&^+I-v+hn!(~{r6O2Cfv%1*RD`UV2Vn_42JQn+95Zu?B?+0Ud zr=1=P!Z6`_c!Dr)&Fn>;W)G&xqj2wWrNHNv~pyaD(P^qrU~E`vt}VZj6JqansAcB${4tPEcW* zOnJO7uf;8H0w_I9YQQqFV|>eLJ94i<;f6-;n)--HIf&~Zw53G0rZppucGV*Dv|16# zDil6B(ZyLG22b2pkhf()*UC0~DK(SIL!ZN}#fXcwwI*oB1$K|B8Hr+4cR1gE48nCA zN8p2Qod2X)x&2pGkAQzW@16o>K~MuPM3Md89Y0xA97;E`+Z<8t^u3ir@KnqPKj>M` zLDfc|jpLZ|v5<`Ly6+Lg$R;^y^S|WzL!mnAwixWBGr7v zBNv%s`Wa`Xj~?uc5qb1<2naJg(k0Pjg>|vW;r8JT6-@6`^b;~8(1v3aQ3itUcm~Xj z`XT&hl~9h0xtcj57trVv=6zaQW=R~{jwn*9X+_}=W`cjIYPDHUp!sD>wecsGh`71G z0)T)cA*4AKdSE_hwK$IWs)F(|$QgGnvpbR{7x+p4u87|+clpbRMstmJ`-Xb$*D6`b z+2)zAI9=cv3dih;^O4zF0N^uiutV+|zpG7WOZ1A`Cn`vjs5cDun18i6Mf!si)iPTlgL1eaS9T;^ z?`RHP>c3PHbE?-3TV=AGI9L@jvGWPBJZv(9>3_AFComo_8DpQ@Uu* zcKE6LA+=m|$7UwHevGp=eMjKd57CmDlX1m-`g_Dys0&DBCMVcw1jMpBku^}PcA_lc zQkiRDXAzWR8v}*WcE$>9l;mKsLY8$J8y;L5H`Qy+GX;o=a)-^IAjG_ZV)LbpGSc46K}N!v=L6U7d_K`|;S%#CnGZ z;E3;qX)mvat|8E2auMIQ9mcecsA7?t1q!>yqJUW zktGKWeQ-a$W4(iLc!v*8UKlV`x#@j3#Xe0;(kFJ0cWagtahS!`Ivn2M>N;X&j5zw1 zvDvZBlO41Haz(r#FJlx%7I$D#w46ftr`I&Rx~$NxhB)~sdOnNeLnMcEsPWqGuRSq1 zSD1;_Dky0QJYssbQ6M~^h)n<3ii()8B-68GIV%pvO0OaoR!BVKn#F1i8npDoK!RVR zQDRYav+^1-x$k#nwrWv3(@0=sbK3V6#a8+;ef! zr=dm@V_{{HlYohHEWygeoPh_vNJTlLIMkG5E9yXOk|1navA8|im78Lf*aeMb6oDHJ z>cJ@51h%8xMG=Ck7^%a>&;UIZl&koR^ctTD$A(E;l=epf8-uH-)sj}JkK8)`5sR;plPs<3Kn4o%!|IST<+^yT5`OI!#|lx0 z?Z}?{C4tMY*<1)d7?Dvj@Czm1Npqz5cEVNT8>qPV#iNcoGWW^x)*Ml zq8#bjOj7o%Y_kzhQQ!H*i$gT*v~pIY0XL<YmG`2Iju0jZcDz5PFZ_VIkJ+C0t3ESbLruhV25rVxk91ebc(0+ ze!;8|y+TPwq$3%r@CnTtL~4k%5NiKenReh~h70=pRv0n4MCS){dO}RcO>2H@bPFx6 zwx5$~1f>Z1MJ*%Yp~&pR01rKX!vmm&Lt!cdeRM3X84=f)=Xk8l1U&vB7Y!rQF^0xF zxg_(?f)gavWq)4TuSK?iXc%0_G*VYU>G=qV7h=xc*WG$}{cK%7C zH6O`Y!>P1G15DP9Q4qIqRdO5yU2+L=k=mWbiZKo}tH?Ui1~+E3<&J8}1SSrQO?iro z=AHu7`cs$k&%Tamf`MJ5xtf2Gv7RyC*ly_Sd5;`$lZcBR#Rk653Bwb2tnn0HDI`kp zkL{U39bg~RQ#gM!l8%-E+jzl}%+-o-ihZt7Jmsll*i~RN?F;DCCU?pKm@K9a7qg?_Lze4UWXwA$vEu|88p1&#Eb|Z zTM{VO$Yk?eY7&FkZBr*VXmLP*+kq5XWel6XVP1l8h(3rBkCM3RKaz$ow1GkDC%MNe z_gb^QG>eu;g7YRwyAU#4UOu3v(i~Y4OEpIBS1pF<*a?QmI}2wi@#QKpMvKZIk${04 zR?=BKB||CWspWg%8x!^pK<~6^M&Uc-SZp8XEXBQ-H8q%bPs!*!b;YZX6TTd} zZ+Vna$Mf!JeLcS&GQB3!FMlJ_c)9hFP#gSfw~+et9WbkEVe{cm>jCG~HKKP(N@fbs z50+3V5@3#@B<3bNAjUIM1!*j0Z#hpXt~LA$@C?~68mu}`N{ef-6%1!6W>5sz>7wHx-r}XhLTM>NW_d+fC+!dM-93~EASnjo znBd$hTPlgUsO&0La-Gzt`Ok{$ z2S!0Ft@E5gRe=c#=U;m{hvvw=geQ-qc+W+g=73E7yFJ4tL1|Mdx&P)JZ*b7Uud9Fh zRSyDhPZQ30S9d%z3K4I25tW+fXVYii1nYBx(%~8r=5yHT#1vR-%?)<26NrW^0#U@f z1^sG2t*C1oTahtZOVE<}mjP4Y=tMmeouIY8yTy=x5S*1Y@0h3nej|-cXT4^Li)2C{jl|`U7l1kruScCq{mSLvy zH$6tM*`k}PQbiKo;P z2!YIv76a=ck53(h^a2NKKE3E#K6>6;g4f0utJ)hEl`?bOe8SJ|S;kAwPoWRQu;?C& zjK~C42(9D!L#kIkVCl$D8oo8jd;RWdN?F@D`W`Hx&FB2iODBUg0jIT`CQM)*!N+wn zh_|vRjglq5Zdb)4Gow8$LE$oK z1F7S47;;FG=lanU!A=(_!Gd7|zoa-OIHb}ug>_djf6hrUk9TmG0H!*D@xIZVlx{H2 zsNvy(2B@}tyYwRR``Z&-aEBPK9+Zej_74)hg&3y4>BI@eL4Dcs`V4jj3??y>!@;Ym z|5h+7JIjWH9Id7JUS>3F{*@tW?_QT^wmx&X6@csD{EMBzpral1HMufAk}E>c5mQq#EfXp)7K$OoS&Ebg?8rwe6Nw^3gv0s4A00BRU+b5 zN{CH*P1f6isSbow${kX-QC1TwFQBFZ-3;+`3cp=jd5#R3`#^b!o$Bp}b4WEkKzaq8J3N?PjeTPPtn$nu_1 zT=-0Fsepki=8T%SYdh;q5AG{SxGg;mqDxevsD)%xMJrNX^QffHBHxz3v0~WRjrBk3g zP-+i*`EYq*rPp(J7&QY&m^~N4a%izwp|De|Kk=*e!GyK;JrF1b5O$>i9M7^p~kRyb|q)5W)H2fXU&I35oMBzdNYRX|RSyCxrGSokJJ2M^Y@mm1r)+cvfm1 z;oOe!;1+o$WZ_8&y{Wl2fZ&v_8b8xNb`Yg#S573}G>Gniw~y~v3HYaBhk|@*QHi8J z`4!Cwf`D=w9TAnH!X{77<0|uW;F0Aa5KS;xRoHhC*96$$w(b^FN}$_9Oogxa2vU3B zI=mz!D5Dnvih~58J`o7f-{;c|N%XC`m z>Yz%B53MbH>R(NSwes6mTf<)^KfME1Zru z#Iui8U!x+T7JvCch#+8SPcvR7X9IV!j(9g3j;sWbpwIfJ!_$yH#W15~Xkb26*jK|H z9;<=k{RQwT9mK(IC}?dF5Wq(z?AK~Zk{$Tjlt>PA(ZYRK?Hrk8OUMZ)io!RZ-X)4V z)q|Q87=R%8{>mf=>O;`-G%`IjsecAypxslTb@VI=4Nm42KIF{0-@QN*nhcFC6?MZt z3OvB3Jl#8Za#Xu+4F=yd|H_lDfevQ2y=k_aTd5T4Fs*@k%;gj^Ux~)yfnfm&nokpA z5gXieMeoYdVC{8nJ6ffVtgT2oRl4&FT5Q^+nC4BeM&t$L@6arp8Qdb2cLR+%EwJK! zWY1K%3NrZ-3>gdP(d>vS38zmY`e(ZGcyvHnQ`gsC)G{hS7jVhtPN2nX^UU6ZTO(`) zD}zI4HxCScam!=O5*#9kmv)rAJHV;e_d;I_zVT}N^Y_}4Fx|;+4_~G^5V|lYyb{>=@qJAErWx) zP&0?9tE_uRU6LgRj6;#Q;q$Mpf4@0A?Y#@)!K9XLGTl=758k}bM z0@9jtJvjzu{y!FZ?k_QyD{`YYB=a$J-cb;4Ki#uBpS<9{A9esF%I8D+V~Qb)wDL1+ zBZh!RcJJENIzZCURGyWK0CFzTBDXn0d}QsMDqo8p>Jvio#gVn_yYinR2fMK6e^P$K_GKI-7brDGxYal!^sslwW9NpIj8Ii0t>DdN`f0lpFD9@i2m~T$Zu_48&z_(Gh-n<>N`B`Y0|vN*ZzTsU z4*301CddGBC}P7+JDNXK{&yMDC3hJr6be-lFqxVS^KZgL$z%bV7dzy~!rR8iIYyt@ zZm8;)g%G@8n|3wuT>xBT_N6I2dS^0VW3a}cf3=QhN4}wn!Lz7OXdRa!&YTTaamsb) z1~gc?(PPc_bWK#AoWHk|>o^OYdM-Q!_@=)%;u&i3LmxF&&RdDpklmUb8wp-xUpT2b z`VNz&iIA7oVXL915weRj!amad)2dr|8zml!#p1Uz5?|2(f7lJ|{iEC_100Ptub3?pQKHjP_z*L0o&+JSFDkg4dejnSg7!>HS~sdRvl0WR z150GtYHAlHT|};$b#o`-Z}`+#1lU$oH!`PE;hW+d6F8~Pi~l6R$?ckj5*y+%EN~;) zpMzf@nAbpR`9^=$xEKirIQ=W6M{?uL=vW*v$QY~8r?Wt=x9b?16%vG5#EyG_vpv>= zaZfVmN!JW?`oAMkDnX8460?vXe~4+5hDbtR!wao1-ZS4LwiA|%KS{+em`D(}JUvTm z-XJMt!X3DANx0}plFalgC}zfF)#XK;%nyfr$KR-oL6GJBuKA#rzN4v9Sq68s1UER* z=7EC+we*ruAin`>`6VDqB(W}*4jAfzmeC;nSQ4sdOB4I@8EUywH+}=p%=8X(o_xDz zLjNS&fa;3>BXHn36qk<4XX(s-U}h7^3GEkx{8dICADvF`q*fp*f@xlX$vpy-6Qwyz z#x@q~-0^ACm$=jU#Sxe-R1ptb@HJU$>qo%I*PMVA9Aq>k*s}fM#U{4N@zIT5POzb0)v)(YYS3;Z<+viH?bBPF@G{R=)TDClSS!3>H z&bU$W;F$1$^SjOl#L>X08?X{cJW2(^ zT7;D|3L}K*bCph+UqGO;ELRg2>GHm%yb6FypttiTgJ%Qm2U)m&zo(cElmZFejbjy9 z!_wTM0D(Y$zX(W;DSja9w*X}sRFP@+7LP|MW_Rn{!3(j_RAoC^03kja#2T959(v%C zL71Fy$-u7XsD~)E`)6n)lT2&O!+V&GpS84Ewv}zuRqq`B8C!Pf?pwejTFQxAJ7TQY zjcS$utvmg*Z=U;PJE?WZnO=6-n?gPw;&m$eN|Q>SE<3uu9G_mYD%nu+2eSj02HYSf_Vm&VtnvM06h<2qunp(WbFc<;siV;nWWUi zggW+v2snGh=|D@sF?`{JVou6lAo7_~g749>Y&(&9?CM+9vq>uJuqdvezrC68X-nwD zNTvx?y}I<V1rgY#Hbv!=qW0w7dWP%+AR{Fq;73J7NPpHs=9X_E!CscWTk;%E_ z-=%DkOma>1!|Orjnt)39&?J&Vt*#R+>~U zlG$l>RZx{+OHBw=5-)7xpB!z)e;A2gkPM5}>Ni(tam}Il=`wd70jzHA3!mu(ab=C z39aPw&0UaFz?0xs_Fdd##<>0L1xDy17MwT)F|C-<|MFR^%$(_xaM$N#TFyWjTcTbN z@{&l0@q!rB9i5Ip&9`6OXBgI50UsA_$F<-~sbJpC=UKQyu zOVKXL904UGAo3L=ewj=qwO~fIweWz^*dTEmdKn`GET6W0*l3SxJc$MGY!|MritjuDxIGa%@}ypj)3bDdJyy;g`RNUT@=gkrUcO%04G zcA|dANHs~hb$Qu{ZDEb3`8mXmdibtAa^a7D6&_}d z<0faCmrfb5yOXOf2)(^S32|d`zJYJT8zMKvZbLuLO=(|CSk~bg7*!BPLAJZ#!(7I` zH^j+ihr+9u4MaOWb@*hQ!e5DoG!6havikn~oNjK{v%YI2g975Y-=b%w+23oF$XDy3 z?;3`3vvgAs!|Tg{FJ@~DYA(NV?PU^0CA519xU0h?`VTx$I)#E`d3-6|>T6D$`~{db zJ@ndvO(M?WyZ9ev4HC15ZFm_P0Q0Gm8I^R?jy~YJt{8A4aK*C#lm@~&d=JaY#{w(= zNr&N^Jh4Ja;ylU5#{7fU%N=$9|4BS9cZXvQHW(Q4K4-2wcE?Yv3RE#RY`w9ko~4ko z%=E9)I<37PPgwTV5`FVB%k=y?{}|#sasO3vgdlPgExj9vB8me$!xaLV<$;-&cn%sz z&6_h-ZBf_ac^TDZCg_DDvd=R2zGd_b?W4iy4RHmh*usqBEm@&3Hwa?AIPc^vq9e)O z6vv}n?(|l6LzAgl5mnX9F`RQoed-N^8ue-gd~Xon{75TV1 zrZ>bV9C_)=Tc=neG1)w#m173ya=9|>Vg+B{<)T?g(+=I#%rTcij`o?P6lui3V15vb zc$(6y^lEreraTUoJffa8qisHo3P=1-RTuPUsKTn~EY`Xz@R_5RvKncN)JW5b+!T|` zTr-D@=ZDiJ$5y0cl7B*98Z8s@-Ylb42GUA8yJ3{6_Q%-YDpS3qcY}Mz_9LPRUzmLv zgoU((M5_!{4Z~kuKWH_M+1$8sv4r_ROV&A!jfhsHtgE$goz{9CY3S2*fOM~Q% zV8ZlkrlTN6%AK=dwijufM+=e$8MiAIYfD({pZG!zM`18hsmWTRk^~QYXkL7SEYTgc z3h)Vd^>D{wa%a|Qzo0+n5mc%SDs#b0?xUYc#U*O1XZo(7Wc^{pLsx&a9Nrz0yJ0B~ zf%y37VvTm{t7R*uQL(27TI^jdb!EK~s2vFSAx-xyM!~7PDPa;{)^of-;IG8>6@UBw zLoCXoX?uXH1=|e-WbHbKTnu+>K>)et+o}zttKWroWl_($QQ7WB2c$%pwpV{zIcRbS zLoo^t6Mt(~?uvFh(6_Id#=Cygd49`hQ+`V%;PwM*Tvdbg+fasMyTSzml{iVbl9My= zJqvYMB&+RRHBZ5^yb>(n6?{zW342H_ctmDMi$NK3@#q>4SROKTL4ch3#yw8^_w50I z`#=2I91w%g^y)An}?> zjVOc!17{e>l-9O?<9Ho!AfC7j@C1A!Iyi&VHv^-1UBjvUQML94G|+P-vy|9>L78(KI)KEbzDZFK`G7bg?~Y!jN3B;E=LVn zweuN$sY%%4X|VInwXVQ}X*&QXpNO(86yRG@3RQt+TG&|gi;%`pIbjEj_)&5tZ{9$~ zIKAQ?3{&fD;Q?_J0$5q8CT_DVRJE~apF2V#U^0AEp2{I}X>&_ZG7r{t-D~F<7oEWp zUKo~;q)gS~8-xRBf8c7On|&#eQ`Q!9YDc-Iqx|1<6}qi28-sZZAN&_up%fDNnEp6M zeyOcLPyn$pBb!1#FrxKgQoU-rs=OvAre{EO*dtYI6bm*9>yO_>VN`>{UCN2JlG&cA znq=;w-_1j-uPgDxjs2VAfuM`az8_3(pUI+Wpog{#2i@n-<0fjVJUFpWEsC|6&6U4l z?;gWA$D%#Q3XP+`Z;LEpy6#@hma4<_5Wo4>DWKVNViD)4ovZ#%x2(3PxF&)X+q0Ku1Pcnj2Ns^$M-hk@A9ueT z3PON*sK{p4#UwHLe|X5--KnxKES3=91?5k`-c+$~%u_WeY`3;|%vE)j;FCuwR49iv zIgbyk>m48?4>1?*lFTH)hghjJj03DAUfi8W22e~C9^-Jjv*$OY=v5Bj(FgTgSWp&$ zH60NAR^@<^LViO%e~?Y>+U`ZU?pH`X#35}yo$H^U05t?Q%%B~G)U79={Y|C1jE``H}=?1p2dAk z-PMg)#uMm7*(#(9nKs<6AXxnYNEJvGZt?IpkT?!OABQo%xWNo@U?#L<9FKM+OsI6gCf{s|~pE{_Up0)|iAVPzg$PM`h1 zy>v(FVsy!FBi!v37Pn??>oXhdb?QUw)jKkaX-*s*_I-zXF|3{?%6ZaD9|{diEBM!; z&|b|;!j9M-3JvT^qLRy=xOzb#&~`@r4IQ0D+jYb3e#44lydrpXD_`mbC@hXv5E=@#gcMq)*_hMvZqJrE(&IZsPsD(tSQ^QVMUr zItJ|NanMZMy*jrP+L)ZTA*axWzPs3rRDf(C+yXNhb(|^+gjnanQ(+-5tPi;ShIqgR z5xP+kPK(x+hrfbF=g<KwYa7JXqnkN>zf zL)w+X3ESq3*4_v8V#iO&aPG~znosNzO$QZXdXyGnbqd#Si()dg7wWP5`uaH2fYj%; zdM`l&j9v%84A%yXOf_JnaM6~C__CiI-a{sbq7BqW1x7O9J8OKJTz`20R@y2ODwL{< zLzVX;0MMeK)5%Gw?p^TrkPJDGg+&n0jV%d+a=Pm2Hn3RQ8EH~d&2--PS5kwY|&2ut2*^GMzmvOQg#ARq;(VWE8J7`5_Y;RpBHM@Y6 z^$UqVyTiT3A-X&ynYU105bse*JR;(p0;o!hKk42_b|&d7ceLc0HwpX&{HXu~@{BUZ z=x*hx16=TaWr_mU*-#Dq&zL`)-=QUBxVoaLdqtodhv~EkJ;}H(6||y#dIjA(ZB9IY z%L}C`_jepkSnpf5*_+()^4W@9+tfnsvmq{=Cj3d=Q? zAWQwTK`K%=jWo!`sXF;{rFn=%0+_U!iKNZmt*(P87uZ2ff$ErG4EOVras`3A1;qbH1qiJu*F^VQ7G}!G#3+#thU7zPR`+?LQ(-W>f z*-vxAwRogHc%fC)pCHrHu0GiZLpHNYZJOnNFLQToGu@2W(zOSQk_&O4poFtf2xr{3 zse(qcin*|ce?B!UrG770Ibm9%{^?c@FUpNa6p>2S6>!E}YEfyQ!c8Yn5tOz8S^rG* zjD~Y$#2GjpR#?wtb6&7pPkP0iuW0|n56XxVHH+Wqd)|jfZ^!}w2>`eykmj7}N6n&O zACTQ702%jZR?4VZ`0;wC?Q~!l$La>Sq+nmM?qC%d_e!eyqe_kP$VZoiD~SY_+K( zG-$t4v*t)k&Ts^xaA8nSB-*A?;`dyJGkt9@a;8PAMvtn5C`4T>ZmaTLC?CM=_47^gY^ zz>}F89e;->#PD{oPA$rSOa9Q@WGGJdh8Q&cdeO5Ap;GHO1p^q`7*v!yG?*~6;Ygl1~@6yONZn|E*uOvM#-(pY4Y zNWqW|P8ji3rND*>YZ+Tn!7Vud3>}NRzaWd=Zh@2X7b(Q2aedoyBk$eKx%b$>AvW~A z_yTaTn)}HtaCzk)Y;cSVM#!J)guKqmigDMKxy7jM+j_{=%gQSnBFpcB2^cx}Co7EK z=;4mOsXXSfgdR5$o6*a7o4<=_2G5CqQ$NTH_jGarsI_iY)9$Q6U?8^a@)rVDD`9w6 z{|r9)fdiDsf~%x3DJ&KQ>?MSJ*&sY6NGviSit*#~JoA}QT=R)q>+#bT@X?8lMcVK6 zBt0BuP`*`B97w5|6xxl!v&-f$n+R)}ILt3lv{DTjmP$PR+$!M4jq0lI=r(k(WqCNO zeU(uyUBJCAhCGqDEM#9Ssf~mF*!3X|8TK)urqQ=(E!tf&>672Suar2W8>{UVELM!lSiy*J!5}m_-h0#3Umdo6T>3l&i&+XXrJGwGjF*tPx1g zX1KZ?bm2q(_9wT3x|a@vhD*cI`Z?e36Q?8E)@sysv8LQ6z-he7#ox0rz9ea=UdvGW z8qjlLFwE?@Qz*r2?N!CL=%Kh90wyHyLR6&%Fr)jj3TX?#iRr)B=>hox z4`q^qcK+u~hc{I_Nlb&_%IP>fj~UH?k*V@^#4`Df=>~+Cx6H77giCd6xcBb`qv0eqK@vd+uk==t^LFnfVlha zm5L}jp&BgKkK+0~ourV%O?HaZu+OJ6))W!pBS)YVDGugxs@fr7VY(|w+DyRVZL$z& zWl@9)${?j1WFsh#!4#jmYBfZYA{^N)Ag}=aT98uQcp$V=HO-f*GUB`4I4jUmKZdlH zO@P&9kGKSo)fC|@%d7SBYVH#luHRPp!-+3If+r-X%48H*Ld`6)mAx)aqQ~T>=y{0RMJ;l1eoQ#KHiQy5{WEZgn!9NuDHN1;9%D;JBV{je>G8P#m9%hX@+= z!3^>&bVks%iEZLV6p|?DUhX@AItI_ZdP!kOS4AU53)L9S&>7*Y7-6yKzlY0KI7V&q zd$0zamSb+pblvCA57fO(yshLKayC5;@Zy3QKLtYe#3Qq3aPm}7RtaMJGTQh{ofMA> z#yVSL1&$ut5x@bYCle^K;#xuKD%cdf>YRYK;MDb%n!c9KH4yTryVik>l1|{+m1W`@ z!5~Wn7MLp3ATWksrF43Xupq(BsG_D`M<6chArfMU$%GlJ(gg=dwf2P`iO4`fypEhw z>f@D3)lF`)grnCc+cq*b^CNE8&FTgn@O-w@ooNDq;A6hR36*RDw40lX0D>39`1dIH%CKvw- zFXqmKt5}8z$yTEV=tB>*$W0-X{)@7dzM!~Sd%hz|XlwbHHrTia3xvr#UBd%FnLilM zv17;WF6pR4Y*$P)sJ+NwdsKJsZSC3A6{T*LDaRJg3ENsEy(gOiG{L2c;M7!g0%Wp+ zV~H6J9Ii6SL=4r2KOQcs;al?Xqa!lovRU77;iw-}U&qiZyaLSSXsmk zrMZFHQb9Af%30W*^7@?0i!!5mAqyfw?IwaS+jva>&MnW>XyeYg)vrQC%VC&IA0}HA zoH*#e6v~xwco`!R4+p8dk<%8P!goC?r0Ov;z|a=6z<7*1;xMZyU%e0!GJ}&->}+r% z(2#@fZmUkTP-PtjA-D~o3}XjBpILFFanEaO4Gy|z%)iePiWk(bixP00XpmA8vag2I zPBH0WQxbD88S%MEaMqH_*kp;HJ8m9v@?Xi)-*6mq6yt}JE06Xf{n-!I5 zK7jFtcZa#`hDWYj)Me?Y2ATIpuor|sN)pO-*yl-z1WR>}i=p7yzK8-Lfqs*B-Wdmq zXMs7%Lvy=6HfR>*;gbCHecyA{7YI8eK15NC8!EbtkDXI}`7b>Y=gboP#bWYog(kW} z+f7_4HUPLR5!dfMMT8n{SgYiw3a90Ekh4yJ~q2=4)Imynx<+0ZJOE~gVk43i9! zWeT7Y%|Wk2M}nqu38#DhBEmu9^FCF>+rfYsJ)79Ciz?pN|GP4P$ z*C50EZx=?n`;f6EOd_H#E7spA3Z%QC<{CiM3x1dU2PD|H9%@COqhzvG_Lsg7?k3Yz zy=pyIcayDi&tA1V?magj`eC9+9pQGq*l!_P>hskAQ`njAwiV0kH%!^WlcK zY_z}<`E32}Zo0Puox%~_I6VY?xY$C?5nNQoDF>O7Diqy*CuXV@Togp^OJD@UA5-j&xuWVdWK zy>i%?KDb!l`KfN&r7cQIR9sWt4Nr+}qD;neE{UKctjrl*BS zway)D2R}U5+S(`yPC@Atbnir`fn!$$C4hu*2qO90KjZROENGR+NFZ<vEHj?=WZe?hxy{eYR4=(T6);S0_10v*R$R+^hj>VAcHjG-Q936izF&V&;qATIc*IH8UJQW0}6>Dg%2Au&*U9mJop({X% z!Uw9G`UK`_iYyhZQy&gENb4$jQN_LECUHZuct$vXdTCl|V%U5UHzFyo|?E z%mEmqOzc(6A#-it>l23NbowGPLh8k1vOhYL4#w6%a+c2aYE{@1^~aSeEbh6&u*ASL zBoKqOCuc^Wd%`G>QivyG(i?6|&7=<-jC4J2^`z8$DrkkEqd@iZhpqwkg1;rd%DClH z^eW~4Q+A&W6jibfq{9`u1_SAx@ckgsRBKMu$Q|`h?KjL8hDe|@;+oCEN;^(x6Ib9y zuQu|C;W)#ALLaOi6`Fd{5nBWbb5ZT}kIH56R|D`8~uZn*agBvzel# z7+=k%M$7|;o1Gm^#bl?Ux?w%fRvX~^b2l+b`j>CNDV#2w#O@4K&yyo=7Q&#kCdS4p zCIc@vjFX%hn-4c|V%CENc(V!TExWZVozk)OmD-V=7R2F6gWw0Yx>A3LZbV}D@(M>r%J z*fH`e5i0+JGLaNOKp0?aSAc_?jGY|HefI40M>cx~PL1IX3->^7*9Ggdw#%wsSXB87 zzKSu(-O5EnMvDG*Go{85h<4z801QnOAPA|)K@eH6&Ktb(t6<^7Tnlw?dyH9rr-u68;}vhxhMQO2L6LSl zM_)52b&ox72JrM%N;C8xyGp58_*oK})Tmp(4 zENRU}85rs}nDm_-k4+Cb%n@6f(US_Kx|%R{dwHUX`1*$^N+Krr$(E#SSe}z|46dJ! z)H&|>#o#l=L4^g_M0xt;kajx)w6ShT6X-&v5#2)CR3h8Yk8#4?0Xf={F%$k!O_a_S z^vf{yKII_M+?qCFCf)YrHuNg_2_JZPSRttsxqaI5_=PLv#}Kr?-dE_;_Fq9eM@>em z1&CvfP_ER_AP~P#vaGYec23EDzyEDiK}PoX6M1KF&1lZu2(mj= z%_zaVqvhX(#e=4Oq4S(s7p&l#P8V9zl5^ZEwM0*Elv0AKeZUb_DpU?-IUeWP2 z#(Erw{o%RJ%j>^PT24WJ>sZ8qmE;A7Rw@;Q19J2^)Bz~?KXKAnU#JR_%7|hT9hN9S zanrmrJO?z@3Kn|5er*X6e}e~g#G?O}^tQgH^OD0>ns8@+ORwD6-_h)w!6{>U*6;J` z`!+KZYU@#Qz%|xTlOA(d{shu-{~-Wr zLZEKaTYM7{%)*VRu~ycv-qbtWtUq1#mnO_f+p{O)=E{e*Rb+SJ zX_XgdS%f~+x|?!Xa;gObk*V=;WK>$O$m=Bjbr^tCR1qdxSp7In)pXSNg~zE+_k26A zHNPLMn()1ly11-QyKVgBmvI=}vnI?i;snyGo%%n-F&q5&P}4k+PpLW&AfTwBCiFxF z>Pl&!Ff-ZHM^ovJsgkA;5a;ym#n1BQOqj2iaC-AOwv=!i$8PHI(PcSWT_I|xLiZTM z)=VTG31`@3smdQg!9>CzfKVXCnborR$9!9s`6!fee^v>6gb(x5|JI`Dc>diqp`aS% zH=DwjT5+G(UmKn?sq)*s2}^x;-N14Urirw!ydf?9)@A}41nQC5Xm2;728VT|q&gOC z$n0+pt8UhEKm_#fdg%{K*Kcr^GY37M5sb6IaS@KkQS5xcF^{vu!+fW>FcvhfL{Ss*P%KPYFqu2p zz4jA#k!L_^8F`*gT$2S^?OF*?N)=N0R1f%D4O2d{CyulHK~~c(PrsFB=#(mTTF_IG z9e9x>=E6H6hju51BlHfiK2^rU3e=BDDf zxY)|`Wc7~&I|S`MGTS^ymrc3mxE;U@=C(n^oZp&zHsNfMS=0BK&9mn|(kz~(PQ%Uf z>{dOn$?SVA!M&wfNn=KLZHdZ%3vy)F^UTfW^suxl3}_xoQPjt9B9U zv{ZSxD3pKFMMBr-CCT^lN``Ah zV9}Z+WN*2*lu}BWqzobo`U!FgEin!Rh4PqO#L188C@&JD;#4gqaH^K+Hm0X$hCMdJ zSxc6|IQCko&T=joj6WC-8hPQM3k4eB4!TU;OM2?BWi$G+9IlONP&hOSs+y-4+$UrPp?K^Nwkmb+9c zcW!dr!gWJdw`#6L3ukhSW!Tdz>n9Gntl#hgYu-WEmTh1GVs3*929!_#f%2JE_eYGY zqyw2Qfyg3MhI_5|bU@d$v2I^Eyc+9PbG^+FNw2J5Yps1Y(6Ja49NHRH10*I?f~e`A zw~!O9#kkfN7l+|qIF}6bA*-*Le61JmwNftJYoR~`+~sVz`lYyDH<`TVZgry7X`0pI z)iHhX>bHfffD8A+sahQ6ujRt2TC&Q4yf`Wsk^bT^xrmb=(qD2;tf5|Hx=Vg7_orA6 z&9I#F*SBuS>iSl5&J8bc^)4sJQtCZWe@T{z`)I7~@dAvw)+_5Yy|UgL3s}Z07OcnA zv$1aH#sc?jtekW9oG~+HEM$H=(1Uw6R(m$q-?jplSup+0{%owTVEQaus{#U7*Hk{Z zI(2J(_~s@*a&oMKVY>sduZV zxq9X|<6yAc{$h>hM`E|KZ-YS19gLgTRYyJZjq7+GiyH(u8fb4S6$~=E%tvN^v1Y5e zqwWFt*E5eAhxz3&r`BRjV+L~sV}2y&A*;und!J3`X;tade@LG#V}7xQ$KoKnYH_9O z3=I)!mg=BX2#?$=VNSe zHf$CX!@bsh4#3Zd3n>5oJr`0w|1;v^2rjB@VaDI6W!y}wdcfTq@*z_wm-6P?8i?F* zT~3!W9^)H#Lcm);as3!4fEfsMMLLyE|Wwm_o4UP{f34FqDZgL}}BFwJ~$y{^kn?F-lNg$eEzuEmJ;;1@$ zPQ=l?2ADq0o%92yn)#?=$OhKO?j1$^{pV+NL7 zs#iy}Z4r(Tv{WGGXA9{EavN`A>k!C#v z{1Vk84h)hQ&rrk6Lr_d`d-txm{KUr8PJi4=*5Jd)5zMb2v7V{s z&3T)xwKjWe=jl+n&`o~&`^PM2b0_4x=tEXNXZp1+)UcUd)dP;+S8c~RTWOpO zu?AjwE$J&3)S6}40z%PZUh|_!f0Wum(a#+W{mjy-0DS`f8F5j@-`461-Q<_3Zn@X8 z7*E>+Mk&G4l_=4DG~G*zIGK02T8#Qt9l>4BOW3Xiu6gS~YPJsKW*HpgVC%MKxhiw) zO{{^QaVjIY%dr;YRLWngw;n~F4Xpmd+8;FQ>~za1G5E-_J~n16o!S;XA2}Q^fR8lK zCIA!wz(*R)RyyaDEAdyevV9l#Y@BeSrNyzWM@viz*==wN z_!jPcN`?wBo{P!d1^yagfrGiVxD0>sTSbR?;Ziei6l}e&! zix{!c;UR=@h5jYjCBXX=#SM!cUO|KnPOUmAg=j?!zSHCwQ%osJe5X+y^x!+K;-Ccy zuuCkXC|7)^;cS{V?Ygw!Q?p`FF#c??QZoL0NDUFk1b4nwy* z*0g&PVx@UD?Q~F zr!9DpaRJ0UKoC?s2?B~Po=h==K*b${rf;Z#;`w;7=2@{cu;Pp#6w!l(5J#A2&?rpr z2w)%yLkLoW08+s;qhhgz5j9iJIGL^tuKa+A9ynpe2CZ7gk~YPNX^0b=@S22~I;96& zostEPSExWqwm7j-(EUXwk&WkxB$pwLmh}?VnKf;QUt+d`Ch>x5B z-s#rE1gny3DUA=Bk)@y*0faO=!1kXJ6g&t4(|<-#SVhMV*$DF|UwxQZp>Bjbu5Ac=tr%y^w(Ua0~Gs49xMM}#Ozpwa^@N+2a@ z{-BC6>=kGPVWL44EHAGmk3)wnZg4JV_#yM5qWX&7vas_byzJBCr&(RK!w~W>FpfeG3;PNt2);CC#Ea z{Cms=NumS@D2Y$AsO#UKxFAVOuQt|?N0hQ6LiG+WjaY2%lkwhtpQj#pqnn(Ee7#Ac- z7MJVwq*>Dl|K4&zUQb>^FQFt@nl+dHedU5A!IESt$&ydAW*Yx~azS1`KR-yCHPQGN zlGh7Lvt|+g1!ZU`$ZJWnCYFCMxgf6~ulH{Y@?!FA-s`k9dOCU@Re39oB$b|aCzF6? z5s}i+ck&f+;_K$S`0C;-3gMgFS)7_n_r2t*!~W@MpO+64Buc*h)uiak%ReI`Y+*zM zqJKpsP@4H?G=w8Q9z~qF6k|M+@?AWNNkr|PfF^k6R}UNmcXR3IQp9<01Na$XLGp8n z_E1-|o)H$GZyz+86d}u3*R}%u_+ky*RGlMJqJ_zhXT(D(8lNLJRR*jZZytoL9TN|LDEbQ z(E2t&*F*0HU;}(eKAy|zK%l=|=2i#YjFB)-;^kct!ZYb_QGA36r2=`P2^+Qql) z^i2-7vbIGGBxnX~9BZt@DLz0W1?ht!mV_!q@2q_|q<2}jWgegpNBf{B$L9HLq*n?8 zD@Zp{a?dEK=Owp*-=g1>l_lM6#DgqeayT}#BPAmYGIVqdg9bQy%DCf;hk;PS_+bf| z$@<8>FPJ>sT<9s|Jc5N_SivKMU?5R|oS2#6rroRw>>ecLi1G*sph;7t zKw-4rdQ_`P=~;aE1gc$-Vj3T z?>z~-Z_6mI6(+zIoZy8JCd6#@YNX%z_;!fJnYWS{CIwxPf^cbxr~-(@gjg&siEyIu z&!~$tx)=iq7)k?09C!6Vw@vi(h8LLn?4Ua1D>_eWsxaw4HkXd&AF^dqVR?y@KgYaH z9F8^9H?Cc_U(tvcQSj5T{6cwwyLRQcG?>M+fjCeLSTo(^o9E;VZ9a?~F=gyWw%p>D zgIPSAIgcVve7%m2tc*sKY%JIudo~uLPp_s=r}5|6%*do}EMSg#)`1?;h-Wi9hi7AR zd_9}#QT2nRN7WFUYu>f%s9pAoyST}Zy!grAW=+#i9Q=t8$c398rw<`dhfU)p3PL9On%Bc53`%SH+Ni@(+PPyZ71Z1tiD_Qj)$Jp zo#S4+r3Lrt(1Fj5TGT4Mi8v6-QOcY3jC5e+r_-!%G{8qx%2@)ah#-9Tw(uQ4xgbOU z_3ESqJ|Puxo^9)p>sH$f@O!}gwv4afE;V1$7FSiHxBrOV?J-A}S(Y`RSugWTJ*zLY zPPYSYE9|JAImXdYZ^m7i>K=eRPrXuybaIcU;t)GFxe|LdG6~$)F&iz6UR_8#^|sIE zKHOA3Y*tOT{#x&UsAhKRMWPpJryhd{f_ZrtpsQB!Z(sz|YdJ&2$$a|UZX`zY zmTyi<;1hIguGYQQY$tlgv(j#=-?}3`%c`1}(0E$h8}cz-$n3D5o_|D7#hM@BcAy+w z8x$0yLdnR)ps-5C#W;#+DCvq7I|EAPM^G-~I*oaZ3Zt?LL&fBs8Bj7Ys2J2vudEBj zz1Ec=&0)|LE8{#_W_em!4|s;^uVrOWu5utTUULx{k8xEl;^c=+j>$8`II72XShh$) z+Y8Nt$MO;=pCRI;tShl9e=Qp*mvJC5u8MJ)m~5w`@@rwM9!sP=HRCfW>=$$0>apX; z_;Knnb`>WRv%yvgoa$tQQ=LvHA)eN%rDfH!YS}c?38z|uV1%9onKZZVGbznaC)|RX zA!dsh4hErSh&b?LIF$>ha*6RDD35U$kI6euT=I_?m&rTSV=@fdsgB}l&2Z&PP*6({ z4$|Co(oUS_CZUakK^h02+^m8j#!(I=CZnqSY8VovL@A||(u`J0E2WfDn$e6}>lm%rv!R&<(_`764fPdFZ?jeP z;2uh85V*^EN-4emHdS>X(=`Vo-)2J$uXVGLBiA)QvcWK2b0N}A{USnV(*kRWMvXIgsn8 z&9N8J{5IYk=eMH)JKAr(nJL4WWA4P6?hK#hj$*mv`C474QAh#qa&GdCUd2?bi8evF zTg4%(NJJEmrW90?q?9)vao+Uncb<-3gNf-!aWI_BjJZ&YX~DpMs?A?uU|w>O7e{%_ zi=*;$aTu8v43mPvT9$!9#mK~<$&m@e~<6U=vJUj3L4!{nS9OsZuqW}(m%88B?pl=PXpj%6afvZ@}ibs20B zfiBoXsf{dybm}SYwMw|TI_ebuba8>DHL^h%!={ZrZ_8M@s_pFw&%-u~_tTn%Fy;rIBR3yqg`keD#w_KOw z-g~ioZ_GGa-E%z6GKwiKO;YfGWVR&a(1vi_p8Rz!#HZ zmMi^A?zP7lC)dFY`8VsU9M3;)2+Y$A!GJj0Cm69I4Thuy!j{;~H7gW}eu8lw)ZL_e zNdu{YJBS1j5)cS7fjzy7Zh{UJ4h?Yx(sTc!9PtDQevgz}zDd23JXi>O+NW1NYvAs| zoK>5pd34Cb)A1f^waz)I^L%%AwfQ-n4S_T$TYxq3@pPoLz+K9v#4u=^{C#bKFeac1 z@UP3Q$HkgF+@@okbeO66bZaf8E0b5}d5pVUcf()TI1|^&$F$4ymm8vemN6zEj=AI~ zwY@r$V-Ve$9N=zdYMN%{HLrlCxe%g6G* zhk471Gi_YbN0&rTM?2;+3aA3?fgL>thSZ>QljB>)uO@dlrz~r^OPSm?Eq79i?=qKu zDW#g`7}w=^%(JU;EW8%pYdQ6qrfJe^=0kFP%`yszLr$)P$r2vb5xi!UuVtInX|Cm& z9dtRXoERre*G!-A5xv$yDAshJJPm5Ef18c?rO-aZjIciXm2 z<2snvJmc=hb(&M2&$t>Ml*?0>-n_s~4lR_Gb%- zl$>s}I-gU+y1U=A+2Hhaxlb%6CsXcV% zx<^aup7zmFniUO<`|`+Hm(g+-C|WC}oNcXLy?uze<)X!yymib1^~zdp#_db8OWsqDpij%L@V;6 z-xh{;+~nw0YUb*6mD>yRW3E|ZwD*fF%gqqDvni)}RG2{W{lj-!a{xoX7b?-RgCE@g zjF8~OU0BI?GbQlg7sciCDOdsxlmKaG*b*@^HFJv*uqI z#@}qki@(w(f&RL5$sXwg^PP0PPLRPQm&@g9T`P@aYTYva`tWMr*ED`i*OXt-z+EHB z{z2Mu&5e{HdFJ-vsC>Xw#}7xPxr@hm_0+>rZQkNC4%4IFx~%};h951PxA>NA_@TLr zYuSepRNjFt*n&AaI+EVf^;*&uaoWnOxeoJ<<-#Lh-Q>Wdc>S7kmt%8xBjZ@^R@b-O zrLJrFdd(@0lc}kRIluw30v>Mt^K7oKUJICChdob+^;8bNu@(SHK(@c@pWEr^5b%`% zUp+sZMtU{ZQzc-RuU+=lh_Buc2Ohnetw-%wBT?ZD+&`Ok5(9UQ)IWF2T6O^qD6i&i zfpeFV@@n1_y_)x`7~uApbmNu3^6AKAZeFiv;&Q#>6+=CM(>O< z&dmqUfPr2iAP3yJjX0?oT}t=rul269V5|CT-Jofl9bGd!Utuc6AP6B#m48NAT+(s= z86ly_ByAF`(n3fS+LI5kq!LQV#050SkU^@R3u)+Z1Q*a4!j+dxFQt^Ofq^AN!r~kh zvOb4;1*KQgU4Ss=CRoMva)U>3=Rn|RgoGfZH)MM05DFU91vIL>nzvc6SY{o20MC@% zO^(j#9hJK9Y$QyARU9IHY?obfgHVSYg^zNb6rYq-%J^V3$w=vY_A}2ie_Ll6bstIe z5{n!XVkeEJ%zMMS`?YQ>@bnM4@wGa(^>}`*?Y3=S5?y*_6#jT9Cy9DR>&^WAlehWf zXc;e+)GM9T-W!&!m47dHL$t5f#xg1y5XXDdV;QlGj`5swt(EQW%{mXMVjh;?t{|Z@)vml2ES7 z2^=%cawxjK{YfL=-Z3tHODW&d=-KoWtbzgVCeruB@&X*hh!@a{iOYt+Px*Tpe;?!T zgA~ytl;r*U_wS30{ENSL@%JrC{$%7g2U2ng{k(>le2|xt&$7Jr_d$|ic_ht(P(Db# zYL{GX(yO3Niwa}{Dk5c5euE~~wBK+7H&(iN;)a3SFMWc$hhY|w28NDTwja{BOV^Tf zHxId2MbH)xArwnch`5Y6iT-HX)hV<`Zl_o63lIW7!5xNT{E$TyGg|En00QpbQniA+ zw>0I#7M2d?;d}2v_+peVz#aU7PD`*}n|wRW&kHZP^X4Bkaw7|dScX}8)hp<H$8VEPs0tR+{haW~Bt`R3L{%E?H zp>KaqHwYp1_#5SNTsTw#(7+w8VBpR)H1iX2T;Nddst_|4Xog8Q6LdxB+e>Ki4(2=5 zP?R5xys4;J9csulG=%i+CZc9VD<8#&C*MD&AsW;WiU?JNl7c#F)^pSliU?JNl7c$A ziK0VN{h>(_$0gNFB2E>mLOc~J(Upi(i(bvryuB)^Ky^v8Fz-r&Z<<7}I9~b=V{yr- zpQ4C^detJO?@U8A>AN!xRiy9EG*q#ehD=8$DW)P5k#;kz3Pl{5SBY#D`dW#;^R%%8 zj(|VRCZS$+b+vbrl5%99^?q0W??Ns zjDXUsR#NougAf7KtjEO|P5yo4RM4LXIijaoImi(`52N&Ob6d04d0G|o3I#^R7}YwKtG%(hS>3piutLEz&-4nqP33T^A9a;?o)s<_!;BUV zFN{{bX|!yj#*n35y8ZBhWJ6@i-b^ms}-bC-p@}EKRZBq=u%23C6usQ zaqoSb%LpNavE#c^!l0KiO6U+a>(vvL zUIO(HQBsOZQHj}0|C|!3OKK8zNnP^eGbHu%6T}Zqf)y)Ppp_ytk0Q!L3XyK9 zz2H}jwqc@ zxu%nP)j8@Fb-MMSv+5wtS!Z`cPwKN>Hl=Y+N@opbMqqo@-f#!A3~-%J)>@y|H9Nc2 z$M(tN3LZr~uHbP6hPlZ#uAA5)%ua42PK%#TZcl#k$?YlgxB}v^J~tLlUj6bY;&H_( zHDlr&h}6@(Te-#s@z{dL5sxb%j&_X0y{bHlcu3(<)T}EYkE3Qmw+wK7<*Wt-=5fU1 zh{utsX%shC>JxZK3-rz56B#}MaZJC_1kPpX^2#SbFC;6n*A8anmjop(ma^A#}wDLm?p{3~3W6S*N|ppJ!R-Ez`3t0{63R z>yepUr!&+078CU0LLW2@d&YH|sl`pE7RTIf+vc~$LLcfgIrPC)w;m=F{-K8x82aWW zQ|3Btda;u~eSZ4zdY}r>XF~Y_Lm#+Jr&O+eVIg||7bVHk8}a0C{zWmu$lsu+Crj1p z7J>T^a&U`)v>~ps#={OieBZ6p*J^KbL5B*&0snT^r_yI`a_HR+{U*mYH{}lg_Coes z)}aD%Y+n6RnOhHtQ{G{vp(@=QLeilEakSfdq_c(2QM0J%ATu|{7+aG-H z(FVB2M}JR)D&`k>d^-o;(7&v5fycM=SmUpB`KHMpxhgulb`BW4TI^NN@PMIPn>*{7 z_vwTa-ewz4czB!DC0=Qb|D;Dk;cv-#-Y*3fEu(uJJbe+#(?TrDfst zFxzl?=uil)^hs&pBSbgw$Pom(aymjz! zx~PR(1h08`KfE5nV^x0?s992`#RdAy0@X-5J)C|?$>Ncy;Gg%Br$Qq^;-7bthtsZh zJr(+=dx^(lLA&5J3?A$H^NzvO5&ezvoy?n7CWmTdF?qM^O|HlH)tJ16i?7C%-{wNQ z9%q>par#O7DYws!h5ioWp{S_n+hsTLPVH@j?|yaAvuXDwVDlbv6;G)14^siNE0zPYxcld#6$AajJ@uwTO$3SeT4O5*EgSPrC=#uzQ7 z6!yR$41sd+nCa>SM+|`e7-HPUycVB0%C#|DuTC$C4n%*xemtjNRQaT9e7O{IbQa zc?{UKjAPJz%c)pXW9;tk*g~^tn2ve$1~lsdK7?FLn^KzjPA2Jwxzldut-mHhX?J&b z`-_x%TiUcMyxrW*o%|lL;lw6}HD;@ZPo|vGa)1HI_G5DmZZKR)wd}DbhAq!5v(gsB zmX{*dT9zAKuo&j)^<{3eYOUA2bE{|5Yu?FxW?8LnIlq|?N~OPT#vME07TQW*)jS<8 zJe&4*0ze!Gz?ycMyHx5Gxn$q1W{5Q{7@yG}XlmBV;iTjh9K8HQz*(#$Kj<3wgoWUWp!ZpX=VCqAx|>2Ldy zxt4dRXF2GhQ1#3Qt=2J&n<3W7AY{i5xU)6bh~vwKhl54CiZwC1>IgrRi4E?HI2ul^ zuB(8YP7p$;8RqTnDazBb98U}5cv=>Jr+8X$^Kt!FZu47x%R8IbyIrq&r*bCWxE&|Z zo&2zF$~z{vPN2zuY;N<8_02DLP27%?=uUiKc?Y&IC(+-QB^S9Ln`3zg^DV=eRWV%G zFwZ;&%rooLW3WD}Q;(qzy%?m4sMJk$bwLajA{tBp0CN-oASe(F3B*E?SS*-{swn&v zfDDGLMs`#h2a_O&VHAXnF@zvu2qD0L0T3A)8V3L#gvkzEjJ6ehaie4To)?~(g0%?{ z$HX+H&iyy7)~fl?NtsN&Nf&Y>Y_!dRsKH#WjY2FRiim=|YU_V#_Vnb@A! z8G;K2GcAl}pf3+m#R;d}}n8WmsNVEK%3d z!e7<#!&Wz%Ot$?IUvW*|_<=_<=A_lB@(QF`9gZ!>Eat*C$$4Exfn*|J$#eKN28mH)5HOh35X!e zX~hzfeV`!`DDaDUVvX-g+-*6I7VWiXXMiW ze5Xz!?P&FFYm@hta)(s5aP{5t-^KKbR5Y&ryt0_d;4n_oZfQGV>kbrpvfrt$dFCsy_g9S$+`gbGyHQ-=4 zU(_AF&1k~ouOx>*GMt4x0ck^%h0IO?TwF2`q0F_qcdn$IT$pO0wNrct(nuXaZc~Db z7*~%C5<}>R6hAU*={1wjY2jre#D945BCb4n&Dtgy-Qn@*TdoR5r@@7PW3u`??V((x#AD@z z*o0(Y@fag7<+*|Z8yp|qN-I#U6|geAWK}(i_?qm-2F!rj^|M#N+~4p6elBWp3hzv+ zey$$)T2Cxjz-yzq7rtA(oh>q~ZM)LC=y}HRzplCL!#7x9pxgD22(fw!fsv==a5%lOdS<2($(f^qw2hTO1i{eXekb zmoU5(t{BZh%kmG?2dgNK-D0=Mm#oVEqk=qJ&-jwmi42(pgpX@4Qx3#HNlMcp6j}^~ zuQ+^6*zrk)ZkECZ6NiQhI0-b`*yYMR4+1)hYqbR8kdjHxT#r!_Hhiv4p=&TC^mlwu z$~=tU%>3Uan(!DCx#M6iepxQwhUIgL7VvSue9bkKgw9Tl2yRH}{8@8~<>%Rj??G;A z20juv*n-POdi=DelFPaB#E-U38wKB))uhKrD)D!b1e@9d{yigl)VP65hnIK}Waxih z16PwK`j{LTLgIg9;zI=c2ikxPwN3zPqT4ABH88=tsZZVFVO{x#zk+*L6ARpqgfOTn zQ(rKFJmDUf^l9c!N214musx42WsDCJ5X9sdlSb~}2k5F~#L5If5NDg;2N}~#rAE?^ z=m4BPhz(FDLA8^qVb=CR;M+dbDZj(-{0>+tDe)CiC@atqcIA~VIw`ot>&UEyLqYx; z*KpK@p=un5g2Ptq6etN3A)h1v;tm7+;sPx$EGxi4m2&T*9UXzbr2iIa-*S%w{GkL0 z7dYm@yFd=Hy)A0;qBp?GeFD@zOoufb``gm!rUryM0lRHTktz5M*tB{ZInUHKZWRc$ z7`pc6Hez*@SGAoyBepP6jiWis2^zzV^BZ%$K`~azG1DSvY{^aIFoC0ji~>6bvBJ)W zWmHQ6|5{dr1qW)H5WtbtgO~ntB@n@<9$rvqObHDr4rxFnZO8Cr zf>-k1j}lU4iXp!rfBtDdg1t7C=RL%b(WIwvdx%zv2paT>KHWZs6>GIhr{Ot677|HZ z%eA-vkHl&*e)rM{k65xK#q#P*0|0t$2ABrzZk-Y91##{Wdp5Gf4KlFbvvG+&>|`jw ziXj96L=pQRAs$huqP0-A&_2M6_HNd3iRy5sD!NNQ&$RzHTvf5f6JM!&D}s=!7~e!% zlBX&Ql-eK@?gLWluzbOZ^oLMcYU>DZB!B%kF0n=mpb%1S&cjNN?MW7tFs&6mwyjw z(i%y>p`8=Hw7l;RFxlgOz^aUMxL4Zzi=@Kv*_tQlus(<#CTjmG;OD=;G-*$d-dO3` zkDqWOzK?6)5dFtV>h6RYB%SI}bg?|8q>h#G^tntYL3&?;W`AGFtd}Z&4Q|WV0&bsH z4>^c>ve0qDK<&EEX|Bs{>dmNq0OCVr=vf_l5?lI<-Nk)x(tM5PkAa4`*KB>MBy3*~ z9Hbo;BB6W;@A2lGT5lK80b22TI;BM1=v5i3+`bRt@Os5acHMup7+fx75Vvt^ZvOpW zRy3*3w_rSEBJK$V@Tzajdbp@x%w!iINRz(Q_2RBtAA$LBnZj1>91=Szg8Zhj#(=Cd z3Obgyb$&M-nplv&N$8whP+j*;nn_vdR?ItHv~Bv?;u+`0ClNs;nPi6$es>%ye_jSP z87ZY(SoDWiWcNPi7fI`ID~OyZpAQ#FaIRs3ZK&0OFX?%i_F}~NW|k*%Z@mG@-W^}1RUzI~qulVOFvRum41j4KFQ^kJr3SPB`4c9h8z7~i z3ETxjO+n)Cza@7^*mzW@TekG3H!>fAz`8SKblP2ghBEE*4$QDzCGC$uumQz2f9zsO zFxkTC)A(;LutjYPJj4P&X#Tr0i)zhg=O0On3<9sA4g#L)-TJ~0?Wa-`3THXc5m#0w zdvxj52PLmDGcOB9;L7$E$)-3j*ppocC;gp=buFXv{t3BpAu&01!= zz#?Ja<^WzlY4!)KXA8PpTrx)y_Y|XkHnnm~(HAoQA&V+LOJeL+lqtO|n<*PXbI4Z8 zOiCL2+(zMiPA~q{u2C+}@0osY&!sMw362XRG)ODD`IU&L^5mDP9U}ouO#ngX{>91S z&wG`?dFy|Nua7}EUmQ04p)T!Sb_`HaXzjiX`Pyww%WaSJ;pU11b zNOw;!uuFy_K$8!Xo~kxiSBVjOnwahtB5dWhyph)Z1Kv)#J*{jrm(|Gd&T({;AGk2AC_O4A{k!-1JFTzkOW zMPdhELR5p={mmPNQ@g&()N#LN@G)+<&Z07_m40DWErDi8MNhpMw+x9 z%jMG~r4hY78Js4t`*!%ujjeu6Lejb1Tezx|NRo+qk7~HT5PTCU)woI#Nd{X$(kKO6UgEg<1~pTthcN`g=jYEW zp|>r7ME{@EtaU9QsXZ&-DC11q1oJ&8H^4j}!>tJ7xMpG(8B6*ev`C}ksSE8HM84;W zgtm99g!rdS>f&m~sC$TLMpR;dK*ipwWK;&~nvb!+-Q2^x>4dm(G9UnNNxfP;v4UoC zU$&bd9#tkJ3Y!LeZc`F-+jY&d*#YzPl#t-(?{QqV-NFAcI%KTmXBf&{J99g3=o@e9F>Cdbs|)%Dr5C0jY={kk;@_&o1|+#y|j~wDQ;$BFpXp0J^>SNCz$CiqXXww)Ub0W z8%yFyZOd6?tW80{+s`}uBMPA(=)Bg?)f}er z!*a3PSdFSAvnGi@(EnGG=+MyS`IlwZfnH{?*&wpmy9%i)Nh6h1c3EJ$>90NRTR1FB zW79tZst9S?ucn9B#yNn)ja4jakQV(~o$R0<~*u}n2J&;7ZLcMi&mIF28H@5tz~o-w zg*(g8TpCrHAr&POtgQXqlLQk$~Vf%hr5JVa+#Fs9oNk6JZr zk+OE-#CB5JdrF zd?Z>EjA8*mWl!YIX8oQ_+Zfe|0C@Z6pnzLfAFlB(fvCT9k^rO~8yv5!@V4QOLE!2G zYHa#()|Y2kilnI2i|IzkEvXFlpJxSD5r*$%>S5h{7ZynIoR^a;(hO(!pf2dzuA7mZ5>j0{SUP zfT{TlRNt@=&#SN)P)hvv?b>1qI((-&1Q)~x%?!+U%GmaHAQ^`%+U(q==a^V*S^xu3 zg*PEmmTsav#olecLp%s2=7tnA|DBQxlAQERL?Fpu5cUyxs~Ry;h|swK<-fk z^TsipZeAy`HHc-}E*$RNNycO>m}U~=LTfrZ@_VXq@^ZXG6a9sthK58s6BG9m{C>Ma zw1hpud_~*)U@uH2-m5l}La{iEwyu>4oiU}N@t-*l;vc|{B|vjG`_C%5m(*p76}L^i%`ar~y>w4Tb4 zJ#Q}6W>d}Tckttd(y++_SIFcwj4Z&WrhsNN8eddKtjt)y2T5L)v8{S ztt=j%p;#q%T_(++e7jcb)hs6Zz|Tkjh`~CGS!_2cJlsYl^H5%Tk@Z};xA}n^><99_ zL-Ery#ftBt!{l=b2O*%*jv)BCy<5}S$4TT=BUl30VOc1G%hSX<=&asDvm#8mytxFl zu(1VNfq&=h5-k32x5P{E_~x}k3p{)qa0!N_3=wX3tLVY>+pHnuXVv%>6CfUYQUCE< ztm7wwa3E0%fg1lIOB8SW%tpYNY*fBLQi1*;0RYbxnY_QHWZ}XiMIjJKg2^5V_@cJz9x?DI+-q4~a$0W}NMTcaIYwW6;zd zL*k8J@x1qt_3{MgR)@Go{>VbK_GLO{7~^kjgiOMS%Em`&2vNgCD)iNuB~2!jSLtVP)k2e1yo2lwPUlyUp=UpTTI0LPgB zL++Gs1J?Pa>a`9072J_Kgoj5Jli+7;Fb(XNJl$)EuqQ0{&ZLbMVkyP7EJ#%*$7%@| z`f&CYKy_|I@tEzpBhI3i8#hXUVwz$g+$ttpIAqhJdx5wExRBDRM-$AXxn# zOTOl=nB;uID3~>{OKF&h##_ksMu|cSj|?7GI^YFL(qk4UNW5ud+fuA*bg7|iAH~SG zhkj90!Jm7Tt;|%8<<9kdv-e7;O9x^dVC`#PFsw3YbT$XPbIuLs)hMz&EA9E4>a8Zg z^1-#uKpm;hY9Nkh^iNgF8v)Xq9w~!CWUvJpC2~R~mhDg}HUI zTND%=iB%*&@N2mVnHT!`yPSzop6o{d9cpdYbqWz$pio5QRT3=tzP_vDK7%ezC!hEpTx~<9~?+2DThR{2-mn;LG3xv`jpMZZ_ z%mNzHgA&s^djJWp_N?%>&6?m}&2JZ9Se^u2?h}=}jii&(ylLSXm&)tg1_O*G`ygN( zFR!n0yi?#b0EpIpy{`R>^4>o`jZg1|c1Fji?cg+;#G@T@nj<`jk|)>AWjnp`Qd=RZ z_90VrBMQqcM_!`d=`1yWrKTU~vNEAx;3}oL`Whkp<$|k`qou+GDWrEaSremB2IUbj z#HyVC(x%%p5}xZyBSnRo=(+yL-F1+8Z!S#r)8%wbA&x`k#H)I#Qc^*9 zU#6r-`hkh87lcFxNnQnOq5sSzG+#NrK7Ebimj8v2hF+kE?17-_2Z*eb3q55Av~(O% zM0sSF$qr>nZ-?;~bp0mB$+G{M#J8YnV?h`rcb%SYvXY!y#pG~cLSxb>rDABTITP*jc%;i7;mb(r0D2{WyI4!>?v&K8;x0q8YlCnLqX z8$yh~IF4n#x%`Tacs%^FUL&YLoymuZ*=vle3=KTuaRM=mV0Y!O{YK$8Myf)v zB{;Urc}cDf*YMw6F$d~in8N+|AaAH9++prT@1)JNL4Rtso4Fn_@SG_X7A|?2$j?+b z2r@`Pv8L@uU%CBg#(mS~{^a?GQJy3TST@gWhoFISMIX)^ z-IOLQgG)=$N?vgQP?fWrOd@ycLqz1AK}dT1-OA?Klj3$-_U}07vBQ*2KxR@T*LTZ? z{hCfb~HA|)K@ajZa%3#aW7fx`dbWdZ_86(6|HP}LYHRUFbkhtKtg2E=1SLO(XxJ$`CPQ*y_3c8R-U6V zb|Rut*%QwAo3dwvw~`$cm?%yC_WZfnkIO%8MLRur?^A6c)MM`!CW?XO{0Q7NtELpt zokQx<-za0cG+rutF;tDxN%8Kwo24SZvT7NDCIDPnC}K4lX1*enzF&0r0MDk`1WP&B zqKxl%2-uY4p*qy;WYMnr!B(1oVw%XC^6?eQ6ao(E7o%$5O@G%Pqiu&$ym%e925NvX zz#~1!e_H}udG3B9Fvs4@moZ{&C-Eu8#yp3_c5lk(X$|e-!ix_~sq4DAZ%{;;t{9yk zR8pVmAVFb?F!Le)5-THcA)_6)-(_XPJ={cJ_uYjzu0E}Nza?@-)EEuaZy(CG-Ztml4<1v1`v)p zEPc5w7)`quvaeys$1PqP9qaa4kRNT zT2{WDqzPc#cPQDGdR{Dq1y@rq5gG5s=;U&X?ppPMhG20R3?DvUM&af=FJVc&7G~Nc z%UeZiESN!2+kgwf8XyWMOXkN6??s@u-3j@c;9Yy>t7}_875D?X3h6wbu7plzyKJRp zUjHg51p1g)Pr=UHNtmTTr2V?ISHqv{@VPU&U~GnCvi`X5W4`JL?B%1JEDS;MkH@2R ze33(KSr5ojh-YDIWw#H&T4GP=`u8=YvFKc!-6t?Yy_*7pdtb1Wb?Xbgf6v($xx~c( zZ>j7(uLfaZ0@7~Vu=IT3vP<20SkcZ;-z5M|#F!hJv|7ol#$J>%FC_Jh>Pft(lHwa$ zTeE#Bi|@Sur-z}M6duGIiE4FpEH+v+JRD8`f1dhl0zKZJ5WJdWCH`i%%MQHLI&!T5bW@V8`P3^LGGj=fQV-AoivGHdaw*MBU*+ zvt`ohDjsvR7?Dj!|4bd9g5f$LF2RV`fX%>Eo10CjX7(~z+q=_FiEMBD6<278jf1W8p z>3^LYAf~ukcNwV;Cla!ia~!TM+)4+hwf*g?z>MHJYSh1(ZQ@2mk*So>CrQdiUXh$d zk!E%T(ovTf0d+q2+4T6%hwp(_nc`JD{VSHlC>2ZBa>-HJ6ts7kLW~V6pVq}L;mqr= zR%Ny?l5BMe`rPbp2s{8_d;S=#wpZBfzS6qBR{QiH%VM4N?ue+ z9O-ejxJM~kmJZ%9UPP9rJPdQIgp@mR4(5Ikd1A(tNwE9Hh^|rdTC89C9{jmY#|KSS zyMd5Ze1NaK__HcEN5Ndh!Ib&%b`T}j0q`jXcqZBx4_jMkhliC~}(ApiwOK!f*n5 z1zxY9=%`nC9JPzHx89)v2X$6eS3(_MsvZAJWeFQrRyG^DGsI9Bw&{uL2ZZy7G9D0V zhC#o>e}qsS5!~DgB5hy59tsT2$`f<>bF;kA8B%(d$V3Q>6~n`2uQ*T(^OWOB$FJYH zh6gy^yFT|F=QA&1^)!|i{C(6OTi8!p6)%8D!gD%dK?IX zFd=59slt=5cJ$EVAROVh4w zy29HYJg%JacX+O=$xrV-VDS(W3s_>qoSrq@|Ht<2mNK``2u*D6`6GerYs26;S&nEh zbB2|O*PLbLRLcL45e$n`PmkH~HkkRuJBbvrqq%rF!MgH{j5yg8gb|kaWzy}4c`Sg) zj4GSvnxn92C(l6~B@Q6AHT-`}3nvVX%d~k#;g4Ra@@`dhcXXlB-t}g`)-Z8yH)-Fi ztJk+l!M<8ka8GfhEL8Fc4{PKdJq}O|unxc#T8{hol^fVi)a0QMCML4E7jZZ8dzbn| z$`1TA^2%8Xz7lpU^&GO(|17aFT^6CtCXF{1_Zd^ZN50k*I;c5VB=<5#btw<;3~cc| zTKuVD2Ri7QKpzC@TQx!0m2s?0O%eKJ*sg_#Rqc9Yg`>9}FF+q~43(#;A#zdP^N)Ab~iPx`f9_l@F^=I9Vr z-7SbZ4Tej1_H+;;frcwSQ~a{?{H9|uN8uJyWa(BgL}dHc(*UMHz}5-ZHnLt{XtYAF zYHA%6CEyZ{lIN{3@jxY59s=?-f!Cd4QRc?zir~37gZgC$8#BEtiO&Q*v0bSS7pefP zL99M^9>JUxqpKXmtnZ|KMh|Uvr5zYCvad~F zoORs`MfTC_vb0pH5Ba!zX8|(f+t*tqFx*o>_=@@V9fm%>W#!rh;-T|v>>5{NKE7>y zeIsDl>+&7c3MpK&>7i4ve&c^_fZ?+f_;aTgN?nl>6zC&#!-2^I5o-4BvZgP6nVMOE zjg{Q(-O436(}mSFx!`6~s*cc2_e&Y4_G*1w85))bY8@LC)H*GLB=e|t8&DYs4GXp_ zgS4B%pao(^F!JPDu&gN?5A!)o=3{Fu7;aoQQyVtNJcO$Urh8QmlZk5A0+(?Z=SnfA zW`*b%k(hIYc{=fiD=)=q27oq4SauE{^)wc4U}%sMs?3tsZ)bX<`<>r621Ha$HzpJr z>L7L}5a#d8lMJ-Ua4Mup@Qh?(n<@p+LmLBGo)cY5L3`qB{7xT@Q+ahkulXrw5$H;U zfgwWMz7|uC2lt<9{1a4{xhS%6I=X0*8=rden`@mNNF;*ek|w4=Th*-~S+mvFMZ)>R zZ?V3Ax{QL3}eDHA2S^h)@ zQaZ_c4pQ?W>dzxyEK(uyu6wD|U#4CR<6?$%g{Y-|$`c<9y^LKjXtjt4;|5@}!NL_N zm>4I5+zcYHV)K$iWfoIL8yyX}NwcSu6Sr$iVLX)tk8VwvoEd+-C<{*xztgKayqR>0 zjBtUxknc2w|H|2I9`^*_Z`=o8bZIh#pi@)$a^}cm@_h+2(>CF<1TEABvsFnTOQMIn z$1MyMHU0@E z*O6(m8<7!ca>>pL2aCEtBbldy9T{5!0~59$<)gA@2GQ3nl@XwX^PF_$A8nA@KN~P{ z$Jlapo)3EsAlwv*1j}O^)jUsT7rEbXi3YSupKQduJ$ZBF0)#d>vxRdJopW9aR>&Q+ zav5t++{!6xf@Eeu+@-kkg?xay+t#okofefmrIz`Nv2p z@obcg(7-u(@!{^D^GF}(?Sl#GN;tuuvY34O%8;d;0M3}hYBR8!tG1xGe?}`_j%5gj zIV^n-Yn#UsMt*SN3td_ipdKaZt{AKqki%t8hnw-g8)DSgzr+lf(;A=2y~xkL&)`Y! zO`^L!61l4-cYP36g2u%w4VmMMOOeD@c5ygtq;&<`unZPE-(YX24UWI8M6=Ak7dDZ+ zzDPAf=TlN98$VscaY-3xU$L3(MYhTuL$WMwwYVo9PG#JxsUbxIlXah}JTa#W0yoCt zA&ET2Gs~5B|0kqu^x8ysP|q@X_hb*NJur38G41#g_rU(+^WlKg0BbzgvuEqK`z4U$ zy#;9FO6dO||FZXNHgKW#8wYMu4qer%QD1g9w~P~9e=1x!5ojD{k0t5(mnrVkRomyT zhIr?{e(S?E&%6?vmQcsIVhZE?j~;7{`$a4hjq~nxjQH|FrPb3WsVWL(>3Y6AZX%I2 z==U-#ux9+biHU+Qrw8TL54yQ_GW}$;d8rY*43ozQgda58jx~ilnC3MW)uK|vm z+XCG0&#<)@qCR*53~+oo^H6WNGP=40cc;W4nzv;p7$JMH&%CDyrfj!iE0bwI(rk zQ?#cq00%K+FpIDE5PskfYs+jgen*oCDKgDa`SaP3sNilVbdEOxEk|N)B2ew=-e?W# z3@-QMIDRRr;M|XiB}tDf4a+0+NqGFb%i;_1ME4*O_|w?YOErKS+Ej2f3=t%MBvkrD zH80ATF-h-WBiTF9bV2EgMt&EJ+v*shQ5%POzj&f7K7U|KE~@~$8If}$XDer7WI=VA zDm8PQvC>{4GBgsLbU3s8zWKkT?j_5qOHbRaXCYy;q4=OE?G@N#a0V%zJwhQqA?r%X zsD>5`LYFxA{>A{jP$4^l_5NT#xt5Zi6VBslk`Gy4ONX}QnsKVN0fII@F*+SD-922iP%1)f!0VP zq`ZQ{b+HAC+>QA24+ti#nI`+@H4k(K5{;n^0`w={@5*o$1Js+YsArh_0MKTI6fKtq z435uM>WJx$v*N4GR$L=NiWj>8^%B7ts;T#V%EZ~7XQ?b91_#)x8w`vFd))xapd2M> zr5V-la?>H7Psrni^sP%9Jh1nI?K@5%D7{Idtq)&3iy!_L4}APm=i@B~;cvH{i{Huk z#Wel!&n^#tJ6c?v)dc=c4)|%BgTEbCE>>GY1Wx_`aXXB-xSg#po=N<06~0mMK^Ye) z!Yu;l$FpE{x6>#ra7Ej2O#eF-PNbgRTK^V*K~lhd5 zJ091V#!BU;p*WjSYlZD`6Qlz#c{Y=&+@4k&LBep737Lzl#pM%)maQY10!UcRjM|Ze zNdgFKOLM0tfXwkmj}}nCw}CathwSF z6lBFQavOU{6Y+%w(oJIP@~}W0i+<&rUcr@pckHhWRLB{z{ZFdc|Sj zH2Q!EzGE}jlD6Oe%RYxiy(+!N@g8kjtHKJ82`D?B%jyuBgzmn(MaeEozUEDG&c%G7 zw;)>?au~bZ6ZZ;YOrcw4ud1Mw@&LMqszaBdfZfd@F>E$>gwT7HvyL942<;yoeRGYy z*)h8&bP1X+rNh{aZ8F5>d&ik^Au@~z=4n#}D2#ySosIW))jTO8w5yx#R-QrT)DJ6 z72>yMT*89gPJwh7-{)T{YYy-xSMmMY`CyIFr*s^yvQfJ5PXl5I)VRr62+K5j*cW(TV4 zX2<{WW@_iA=pw|{zp8j+hJ-5O9t2DE{h9I_f5O(F+)y@$Ffs)%dNMR=kG8yl0{DGk_eHfZ7 zmLxk#2Fk{~h+kDB=OP_XlKFTIcep30AQcR7!%{)8r0GR)g8Y!5@>>fvZSV|8S8zDw z>*LU{Z;ms>w=46!e#YIFgC8zC8xbFSSEjLlN`Z(CUw7QvYsfqVe`tXXMQnQplCDaB zP058SR7~7gR7p^>!m#hngUR|n`+;4LO6MMO4-JE*_EU#Dz`|o0RFzOh1h3&OfJSt! z#i+n(e7MK6NsLmT5pmGHRAj2LCfoqESo0+PZ28ZSvbQPrA3xha4>2Xz1#_30nVerjzYwZi3p_d zuYw7z4BhRot)9^Rv#LI#MSf$@q*!4&uDEw*aNsJR!$R6 z_b_l-_}!Tw_Pb72{I|SMWRgQ|C#7jSc2%^!ZFwR$*WBor<=hP+W}qOHby(|{?8rK1 zA($}HegwmjRdY;XI`&9wbweiV%7X!=21}w?{jCQ-AAS`Z&sYFXeY*^G1r=iMu1IKltj zvh?jOi5DwW`)kANdW^z}^aX<`t_GGpSfrcrLRp3dDJKM^4^-IWWo06tUhzO60Wo+I zP12i3o(M*p0@zy_uPh>z2a6B}&f7JLpWIjZrpppK6Vy zDTW*0DqvmRqx@e&vo(!MPNp9jn%p+8>VCa1*KI0^{Q)X@l>OpyDDS}}GnYfpW2alQ zkWne+Ly10J?>_ZAv~+k&q|aB|MZ#Ow5c|D80eLx-O9%b|`2;$H@n!pd!rCoQb&>Lo zLW9y<-Af&r23-eEVeDij>7)i9Mm?73Us+kE(Cg_&JU}U%DtD>LeFMX^HS4HTeA5x} zVmB50_X)_T3fv{dwuSkM{;3OcbRS`@lKI3u<}@+LN9imm^mC~DTv)?_;0KM)iL@Xi z%a5hub|S>n_o$cvIt&{rb+G0>x|{UVu_banur3SIJgf^ML=tYX?CDtfpg!3TVA0t> z4JvaXfxtUGH4*m&ae!=o-|HO*0koD){?gmD6V9eE6n=C(NY}BvKYBmR;)~t^W2^WE zKG1|=|5JfIumUT~{Mi4`Xafk>1_#StjF;(;e8ci@94p@dr>~!B-*8X*bfl*5chS-> zGO0_g_@AM^RK(03a&<55J`*aHkzpiHHOq#JqyWt^CI1XA;tT~MU@`FXxM^$>wxyRVAgimX}I-p|6+y zrdve7o=qP#`0R47h^zmM1|OyMc%LB+bjk>kouRzpsX7{>^uQ$GGoVJ42Z^$^yJa>w zrjq?XMD!m_{qs%n-=f&w&BvAI<80>m3Y~eRD^8emRQ#OG3sfgb++#*XCuJsYhkub; z*mh~dZi26*6u}9eESc(#9)Y2|;WR}aOs|&qRYc8hTPn9;B-N~eMPbvl3s z<0cu|Rq($`J!iEN2#{4uA<$x@hIAz{SXgKj-Lux9yqK3*=#06G2t&8?#w;uZL+wc% zG?igqvl?joyPS1$(cXTymQ_4>jw%pAi0)o$f(yBRhK7*+V=P8}iG>7?aYT=nRoN%h z4nr}F<3riYn3T;uOP{c!(lU*+ z8#-ozi-JBvCP=01>16kyE*T44*1knB#1RHX*fPgC+&hURC6(+Req%>n0+xE&;CkeY z6d1k@KU1RVwb?B7i= zRm-Qe#M-OwmvAxQOlW%p*c0-E8`Pc5fEsZe?5%7v3Z$BiN9YKyQy3;Eq)UWrV=}8> zZk~_CRF~__S6NPj+;RCRrO1sy_XpCX{q!N9pbRHz)%e;Gw$D#<#G9U@EfzY&&oB=4 zTP4p&AojGgi@g)j57^lI4-l5>Ql3s0_Nh(x%A^F z#A#&y=<$DaC)<|ASlCn|7oPTWh@&awVi&m|R8P*2xssEgKt6K%KKRZDdmG{5Sn2r5 z;O~9Y_1&wG6Bo*|_`ABu=pD=F0|S7Bg1{Jrrw9Bn^;ry$DLt5oiq0|{F3vx#t@q>t z`jZsyaSd{ZPwiL1y#l-ik=gehTBhQK)@xD@a{f44=#LrvTuX}KQBm?z{6}E zF8}n*Z?RTL4Oti9N(%c7euUA69R-1hkqvv=SL4n&SuC6TGtXs#}kh!qF5h!DJZf2s}0L8kTojge)i4j#h94JYgAV zU)-2OnaJTeqwzPn_2!?MRV`1B@TKHz*0mnZFv`ZSxEx<(KR>_Jjy(g0DN+(j*9`GZ z8wZH*8H6%JHlc-EBn4ALaUM0T0h(@sVSW`zA_2;k4RAb{k1n6_eT+D;9C|+7&_M41-6?KN2w$;&JKy2_eZGdGQ#M+sfysyZ9H7D@A z4Lzm2WluhCVna37AL9KC(s|qEgA6ylkdxZ&aO*_{4DqHHl2efYh;nH|B%T{1^mT!2 z_kgoX<5hsWIcyU;s>T@-=y>VH-b}jJI{R8%4i+VJwDH81iysv^1POv4K&_?yGr)op zSPJ9s{Fc4+a(lJ&OR>6a0kr1`QS0#v3B_a$_N39Qz##%yij;ZC5#_G+6O$3;H{OgY z;_4VcaeFyFxqC;AWg}cd``Y4dgH78AJoFHblGde?m=)Oven>kvvK2ieHYPrx8R5WT z0UEm$3Q93hbX|it6CtGVF`p~cNP={aZuq9@wtjdkN@iGQr~v$Qdg%_`n71sXAwAAa zd#1z+CXxNQ6!bRYQ0VZ?T;p3QnFJB(xcKY z_paFI$&l_WBvTXkVe4JEwk1F88ul3gc?_+&PZ^+W!!T`fyfu{wf3)wo|17NWW))&lLtEJv|o!M!rie4o2Y3Uzu#%FI# z>uL1+16)tjF%_nX;y^$x*R^n26wYQRBfRDZv2<=(s@gN_`UL}a$>fFdrS*n=6ZL?d zKv+dqnO!V}(NX2XBe!uA1b(0K%Hj~xVV;t|^MO2r%Gz*$eq;YNHdrhCjXELTh|C}i zc#2^WFEe|T4xD66V_vHN+04KP!|)bW^bsGdqnOUyCD8&<5pXWRwB$#W@N#CIX@ zp}Zv`QNt0iG!QP{uGW#$;}7|s&EE}PU2~Yv(jwxioM0_hx!s%=?Vi*;AEtaOrt1jD04=cMM z@-&^2E9dk*=};uJWc_wHE{`!S8v~v_mo=b`Dh0bq`~#Jbue{s`l-TZ>@pAg+Q6{Iv z;Z8fo=qdvbU(3jTY~mXc^WpMo*)E^+2at0-hwuO0Xi=u>YXZt9 zTR$(pKsn4dD9O6vgoi_`Lu2t+8rq(XNTiUxw0txY9gvXp@Evlen00Uf+zZJOh{YlD zDm55sbmr7SputGTO=Grt&-AY3$Cj*FLG7m%sN1|kd16_EMlmF0kNVc`tNDkx{!^b zy|-hMvZUDrs~{ehNpr&Ei;w0X(cd!_C{>KATRr=5HA_)zgD_7h4r3NSzRT!`Pjruu zPJ9K0C5>WCr0`yXG>Gas@HD*~2AJYVbIbb@QrFmEge~xqry-%I3z_Cgt_nl+k-(^Ig?EDe?11PWp)pdMv7>{p8I&t=J0X)POkQ<0Jw zXL$7&;~)Yw59K!_SLbDwK8w+zn~L$*aWxbA1Ap{U1G?WxpjT+b8JJMxLw5u6TUmFd zKZ4_uJu?#PFYcoVSOHJqDLkhw%z?ep2=-7?C& z6Gpx-<5=={?QwlO6i<;*Wo89-*-fnwY>r}Te-vD@u?O#A;aedOwIgi{H%6}5n9vEA zh{Re#F)+DhjUG9rpIGIN2mWUH+=9h3v|ALuTZdE$)i3>W2DogpN-j)_K^{pbo}>Z^ z$*2LI{z`>3<|4pW@;v>Z#`$cF4|i&4Q3j2rDG0vzUk2pdys-wNW{=s!!blsB^o}QZ zkwULZ!7RTG_0gcZRsn%!2C-Z=zgFe5E?A*VbVFMNR-o?INCuaN|LQO(Ny2G-kPdL3 zTEV`2j(o9aylP$CXD3jG|f1gLy2` z^V*4d?3@4qty3%Jeez#(Z-k-Qty7+|v$-&{5D+Pv zjdI@i4-0o5hKbkUmF_K{mc@5l$usqTnq4+988|ykh(OELwh;dPOF?sAcZ*|P<>S_+ z_|Lfp{@uN9R*-do*TsDR{voqR|_PzFYh}CF?&C%g5?!y$Pyqg8HXDU;dKbV%n>qhxult| zVT=N~%*ND>Wn5y(IZARDcdcC2R1Y@wIe=-W9iuA%Y1Yx?O|*K>ui-GFn%qP3Q-U36L#2q`B-I~DTQ zolL3vXKp*f=a)gGqBGWb-z>XM?KquYA~EAWdBu3g;$L+XuAjx!^=Qt+g5dz|Biu(* z`+m0^uL0e$C$M z#iLlb$8Zx{*?uABvqevHx z()uWq9;wii&t{D^#-4}mw*KT0s~7}t_(2j{a`W244M!B2J#uP#SuH~U@(m5eA`4DT z7XIsxV>&!!K;?cxp1hN;NzZFzOabtRs6^;(vOu4bliYw(6c zjOfg~azs5Ov`gEl4Cf@v8Y2^>mgE|M2LOC(G;u7t101jb>kQ{1mQNtI6%pT2a<4O> z_x8EB2rsWb1-Pa_uJNu@HvLCY_J%E{xP9u$rMACF>S6iBg<)W+Nb=b`Puq0Nm=i%Y z8%7!X55na>q?ri>fSIrN_-R3Rm4G#L`^nYd3pG(hs87I@<~Y7K~7Q0pT|R1#aH z5glmNN7kqRZ;72KCcBqppBqJg#P>13%8?&~BnEsnYkKfR*I|1klb?`za+@L>zGN}v zMdvc3AI<+VL(6$A67j= z#5GhFkChAuID_^rI^w-)HhsNHmd6e=$^`zst!q6LWb__+nj3fU7_Lu?df<(H@-B73 zhe9OKO_WmehTOlllOfaXGbiG)aT1e(jOW)ukQ)o0r?M2%w9O{|NdhbKE~lQO!G5}s zYBw})yB^#(>Xjl1X`ykrMmSo8_64?zc*FzkN3Os$gjez%`^G3@ai0D9t@} z3QOvBmJd-PwBC@ftP@rxlVe+p(8@^cAG>9jFeUp|In;_SMSNeEaN}dp#iU)_5By|M zq9*mgtX$Zx>+^{NeuMm1+{of|&(D}_55*cMHSn0RXJzYfh~i<~i-BCb^vf;<)x^g4 zw4-hy<7ZIad{IGZJROJjoh$-&I>V;1@aou|PQ91~TWw1(#*Mw)Ni6Ff_C1WN@L`FY zf*F%^hjR7Wp(7qj2ObWtO$~weOE>9>wxn_$J6j^7Blf_1bUS~PZBzJ*M4x(l;V~uQ zOcBGed%jg!;a0QG(kZQN z+V^WQ4})Dz?m1Fbu3?+VCC@Haf?eh9R3=Xy9U@(A@Ts*gqC4po8Rn8R9M%SJJt|;c z7+T-hJEE-Nl@#;f7Jif z5M8w614u`%TtHDMY|(GTy4gt zb#ZA}+D|iDq#mEPqz_=lg1#uksVdz2%7a3T#cajQhJ5X^nti%ir*CJ3XP)}Iyun8`HSL5+ANgwB}9>`$Pl zZ*;-e`e0vVjw;QHf@nqVdR!zwlosxZBZ`CE!NBDX+#p;~E8f-~>x`K-S^5^p#AGUj zAy6tF-s~;4Pb?0#&aQJ|?jV=>ZJ_0N1nJHxxykAo(}-Gu#!ez>+pr@z5CoR61P#y@ zIN1bPR>1NcNGJefO-d%#2&y95(dRLjc&297o+<2U^>|;8ObziP#DfHjOqETKR>E4T z3RJa<-VHn63xVrz6vxF=t>IHbz-(6k#w)Jh4G@rszfZJ0X>Vv+8|Dn>#Lm$4K_LOy zS5=yb0l?xo;STzj-%h_HI?>qh;&YAkyRY27Har)(v@Nm>lvR|yhxsVSuiBKG^YmKNMB zXFIkt3Lgo^${-qLCa%5}uLz&?Zuqo7xI=qw$)6VD7x2U0BkIkU;m5vu^*D2zoJaId zIG2P|R>j-&!|+ljJrglrt)pyIqch73rgKkQB{M$TtL1btUQI)lb6abc(oNwu#C~I? zfv*(bCpiV4<4S-xvP`4Rms@WrHO&R5?Lc2UosR77efM*T3&2!E_hjto>kg4kWA)Pa zvVXBl8k`VkHos+Sj14f@ibvX^p0Ny!!)}(Ai`%vK(V27c^phK%6k-hTJsLz1#&mVH9 zV0qPw%nh;Pzs$uX&oSv-pdu4a*9pXjiWou^criw>5f}3{O>m1zV*1Nm-IEnaP1~4T z43)|tTnAK+)60k=Mdb+mqy6e7;hlMS6$C=9DqO-itrezOhhQe}x8T{ed{=`!U|(rQ~vki+x5eXqIvQ+J-T1y#WW#lrNp7iAT>RBT8O%NQx znNlC|Lm_Q+WVdv{>01o>*~C6#!D@x!$H2(8fB^^d&=aAd5@n8j%A?4*Cf>ZjG?WGJ z;7$qwtL>TYr7t?}2vNN{C>%2P!2Bp$9wh6NtOpAP4C&~I9H_Msbt102VB^l(H+h(t zq!tBSy?1ML-br(dqd26nu+@gQVaru6&>)BZYnR_lr(H;j36 z2~Qp|f(B#&o$a>JJA9JYMH~R~o8t9KjfwRh2X{&v#0m;*=8&N9h9CNS&*+QJ{V{Mq z8HwjF@67C0YP?&Bv<(it3XPvMlzDgp!nZ*am!@Dm@u80k;(F zeAX|vl;yez{!BeV{gka1(dAts5@p&(ENhO*CdlLzP9vwP)YUe$QPsOkVcK0ViP!+S zD@O7jecV$H>EL(HI03J9UZ4T~oJr%Ba>U&q6?B>ucPBlp&4A}3z?Tb8LjiHIi*gZD zXcZ0)Xc_QJjY0P5iBAg{%o0SwUb{|B{F0vvmO5B&umLB z2~CMV3grg?(3B@+eC^J@3#eY|GSAiOn^Myy&};4qig|*DivfIT0alle=+&)XIL?N7 zORHTD{?6CGEtsO=5C+zpY5fQUkP_Voh%4VXw1baMt!WcJ093P+Q+vcy@JZ6k7F@o| z(`j=o`HJa^7~R$!6A$4FOA}Uv0?t%#iIa1Q?cSWfsa*@DqOt;l>f0j)mhVB!lw=4rIy|k%rreBwyUIVs9 zK~&YP0=2IIe_L`?VSCTWTvKkkxn>^ygL7;d9n|#wBHaW6yIoWo`b4exHJg+}2MQs9 z{8O;`zxm7}jKZqV*5k57gQQ?`fNqb~>+7v_tli*yA(Rg!Qy(^q&S8i5wVPuIe{P37iO#a7iVTlR5cuyspqG%@{p1z@OL2g zX^<@JVRbagCKt-F69E5+KuL>MuKIx97o8X+2vg4^KG-8wIDLa1FKNoS+4hEh zn6F=Kc(Cz%lXVM|eJMx9aKn*mQUzsK{7#I#>weJ!b|;m|wR;lX!c@LbrN zm!fSvR2;g*xH_GIxGq9Ze&h_F+6e4EVCS-__uNCbDlx)t-hAUB-U=j9Vs|b!9{$He z^0=;L@B>))q7rcQoq-g&yb|t(x#irjc1U=l=h?Dh`=qV7bFL)dJ=jmzO${K7iZ+f1 zQO~B+aTUzx5pc|2 zw#*YIvN&eZghY}y!XlsO`YSEdsja`&2KL&A78a1~e)=A3uQF!^v`SU#UZn%bXR~Tl zs@nxXd(|A+if4B;!&pw_pbK6frRWOC+agjQY-pV`LtU@BQ2-DZ|4dySmOlQWVGkLLkB za;yJebQ#0JXwGaW7~)Dx)vUMOx1HKtUra5vgj{jUZ>8(e;o67#4&3bgR|HqK3NtJ90Md#4udoi#JR3}j{b)EEtjR$~Qx2)RP^#UJm-M{ftzy)2X z4KKrP)tN`sRrB+1HG$W7WlcvoBAH**N$7!E@Kf+#Wt9gwwi6`l7s`AO`wA5~R0ILd zApCrWk>nU;wf=PIdAs@W9Fu>7EYY&RB@BYhFk0Akg|WTP7l;=O=KddBS+;0e6-Z*W zQpjEo)LFC&?!CLI&Wd&K!&?K`t1g%`^lCu+dj*IR?qg;?+`foS-!Dr1euFPHUz2mV z`=N}tOP+u2oZ28+w>L7|?6}32OhMZcj%9T}DKS(N+N)VuoKO2iaA~baKx#D6{QWC@BlM101uz#q*)n9@r~rM!CNr~say2lbiafuVIt4}zMF$%%ihGIG-z#1h=S*|h0| zdXxJeQgaBlE@}teg8FxPj*pxW;yHb(9Z)s?@6tjQ$rWiFhqbu1-&KZVoaRelEo}+* zbD>Z#pW$k4cl}U1n4f7p>K_e?XZ2N;iBN%sxm-gpYQGO zeGfXErT;yxF`m3;4fXQ-nx6tCWkvlt{btwx5H|FOBd>zzS>aSt^(Q-6{CiNNo2 z(*~9fQx7}$K!Y>2frd%%YY@#k&M*Ei?tu56d(eTYKO*X}JXn4yLm|)!EJKp?q#XHs zDnhVj0y$4J7yxQ-rlSXIXRzNCKZ zD~a-=o9)SpHz6s>B9ne9g>>qDtup*c@XDt(2#WnnguM4F?)#Mc9!1D|6+&Kr3hGO4 zn&@WH$;}q$lAD{UH@PJ@-Y==y1h%d&xhxO2Ha?m@0rvTOSY`Cjr!KE=FZ=mPF27## zQB#>7`gAkj_4%$cBCc;?T1$zLrZRoB@@6X%xrM>g^Z{Kc)X!(wf}iegQhfRS`Sa5$ zDC@xOr-~RhG`>IeZew32OfTuPlu|yc4uDU|Zsq{_d3bYwE(-PUtqjh#rbI|<8AU6a zN`z$DV{2NA4ANAl7m2L3HS!;gNe70XX-qnN2iqGX37cOgZ2f!s^>RH`27Hor>%$rZ z#qdY1#Tjvx{v5cwdvIU*)y=+xp9~@r$sqW`n>%0w%db!0OFhJ(VK7Yp)flt~9oW_+ zz{VN{Obl-iG3XZ01O_u5Y^3N5gvr=X@LK?58)i|4FpyX_ZGo~VL&Qwv$oa6T3@n&2 zae`6~CZ;17o_=yNEq`#kFl$zbM!R66D*?i7VJ#;*G?r-q#zMkIEf@>SIp861Tv#v! z`zJt%88|yRQozCt@DhGd1a27n(>x=L7z==4e>Ym`!NqsM`pEN$5x@xhEofk!Uco+Y zF$0@NECf?NW0AevO-=(eL_l7+Xg@iTrBhGW^-$RSZv+<9uwdkj2^RElmbPQlgH?oe z9PI7lGC1D55DYetaO@x5GdGQu)|`g zGBq4t?h1m^KE4efa^O$EJ^c0%eyo9GV*}DO74KW!41p2A|5i3tO;dp~O<`5jRBWmn zMgSjPsi~yMwyLS6iUd%m!f}5)m@^0arznB-cNf*eRh+VMA8LRz)fmQ5LZE6W9B0WC z4MlSV4(w0uplqlciiQG0#k3gg*kPDpGlXF?2MH}=Y;GAE{LZq1o*dNFtRRO+O}qa$ z{g`m3DTt3?P7WC#IdiVNyW6#iy_qRTw`=WK>z?<5C1Ue*bK@+md0WA*yX}~Mw5g}* z=7##nZ{k!l(M&t2CvK=9T0su%pYpA}3L2Y@G4>$fxlOR{TehR_%K?YmrQtJ}T^Ao& z5leZj@vy_P2874;GcrvpfWiLL4xE`B@ZIFx^c;LMGI)ZC!nFy;6=9^uh&!^wvxOWr zs3nNO6OBI&4g_LFEK+#5fo-u=0vr68WUv#_ri5aO@R7IH|6u?0t+j5g+k`HGSpQms zPz`LhQmBckxq*S1DWb*(=10xSO3g}*5Nux201ulp*t}Bn1)INSf^j!9E`u91d4 zI5k0Pa%zOsz_gYoGXp~dQv+iI<2+5p|EA?cA@*iw##^bW_%|c2;vaipVrt+gU{S2p zXn+egM;z&tlLVd#XTp(@!TuAF8=MKJiJMWY@L}@^15L$$_z1@gHjf~W#lc5};5ZM0 zz|&e9 z8lv{}pbAP5L1t1w1lL4Z&}5A5H7Autf6RAQkO+%BdB7?1!r4!DJIw~Y%!#3GRn?4L4n z!9&BKQ!9N2CRh?fvqu&kE=;!WTRrHt$oc&yAQ4Pk^4?0*3u zgeV1B@yBsLeFOXeC3qi%U_peK8epLpY+jjwyZ0NqIfVx(&>p9Tcf?tYxFF8LUXL5% zf?%hK@!>NT8N#?G`~W3*A6$+fz<)&+Y<59h4zrAX5NBy(2YzwP*mW940B_twy5t0Q zccQ1)8e{Aoa~SXOk$=BKVVw}CslnM@5E~wHtiOXWR1SvI{?b5+2~?o4mg)U&x4hQ*x$PvN_9@u{ZFI;lsx6dx^ zy70Nu;2s##tIoquJ4DoQI5zou08cDT5B0mT?}qY5V{> zps?9zWZZG<=oZczU?aaY+)snzzCF_g|3=fA4%;#Y$U(E2aA0dNJNy9t^$ND#l?%iS zk+%VmV0~qj0vznm!wZ)eQxE|R@JShLelfjoZz2Zm0RXr!CWRstftlMMPI_#%NfhBe z@G?z(K?os)u)ByDKY+i824)8)JuKCMm1#Q_4cy@>{sTyZ&2JI}n;{K;6Ax!`wMq(p zLmFt40vxc15r%--wSwQpaAm^ge-nE>^+;3kf2DssJg=t*(ln%@xArs@hcs{ptO+w# zl=bmbRW~~ij?=(4bl8WmN&@AOwxb|aYdc_MIAp^CcPeCvIuVNh>*5j-oB{g3t3ySPKq zFsh&3*2jLn#KdHl*#FGWe9GFN7v=NuD~h7Nt7%!z6RTQfl+cnZcl8d%=eD7;$*d|9 zlbfsi;;IblN%Q8G6xCFXQLXE9*((9oKUNvk(~l~?T`AsOqMxplpI7|QRo|sKN)qS1 zan7HgUtF%fMr(eqs*hjIE5Eo%Bd8e(wV$j1e761rviF60(6h<_&|B37U6lFpE%mW& z`dYWX3j6W%Cl_lf_r*o4y4BbBl0$JpDq8CxC)BR*K2J(1N&Q4%XHwQ0#9vQ8MIip( z$7roc^zS|Rq@|)z3JV@uc9l_meJS1L`_~%7jno+OGImuTQ&2)BwO0QMFA`-WwMr-} zeA@LTNjDBS-0VQyibVe@>q$nwQm!fNO zLDx&H+f`m4sNo}+c3J&&`O9m1lIy)on{J6oN-5>a%~HZDE01qQY`eRA#RVz8Y!Cw^ z=+p86d-KZZ^NZ@0U%mRImi0fdG8+BM>Xu+H#`{1G=ibydD2-x7b1E}SZd%x_M>ko` zCu(bQJ|UZot-WeZerwWdZHR0ZiL^>cN@fX5`K`%rm-5M31n2kios@G(!;s(R&Vx?2 zO3o5~4=;oe!s=(!m=~LbBrPN5MG3W4MCBk2Z8fbW zR&RX;D@nt8)5kiWXc$fB6R^~38jq>f%qP0Vb2uhUfX*3-UlOXQZ$lVvhLqk6-9uMd zyPpBXSvm$Z()8QkqO5qUUVm`TMh*87x{o=e`9xs%X%_^>&m@5#Hyw+2EN*rO z1jE2O4wo8KVo_-hcZ8$?1SQjv5TEH~Z;DOS24&|MDX(%c0PjR?8-fVODzplSG@1Owp zFbMbXXG971ynx&aKPAuT_S7Qgra&tAL*Zz6kyaTyaet z^=Smp%Po;|b&mH5u+YK!ez|vPBp3B4m-Y4n{pTY2z8F?_ZFX{73gKP+F-_-&2w$5!=UzC#1+t%9m&u|v#Rqud6Z&ew!`l`auw~h&H{@Rng z8ynI*2d=KxS#jYnT6@sjP>JN4e{zXHmjuo5(R&xSH%F_jpWjwjmlWUM(%E@Wzj|r@ z(lG6c-rU&RYB;|2t!2gkRX0WwR&+6@l3&`JRwgzCKOKMi^JnO|9iOI^*69|H#RT$@ z5TK)8TJya(eZOb#!D%*|=FN=*PqVtDYEG}_YaH0AGeGuN-d$^q_NzYYhYov&S_oOk zv<$TL(>EFhv^4agAL>i1reLHF3sgnM<+Pv!>?ww?#wi3TVGihh5G5|TlY5_#``HdJn6f4 zgU)AtgSv0}^k)sxU67gDzP|nJJS^QJ)@o&dtTO1ge@@1^z|G7WT`VBNE}8qkQ@dTP5lz$hqL1a=3nek?(WPdP#E5IVClzp4Yjcujxf1 zYv+r@{Z_m&lCb$@s&6mmd=y{B69Lnai-o91`jJBXP!N?lJ=WGx{ z_|h&?w4SZ7EbCjZSmBmv9IR;Nup)jAE(iCw?+CN?-Y-bjtSEi!$`;$G;ns62yCFEg zuZ>cN;0|wXAY-fxVy{AE(g=E z7p*d2{0Vt@&;SJRCZf@+cou+9Y3s8;wETB~vdXZY@u3^r@%_{@Ac_e_F zU*%@e=w^HK4gt6pj5P*@!SQlSbPE7n-In#0#m!NNo9(?>bltysl*7#{*d2$9{))@K zOS9%rN$d0%<)*mV;+sWT#BP2(jYw`DO&{t%@iPTK@sg7H*9ESZ zL?6Btzy9n<>5V>emSr(!S$*9S)|F|vz|_Z^9sXPtse#tgH7ldhf6r9omdMt}&khKt zE?hWF-(K-f^_hO>5Z?T}uz`Iy;C=&_R2ldw5MtshJT}MVAa)oYkvs)o#Fuj*208f2napA zB$EbgmlV0-ps~)@`XPZ&5_;?ANb=T)F6JuM%@N*Q-A|=dhdRqCoavKK?mqbxr^fO< z2;Xygk=!%fk9zNY^d_C0T*~jtviums#?CD7OPiwn=^s_!eR*%aCx80)m8_4t=}-o3 zw$^TTI)_kj0}aFY(^+hz1_ddq{Y9Fd!I#v9(7|^bXt>|=`#eiC=)ncRjENcipur7A zgBlvZP*i;CDYafjj3hF(R0av&{1SeJ6ha7V#r0#6RF%ScFGbzQV;Ux7@m{1mIJXC5 z^cY%#bVt&i`V>u5aXY`!RF{TE=whz&x!GZRb9F0tX|O2p z{7TkKDbkFgc={GE3Ep?j$-ofIcK$Ek)@f{;?$Mg0fYuGas3L}q%?`hK?#ujj{J;jl zj0qhvGvG0UBJgbWy$&OI2h5nz(FC4O+5765x73GUUCdSBm9Sp-rO`~i`_k@9%Qi^y zzWf|tUh2Ly+~6hkzn}WwZ69o6cXNNcmxyLV`cwnhpc8Nhq;V&3yGnmIj{>*WaNO)a zT&3SaqJ5gxAQG0<|FPU#$g&`;sqeB{@8S@NP;0QHU9GjumEL5tQNwx`w7E#lvMg!6 zgf(r!9S{k)<71>QoMsVY@+E7xXt>C}qvG@9))@TeZ{2of8ZJ<9_;%|dO~dfF+%w!E z|MRgf$@)rm7GY4frKZvV_`EX8-#KE7{%7BTvW;#Q?QpZbUIM_)D=cmv>2UMod+q0N zyIBvX6S%q{65Zmxb$N`B`f<1%hs#)Rh{T8Fo8(tC$*0_G@r+h+b8PQ!S=al}e3C1> z!2O^ryTI96{T4(*B$|?rMk_1Sg#b@Lu)ps>B)Wxt8LjLwHa6~rH-V>>(db_!vaY7m z#z%BM)__;N&zI)EsXu3|BHUm4w=a%F7$>*x&!0%(5V4Gl@;5@l6 zj_W10?}rYdsCB$m^j)=|INWwoR*_?ax%YNQhT4Ekjb|r;QTwp z#GzERhZ6|)tF5>$aADwx6V_5(^+lKUF0JWFyIwLWAz?jD)^VJdR8<)Jh`v<79iLv! zaYRa=fT1dtN~IoHs(9cI++l7`IOm(rM4^z5PF0n3b|ML^s;XkPsu+Z?vXzMm>>c(Y zVHAdRAShI-s-2yxny(WIRWEcyFLYW*N9V;0osw*wDHN(;6+={qR;?2XRn_~-biM$a z7x5o5^am?~r*D%hQ8jlZ{D&N(l|)r*Hfl(}ksbt|NZD{sx;7~Kf%|jBZADgjN!Hhw z(*3yyAvLG&H_&lTKKl>*Y!eq2juLbzz|7N>nDF;=bslnOvFT=}WFmD=TWt zm2mker52?Y?H;ZK>=hc`BE3W_X#M0bu6nM7E72{UE8#z=SSq;^EhAEbi91fq*>CZY15$HvA91Jfv;zbWG zFWd;rG6F&xA{rtq=3`|=m=yoTujp45bq|dYiRz2`UT>x$G9t!}c+rDNUBh^ z)6t4_PUGntJl*^+yB1BV}aA=wPuEMn6B3H}gaCHuuM#Op{CeX@?6qK7q-u_+w?Ru|bTG8SO^tpLt z{kCmHDldZlzUmdFRn>^F_~~0_ig^(LKHC8N4tM1P5F-Gt42vscL0VN+BhoOs5otsy zZADt9b2K8|;^pMvD@I@vo2PFc1#(hK_%BY1l1d4GKo?`*_<+vc+&7Md{^v8DbMYnp z?qTC6wv6*#Y#-9aIGu~`yGL#ym{i3WyGO%_-}*;&)kni{FH2(e?6_)4VmXt~?oU3q zKanQ&o0K1`yeQSfcQM9yFTZ=p*0QTIOujG47edLojiTOl2cTJ|exuv6O4BD>t z!K%yEEBed%Q1p38-=)P6lu~~6ng0A-f5J+BuJz$pdS4o*Zi9rl`XryLCjpVDj}Q9F z#k--%_F+|*zUX@R*4mq``_f{KU)zU!5agdDDuO&~(`4NJ;;`a-woN;t&BWTe!HvqlQx4}MecU%ReZEIYE0O6;0$ApvB^|T z2aL6PSUE!ji%xE~@ak_D4)3lNKQH(uS1q|{34D@kpS6~ot*xpf{3EQY`SGjz z*3YI@RcBlKk^0JB6#4L(oe#e+99F=1b5HN~z_1f(;TYp}1DBiQrPE0_xzUoG*PpvyeUZr2b@As)( z#1o^*&DMf$7KvD;U;V4zMFIWv^_!$*$KCT(-(K~S{Hs_0PfYx$udm8@@`WzR%^h&@ z1UL{l4#l&dYf6U#!s#dL(=)4j%j&0fnx>0`)uHf`L*bGD9GsFanc-nMk0==ZP_u1l zRyx(Prp~mcYnElbxOWMrStTXYq)Se2_KpJ2f6HpKEo;u{F>|&#t@)P2wAoQitIduA z{!7C)L7!l2CCz=d98W~iLP=3g%jzg*M`1-PXYR4ZGVq6c1_#afcda z-g~!wZVV?Ic$&I}#27F6L(A%t(P(^tbJcwRsj8~#Up1fldP(Y{HoL*Z7^#;NyrPS4 z1H)@R;nHlp?j!DVnwGx-Z=l}*sp+Dg)dw&By8hq-Pc~wE3~*v_+*zu@=@^`; zxm)u%a|rVuHQ9>h6CpdFScCOvF5*o6UeGz(xw~|yySy6xlLly-(#o$_9FpWbdhqFvGlbdlfPR9gkYw0mPY;J6N z+>8Oo=Ee&+Kz4e<3DU$EN;X7FR0kHJJVr`8JkyZ|BV*HGWLiuQhw+#O(_kFNVW^IT zIdE<;4g({M@Ec5P5y4O$nlix1ZydO<2>+Z;yY>xP3&rgA6JF{O47OvmB1cFc zb&EWQxFDwKdt?vJ-a}D0I_o_RItQbL$fn7Q!138MO%t0YHZ`86+dV#t-Girz`aHj~ z_|42RMu6$kpRBK{n?oRq{qrOjV=5oYRIICdt9o~tM#$m2>L-M5QkMkb>%r61q1e;Y z)6>H!4bk+_FxErEdKl}WVHCqqh`lfZG!a7p{Z`#corT7ys{R+hYK@1G6u!CQS}FK# zR(Qq#04>3=R@e{Yf1ovXBwm|S^jQ9Z;$=(Ouk}z$Ul5Mw#SrOnmVVtmvSS)g>v1%= zJx0n#BwA7H2oaGn(`eR9QBx5P!`q_pBRnzk^!O;|)lKi@`8rN!1-Yptgdp{bmN2^1wMDpE7fIN#10BSl4ul5$F4aS>01up=c! zy`*+NLYQo_esAiX45}ZnXs6pc)w{U6nMO}B*c;yP z1~t&tgbL~$^KUe&E(Tn=1)(>6q z${}1oUR{5nU!QvGk{`NA9$xjo#jur5k}KpY{qjnAAF=RJf9pKWn`oSlHsd+4bGLC& z_50s*Q>Op(J?MJz?N`_ON2|Tly~EWd(d(EFd3s6C-M;ZAS!c|cF=Ix|j2k%KH3Pz% z-3%*!_3)zib4CALpm%AI`iOo-DaphCTqMux50ttZlfe0ujQJFFeZIQlPkLpF>3=Tg zD)i&!^@sViwTh~A%1h)bO+>R%c~!$?EZ{`rbhH`I(b(M>_$p?02Y+&zQPj;&GR7`x zGB`0dQH)*Z9^62`;SFza1AaFH6vOK-jvF{`;JAU~296ssIBxvF@gwF2jvqI0#N5E~ z<3>xS_4=mLzHi*<7VcSe!M4Y71IG;I^#R`?O)61#yj78&puXO4Orh?bt@Zp z#Ynvi#KnMj7oSEMAoOACyeZl9Ysc(j88|&Or4FEx5V~p0; zxRXOMy}N;iCnf_5G8+(_0y8FPYVd4ys&P9SjbnJHJ59Ix_Yi)zzFB3Vo2j1~sN@}E zL$nqX5r!rA!hC2c#l@J4=mP!81p-}?i}~o2KM#MpCQQALesd**G`+*rC4p|9K7u|< z$Do}FM|w%1rx-xJ&wX(`Z?*xtr0FNzY7i5ix@r&z^sGYA)E$I-FToh$N0-)WjP_DH z0(5hGDNa-TsZB^3YY9y|?TE%+V@xjIV)E_3wV2!?no4_;7nJ`q?>PsW!I+UQ=D73jN%tS-{DmHkRub5=K> znUJqOf8OL>#iZoEG#q-3PteY!I{regrd=rVoAJEvS5kpI~2U4ENMh%al zCE8;r1lhMNJ011VitI;c|Kmhdhw4xrnrMR>48gqu%$T4-keb_5^MY*Dm~ZWT3qkRT zz>_^|C!Ewz7%lbkO|Y6j?UgOIQ3GT_Ap0)O&bKZSeP%x(&|7QSwu%joRNfJr@ye|(b+e1mj%_j!@>`{tf=mV2u`m>rfM zr}f<<&Wl9RT7O1LQS;{WhvesnuK6SpbYI%%zBKG;!`96muu*;Jn)jteAKfCto1c4R zplPkOsZkxOW21)0&{Cx(y5l(Banv_`t5u~{R6qJxH%AfGp*mEDW(zbkSOAzYQG+6n zl;OJxPLnmgRofF!{cPFVsL|E>ImD`Y7O77!l6+RHT4{Z1JrS4`g#7w0Zap=9wblCU zMc`U*t*ZBWFXfk|ZoC;EfyPBzvQfihXo>bfTB1C3=UpPvv#Ng|uzaYb4LD^zWHcfG z00aO-6#xJ@3<`#WgVA_Y)Z-fR0Th4|g`QY+R2j%&l%xJ{q0yC;k~_+5$=pSl9(tv?I~6Bu zvr`n*N>g?=DgD$17?5yP^6@Hg&0m1^Y_t{r<7E>iwIySROOdHzGFe74Z7S=CI2oRXu;Z3eToARuVQs5=%?(B6c?klvU_pGk!r1kNJZ9QA`Aq}b_#j{(BY zPfOi6Hnz&q4Q<6?&1&?`;mIUfOn^m( zgb6pGfuqV0vL%v{k5H9)P>e+-p10Iup+zw*bg1WN>sH6Fj{~1Mwa(v5-IzbNy3|E) zB2H4+^JiRuDqs2Hg8VPZDX5{K_dua{iCj;V51>7TUA8Yzd1uCcbR`Q_AaOwQs#_y) zzu4dwOmdPWHPM$RIj`zZin@h@TR4L8OQdo@sW0r9sR>SYIhYr|r-ZEiO)N-{qDhRUXjJ!4L4x?CbnwX9#A!X$6`8DosS573QOi)#di_pRNE} zp9skZqfn#?dxAX@iSCaiV&cg6AqM%*TsNR2q{b#+hC{mBijcJV6$HmfQWMg%mB^qj z6!Rxz5F>a7sF$0rX`yZvbmlf_QAg=pc(QVOD;{c{n_pAfED8Lny-G`g98It44-Vd? zecXY7mp#;MYqZaTbWCDyyk8^kfIWT3a0rmu8YOdr(sQAAs~Ka~`j5 zRDssE@EQ_W9D=JFK=5T|D_ruT17I2pPnJvziAlS8Kq9{o1PTO1*_H1+3@6`0IiFc| zQsEM(#7j^$k%~TjkPNZG-r$Z+xMz3FmjUdbtH)e<>e-2V3v7_gfa#IqB;Dv&(y7Zy zhcn>Jz%?5=_`S58+kU~SCPV-1k|zI=BG=mucV$Tn^^(@acDraOX-Et5)llo(vNzNH z+9~ZSj@x{>6!+=}leM%?G0Az`lqSg9a6Sd+3wlxP_lk+B1b)2`Pa&!KP-YXgFzJ+e z@E+LaSy4%)c+Sz=hP@;u)AEAOC$!uL?YlxG*EoM)J%)yjb#!;=()9y1`IomA55RqU z9s!JhaZm+|!$P3!z6GN0OLPp<^9pJ=_uZU{>G#nN7$p$9hdVsO;eEs2^L*LW7|uRQ zLG*ngzoL3WL$A-!zGD)&eT%^qizKPr&U*429e8jms*fix-3u^=3Ch2Rdi2(-V>+_{ zgc*fhSniqvn8sPPlsoa(SK!SX;7SP`pPPv1kg|&ugeFbF3)Z(!G_}6PGyZ!SFg@d3 zp|AV3E0fEdJ2ar*aX-{&2LTZWfxc^?Sfx9P6MglAnXzgl-^WbOTH~pxtPFS^mbW$R zuL6@U9$-$fO3(Qt(O`E3Zsxkq#yPD?lvLBuF7w%s?Xj~fAn>5>#mZug16mGcK%Jrt zl%GKn&@)P4=B9OC&ay@VY_UrUiJ&cXMU7I}kg4u@QFLAyWN&kLz$!fqlOV+$m10wh zD!)sHa)kR*hGVE+H2ONjB{r0m^-*6h_W{TGC?F|BRhXvzErx1vmO~|m|1P! zTkCksd%j}IypiQLPT%7WaksdHot_}{!l(m%B1eK|6iUR`EaZ@~4GW#rA!y1+Llb%p z3$VrorbQ^4t?J#giDF|-?`dw`@$@lp7OaGkZFC z0=80?>n>VaE|M;dOMIem?~8BAc&v($2gJ3?YI3-T+ICno-8CR*L#Q3`%dmLmTb~~# z6zw_XmArMJtcXG*my~vR7Do-p95;rk9HcqWHnKz_Cw@t&`od7pW2J#$ZUbH!fk4d6 zLK)Ksr>M`3MG~Dr(B_DUF#BQa)0uc;#;0A^nZHFO-e4B;w?XF2gTFQ5`0*gQAdW7x zpWW3gGCx8353`n<#ga3Pq#&rB$8;~vRU6)`G|TRY_^3T*dn%niCO&AB(nFvpQ;1*Q zhZ0lz=>fY48(Jq!{q>Wah&bkkyyDyAI6?MhM zAV}xdc%=xStQ_h9GT@(n;K3tde^aAZx1fq|T}zoVq9hhcsQ6cpMtQUt-*_xpQ#Kqk z^qTFXr#yjp5ID$H%x))8sALcOMlY5Liwp@9Zp#R0V)8qOcL)yTL6T}qg@xG-tQS+6 zuSHpfbt3!|$3gL2(xF&Q0Zq%fnp%`1^DsnHmOzIk!;)deCESnuOHE9c;|W%$=OE8I+K{}VMS1dw?GnV0tK z|1SMdnmpPW$k0S9Q-k>k5uPIn0xV9lHAgyHAtUNA^kc0WBTSV2noRn^-D9y|{3Vgi z)|iE5>4&S<)O%?Cv}|!Lgs}&RGm5oe?;B=_Nvg1<`^!j*o%?rDIF)f?xg1!s@h|(3OgDv19 z?LeBydusd0%T!b;)g{DYxBWfSA0hNdlv}(cC+Ia5T6cWw86Nsy5y;>!33RMf#zenk z&$q<&UlX@;6dsWe4I`v0J=WNL4>gV!_qd~cc**5Rk~J?Z`572PDEx;j!FECZ$S$`h zH$N%9Z@p{!qhRcUCkT7TF3;IncD&xE4I!R@4jqdGGcJwo&hHU%d_Btv*M}lQYoz0w zg(Ct#SZJ~VJ{JSXE+uN`s?#uuXwT$CHcoYoWhHqQZz=9_ryN|b)Dk|s3B?Xr>S~cz6w(&MUUCVHcQI0!&rT1nYNeAY!!D->D_5<6b?|;o0q&L7t z9LD@OQmDOFxWK<>v!P&MDo1^Vh_tnhPXS4Pp|0e@7?|tIb;40vU+l5BA*kp}KZAv} zckgE|SXGr-_USxp04~JoGI_<%nnryPsw4%$>onlV0%p6<0uatWGqxaF+Ik;o1^N|GbBIHw?IjxH*R5W_*i9fDH z$5k|P3ZR06_x*U>_w)!Ljr$NeruGgWYGKZp>U>e&w}{dm69DT53UiQW(E2wExdai3 zD6fwr5o^~O1MA6CS#M&pE&kcsM{^Yw7OKB!!Z-iVjAsytcfoyOKgtH4rw(Y8EqwCJ zic!tDftLuh-r=YM?Gkx$$!JwPY~2KadVXf!j*3s|dvMnj=|G2InSKzy~gU%0e7%LQ+a# z%9R9b^WlIr0Lb(19Byjy1x|`Pz5kC2uSqxx=ctCfQIS2se@*90rnbKkU@;SS+%!Xh zD5Zs<>k+hOg`d=R4`m%RCwCe}&M+rM#@LV_-K#?b$d8|L=b-i{NVS59C5#l15RR zB)%PC`wGgQVzNHv7UVn?^OMOiInjK|Q`s+*s%DOG;=wtLzwl`5pW%~y3!fBwl=LV_ zHPJZlrq;z#UHYwx7^d!&KacNBnP4SbV=whydR_QlXg8(2!#;$&1iaJS_tc@>7-#J$ zjLq0Nq`qA!A>CAqr7-gC6$IHi{CibOQcKy4OCKi&Lt>2=Cx`qMfLD9<^{%U(SB@2_ zhxEXNj+>kVCCpTnd-{d5rCM@=$EmOsd7~2Xv@2y1CuZ23-xcPVRLo6b#6|5a@wSRk z2{W&aRc&19$1@m8JVC5Y)Eb~#)~W@^pmIqCT0+eYC)U2CbnqKs0JdLC6GjXZXM`Ow zOcyJ35!JIzF|hw9g%Gyqa4!%PkU;?lgrQ5!0-K;E6)NZCq5$-(Gh9H}i3Yd5ph@-B zZ9PEd#Ti!Kmywm^G*)L0tQ_Jov5KqA#ru8pHb5wgJ&pm)^^3=_j>(^t?J(7BFd+tx zc*Dh#*B@nR!GVkZe)Q@5R$U*0BT9hY^GiOPHRzL+nUrJUFf53|qRQ3u{;-0?!)JwFRRcHW2^)TVKcZQJqDT0lFWG#u$<3uW~seU`0ez*sdd~mKzvD zx~+~24dolMg}A1E_);qnM*_8ejY`^`r$-Y}eWPGrr;}SVFFxS`YX&Y(`@P~=@Mi@{ zw2A1vQTx-C>^a?1lJN@`8B!+Pp}%_K)>$gynJ;V|R;DM-5wP8m!59TFF{_np6GdZN zff|=kux(vSrPCz=VgBg$O>U}PPrm{;?BY2=G{hX z@cG!vu*@l<|891l#}5=ThU=El3@0S(#zXQ+KzUloF7+PgTeozO7)v7JxEGVSN!o&P zdL9oT8Jf~q|8D-BnoalM^EmT+m0GEuo=+iK$t%&Q=?m;2(&nBZ0l zO{_pKc81dSN%*40u95U%kW7)@h1|#o`zZ<;G=Y#jB>mSzVgf$sE_P~sDZg_d%Yi*F zv1L`LTUK%OzVkhbW zZoHnC*mB2zSLLIqlg}79#!Mq-c;UADE>0|&6%!ZcCQg5WxhoT42rjG)<7P~XY+%1u zVn8asbTt=R8Z-iav;kBUVFVVx~;Ez|LRJh9CO} zKGosu2iu;qN+Kea06M(I%nI;MNklezUJ)u!OuSV5gjfF5Cvx0#J02!OPz0wCCJd2^ z3@ok!FIcofi%{a>7kToSJeM%R)6@`RB3-rs8_E2?4K-{foMj1wgcIn!qMp|2)c%H+ zKWj}d$%F`K62G2gK$tiSf-_T-IgP^{LS=7inrn_QrW=bzGJ-)B~XX}K79+et@aS#1y4Wg(~pg)|K>5M)V+3rWaAvT9<6OY*AMSvwXF zu&Z;LnKcG{W)!Vl$^}LkhA)nD)Y4Tdx+3ivyfeYk)wxBcSCPQ=s1^qf0=K(s!>D+D zbQlN%>_Q8Ccbg-EYI3I7g@2##^ROU-x|b2B3*+jb7kq z7lTUnU`Mqi4gT45NY?}Shi`yHq%@%l0H-ypVir=~8Ji-B2)xi6QxLG~Z=%#TY~UB$ z7ZE&?ayzP&?Rsj>av%zd@`s|WYOvwsAusG$IUmP+$3KQ9nBIsZ7r4fDZJ#3}Mk7t# z&olCVT>)(ZXFGNNNKZPceA#_Ta}{gcMhC^GeF5N5(dUA7A`>9uL+0ZD-!OlC`SUSP zJ802+U&NR1S>xYePEIlul}=J|oV?Hbp*kIQ2SkxWdnM9vC5}moMjUud8cMa1MY(c` zk3|df8QKN4x_`?OmlU&JWElbKM_~erU(&(RDHrA{GHKqo|SG z^o4P~63nc6^Tl{l5=EIWz_u;)ZroG?qdvisaO>c6JXMtcx0ZEtF=U^EM+Y8j9Z;#O z$y-5F(CGwiGHeI(({S<1W_zF{`J4})Ep?LY>zbTv_o2R%Z4$j9tgo4}n~QT(3l{Wc zoit^|Fn#kkLI0{NtA~Y!X9ubtX>TwQU5}AeUZ9WGYR$L&_(!WZkiu)J^kOMM>cOB> z#ir6EcZ=Nk>bJm>?bZul_A6P%^dS|U)MkI4HD$)zwoon^`y=o-Qk!&AYVE@imSYz+ zqeReM(<1QcF&}|oBzba-S74-5?N+oGCRYX8DPROti^gg{eIj&$aYL1XVBuflA{Oo0 zU;YQgHAchXBtRebGKzOP{*PD!n(g$fd9#Z4ku(IZ4-uQP#2qB4T$KXP#-}RYioqJ8xekyKSdwx2MzH2kp$(0*cTA`%4GMW3E5B!Yq4u8O-Xzn~P{Wc*Q zn?9FNW>W}WXoQ)OZ^N~GVl4tZOo`X5KFdbVD7UIh2x#8)0YaHuA$TE!2N%Ivh;;|e z<^V;iuhlK^bGTLlQVvR-6r~s4`gB5r$?d*3XAo3Ki|+5RJj4>$hTtgtzAm5-*Y9-9 zn%RSjUAb*XKA>^Ja8&?Q%@cdjVpIw0mjJ*{O5^QvA)zw&E5kE=lX~1=vWzueR)BrV z$A?xi7JL_(4D3xjL0#e82Ky}^0eCr_Ibf@y8^IcN?~@b`mCtnp=kVh0FR(?+iLLy% zz6a3BGnqX2Lcl@-5UIR-wczP z7iJWfC@KyZxqawRK(v)>GeTsR3d@UEIkn>&{!O2E4*@>CVk$2%@_OA2&#AL)UsM3& zM>D(={Y_g+v2pIYm`#G+Uzw$7J$ZJXa)Lu|F?Rk5p5lx(%h<|-apbF}5@(RWX0y=( zot(GAV*h@z`1~{_vcCGJv?|t22*X4x0=+V;)TNY}ngiJ%Xv?m9cU=6XDa7&3b(c|S z-pxufAR!mp1$Lmqbq^~B6b}b~yFxr}tzDN_Q{K(pc9`=XR&nb5LaR`r9c1+LF71B8 z1y-(}L+Z;7QM?E4aFw5ExB{)6j7Q6XL1Y;qdQ3}cUtx*J{c}~NGb00@?`YdovTJAd z_uo?nAed{_Tu}suRov9_t=Z@99hP4}OE6dQ`7GIapg7R;i^FGlgF92b{+M zB4r$8ff0fm2+`U|IcfM7f35*uCLamT*o(JdHWArwFtV0t~caDKi5HrVLE$_yZ$VAZ@h4%0`nO!|=L zK{GMb=py1WFFrZ2TEL4zV59QzBt8XXWlUeHA#j@-bou@|jT~eOZ=FE`sr;WMwcw$?Ci#EcxwNR6w z7EHtI8Z>q!b(zrsKlCEbB&6tq)GOA&sW2LrbahW;w>KTJY2upOCanjxC4Y1Xgb`+H zUOzTkJkZa)uex9^CX=Jj2mW6di8Q07mnR*E^A=?BF8N}fRIUfvSHK}0z#=^h-m6};7#DQ!|GVEYyP``g}!SlM0 zo9@q&MGUMyVzel>=_@1*L%|t{kmMY_R8h4!@j3PN+mNjae{o2<&}2hc2RZjnX1APr3X7iSbQ$n2 zy^uMuD7G^uy z6i0&%pQ?X0Vz{a4*S~3rM$!UUmH8}NP)zaHU(o|RhgzOLZ8lT&)h-Np#&|j@F?0Ah zW^}rFCapLx7l-H^tZtlM$g|~d8OjIvccMi0{J!jHr2XP55Ku*1pv+g|@n$tyG+B6N zS;P{i$Ay!{{^%v=ec4~V0I451(dolGaoJ!NrTBN|`D^TMUdZyfAJFB?%*L4g&v5ug z`%_N{%r9DA;r3>xi|ZWART2$CS7I zO6kgRBocFJ#t#%bY_fsTJAw7D!oXU|1ri>-MY>?dmG^>Ao9R&)D!k(^g?%&RJlqm^ z0);Ygk~jq)7wcw0W;5F0^tXlXBkHY6XGu5c38im|eM_q`N-MbZSFb87E5rsW6@3Yn zR+H(xy*XX?=Yj^cAb)mZfy0KmakQl2+>es({J% zsugOkag&S}eLIul@-L)w`h&4UnbsUIv>LK@Oxkl|$J94zc(}>i zJj|-{b#mqS3VtI#5PKcjN zW#|^B3c`gB9rdwpI z+cQ|R$?mLMGjwdkD-dZVy096DrDS(#LDC5E`<1&9k<)7MuO7pc*O#UV`%rEUDVXQV3r8pqn!*a z6V<9EVc(_PpM6IaKc~{Y3##Q z_^UeVqIjI026WB+kZRY3@M5g09n}sCRcjjo`RpOpgJ(QbM(YUf#Sf4}lp#IFq0c#) zQzg?W0EHS^WVD5d7YLp*E7VO#zC=OxnR}fW+J|Q(!vLEM2hyO>^8QS~@EWq?Xu}g`%%%V`n+$-r zur#&dtwkeQiCzPT1Ga5 zIm;C<);?B~!(&QeWm|Bl`bb#JVY@K!_^G;n5y?3U&4d2eI}36?`jss2wUK%oqDax^g)?N1q zGo{b$;NU*{XCR4o8D@6VoQK(%)n6tp zIGR)n!3W1A{D<5l z|7TW~mEaI1k07@2C6p(J3C3(=)j@_rg`hwT(H^mb&Gl3^aodrh`E?aEQBwG9k&XC+S z@F1^wgvh_BzBNW(FOcC6&8Zo9e@$w3j~-9v6f_g^nDAsRw~Tn&^!RDxl%TX*>K-B8 zqF%<(ni>`t;&h6M+F;}Sbd`j|*z`lgZL+3p>RryL48UljG%V!Z+k-9hmT9&tl*jv} z+E_gzU{P@R*nQv~C^*e}axst{cV;FBe8!h$rRY>RkT2T12`-iQ`w;5~XBS+VqM#qq zp=oHLF-I92S`IQf{PZJD=PAsfic8E-Ys-Ja@OI>iOQ$$U34Rgp)G6ei3o+P48rv|# ziIY8Usn?tWpLF|6f6yDuFjxlYJuXxhnxnr!T4z02calLJYUVF&-O$T^RGb*G4&`ll z7U-LZR5zTEi-GuB%D>!uoD6N?huxcCcXWQfO!bS&bj>=7-z$Mb7CB4wt_$q7 zXLqtolv+3FF$b36SGpiR^O8JaIWIUngJX>5EU%RtsPKl1!y95<#Z=}s?bk%Oq;1EJ zv12ns=`E^JEACE(4!q1KQH8#S|Vmj5J%UHBf_L2U`xaQX8MP1F7c#MWsk) zplxhDNnn-P5_)`9GbjNRDX!g_*b4vSdd6>bi{!e?v$ncIE)5g8f#b}x@kZfu;d1?d zebLg49RQRAFl4#bBK9Xh?Z4FV^Q#Y`7A`9s_fF0HA7V1&gN5k5L2+ zsG{wM@xTPoiufm*64QID_JSB>;}_uDmY&=k@{wHExpU>q1ZAcF4l>m*vPZundF^*W zI$Dg)tanU}lqcf+M553xg&B}Y^#!h~Ys%X{B?yy;- z(~M%#74m46jbPi)SYq?@MR!@$x~ZBnqaW%_2&>l_78+UUTPSGF(t)XshR!)}_?R@aN$)=VrAoSH_?; z{E^E67D#ho0c9P7q&P|9PR9XKQc7F`YR6lK*;fa&x4V9`dm$cwJ+TedIiJB5vtDtk zt~Lyj%C^h2sK2Yc-Pi^`ARVghIR-Sw%XWwZ6L%$eL4$@@91I!?OW#OW(#BmKIvcCO zP^A02@UBc`uF$X8S^usoSg^4_n(;UC{^5TGx;c;%JcxF+!`-Z0z`lLueRL!J{1~(6)_Q3V<;Kk&TftVZPXDi<0{xmLd zb)wy%OG8l3(F&==KNHqt5>3fwEaRhHvPIQoJY&A*&dnIB zkV5v3dF}{SP)da*+%FfTucJLm`ftaH?umJb%4185J@hYbltzIjiH`9WeiQZH)i)rg z@X>Ejdx#ncAzEhnOFR|uEka?{2C2vgeyAv7ARQysx=H80n@rY-%U+H$jzVY%0qbz?Ntzr!I(>L!LWi7*JWcIUtW56(7_^7*o^vz#|jU z!!U$Wd?7b1pJMTbX>mEsSQm2K>>d`j(~ODvcw*bshK+t+x}O-LsiXmp?<;f7qcKJ7 ze3d7?0Tg~W|j>? zP{I5sd5(V(zJW8M+8*-fcf4T$o$y5sPysuW3~FZ8g8}R?)4&_i+C<5k3dIZ|p!M+e zT6}EoM)40>Q=tUV9-8mvmA0Bp76M@xq%GlN4)xv{ylRu2tb zAp$HoBcvZKe2@46u|vwEml6kb01|gfY3xgfmV&T}{F7yA(eqswsRC^BX^GLqmDZ() z4lN57QARrS3)n5%ag6Vl9pa5})NiS`Y5e>~LIMyres2>}u*8+Y)eut(GtTe+)ybOB zxxXDcfV)Hh9vI84Edn}h@q#)3bWFHWfX)0QfLMNLls>+gfz4J!q9WdR1@*cfl)K6Q z!z)DkEnl{s-7KuXi(*COe|H(*C>TRW=1a=5ah2cR?w0FbyyohYys~{_EP$qFEI39b z2g!_o0R8agKSpT+1Kf`XC~kn#(|U|zO&t3=5ohr~Km0W?TFv8#f2xol*xp({K7V^w zI0zD@@Xtx@`7FN%Htg@{SLl7n#s4*i#bUdozq#rpYLhebuxINnYAWb-%?uUAemB8; z{hu{bGQp@QT8P`mQjPIG1zby}}UT7z%ON8$hfXq&Y5TVj5di!^`iq+ZBf| zSQMJeXsXNK>}bu<&IdQB=?i0YQj+AY`tExdaXTPG`#Xq?(Ap6q@+wd?qMG?xJ|NPg z%A%b`UkZAQ7^v$(8jc9iSQZpB?8wNAa>`tMnoA+s;^2@z{K7xgkqx7(;e0Y--;Pw3 zrhJ49rBV5c^kvG125r!nBPV!xB?Gv%`2p%2RB3)9e{Li7;-rUC{siT748J%5=nVK_ z+v#Z97*zG0C_U$O7`+1vXD^*VNi9v=fBeFg{|AGWTkh+DW@A`Wo=QxMF->|1jeP!q z8aw40Vf?Y{)D{?=cq58h#%~A6Q4IUp0Y5S<<({oJYby9ls0bS64<(F^ z6F{68;`7ioDgixklU=YDcZjdnwz|eDtr8MedRFBVCXj`#7;?csQh29uUxBb_S^8(> zQm=Gm;Ezhjh^6nN!a`rGh0uJ29K&WJz~gKUtfvpl+D5pH;=2MB^J5+8wpC$7StW{< z;PQUFyXO$~x7~z{a)d0atB1U&b5FK5|es`TZm4<35fKx zg3&LOqEvR#C7KAQTO^hqZ6Nf?oxbq!ZZYIl@qw2~p;Zq|(b({+=R(5CKuX_wej+fK z)}*F&7_u+!YdWT@2NjlXf2Svqo4WiZgrvY~cMbj# zfZD}iHUKd|&c9vGwm0jDv_Y}kXgBs0K%GYS9o*ulTC~{fF&RIbmlh!@SBw!r?WzrX zZw<>ZyjlFJrTv|k64&cmR{mIW`wBe$rGcC_FF|>F-GTJ?xF`YhNb$#;Q;|D8Zq8XB z3P%83RNyd~S6ELgjsBm5jfU8`4PXlj7r^Kgve6Hkf*Jhu+e0MNClZBq7SD#Wbi#3e zlzzVkIjiFgAC+kOLAsEOei?C0DNd0r&dmRS%zl4;RSc8w*o0_*TG}YqT57%s8M6=? z=2aH!XDSj~#_VUxj1AonP}QsHNH}`?%7R{F4c)r7+E=aq%wmP2FgHmBautw63SYL2 z9W;gyS2I0IdWrld1Rtg@)vyVx&#J-#@AYCQ#Ia6tZW8p-C#4!q0RW_9<|B}dMEk-X zYg9wv9VvWcbVN)Ivjhq)?ateB+o5ILX+d=EMWPJ(%-|zU_bd_LNf-e|LtFBL)x2)i zoufpLukk)Oo7cmt{nAI}?#M6VR-^{DtOGd}F3=;t>7HULF*A$vuaP>mFn{-bGQ6+0 zgOrKA!nURWO`kC6`ssLK3a;~3QqN2M?ZKXJ_j<*0xB+&?la7V4KjC=h@T(sNq;6ZC z*75i+DlWubL<2A4nn1+K1rwT4X-SQoU(W?}2~U>BY%3HMHW8kH;alXx18NEzhpG@m zff%~~Gs*+aHXY}lNQ-@gyo~J*t2@vz>ox3(-BR{b8sbDL>Ya9t zE8Nl>F(X%58tVep{g|c+iquy4eTWmszQb41oakw}1Jewlmo%4nsrHs2-kc;_Dj3@* z!3lFO)iSt(R&oo1X6!rZNCtN{Bxq1xX(sQ|gXIa0CUP(mD>fh$PW51`_4q|%K8oGQ zszFvvq8$>c^$I?3GimV*nCvvCJ`a7_o;r!v+^Iy4h^Sns_UbvuQf|8%Xib4cSUKX2 zap4g)TeGKP=oe4M`aUB{gBI6NY)F7c_>JZXni>HpBsf8M)T{#v&lv=0jaEvIihTCD5E;aRiL$9-cg+?d>fTr+cjo z)?Oc9;f`P&=1v1Hr~m~`3j`vOcw6AscOaSqS1E~TN`%|DE;0;BWTE}fK{eePn86F$ zMTLu}NG?1Cb|6uWfklCrD&!48NmqD1tTsQwJO+}LM4P@JnWm4D=_G)_dcI$! zS&q(@B?!kp*eILKt`PHaCy~n6J|IGMxS5!hmKl+Z>*KL*ki6wn^YkpE$w4Z&3{r)N z;DSJv`5uc;N8MwWMqs6HrAk??k`irsJ3-QS=&1Mz*jUbPS?zG7+OnwCyFyjY7i$_^ zv6CgcZmDId#@(9U6#@@8(FZam+J(Y}0bnpV7>O!2nvG$}n-Wr?m-dszE}75N&Z!;h zE@BMgU>PpEmjkj7!Gc&j4b zR`NQM$m%w8S%{yzO4an$$#!*a)fD6R4M0B(wsX`>I9@26iYRb%k`}=8B+$l+%`(|`ojJxnNykdwZ7s6lacYQgKk&188)H43riu$Nq%jS& z`$XyVy59|}rOQc1;BGNR*YV*Ti}}BXI{Pi#>T|w4{f5$omoH+lF)^a1cox$&(@ZS( zwQj8ojWwsMs0l*y55DhY6g!OZ3!0CkjJ-EJdUx{c!4mna6C0Xtn`U9jcsH3Q{;DejtLC*Fg zdf5yKsCA+!$^x=xXgGrP0l{E&x)(^4Q9v1v6{RVBIKn&p4?I5EeyX#t%M?j#ddWFL ze?ka(CI)7f^V_Zy+k{&wn%eJp2c5eqh@nP9Ny1RZ+7n8ghk7Mw>b1p8sVj!Qkv&u- zwJ8j%CekMLZFhJLmogJ-{&|=4X)wcjD8#74$SbEe_)&{2S5Yyf!QPus z!Xa@#ed1!+mbk;ziNVZkwu6;eViy_1W$(XaGdj0phn_>Y_k2%rk-{t$r>l8S`aQQI zQCS2r`|cHPM%HxI#iLAR$gc+!TXEY(;BXDcVo|r*}yP&M?hy&}AnGbjc6__KCR(a^$!{n`& zeVA8<|NcC%><#zd$83m-HYtFNKZ5)H9~V@iQPGr%9pJFB0UBv_&idT@&&rLXl=D4n zL?bQGTIV?YzS2?PDd;oP$Dy|OFSKqwmg-GSi6rnC%z`vQ=>w~@fPWPz!h0d;pv>4g z#yC$Ai4iRqBFhlO;qoV%`rjQGZSom-6j*kE&%{d2?#rJn{8?CTk!1JG85rwc7TIj126IA9RS~xs0 zv1LuHxbPid7~iRm3pUaPuw9Ei=vj9fu$(XHgH0@h-CkYTg76a*7_bqf0$ISAp9j^c zpwpWc4kNxsv`!Pl<<*HOk`ZoKz`NUQdJ%V;qk|7!C}Ub}GU2AyN$HfthEso}G};u?j- z>ieQMRFZyVR=5A8cz`NAg_zHs{iS#SSkYKCz3RRr&t8 zoP~&K%_p84KCs&Tu`Q>dXo$j+{ffwyyK>4aoYYwn_0w!$Dhd{4q<|U6DHyxMJ*Q|F6M+um_pFvT?!I0omEHKv zu1nm=S;UrqrF$OpF8_?1ACz|CnP)N4w3ireF>Gx5=`3psa}Hs&dvptd-{>5MKsS6@ zyl8`73CJC#b&60~2WMeJQce>?5eeRToKD=uYbC@06v~yfC-4UTl;n&k zeXC~jKasR5nk0Y-&5s9tA&5Z?zuvkM^@|}u;mhrpV=_-9c`zI%Fbp>%ikG$y8;Vz@ zLGZmr1QOJrlE{G_7B#&LQg5r1-Ilp2KJ8`Q$aI5*J=i6lS1!a}Vq#r)>_@6lJ~u3G zA5*DmMhQU;76bM>nz_IB#bzu_UPJl<c63JQ6(`?=(D#@~;z zpRzK{Bg+XzoNvdXgIR`;QD)r=o`;imIg-YK=rr+2y@bb)UWD z>z>?{iQs1mJ1J|H+eDlB)VEcM5OSZ|$dzS7(_xG)$<*WLXUT~H6dY@9r(Ih`6>DhQ z779J9?k!BTSFb>N6tWl7ZU9T!))n>q^7N42$@n->z)>>f0)k;!(Bu!IzX_WU?iiU{ zF{bW0&Yw_?ahDCj_=wb4;a+F?rG>aWBe*GDNsJ*DNsHj0)LbSP@Bcb!Rra8%Auau4 zKE$C@iar_VNOEIC-`Bc{HX}z5g_VItcq5Sk`4}&1wrfhvG+}mv-1o&?{*TN9o>lnl z7+)=-qQ9SSGGKVIc*8K&oYTl4M??2S7?`6!k6Mvv*V_;|>6uk?LQwZ)dYe!atU9;q zhYFqOue9V9_7hjKJl_Ui61j?;iF=@Xim(0`9D@SIF+Fl)e-C;Pl7notjc^hMR&b_t zBWLj@4cE?gr_g|;pwWn@iMrW38mX}faDP<$kglcu@#W(EOGiP0c1gN9eViCD##LiQ zJ*|zuZVX%$AOdc&|7PG?ckMvG|2zZ}i~+QE3m18mKNSRTB88La$b@c=+>p*Nsa+9q z#c!TQMDXgtl|0gI^-P_V9RAK5736Z5w!Bz3@gIpUoyVDX;TaspcimfDK>|IFD>5yO zj-!J|b-UAoRT#DSAwfwmj6Ue!UB}JGw9Eul&hWaDlZZM z8pvl9ls7#2Jj+7gyESY zLAC(0l>0}tV-w>syFk4O<{O{&w(+bBw|PLME{CXACx|Nwqw&I=J)hbBuH|IWc{;_l z*itEC==PkAzOd=be`LglUHdfxU6c?c$L`qb9+kog4w6W7XryQRl?CwCV4@$ zhEgB&?+%&Kg8#)MNwF$a5tekPc`?ptlPb6^a4{%zdeXa75?fFe^bRnKEIq}5rz8|h zkd60A7!>t}>0H_lOs1#tRxv|^<3mqA?}{E9gIp7e0c=dThAkSi4hGkPM6#KJlfR9c zg#yte)CW3(ZTL=-NyqferfmG(_gF~Lhv6v(g~)cj?VdIEfqA1$;?fLTizHi|0%DP5 zK&&~eT(f;4vnCum?;UI!;_hyS>Np$n~9*08fqW6e0ZM2lwS)RUW z75V0-_jnV{^a!;XXESHQ%*^$e3Csv7{Sl3r(pNe@1x-OpDw=pBmG@nQ`Z?RA(aI*2 zK`nZa=0QBn5VPU+KyxX?%Vst?mZnn1J#D%wzb37kp$C>h(FV;D4&4Dn4W^+d1<9ZS z<=b1a4<9Oh-1ZeCIP9+d!6|vg8Oe`LMbS1r@Ahde*Y`+m!KyI?Q`eTa zbrrTa$E(zY(VuPKAT>&D9oSf#2G&#MNR zZ4;;R(}N|Q-Y&YzPXEA@b}2Cf(57SOg(u69PWxr3PV# zGg)$^fox%TZ$R-u;Y6%$8Bc{#(@s|?Y^Z&Is-7CY{J?YvY8*gXuMxj+1c^KoSa6NV z%b7Wi`+T0oG)OJi<>D71VF?fQGG^YD43QOjL;$2}yyU0GJgGMurvuA&W5mC-Z05-?61~ki{0{3&!-;e*JAN?S?upf1gBJ9aT1V8jWrHG^1 zV5pWeKbbq&NE1-LLn~+SW1DrT^sHYTO&)T;%1dm#b$0tzdN|zN!`|=ILkxg*8A4V^vNc>cgZ1$%XK#T>;OP*Yi3gDVn z9hcHLX&NK~#9)A%IkHHz21AsB?gKC_$y5hr+bekmg1q?>*b{})W> z`9fY^VoJ%kvMfpa=3|mP+0q(p4t`4`Uc|+Wi~r>W2fO%|zua(BS!ctockw~pVC-qa z*cfn8<2tl+HLy5W*S*wqQZz$7^O%o zwYKx6Ix|ph@a9%jnR!!TbebkR*v5tvT!~{hW~i>V-`BG{0Vu0A4vaH45pZ5XH&@*5 z_vvZsd6B9EamCZ2^l|d;ruK!e1P*g4xJ|SgpD=v%OxKG^H$eIIcuX8zDGkn5)Xw4P z5ijF7X1ME?E$S`y5q;F4JD>_HOP<`v5nVCWF?7yliq5kl9B9_Z{9l?s;-0#p?94~* zL`^GLS?{H2uQ_A9VqjeT-;e32F>|p}pGxA*0C%Q}(0m6MWgBd+mUrCd4ju;rpPUa_ z#+~KfIai=AkE?eIu1m^{z7yMr(RZ;RUd~gN4$yV7N=2jZN^1dUI%qn!EA3D#luwif z!-6sWk#oDnI*ZYF3t@V<`6tX=)IL$8_4XZItO^Qx88nH7QCjeVosPQ{Dvp)XHhlDryQ^qYO*J)_UsU7;D zN_<4=CR!P?UzjMmn>G{8ul@#n`D|qF)gm_yCMC~_5MzEr9I}htij6esqf#Cz(rZ9f zBda+<7S``uPmf}xs9!YLYmsh%p2Mjc(p93jJi7A8Ys*)Ld)w%?pdu{W@v>=iZR}rr@Bf_JzqUQIJjhj=df&M zd#Af9zm@FHmZHhtQ`}+)04B|=;8Qh#*{=H>C0jsLm;giSD1jZ zS&g7m4H@Z#+T@=9PbSgpQJK-osc3f=xf&H5#B1P#@fCtvh4_3`mQruZ%5(}iGX|m7 z1YE#LIzo&a_r_MV>I1Awq*TmMEY(`!7~TH@dd729i<@F8+kX>U!sn#IvdCCTG?U~Y3xH*IN?!B0;l`j ztp=YR1w?%euY@uf=mi7JZriWhXlyWQ(Mu8y?-7|Ij(H(lGr`Aeds--C@E@qz2}+VI z0BO{JI5a{(TvFWM7ar%?MwQ8}R<22Z!%=-Mc0j56zEm64=un`5rHJQh%Q~0>2LU=X zAh6{fNA^XZ77p%K%*~UB!>atgB$Mz*^xWi@%<&``qy|959Tj&<;&KW|~qE!?g=FokIh8SGdie6d~w&vL77?DDmhr&q3S9xaPWa8dhTjh+5-iT{d6I5b?g#i88E&|y~oMNGQ**<|%F@6>95Sg^d_)q&yXAG5hpwWkI5?1ZT ziCor+$f9-qC}sG=JmJPWON%s!iFzRuM$ZZoc#T3~#?gZ4a$-_RyS`0xpdc6)xS>># z9SQsEUx;3MRwl3vWI5@Bkw}UCAD>husdyaAq^$ z!*ExCvkPt_mSf#;U+`Zh)&ZP_CSg-BK8UsZlx)iR^(|qhxd)DcqWF_^V4}mSZGK0( zGE<6h#2FrQk&A+c+1a1Ir`3|FgN`wUbKn6;F7Lsyws2($pAAf*4~|>;yz@0qrl zlqp9G2@dr9wgk%@h@@!0LlBX@-(folcbc&*c4ZDqt&VYt)HU{uQqD>hTpYH{eq@{J zN*|e0X8n0~F04j1YlUOL{-*KypB3zQzeF8oIMJ@GhWU)8ggngz1st|$}-E1BZGT#Bp;%P zH(C5`_MEvj6Ov~WVVVbL=GpWa_esVgGt|+zER~$Xpfx+-EX+WPK60mhj~uNF2_PKb z4WP#`5xqV276CgOE}LM)=;a}R{;VCZ5c}PF+z=n8oH8Om4@MTy-eJ#MO3|q z%bZt#9;%sm@6grYnY_oX&=RH-)70i$y$M!_8N91>@K4;yHj*@P{v4N_a#40a0qUK~ zS!%S9O}k4;`HXI*mR!xc#122`l>ls=>Atblq8%(I4zE7CAGi>1Dt}*Aijey-&tWTa zLqn?%gh>wwgj&qk(XO|ZObUZyZn3pPD^t6F+=E@Ud&pSxK=fSXuy|O6RNl@nm9;iYVK@N5{ z1crkS&W;9!{YTRnL;DAEuNSX*ksSkl1qyx*COwatcG#nY0=G%&tDMLSMCp?tc{gQX zo%rm~Z&cju?$Dk?xtg&Pk9DAQm>4o{osxo)bZf331{r zFzdDHlx%u!WXX_4T*T5P#35s2jg+y4ja#?CG6sk8r#1ukIJPe%*$AMPM*&v1b&J|y z^gQU`pO?8x{uqKfX~9br&Q8%B*p6zxtXo)G1EC3fO_-W?Mv7Zt4>cL)zsN|3qLi!_ zFubZR+ZS`9xr{igrav;m=$JugO)9bML&fl51u5LbhM5>(tVU_)E-e%}=@c4^*F~an zp!ti&3n?%CEtZJ!jKL7MYCJ>Wvacte+V(BFD9f@a@;|H;1z!=hxt%!KQtly3KGf-#`g6B zo=@x?5@!3<==gYvZXvMD7$1I75vl{Rccct^$?z;hLI=cE6h0KR(*y9Ps`l=&m^#_)v^al3a<0J-ud^Icrc@wlNE0Q224} z_-O5EDXxt@Eq`?bayA#bBt%{yzXahsP* zRkVmbuw?5w9Hf8*1qso_URy9UN1o((Q0~)OUNY_=ublQHp!LK`9sc;pGn>viIu!n zfEe4@ZaP)rjN()>*ngzbpIN3!4z@%XhLdGHU1O0}` z@4$;Tt%++b$D~Jc|0YsGKBZ_{MYtVu(ar8B|2k1;Ez#Y`>Ky!htB$jr&0rcw?|22z zIZKIdoZhu=!kNKIx%xT#Cb~)zaW;A}6!_(^-~frBEegsTWIgd5$3{)3miq7X^Z!+M z!b~+%3l{p1=fG6xS@eWiCQ(vYg~bveNnMRd13cDIa>-gDVFwU3WTywU3nxZm#Rg7< zgMReZKBC`^`|-(ZAUpP;FT}xuwMh&WPQ?}mxj!q|g^pW$`bMCTM8LRgeEbHdw#Mg7 zAv|kP(H-+r;dp@|0nt!oA4d0J;jCZGw(xR7bRd658+s50`(q;czxY09|{$ z66G?WU!ofV6`%o=daVGhPMfy-A!Kall^8qy-J=vYK2I+8GQz{T(?=a#g^TYX@Eqnf zQ6eBYS6#|f@0kNUQ(nVkV(N@CSSji#IjTcm!`i?Y;7VjXsoDO#np_kYmTjAyV(ekd zw1dWzkAg4Jw(g5AQbLGyaX;a&ZxC@F2`;#E3v+MhrHDWie5Cq;n1dh61+5H(AKI)W z)4dgjg;&|za(_IrrmsXi2jhT~%`jIqcq5;6Rm>3S5PdoGBbtG}r;NOsIZ-ALMv#-5 z*|-=c2_F-KVj*a$Tr71pn;Haw?2TH8B?|oG7&DVN!eN>Se%N7o)!PYlp8c8;B6K<|mwzzOCr5*e-Tl>`=MxPnC`qx6@}w zBFW);F2(O(_Ceytk1uX-dujwjI0<%*%PB5vAFdRX-<*VKyAOYvQX4i|2&`IeWIiumb(=N3mrTSLs5C3V}4G?6szPEB|mr2-p2`c4JE zBPL2Y0dlCBSEt6fFx5WVN(dfQJ?Ddl8``fsE`5^~80fBS5*HS`+!|O71xD*4Y((?> zlLJpKs2I%;>zp2qxUMM{c5R#sKeW2+GKwt{@3{bOg+mgo1O4a;npnnr9%mb2KNr(Qy#9#}qqC zNcaaDAt(fK1J9d$vfJ^Lxo}|!rmd(pB?vKC9O!kcpcFSYLw8DhW^drebvuRY)VtpI zDyI!WFaIP&;42mdPQ%!fOx8Fn(j$>x6lO^1ATBNQlE~0lTQL=5_qmz*IP7_mMLr*p zav;%DmxOSZKPdkYIod0P{Z+V(cmhjRn6E`OojPJdV|Ruo1Td4FZkORUsy8+_Pm6NA zmgXXa)Qu9SXb{{*Ot17~gPf3FC3%jCD#k0aw|gPQ)tI)OBWA$*J~eFwz{7zp9xTN5 z6Ch0^2i>)$z2+hzc`$uNl({vPkYT!9dqKe^tu-=bO(oEUl@5k^&HxqAX9JU7)b*#J z;mj-jB|cqEl8x6*i>$z=g3^OqZN5O7hgcnBsW0eDlW0>?o~K##S53JdKtk^4pcY=u zXVoxoND@$iJ@a&9)PHYM7LC?8wHvP11Zr}QW|Fs?lqKs$@cD39whi0!ZpChgwi>z;IYA!+SJHM1$HviTl|G zk*FX%!G&Rjk&IdWt8v4F(V?S=A^ITsch=T#)XX-$X`%F?M8hJZ&(vk)4NfBjbC(mU zXt6_X_SMsW$gN&=?%0z$j-ooK>B4QB$nJkD;Ei1Kh7KDEk;2>}CT(S-fm1?V`(wpGj6jzt-q;2rOEbX6Qayqh?4eZBBO(1@R$@pW+lpi_gVtf^&M3DwzO~ZbSZ*`Q zar)J%d#J>$5N-@vT6C8FKpuK4Ll6T8ow%-US8#g}G{n2)rS__+w?6-=kote^m-KwT zby8ym5&j>!4(k=(bOlf16r=LK&e4x@VS|8{Xrz?6xg{gaNA)yRZAMoQ21@p!tA_Hz|3|+MV~s+_-{nuW(FOLlMfVc z^Kuw%+9`Ra;QI1_thwp6wQPR)=N`m5fbZ4WH#}XB{0#NVpX?37P9{jaKCIxjHxb_z zH%rvOMot7mO}bXd9G`D|>NxTow|h0jtegF-i;>Z%+m>aTsd6Mzjb#ey(U-W%V+}@6 z+(ewmtOOp@M|A>1`W+R2m9L&P=n(gL3n3BBilhiek{Ob~%k)59PQoW+{JMX2H5^u-vEE*%O2fZoEdA9eT;6-^Rk5V>3HtuMtTwegVj&($TEj%)9zkZuF6 zB?xJ86`0(Osl>^`E-(5yS(Yh)zEUV=`_7bvJ6G(yCy>CXvT@F9Gzz#tuC^VTzDXxF zpAA$X6B&fxfcK~eC==IU;utJiQ6dRWWJYm1Ldiw)*(U5iHmBn~u1RKsL@sZk0;Xyv zN%4NaG1iX2{ct)-GDy5!^$QkCgE672OagAH%@@_~IG!U!6$=9jR2t>e%ajVXP|I-Q z1-h#8@#YI7hg)X<6lO>4GYv2%&hW9DwyF;ke9tX>PZ$2MNRg!Z63kae#%`4E2-`B0 zy~^jwqpQsd8ws89mV4r@gZC9B^;jgc#I!!OrDN6p+o4`F?A6=EjC_mub=fA-cBy~n zr1WWv?BP#hxvd2P<$SIwMVdXCZdtw0x%67|736iVX+qFhpv*LKXh#%kW0{SX7sMlz z%1cRT=MiVVuX<8G9rQ^kJ@hMA6)wElF_)?v*xt zTqa57oTdb=v@Wsl=7|%aOWhGYbqacy1c4BnWg_DWPv8fIttdXu{|P$OCxO*6>)N{# zW@^W5!d{A6K|{3}HD5U@X$OX|D8eMNK^PCZb!b=`P%F&SDueP!y4fzK-uZgXwoL;? zJhLTb=yVt@oSKLv7iws6ehE0XoDPV>g&KSJD)0->!XDRbgay_~5xhOIT(cP-JIIjV z<8%89j46#uT}Q)~x{kaI{j}9WZ}2P}bFP{#3}xtr&j=TaNb-Uy-n)NeKZ6`R<3Y~` zVR21PL!nW0Dm3`dp9$5^=!$fV79?rG5c9VBsbPpn`Dq#(rm#sx6LWWV-OMB$?Bik& zVI6ecQTxP};VVnEGdSPr?3}C(C%kIY@dxjZ*WSGe9Z?vgFY`Xu`~w+?=|_6~<>qb# zu;;uD9qK++E_U}o2j{8_Qv^GYLLMqOE{s2(?+{0+bj~zV4x&dR1Pyp~e{k{H6<+@V zPQ!n=F7hwMyoe(nMWv~1D;m0x!M zvt8@9JYTo^aSPn3DoN+7do3T6%0Y3gN6xNUi zl{`+xA{CFz7keH>>Q~%^=ff z)aG-0-SvI`99eG_(g&7G8d%i<+0#;?L0SzOJPR^oqNz~P0(6m2k-$9Ipv+H$lYd}` z76I6|SP7*|B1)?Q3l1d!NW^J?ja|bJdXa=r7L!Z~hZ1PII@V2^H`mTfYCs-RA zbDGlz!f_)l_r1>YO0t1cGkf+$D&_zaWS{Fr^wI>F zUqS~+OhnC+aRAH278gCGMe(=SBGEH8MK2)jHhzt}NjQS%>nQ;yF7*@Vs=c5>a)wjD zFDKPU+oupCq_5z75-v^oa4iLYd=qe)rGoIag^d6=z9q5zBUx&bl6+!Au}*8aMKQkaX5!iM#|`zR z9>~ZG9C6HWjRD9~D$}iNPKV-ovmkM?{rwaB%bu?;3*ELa8Z*ODSWKZ5&YkqBf*&er zom}*t6OgjdXCp?&|4YgI%yu#RbLVL`^ofnA4Lax{;&5qov=BSWV@9gsMHzz=+Kza4 ztwzi#06PJqzlzP{T1eSe&?z*ZZxa$@z71FB>D&Aan{y1}5PZtEg9VO)k~+YqAv=I8 zX*Afu`SNH)H}kUSvAnXp(KG}{AFE43)(gc}4*NQIM3Cw*SQ%^g{DrV_R|XDBFAtXi zWq=s5XlZz5`-r_Lh}Pxs7x($mz;Aw*uDY8=CEXT1coL)@9=7c|iVesFZp*yH*c{j0 zj4-W~n}@a%51psMW1f!DE)6y68+DPWi>0YivS<|x`_fUzNNU}M5~H}oKtR|?6BFz} zNl`^xA6Ez{;UBvdX@*3APZnmZ;Gi0Ea5TPYe+$-EnFkcR=-7S)S6!G;lrHuOr#6(} z2XQ)FIpUA?6@YrpgotYRMgPHNuvIZY+bor0NljSrbVcwB3Oi>^lkR|KVP0rN0C=w> zGGx{0l}&j%j>eR0`vtMd9z0l{wt+BcG8~674S(Af(0DaEYw|SFf;}7o3_%1Mx>7bk zdV^>sg__x$cHxD)oZxL_+Lil;V2ASw-CS%oDz7e?iyj^(04|#No*c95A7aLK)qK&u z>T(c@%>VzOB=vDyZkL|8McUandzIoO{<1HK57%9h&6zK=-5hvQs`0)UC&-){D^bOW zvK5VXprxs06i81R$P)-giZY3y|MNv^R5%z<0Ws4l9_JWDO%XR|FjOcbPJ&)N51IuwR?UVAzQj1UD|bIcRoL zs`rPD%l1UuZ%Ne(MUbDrGNEnPk;I1-MC*kaqa%9g70)bFt0IA>CXh&4P)2PemLo;d z^jSGU79tEChYMwV*z)UgqbOw`9-X+>*X;@-bx^bycmQCv8J}`**=H+0@QPTXbt)jQ z%npmd7uK+BB+iIO7AS&op537TOGX}^ZRb_^QF5z&`MMeAS6(_`SwBOOw4|6L7;31D z_9!0K3u?H3797+JsKV%3^npN^D&T7#Y2D-NP4@w6`&7Rp+asR}|1v~VX0PbARuEz_ zBbzf7A)Ps+z39s}kgx=&z1I~Gw0dlF(`AQ!zGE0wt-Lo%iWq8>w?0E(T*}GUsXfs; z+QB%MS8FYc2@bbROppxg*bS%g8@cwJ{-hdI-7 z@pB^g5tlzI%tbYaI3%~KoRmaVI9iaW;k(L#Rfafp2zNd1Q$W7|{SXY*l04x!+2=qj zTjN&sX~DTXX`o}m>q+B2!<{2gt&+x1y)0T|KRY2B=ts9c9~{!x+xMr{7`&MRlE7}v zDjtz314I8rcq3*zHumL^c@fL>I)>~njT^o2WygktMZ(K{(-$|=a&-u2^a``$9!@c; zW$L(3>?g4r*&&wh|i*Cl!o*ekSj@}v|6VBa@zR152-h6 zHmVL=7eLeELZ5B=d&#OqPzMloAJV*_k-IdH6Iwu}x5W{uIVa-RVweHK&D3MFH0uOz z?&D&E>6St%1G+8AN;uo6Vbu;mtU%l$n_R@Cu{X&x&p?EQ7p1{uX52DAe zR*aPQgtq=rQ!*IedBfR-70!r(IU0=I`wybN>P?pxGB3D3^ckou4SyqGqu*zmW1w%Kb$qb9@C3#u;Bk}oVECUYX?pGl2 z4*kj3qDU%tQ?Gi-Gc7|2l4)K?CyWlaT6SoJy=EEcNL{0lV0Gy=cbk>EE=87Poe}IV zOr3W$nc6rH$>Fg7xZp;L+jKmvn`=XBoOdJVVf>$;qt*F=EVpmA42(eVVx5S_%!N}s zkYyim+z37@2rVvvHs&xKYf5ypTe!brt@(IxqecD=HbdQw<~m!u=I027M<+!{ou4XF z*Uu!5;8HSHw+&2GRx6hd)6xdzS#HyMKUgv-osURhDpJeREPN=)ZPR98(J%qNYj33L z5Zz9;{PH-HMxXRO2lp})pzfw2iYOe?c*MpBjY`7}@%1|uU0=JYb+QA4LiA=ub=jHv zV1SE78@$=m%2c=aFQ&Vt#X(P&DeE<4Ls@DtMFUxbWns|DAqQ2}{g{kHpMKmOQ^{Tm; z|5p@=28a|2TFkf@VzZS3CX?G(HQ?Qwj3s?o;+j=}3?0y$TWY1|#=sC&>D`{|@64d& z9@EO2pR1uzOSn2O1b=bFX!(JXF|>9Lk!A9t9 zFCfXstdUD|>5TRJbxPj*)3y;rRv2bh!2a{Uw; zx~?y#ni{4XNycEAtkiV?chnQtxoErsro84=6jYA=21_`32<_+0Eykfv^m@D*Gn-1S09pb*d4|S>+BRZg^DQtV1FTkw~cNVe7Haq}0$Gq;Xt;$Fktkw_c zfn!|l+{BL6e^m2n`Emdi0zk622vaKI0PTe4Y?AwaQIl!KKwmB1fU3~xKLGE#HLE}2 zTne4{#K2E3XdixMgC5rg`skeP-`5ZUkw8g$r=`;=A|(#0EDnT9xdLgg&&ST&LPM^` zCduq@s^XT69ukq#+bXCgg_lDpSw+l%2+7_@LMB*KF~WC8A&j6Ix0RNPs+mF8ykTa& z(eOcA+GB`6jK9rpi!gYN{R@qt4`{Gv$ut1nX7}ROHp}GT_38L zKB^qteb*~j2?o`Pll^A8^??-hYWe)|yj-n^Ol``e;1JNhOM3F_ji;uV+ciuOn_ghB zj6z!A-e6HG)22x~@ch<4QcHb}&`X2hzf+u33-G_5^@Cy$vE>4)Oo&09uuVY7D-4~uxP%hX?vuz>#ClL(uFO)dl5UiBIaH9h!%>!V2OsO<8$ArY z+>JThrB>#jrmW>!N92DK0UJp*4h%F^Y`n-2w8Wn^YW^iYK6U}k0WOLef;AAK0E)9G=cY{e7*Hn4JuKW zYNCx(HQwuadanwA{w<{(MC+AgxazkxiR@+j)$ZJ3n6g{(Maw`B!HxwuCFE!V8oDK3 zTObb7nhvtp5dp8F%~8&T#NSK7QY5FrXp{swN$;(QWS7h8ItXj?q@QUn3u8N?U06b= z>jFB6^1)2>hl&bVtw-27uK1_dhx}d{$QTP-f2i5L+uGi8OPOQ}*#+DM%>|T+ilJw{ zx7BMg2iChNW@5bR>}SQZRv=Rao3#SJ>rp0aQl@H$c1}%pPE9f`%(S|X699@ANmwWM z?nx4v_Do=~2o~Tm_wI=gFNnZj?%k6zupV&Dy?X-nME4|#CBgF%1*OYLMM3Fs1wrst z^C6=)rtdnP0;}S@YEe+S924k->-SM-tT4$^1wl~u3i|uBp_&g_jZqs@9?I#UqKsDc zTZB4eRrxE5LeX3RXh4_04aM);O_R`EAtWHa5_=^Z6>mBSY3MU;A_9;GWceU+Q~$iun+O_V7_n3CLtE zler1|K?niKAE`bP(v)u)h^^VBU4r}R!|Dv^)X^EAHTw7?0CE#(0W4PdtMFGp0`XbD zL7f5d0BMgp>y|2Ip-6v4pG9fSmIR|Udb3EVID$J=p@b<|!P=ul#iqyv_tU@@$C!3i-%5jwO$)Z_~ZEW}{}3OFZyu!F#r>6ZVe;QIY>bWBS?#F4`7 z%)r?}#mONk%KE5tjOr3M9(CA%k7K@8zSmF)!Hdn_kHte7w-3Mo}n zu9zTY0}f}7C}GQ$EGBKoBEXtp%^@h((#t){9JT^}&%stT!WN|*ayXp}38rj1990qz zr$6YAB$H7EaPeY8fy);qHvlwg(u9T^P-tR^k08)&tq6r*#*`OoORBhWVu?0ww!ol- z1ujR>P>=}Rcjp01N-~>s)R_g4&@zORB$9G4bNX*kXI%smV~)hZp$n54PJdYio5&v| z0@J{q+egNmkaS7XP*{<2I=uv{asr`Y#eeK`^bzo`qu!7oYU&wh)Psr)o0n=W&#)QCqgYFC~{b7yL z4`&cOL=-IEoIzN&tJXZB<_ywmGiN;E4B~k%rfQ0jGl&Ze4CR?KNDD~MIWwlp83eD% za@wyYkPDKWL0G2^zx#nltch|vYZ+waoI?YbdKfn5U```!yogxRB zLPW67uQJew;SQm1y&Vl8B=lew0@}gih2D+^U}65ekO=~vLg;h2&(HVR0iPE#b?^j% zAij^OgC_%--9#%)+Fi;&CQavGWzVbl9R4bOK1Ws2qvOl1ca=J>4llQUr_^C{>v5^0 z=9bQbS;x!m;K`wBr<$lftEAb|=2EnZ%k{k|Ai8qlf*?qKK%&V3Xr4f!(83K3PNFy= zjS>rVSYsm#3OWpdk^(Vu$gmJYh8q+$PhjLgjd>vj1@?m%D}kp%#R98UjgulvOU$V< zq9%)rDK*NC7-ChtBQJRP9@Aw7C{K)tq6`XR+|(N~r~x5GnjV&jFjAjhBb30z1UX2C z(A_VY_Hqa5;~OT^Uha;BjFFrgI4h7*5<~#vq*rNqz`)0{bGg96I7r`s*$!ZO@?TY+U-T57OTKDB@ zte<)?`d#lU_+78QR}3&vDyR(~B2s^Zjqj5%~rQAQz?6D|jSw%byYY**eU%?DQDhnM?17qV)$ z+mZ<3sz;4AZ5}n&Urq-VmA}>vYRnTu)~bpnO;Tgc!ev{Z`e&`}@hEHcdatbvAgpDv zJXXkBS?>c!`m`0IPZQDq=wJF(q!~~a%dCBaTJvid^{l1Yzt1ZB{6P20u)Z$_ivg2y z1f#KH`M7w*&>MAZ1;6X!*}*(Jm}dtY)p+3(Lxu|&LnBNK$&eIVF|@y56L78YUKb_QYWGq zKukO(ed1-{{Z5&i$n){>MDuIdNP{MZ9TKgOt*8NGOhEYJ1C0on0PVA9VjK8fTVLMG zVnEU$Wi`HF003A9e^!OQs5G&Sd#R^?K zq!q#MdKK&;ckp*TTXn1pByDI}*7~qkDtf^0dX*GiJWJx!s0$yFmk-M-@nKmXmbI)O za@psx){55Jf6=7*$gHQg52W#?UGH*Dv5O53mYECyv`6l0OtBXUfKKa zf4qP$=%W>-CSD=_yqd^9SdtC1KbEvJurHR~HAE@^f1S{@eZzh=-HuJe+V@(y3}XbD zOcQY!Bi@X(R(9(;VcBPU5w=sIvpz@#Qba&PD!2jzh{cpCjxLx&rp8ZEBBPWd2ZqVR zix*OyUI4+6VuJx$(S{G69c%>Vu z3YZr#pe%7g?w&{igY?m_8mqgg<)flTLFsZhC#DtnU7HsX&6NmW+t0g%ksh<6rt+jqVf?uH5n0uZ{ z?HMgjODk}ph6*e*_-l^3KMI~#Ypu0bTjOSJt+m!#tu2FXt+m$rCdA_9;OS;~Vdd2@ zveP+a%s+(`T4*7L7-pD3ij>?HS8)!< z8+GhtYE~N*rr$)~e`)ijjjO#ltvWOz*;gzG!7av=R|Vu&zlI65ipG+-&_clv3=c4F z*mLi=n8~zj1yp* z20gSO1_zED4>>8>MeZGt*j{wzr`Mv#JOu0P@e+8*Vg8=D+oH7FqNG8swN_e?TyJ66 zqOCQ!KWy1*J?eR$=Yg05F`_smfizJs7JvhHcXxMpr_|k9tikT?*fAExB;X7rm}cGG zoy4sg=Ad|=Q&aUkXR!vmw^|tQkeFvga@sCXWFds-c|$?3pPv;gfU2;YG|}DN-QC^Y z-QC^Y-96}aaMLyskkAD)mSFliv|2$+xVySjcdyn9x?yjfx2kn_ukTTBb3~dE1$MK= zkc$zi^&*2nr*M-7f=tZ}hG>xl?~1ihD$|-70?jm>U0gx2Sfe;-)1dDn3H7_St8~PR zuF_q)M{@qS_>-@o`@&tiNAB(JG>%Ke)koI^P2_)VG_hvO{-RB+)fu%;JicROAd|0{ zsWKnUz0(4ffpYJ(xXEMgofavb5F7k;2O?2f=j-cWEo<_{51;iLbdmjj4tmz}{T=k^ zq87OGIv-MMtrxnuQ_^;xVjdTdtIR-s{Gbv3O-7#Eb`Xnm?@g=oou4aE~`ed_PjYpu1`T5GKxs~xL7^{Kx<%S+gOL~%33@D<>& z1y{y10TOz}3JHhi+DO*1SI6kne!Scx*)aOFo-IPOh83=yH_%V7__##ySoHY!eqAuOpS>( zcg>h2PP`b-j8eMQ4%V89vU>^wjT97$xKcPKtlT>s3UDM?BZj(MU`mrTSI9(RVu}j{ z3?3*j0+OmKQaAwN<^BL82PH6U-rO)J2r@NXHB+uCCrp7$0t*^8waE(@mPit32^cR- zuFR0;g_9vjAZCsdO-@Qc;|7LPH{m8W2F#8IEj`3>BFgoF3RY_=H$>QoJz+p@hz?%1 zEWwne1ypmqH7`mJV5CfwHC&7+W93FAxlKYDhQN_SWDJsB3>62ZbmW3>ayzK0asf^h zC~gli1aV`Sx>yJ&b|o-Dg~|#EPg=Rdv?&v&4H;O@+v38CjY9>-bKy{^TF`2eKw^Xx zn2eCb79L_{tT1td6mQ5dQ6bG4H%&AFQ?+B$f+|&(t{E7WkSkI^H37rM1QkT#+1#A) z;>?*QQdlFU3zjlNHqeNn2&x*JDJM#>;6;%Se!#**8XA;rK(hl?tmYl@Vu^+0#)TAL zN|3R!Vx@==0c3(8(`F76Pmm!qRN8EPmIS5#kUu~0hJ7G3%OfiS192x#AVcceej|uG zakk%}1?5}*@LX@kw1!#^TZ1LsXRN?EW2LHfKWrZF1Ed9!IuNwc<@H4637F%Xj!0lF zH&m_O*ZO^FVE$ZT4!c7RyN?42Oq1~t!SmHK6H5IsG->TH*6MkHx1p-O(aCZ6DXvQ8 z&^rhv;4@sEkxz3o()^x0=BBMhHT%lNpK_azK>I~~U2+H{OmhyYClt|SmGsGjIvZ~q z*zj)a)Ra*ZMhzD=Sg37AjxMr)&nuO~yIQUOf<9WUZWkQx;&5)eU+(v4u)#En10Tog zKkME@Nx%17OUEcq2JQood1Zy-%!PdbHah^<_lKhx+77(vl27Y2qKqm$Uck}A$kY;X z^pN|>*?eoitE5k1kSH|jxF0l8!_h#;{BiW4dx05e$o}Kf*c7G|W5~fYio?=cx`;~` zQHtY+KJs1z+n+A_r3c`8e`?)h2~(IsSRAxMp*Ve^8f_F5ecNY&=isa ze@~Fs;e=_O z%dvqJK|wz?pwe|?#8FLprDX`_)$aZTh;qX`x)NFf<6V44hl^jx8gu;! z0rFiYkQUTQnnpEN#Vo6_T5~n_O^F})EC~wuL;j>se#7moMGNr*pMBrwp2l(D4z)S> z;lOX!(`p982gL`$$6ciJ;FJC8pf1{Z&;~vpk-(^oqh=^nOV@?wt~AABqc~ih)m!c- zyO>;l!a2-8ox}WX4g*EcE9s5ODUBN^NRWk1)kz%}g3L_y_@MsG6uV?e&vC zT%FM_6onoBO_~llH3L zRQ1mZ{9Vyt%LgX=vnUQ6BIem!9Y%YlL$5RuZq%{D_0fH=*7IaOJhxUBiR<~qc%FE# z%!kF7%l_#`s)T}8lHF{|{vqk(c{w)dx%b}NW5w*jc)MS9s(5vhh| zAJv}GaU@BlQ?#WM^1YIF0hOA_O)0-6;BUwfnATHY>rU0F7BV0{@PGp?Xr;B*T1TWx zYpwL_5-?;nmd=~CrUXD-uw zP0=eo8*fc-_lwWTbFFfpI*gVOOKDdNVa=+HE=wO20197{LS9xjmPcceP#}kK6a+yK zgD?!k00WFM1{tWBsvQI_v9f;n^agBy^v0iT@^a`=*!T4@P_GLw{1>cvk1LG`B^d*} zOv7s+D+V30A8-gwa*#x50}ewT1wv2A-XZiSE82%yguEj=lR%I#a~r9Oc6`QBL`WK3 zkMMnRv}@PioOTDYDh)fWRoH%1L?{n+9@NXy#}=?_l})`I6l-zN4aa8MAw}>EEnt9mt(+-f(#nK#GIbeYkrUboMa#mz+Z>TX_GY7 zJe$G)Jg*JuEx1^YxUGPvyl`aN^rfMzb`n)V@r|+Sk$HE(zvTZG`@I%+5f3%l&O4A3 zJ;=B!L#JK#uFwQuzZgwN^A&GOMTUHMfVa;Yfjwl87K9Nx)BHRBK?+JFG6L0{3qbs~ zkr2PHL^blS9e)c^`z}if^zO9{^}VPXQuK(QL265u$#JJMoD1C@$<0L(T!A+vG;pfz z8223Q-4|?D_e+5?Rfd;;Zp@$WCcyWx|O9 z+n_`NMlYyyE%?!mZ}TTtMoLf616_@Z`Zh2y&Y{H9zahui9l{ht>PlYdST5oihtecy*nS7d+3S&&S1>pfErNE-W_qT7RNz({- zR$SA*Oq(BM%njpyb0D8gyYJ4^SS-bt#?`|pBVATtSjBcix|7Wiuyv#t=VsFsNl!Lk zw}vpbVtah|<+1z*N?@nE#>i#~SUGML6`K1?1DQaP+n5kqXaPnc*FE&|_UWr2$ELMM z8z=N}|HT^i>k~dhPzZ`$}x$Q zt5EPErqGwV?SC1iVeq%=ndUl@&d)p+(jj;gc_IY8^yK)=VmMmJhREHSf+?%U<{I2&z{J7->p zjwQi+!uu|$8JASeA3nvR>k|eCOyZ*{8GE(@3*E|H+H%2l?ci7oH}OImRmyNcHrZr~ z5LGlGKA4v4q+tO4NxB4eYOXMgmL$28ur$?Y@6PI%ZEoDa3Vh^nTT>Khn`cEI1wRNl zxMJgyDhds5xg9I}9HY<|artI42Z2k70NGUK%d>4Pk=vj99_EV2Ufsc|qq)Q?3ezC0 z7#!d_v7}Q70SRaK;{vBq@s$ZEcXY^BLe3?wxW}IDA|<=cZI%>Vu>xd0 z54PHje_NSG5_QnLh4iaciVUdJlFMOLWxeD~bsfYJJ(RkWnZ^o^o28KsGA90Nu3(nSB0X|Vi5>q51ZRv;Ojh+B8f}p&SP#Px!AjNZ~O6@#i1sF#S1bwJ&p}P7^ z-&vlrt%*#n16PehMgXBnNstat#PPj<=JZ)QFzld^B_!w8be^SI{_N>RLOV5gMYB3^ z1oQH88l*}Dv1cIbdSb7<$bLar%ke49$dnA+F%5e|0UkIxvDrR?-+=^6VK7(lHqQ{r z6NJQoK`Xc8ve`c`5BAO;M{v6G|i<8A%QM23-tEL|9fO!~>~$Qy6!=-M%KXI@f9_GceiB^sQpgs947 zU~|%=Ndm~>-OZ<{$^3C3v+Oj`C~Paj?qz2ntaADhh&R7jjhnX|h zraZGgv#osS5M%<#YHF!F39gS+a?(v6=Lx`6T+25jYbA954dGyAT~C6M`BW%`ma~(~ zT9_?;Jeov%v;t!eu&nUg5J&@)5%fUyWI|XK{sTun05{Kni5Nb~`W_30nVXnRfeO3= z`Rm-bV$<*(0YT!Ook|U312aO#$N7iOM_Mt(XQFSM7<~aZ-uDc^t@uRf6M~{qlbq|?QEq1u z2<*-r8&!-z$on;4faTHGJzBmPRyvUrhZ?^Qp`piB-v(KzBM+YCccG#m`{i_sa#g_8kE zte8D&+)iwa4wO6S0jHAzdO^eU9Wn_6Ua#c;ie+>OgLj2m>diyCc1uY=c&@J{>itD( zr{!my7QiFd$(0;1Z$9vbL2_z~S=V*}UP<7f+3?r;5oD@LzlP*MXLc2|Xl|aHNBDNB zw(-pRoi8&}Ux1=6QtPOoMBO0)3r3QOa%rz~wV?dQ98gLxpR zYwPN0$YP^*Htuhr8VIRH=W!&Wm1{79P{7#Z(@(?;99lrOjq=5lPIuXlI1+k#phEQU z#H$|(bz5ZBjH`rNmeB~~ZdNbWg!V;4mXkz@C73}E`p$60%hjq-HAa-7d^u!l?KY%F zu?IKfr~(o2V4-x{(rQw%CSLFHCOr8fh&m*AUQKp!88eo$!{j=3_{Hgm|Kvrbj^;~^ zOvaMC+6xUO;lNQGKRHF~QPC!j7LhPi2Ig+xWl-SLaO z{5IMj`Y7c>IL};^?CCF2)*tm_KU25jy*mf#B}T? z0ShYnU5okz|Lnxu-{%ri8>w}UAxlg=E{KAn{-u9iSb3I(sP+}gWD@CdB)jv|d|k&| zsF}7Wl#lY_7n$B(4)%ZN*>amj`IUi#RR)iA1O7qk&`x;fgR?IyuqFGpKQ9B8k~2zE zcr)aAL15(Yy~3k8oI*q9shu^{2K3Oftj0?K{&NAK(Ed6H$h!v#D3KiIZ$)y#E6o8; zd_kMg(NDzIiAS<$Oh5RKdTM&TlxJOpq@|xkvU2>qHE&7|IP8hRv=&Yt3Rzf?L77^Oc4+-7jBk)D-1xK6VD0C#MIB{*fDU=TN zphpxelh&_7N}m9q9Q%?Q)O1vwV<~a&s|7Su+_#fp8y$5|R{|eX`LZ?U8q_t2pU@Iv|F45Cxs6ml{=!nG7s|}hb&D^6mH8bXF`=nk z4{q^^N+y^O*Ga9bBcK`auGWrhwQz<^TefR&rc2w0qu}dB6+$Pp@{n z(FU@VYx?LU7|?C6gvo4{P6VQqT%5> zq}HxSHK3wV6L!N2tQuI>9C88;ql=Y3|(?aQKu?-tt9W!@U=DWJ|LOO^6aB6;p% z@ChufR4c~5ag1o(4H&-$@W(Taida~+BqwSl`5i&DphKvw3dAJwJm*Z(AT|#0{Zxx8 z&Ae673D@0uXUjDYGvpvdKpIC4(Z`x9mItFP#J^(!w)nMZ`brSR`aq?2t~!%mB#wwC z%2Tg%X5J+)-))*W=rAeBKAoYX=2m;|iVRs6j5Blvwx%R{8ex7o`XpIP^LHv3-dN?c zrex##U^$N8z@?u7*Vc;{#aNTo*5=nAi$G-lmDB5%i@mKFyucw5n6;1CHT}&O z6av&1tfhvvEMP^v%k&V~%&Pn9>jp>@KV-(T=r^hN9Vst!o|1()gpYzhhmWt`zRlV~ zP$B~7?=+g^HtBX4QHRQnNGF}^88ts%qoN|nc?PwXebLee#V}_Q4qQ{$aIM=sLpY~I z3qVGfW(tcU&k_j7XIo~JWlz=i1hoZ=8fXIAT8 z)Ucui-WHNjqX5NiGqBx1Fo8;hYV9$0F|_u(%)OF2I2o4=v0?j9z9TkL`0j{rj`)8k z`xN~mSHnge$pUK`xl#wgOP~rG@0*$_DZ2drHpwGkuN|rYuV}eiiZ-bKOIY7jkl9TG zyBkAVAu`q#U%fSmx|ZDd!0*G&BNkATp(c-wp&ZUj|NEz|AssMqg7T>VSp}Gq$LTSB5-L* z1^66fl}Ta(&Uyi$()?$BqtBs9vrb#_)eJi6jRd(H(8L!JW{P!vt&VL7AFFyJ-ch}}mkIWDA2 z2+%J5gGZr#X@DxLV3ZitgEtg8gW??ls;SGE9Rwy)Cc!E>b>sz~&Q)J{4N!2nT#6luqm;AD{;OuTFxrT^q?R}PG-#)Ba^#p4nVVEi zm?p&^QMpnw%5J@ewC^ocWrhJ^=c1VyQ6a0S$)Cy>4~x2_^1#zY+m;rS zTY%;MWgut*{I48JyUlO!AMz2P&MeT?uA_0pj_Gnr_*?rx7ds{k^gY+I!|L5~$7|q+ zRLxYp=Yv(m>R)z@+Z}!i3{i9}Swo|(g5oUfw)5=r=frNWa)}+P^EP>aUn=`t8qDo= zTyAQ$uHoL*Mf{>?!my{u*ESP@GZMi12ZMlIs@XANGuv|P`V)RYBRbq;gd<3?)-HM6 zWALWjC8#O)nB_C(OuaGgH_lgU>j1?%7GwR-Tq@gTSBN?<$DVDR*ms+W)ZwX9g#n^&bYc|X+3tNU z$WL4Owc0{kuCLUPgC_kp@ZjEK1cjwF)8%^%?}si0u?ey;sD!=g^P|AC@VAtJ3?C!l zQkPlLeq{tiZ#wmnGpyFecpAvjx@iEn(KaDJl8y^#5NW}JJ)pR8v zAo4L{nDwoPQ28i8|DEJxyl?8C0C80FF@?(h znw)bKdQp z&O?nphFUhHk0~DZflD953-n<|*Yq))S4ag6SyIc|NT8|H#AXK(-4Y&t$vF|~Kv#Gl zlUO?jBR0zycD&St5vM2e7LdW?9&5onKnr%vJm~u1%900}uwhEL^dJ*fv|!T39%LZB zD7MxiOe73_@gxvwc*gkA)DwXSgA$~}An`IPVA9+GOdS5F4+JkGuhA_~#SAAMv(PFq zXU?2bLG!FP2TM1CRp>;Zbu&}q^vXRRfRG_%*PJ%0L(ag7!k$q2FKQORIc~-csZhSE z@mB8Ph5MV@Q-ZV3g+Bl)pG7dhx zMkf6XYWwe_z&SIp_nq^lO;>=i0HM%LKunPHd0EVa=ef}>cnn1afo-C8iPT_0sR62Mt;{IqZ-xK{C*)#8@PzbGrr+f{?3 z=Ae7tVEEskz2)sehlgz^VH#FhNy7(hraTXk;f=%uY&VNB0*-GdT%jQ{hTn3Z9L#eu z&zjb!(Qk(WBpt&9G3-10I+e-;d2SDZE%zlEtk8T6QHtPqXGaSC6hCWH#H-VoGSP*= zG~j%gGrjRBA+c3h0P3Aa2??Qz!z^i!OrYhbMA&~%yqA4>q0%6aiRtzM>-{!+wP-v( z*uyY=YK6`XUgRCplhpLgO?~`~Rj_2xY?jDk72N(-O&HeJjGBV+&2r21?j_GPa?z;i zuu|A>*&9QG=mZqLRP@K*BpKvb5eZXrrf?b1>)hNL3B88=QgTKcZ5(c8Xq5{9zpP=B zOfTQWOPsssi>Z(@?D$H4ymN<9s{7Wl&5#&(>983?^9wo)O0EO4ymaci58s3>Pw2S* zqM@5MG1KkuFHDWqMXmIGFrnE#MH=3|c9bo2>6tO-1wM|j(>5Pm)`qECI?2*4>E)R6}+>yi4GY^wOLKyD8>6Qe;xrk5td43m(^S((9xbRXq+x`OA8ajoZ$^YWQE^DYr)K;t7fV*- z6-GMJH}FTrELY-cCzilmBkuo3iKM8C+xhra>6Zy9L#Lw4xeqAs^WT0e>?2l z-@H`!W7JySrJ#{SyzNR2-(ia0BRd_uT(-qsw2SrNUG2h+MZzl_fyI$>E^(0md+X8; zV_58{5LilmC~#C-8WJViy(hdnpZ= zIV$N4N<3xBTM4|CVws?ixN$T|Jh2G7Zt7Fr^T2v>?0{DDr@A1K zx~n_w%H1?^X0#EMlStZZILv#c$<9m!z;zfb)pcb*#W^Q2Zwhe6a=`!!(Q3e7ZG-`1 z^PYu*SKN}&J z6jMhc#w0?qd3Ti&!_plyx)1>(TmaSL8u0X5Fq6w9Z%L$4F85Cs<==13d#{7B3@n`ILSU!un&Z9-8Ixw{=lU^lLbSTF$ z$3h%jNC#^*WDH%%q<*{8a*fpznD1k|CJyfEzoNvXDANPYB2(NmRkEr+q3D*V`#B-f zT9myIK`Qk6u_G&~DWk`ZUIkNzjwNluWoEA$xdpdO9Z#w_b(zwy zODFn~7@m3UdI-F`YuwGI9h~s4bwna?%uvC3FS`oKi;IIwUfaR(YxP-&LeUj&jsdqZ z@A<^&TH7s<_@PK0s|F z5E-lg#6zVhO(l{52*2--BGClcg)&qp@*R|q9n5Dy@m(TD-x4IFzmv+BHz7E`))7e? zO3RcUKf>H~FsSrZ#-rbw5Z@p1TA7g!xXA3;qxC-m62UpIwEDnvvs_bIKyz>ZK8M9t z)>ai<4>;$&3N05ABy`WvnIq~_GwHO^^3+Uyb>uIJ5%2l6dPcm08`t2#+xoI2 zV>Fr|@9Tre?>VjgMrJ?M|1!00Z-w^iQ+|0R&|)%Qmtt?RakNjWd$~d_qGyq;g~cF% zs80f|$Vf0Zawu*4884inJ9(qMk$^HtAJClgP1>YU-qZ)oX)L#BWqdsK@ChS;wEZeG zv8S#+YL{|ehwdq|u&V5jki*`aOJnwklD=r6oPKlJ$jj$Md_F9MTGhuuE@kcSJnX8t zgXg?+Wa4{+C*|;B(|=1=|3|o0(6kaZqk~<$E5@745n0JVMY2W{^Iue{-q^WAh01V> z*{Zq#&-cPNf@OoPMLjzvU>!j&SWW4FT&nEn1}q&-+^r`hk7DR7_^Ne$Y5*&SC2grV%AgziV^+%Y|q55Z>?8YtMd6TxmmAMI< zTL!EcmY^QN$2aJ&I#U!M{gtfJ2gs6}eb&$j#zKBw_u;?|C;kMZLBFdu7L$wkQ71=^m)L{xiSXnN%FW3>z)tOBLeUUrBE(o3l+lXV2*#TLNoa&V<# zGNchMZq-mcu@1yrc~;QnCl8Z0?=qHd*cF^j*;Q|~%bmC#u{4mm)xKM3aN7&~uPP=u zAdTlAJG~>{z)=*LM#Yt36D9}=u^4XxB^8cxz4J@4@=9!3oCPPN)EFWdHZFhzV#8S+ zQ+IKlf%R&PXd5moApjtWj$n7l_w4b$`hjAsIZZum+8;1^5 z&cJvr>F~@$)(o{b+bzqlz#vkeG^Bb|uS3O1CTa+%{Pfb2gDjgE@dhup3UWoF;6byQ zI83PwlSFH0X}`50$=5Ev)-nt)yj}J->n}C51^%U#VG+EELsyHy7)c@|sf8W}iT!ex zp68ZNt*U!aH|^xqCT}4%=k3r#{#k~@=Zdo^MSvXcRRLj#>{-1$ zl~_I1BJSTl-l8FPDz4w;WoK~Tj9*9Vp&i*Z_$M>$GolhDV>QMr)1HQj1V0fztat%Y z!iNlimCuM^J_fE1U9tum(r0$`8HM>6F*=Q}48_mrQ?`F&-1r>4NEfxTM5#RG*;>6t zq+3;S&x|rawHX{|Rsss05#>P|Z!F0*j9e(*G0;`KSi^(Kd%_XH-DPx#7EGbs7b)&! zGYl=(I*(QX%=pZC$z7@8G_fTfHm&$+SycHm=4kS<{O5;~*0LZroHE#b1P6|)TeBc8%{;i#O4GEr_w&kO33VcM6K?X`{>U6_&va&d(Mpy2}D z;*Eca$N1h-Be9EVp$23n*LyYNuyE?hKhpU{-fV1H%ZqF6!idw8T~~##bIwN$?;8`* zMg#a*p&^kIsRsvsui{cS!ltrO3_qJ^&Ib?qGK__j%=HDPpUwW?BZ5jYLeOk9*(>ND z`9%WJ!0=*28Nwuzj}3H9WbYSm(oi8?Llc^%0#Xjg+FVVAyt!FV?##?^ByReX0iY@8 zjnf3fKxwFp$6CUomR-Yb6}^k8X5lWx0DC799IVd76Nqv!kK2~Qj8BVi>KGBgESyM2 zwCYz>yYHvuM_v1XgGUYG@|psqjfWIqqK>Xu)DRS9FYJJ_%x63zXcA3Sd#zknDojL$<(D=_PB-7*Q?GBz3+ypBOcq{@w+dEo-1pz^T>*`LM#b@m4 zL`Db?kPDy%h6Aj1ytCZy+7sGI{aa^K|KN?xmy2YZxQ;3ijGaeZcpMji77=X)L~YX~ zW>Y_?R&w%4bT)PXEsAW7a=|x2UC&iQywb58JIYCvH@L0 z_6_y|a|uLUGVV%!q-2R48Rvk#oDukskk?VWVL&sxVF$)8MSi?B}g-~5K$(CCdQ%OrlX`2g5o3A(!+@ULCHjZ z0d8ziNnEIvC$FH=7rZ%mbz11+5$gbggYxBvg1YYnHEtyP|j=RaS z7P~8N?))C5%#;#uwX@Ea!chxyv!Hs?`_djmnBEQb!HrjZ96V&Ly^>&QUI1Fztr8#* z1t9f!v87|}9BPF`Xz;w?Z|+BnzhxGoFhXnJSJoHQF-m(BFD&pDMB?>!GNrfwB}N>U z{5aZ66BwB(1MI=|HlmZ>fpRZGpNu+yu6J-*$UTR6r&i)eW=}MNSEJavw6W0^lKLzkLA95{g<&-iqklS~?x&tRDdj?0c zND*T14pkGgOdyf$a$p$EGg_XeM#e%K*}xT=tsp>qMkId-9G0ul8mL!Th!Z-ckp&h| zBZTY%GxniYD7iDRjK;{L3kW3wS6323po@W#mmP|myL1uW7jyZgxjnW{v>@ObBYUz? zzjv<82eBxnkRdn<-VC@qptXe;g2VQtVZjp(bBIveEm1ay7h8%Xnk`ZefvIWKS&PEj zy$qtv$&MgWZxijn0rNZ1Hi z@NUH>C8iZHA|yhOfsTMH05yV2&i!~`5qywey)HM{DhdCyIj7HP{XHV~s+-k*w2iow zO@b#HWMptfn28Vt;Sw^?lTcigy(}T@0S8%bF#TZ}G!qmUB!SYPTX_OfAqt-+qIvWc zii2sEwF-Q6*vo35e4O{phf^#dV@4k8@}@J4$~1C@Uq$ozGQKt9o^2G)x6NN#ewR8p zK*FDg7jW{SM7=E?X0{!|$6~A(p6fm#1S!CE4zDlqA-1lB!1Em&9w~5W7btmy$AQ+l z6L`e_Vhz`99`Xvvj7jh2`$Ql6_ohxq#Pv?V>L=r>cO{sHOC%r#b|3gzQm0IK7B|jp zy7Y<^RS@j$x}fy`RUO8oHp|YezbILH7gw~I{XKA(*lq}FyyjnZe&h#$Sw;b_iR6hu z$#xozP79UqDDFxqHOVj7IA>C-xa2796|LsDrLAM7JMTxls9zEsJ{NdUXOUR_YJ!DD zCG71xCB#&uh*iWEMd_|7_q2ycdt$+PWH)S$HxdgkXAnH_v4s+~3NpkPQ$6q@>RLOp z39XPYapVLqb`Z-Ir9n3N*4JcTsLJ#sH+R;&GZ9iq3S4U;VvC}Jys9qvS4IRBfVvCU z6)X=i zBDP$!>|Y$IJn#x0-ikij)I$R`X^GssT}b#J2Yg?0Z>Pc{9QhZ?3GQ@0MzPaSujr)S zFILon0a$rDYmA`-((=Ntty;sW5b-dwJLuTXG+)OYix!Gi&X#6OhnfUvRKU;D)kaZ4 z`244E%(B+~#=wQ8;&Ftd36usPGS|qp(Gj`8l7=G^Iz9zh!)KuqMIqLlx90-H-M|{= zgNWL^L2hKNy55*W6P@&LsoD?+_z@9&UC01|D9V9ygxCRbakq^lGZ%_=g}Kx{Vo4aG zz<>=wvxpBsLv8x&>e+3@Ic^3d`Ykr>Yj?J`AYo z5u3Dhcymq0V>JFE;Jz)KApBVr5@Y-^@=Txsf=!!G>+}z3AdB=r`gQ0%5z=b4mV5T` z4yZyi5jz;}*|HGp5MZddQ*ERi^j?lY#&;rNqwUxhR^3Ibrzm+c|JUkZ$*IvCEgm8I zi1nte1<;U|6~CFLa}4JoO6`37+FH6PV_iqO;+i)p`cftS7UW2#10*9FfbFVACqQnUaOmlRtph>qwuIFrObEBsp2^SuqQ|S)Sh)ECA zs5%^}md^lNTYQ%`;fC|BtiSY2b6oj>{32&ASIr^_39=RH;tEuB|7z+Rc3*%2aZKHT z$i;-6J?#3a6V+tCreH3?60^UZ7??gnBMF~QHGWZYjib{$mIF-;o+V&A6$_+=;%Gyu z1}EJuC2tOl)vgB|;HG}oO?mW0gq>q>Cc(OZW829FUu;_&+qP}nwr$&XHnwehV|#DT zsk%RJ-Tu*CGd0sSQ#Di5^LD?_Bfz;l$V#_cifX`b#t0Kho-JBHU#g2OzP~5hoA>6* z9!JH*JkNoHN0x9ThMQwEqG;aOsIolSgY*_yjWt+x>VlrT|8p#{vBl?jD|pv*t=IA;*r& zyYB^l?AC(T0x}$Fj*%$*lQEsq-6(78{Qls~6o>`N5vY?e(}%8;et{({gy``@gWt9^ zU&{NFqkn;X!K$GuPtwYyK}klad;U0zT;eeZze7gH4B^1!m0Jb@zq(7ln7GWkh(Oi# zpvy`n<3+6TKNhC;d6>pa7VC^*jenvKbb2Xk;wYI5o0Sa+RL2C&dd!XfljF$IKl5RC z9!%UOUb}|m=(LET6=xzz6FZ9U=RYOpV!FF@2gg9fP{(%?K6?k<2GY}n-T`Ni2cf92 z0Yoi_S_+d*{iAp(CLvizv2~D}xP~oa{(8#%>mWzxyLMBKf}w$553xG+(B!L-KPkG8 z9+?3NE}(3~Ud55APslVJSoLoMWq%AfzU6`L~;o!x0UG z;*mS!q1P_9b~{Fbk5wqRF-Z@kd4zdlHc6KrmeOkA3VdM2d;=8g5-$v}fiP7WLxwOO zI-9H%D7vcZ(O-eg2EVeU`Ij(_qcb>c`=y>Kw#yC!7CzeDtTZ)JlA(IAzEG>Jd-2`$ z_bCe4uQP=)+F5PSvDjwxfg%s{nKd^tGE#ncqcSk-a>R=rf3RdKKFVc^~O!1Yy9I(>* zEiLQXDC>?dfgWANvx=64`fF5`{vPhtnsm6yX&c57&7PJdwESsQ7-;=Ef*TrTkFoR* z@et_CfTGbipXPzV0~6-*ql|~5l#3JOLMNQfRYTCGps-1iLPJP%k7g_-Hr76JKL`e1 z>zdDlMlg^&j#sy*Y4;Qo6>7kDNXk}Y+jIJWuWedPVYU}99b&Mt z*b*+kkgv7@JY)NoL|gQ)kF%YB@-lOnV0w6Q$8EPg4??^_Mu$t(Q~q&tua62RFG+1X zp=)80ad+JF3B^Z+39JgX;&IQT8MFbUW0&-Zlb&&p?h|9eBmJ`9*yUYx9We)Ft0JN0 zm)pjdxavI*t1dsetAR(yD~FrR$^iA}rkm z$)*rT@??MjNkO2lPl9CUT(HIda`?fRekBgNm{BIjR5K&I?`HBTP%_wo*Hm}OC&^rL zwbn=%(6p(;0MH}Gtjw#3B(K+1iuoX`?HQ4CdlzHsBK`dsSMlwH!>HN@R2w#5)I}_q zp;q2G4qG(Kl}%>^FWMPv4pg~d);i3Tz)^4m?4ieJuzPV?g9XR;lOIFNUOB?tm%!1D zLTTAhQ?rQ>EuCOR@lZDZ&`xbaP6c9_R6P+z`)?0nI7Z&f8_n+1YpBHJ@m~j zHQxYRY97%MMbWG5N%2h-W(KBfEl>BE_{<(dhDom)ib@z8JOEmLiD4^96H=dVIwflE zqB{4cdWO#KY{1)#9ibn8?(lZf&0fDx6zoDJ0AVc9T0`3EnCe50t>Y{vAvqV?VNis} zYT9^D*W94{*XwCwNzD+ZgVn<%UCw|G_EL#lwc}URGE_LqI=GNLNyM+IebBpANW+g1 zU6MjP7k=b38`rjYmz7Uh_pCDkaio6!y(LNfiEl-S*Aguc%i5OqC$=kDbp<1B**jrs zuEef6nVfaAVf1TbofNOL+V}3D-~HR@zg*#f)4iC(QzrOy$eJilnnD}{q98U@M(O5P z32~x&8B9&oKU;H{>Wv{=1RmACbE`vrVCWLCFsaF38#o)ZvQ_?!o8Fx5LhMLu~er~g;|B;u= z^;$Sb$JZR;oLqH8B_3AF(br*N^HUBVw~@Y6Zi|Lk-Ubky7u(Pt7c+Ki(?)Es@W6*T zCAg<_l};0|`k?5SbFBnjv|uz5(5!{fUG{!mAK{W;~x90_3;tehSz{m(rl}r9f|#9OfmQl+gZ;^HuoY!(4)@D^7mXhE}3l! z{2qBtzE-mbT8E9+28O~kyRYgNzz$~6e=hrEs=bfIX1BkZ*@Qjea>H@N+TDjK6%_xo z2#(XWi`S^Qvn8lcKB?j$YjMGaT41GAY*Kw7jU#9SZ?pITD!hK?E60Dm^w1H zVHfuuBO{XncTu)bO=v|9{tf44AH-ssX<_Xt5SMc9z3aja{KzA(pO<-~e8oL`h??=C z-a#a_<_3Pi@;g!!wOTvnwc z{)rS?F>+0-YRd zdQ{~Rq;WgB_BP=X7EGY(%TO6lRnCrYxvc4y{`#gJ@8bdY$%$P|js1iR@;iPLxX2`i ze{IiWQL{J&*YYaeln*^QC-JbEP%#&4%OlxUx55qUZBXyv-lX96izO2 zWI{>p8$>kfZV%>>g0=)0QO}eJIrv`ns(y5>&tDtnP@J4hzdMu5e}EKtm;r)kblq-m z5`X5`1QQXK28s2QRpLN!?%}oN=O=f-C8-Xf{B8f^o0tsVDZOkLPOfoLu!kHQ5LVqt zC**e=(>PB4Q24E$pBYiu97RkF>_*qsW>s};(iS-?O{Nkxc8aDDJv@HMy)!2;8DbNF_!8piod zvI`{h>DOy`_>M5@n{u}Y1D3Qe17)$ve=}{YcC3>hNenk+)nf4XOlbE&=ZLUYoYm`V zbItd($u$2+FQ)H@cTq49mT@;O;tvIX!C_9MByQxZ_Lc~L&801oIb%v%f)*9C(IzjA z&{W81C}#O7DE>+>VA#Zo%M-ZL^#Lc>xF9!?h249G^782jShyx)z&P5Im4iNDdSxUR%&wsDHIVPmu)fO&0=i0rxoYCCXXk(c& z4=iS5h&Qd6fvBlyg}_nJ`<7Y4UArcW-i}w zyvz@>f<1l3T1gjR2S-sVl}a}VutHl37DFqb5(6V8wBp8WXuiRGqYEG|ODi(k{5ND@$eQ_@?JGPE+gv)KSS&V3d=Zy`oIE&Lj$&Ru z+AjLrkuSC=nbh30@ce$Qk!k49yO<=_vHt~u4N-4fq>s&b7y~-Ra^8P<2*k()*+(l+ z6j~V6APdLj?CEF^Ft85~097yA=EsqZ;q0C4Pw_sL;v5QhaGNEBCbR|2!2?5^S`I}> zL-W`)j{Kr!VogLFdJdEc!?E6*+Xvqo;PNJkf-VgF9WQ>3C*J%J?D+`2Lb2S_ehWgp zG)J!P6mM#EOFD>UCLN3w0A?W*xu%H}uZ_Bq;7@)5U7Ifw8o*+Q?bPjE;LmT<$`7)@ z%$mp|rRd+*P7SmQgYbp`24c|*wxB+OODtPV62PxgN&rzjUK+0_FOId$3+#D&xn+%9 zd!mWufZKJ*vD2UrpEh|{h*W4Cj(Y=*jaG52znO?}#`JyL%Hw5*3luvVSTvY23Dy@n$ z+g(uv+xqCGRMO}os}o~K`Y-&;st#YZToCxW-=M0UAHniVud^OzaI+BOOB(geESS8~ zl=D!)#uD-8K3q&3^qRpR8Nf@8#9_^QizZ){49IW0D+Zq|{!baQs93I2f(5e0aCuOE zYiS(9w+yCWX4QBa5qrg8>S7K77!is<6e{mhunDxXD2xV9lA|_#FV`FMZ zZpUP>u;e3!3#p3Uv&7{0$hRdmBSsUOd4KGjsTmKk*!jDsV3zvDgB1QEN z7M4ei4$A4fTc)^W#PwQ1!3vod1cnhTqv-#zL%JGvi728>k>{|iXknmHjG_sQKJoG! z`sI2S7F63j>-&-^l^j_qxA)Jj?UVJPG9z2M^#y9mv&AtRFd7)iMh393n1_4SX^Tr~8mYFSi5f_DmAS@yp9 z#<-T?kOyq!FF7|{Lz)nMO4^;gxi=z4AYrR03=MWB`|TszZJT7v5o~jf)RIYib(0Ist^4y%Ct)F3u$1_wmoYtCcVAo zzSw38wA5Bk`P5~fC%NqoS5@n*_RM^K<`VF>t3$%iC*S8_k00-WtoKpL_uiMzyQKFeUT7#dqC-iFarn^OPaC`MfI6yucWszzXn zY0-oJ4#9zGY*{bq{jyeKq20hjq4nhgdgj}xZF&LU-CVvId|$r#?)7EfY2+({-uQ_( z;nY;D`+{4l#jGUz=Po64J)Nc6?5~%pY?}QzYQ|QAGnlMT&~|;}epAbaVsraecKhHm z%cr?nWzH%83`o*u4{f6QUnsKTS=z^fm8iV zQo)9X(+y!1!6MV}X*MZ~;>KMEQ$(G_MZo<$H0h@|;6jyR&*i92cSm6~M3&ul)Yn-e z79LqwYQ>rkctBcC=oO&)U)kfVlfQk=^@)Nf<~|vrFFtcr@m0Qrb+om$1O4@(i2Ddw zu7>0DsAz`@IoDfFVE<;Fy4L5)mZ8G`e8~vYt?8+1t=2scAr-ZTi)5>hmF%egXKIydb1wr3uX)Ktn`|8}cJy*@lE^XFv z-(0mJ*7VzH)JIM}dtt?R@BVrZrHHwEnUFO4bXaE@$qTuEP|om7bsW*+aCVi%f4S;8 znRmP6!g;wv?N= z;%F3c*{ar{wMva?c`jtj4 z@5W`6*Ve0QdBXYOwZPrK~8=e-z^?+(dTU(x01F5I8<;}rx?gLxm#=Rh=$Q?DpKd? zdM5OQ6e6x?iYSUmi+GFd7eS^K)M!YP9Q#VeutYcxaiP?rsZGqePJZP^UzUlMLrt&` z4iroo4N0K5CRUBn4!H|d3ln(=HWcgXU$#xv+ghD6GFh()W?++J@bgWtoUxu%i}MHa zue)LJ54IFqs5w)Y>NIj!88!480YNRXZFH$l1r$VBqyNw>q%sz-6uG*B^*&2QL5aew2)^% z9j&KnNZyJL;xf`C8_J+vbZxqfAO@Cg`fyHs7f$M)>_wYc+{Sn@=(xrrB%v*^XA@Bcs#Gz)?YTsOn69A4bV-`;%O#P`6z zesjryzE(PP2Qag#w5g%dccfuU3}vf33tKt!%Pr4n(P6~!`Vu98BC#EOM0L0>U(%Dc zNU_(-#&g$6YU*#LnVk5iQv;@l%;8GEOT5huL5% zB#s~`cU<>VzEYOWr@Q%5kp`lu?E#~FC}*r(G*@k;$! zLQ^2At!((Kcc0j9-+rcHM(f)s!fnS9YdeK!=N?h2ersJoS&u^=+Yiq?Iy~r7&+b}u zM>|TyH}d3MeDS)Ni2iXxsaE5g+CCMp&YXaPIIQsXa1=6>zPAl5CzfSWg_}=^IZdaf zXz$RkUx(BX0keY-;Zb|M`#6tl!uKolx4K__v7kgWpmwgO9GLE-$-dKvKGZzgFB&1< z0G-hvfb-!fvn2JCnu&kMXel~V@s{^Jjy7}-#NAfm4J@D!lcwPWi5{f zT-cdVS(KT#M7Bh?A!xPgvx*s6h)~nN{x8Jp?fk*{=(&9GfmNYQt4UXUEYo5x{dB;vRqI|ATj=CFdYEO&#Ep6!->T&hysSGtsjmi7(VtQ zgn?`dbq|S>jV8{?mkkJnq2#1v5QZV-dpjBX&-p)x?0oPQUsCiY$Nyf-Xah1CC7!`^ zanCIfu)0>lW7SiVgdkdd_idf(KHg>G-j-$Ov%5|v`G5ife30{2kZwqBke*jYe|nT^ z;M15Geg2Z>f6=&QJfJDS^ z$jQNTU0Y9JY#yAMk?rD%YB=>FOVU#i8*T97c0D_r0vLzI#?F)oC_ApTs4ztnEtgM~ zY_IoFbp*Uu3uu}yOJO0G(#SM{V=<`GAM`a)shz;H@AWxYI)WnLrK7}iKd#fUS+}<@ z$p^vzDo0+@9}I<8iVP)7sZ)$?TqTQu4iTzR_t}dyZt$?_1u;^BTsBV-;TKji&9fTuVr#^ zzQVLAFsh|#O3R$ae$c)=55&4ijCZ3lZDmFTMi{bhvhg#J(`iMq3Hn_a;_Ozp)VH$H zAv&?W{rXYkeo~g3wuq&}6^E=n#M-i{L)0&j-K~QTFwM zR_3UTrd5!Oqfo@LWLyEi`8?v?MZne(i#l9A*7=(4Kr?DQ9JDWYF`XiznTEm6gIY=u zV($KsA^`u4K)Wt+SLOoON)G#wvYO|cb!38|QfV?mwBO|ECDH#|Qf`1^Vj?pNYuF6< zm&`}s!4;+?=2BlCg>dyaO_em55sM^>&>~5}Emd;>&@mPo(>7Jxi!?U|>Vg9sE4(@p z=FzLn5&(m3qas!oujRkFmtU|q8WX)9aa6xvgjVwIoQ|zP16sRZcs4FxHlWrYls6(~ zt!}KwZ3f(p*AUrhY|ggGteOc%kop^)(nSco%9R{rh{P@v*(?f$cv6;1C%J}K0MFq@ ze7EtVPZ-F?NCv?RqT?M(!Rd^Vx~f~Osce4Z>5Bl-7^wsXtsMg; zFa7M5s%r=rAv;@j_Mbvc2GXoZ#ZJB;5_K1PENWd)QgS>p_%s5n z2L%EM{e@|(-5%laFfbkS)El7CWDZ>ApC$q`$V|LP#qY0^#6bjS(H6(M#(!eD0Rx&? zvuF!E2!y=xWpMMg{l(1udi#;%DAsiGM;f@OprYmXd1ZzoWyd7J!D{h#AtO{(S4%(C z0IHbyaqF=xHd_wKORX4$zt$+er4PN1<22i03EZE?>3=zYP(u&Ol_ekXstGR3S4Q*JIlZsYM}4L z>ssB;(JXYOS-r`s(U=^82OfDf^vMnoa-Yl_}G(07TM7 z%9bTgl9C=fmck`EN_1>NhY1M|?5pyMbCBT1@^DEe9-WDkhLCYeIyxU6xNIWNdEHw_~5gN79Rkg24)-MX)%Vs|yO^!^SIfy24bG=IUV#ga=?{DqPO zD}Y?Ca&uPH9>0K}0>hA;>my1yh(N{mGau$YnIqvakc4E@2O%QUHb@Y^I}-o-8?+9B z4+#!OLPk;KRE&T^Mn+ixHfqt7m#-lsE{9kSv}{?EY)z~&j!m0WL)8>wruHf{V+zox zh@@@8$d@dtF)e)b6r=_7m_d2+XAwo>QGfjL{h1IIc0~|A{xKYNFgb2d^wi zF3zW@S{%58o?>RB;7;v9!{t`*Ngx}by9{9DJpu-G?RleL9L^mH5G!1%$o&5ZWf+&y z30s9Dxu_N7R_4fEiKU3Rs-XHSD+1m0xD9b`cORQ|7bMoLGjRh$7m0mwvD{x}P5b(q zGGqJun({SiR8JVkZa>^5jGJfoiJcH94cDIfls=WY-?=C9;#1pSS9 z3&Sr-9#I`s4cf5Omkz4RV?h8DPpOa_#PM0cc^^7Ka10a4blta`2cNPHEq4qyJsy*B z0b8v_mq{V{2%|BK`R!s~5Synj*QKj0=@V!wC0RXRCMnT^I*2Z;eV|<=r;^a7Z6dX8 zYZMnJ=$n{}6Q5c7hE%}_`N+5(fhFSbujp>fLsM?q+ zr()u6j&4?&ly%YvGD&ACM>0*=7#t&)s%!yyJ3KbrURXxeIUgpU^Gu$6{U300=v)nE z$gr2k?C=B6jRJ9OThO|}tP~NHEKw+*HR12Q-hrmugAz0|I*4TNa%E{O+DLUO9ONH( z7*G*95P$&*24X01-#xq7fT#l!%^%J(UE5rf4pk(GF}9c@)DX~z1QZPn1O$Y{4?!7n z$p!NGD=gF>;?e#~dW6-ot#ZWL=X^%m4f1a@c#(c&ELK_;Jt`G@aRtKl5OZf52TF#r z)sU;C8B_$&XMm}ORs3x4TT8u}QgM}L8~i}|N!)Z|S_iRrA8Zmdp%D>9zrLOxBh6S| zFKNyT)gk6I31f4%0xxtbQq%U}Nf~senQZg4Lw!YJD*N^&m;02Q4 z>;%KLU6@Mim0_MRHgU~jsMg_-fQO(^H|!gk zv-Tf-PZmtbjFCK^3&vrR*iJf*H^S^4>>s}D2zjCg@GD5x!p z6e~SPvYw5P^y)=|%OyK4U?+|jNo_Zht^s7qMU0UiUHwk!##uJBPHnrM)!o8 zh^8B1q_v$;Cb67cV;Gb~{=t5`o&{All$1GPCije0>Kh0#O#`MYL6sQ~CdQN_2Zjp@ zU`XKk;vB#++HSSB?_D)u-|*df;|C_L@2e~W5bMD|M+c?`PPqI@LP=@ERSfqaND{+o zjr~~aO^V1EkV>D7e>)JD#Z%>zSo0@V%CUOYvhBj|_xX~apoyQtbiCBFSI}}qco}LhAe|~ZrI8PbP#KM8iZ6{S5^KaUF~SnAH!=Z)H+`I zl4WcJwZ03}ZqJM`dBWpY^lF?ZPK~cb)|RqF3(`N^c&XyT7lif;+>g9DdL+!_qR}Zv zxg`Oy=H*(SfK5Chlt^+;x&*1B>hWW_7MU=B;aNl|G}3X?4Pfc56|g;W?MR4BkXE9< zLV+#YIYUJ0cMH3KpL8oO4@1icB1mo~EN9e6ma8IE`Of)GaTRZMI3<7|y^_OAb@!)}oiEeoz<5$rvj>{Hli zM)`qr1#vx4Rj*R2{XWE>qz%T0k1m2(S9A z>1-=|_N*-jo9!7N#z&&BY{{7nX|WM%c3FMtwJAKXF+imSlI{(IA!m;<#_*`R=!LAy zrv=|R2ICGCNZTq|>^wwBS@7fI&jWXo{U*v*bO*^N5N9^p+WVsE+0#Qx?7kh0ycE*m z7A*Hw^1b=E_0p{6!6QVJ-y}5h{;J z-YcWKPRKkv{Tb~gS&_$o3wMd)8^6mhL z1cv-x5${V6CyjQ)7#=2IY2$viV%xuVq0Tt9fG3>+X|q>AN)XbGeg|;U>NG+~#(@k* z{;#rNWnaIEKDnxVn}i8HzB060bvn{jATnwWL1?2TeZO$-n>vKQ11GK}HWI{SC87ZH z3aI4uM-UV-U^RWfo$6Y0W}K#rK@bO1VnkuH7X6UowpV9_1nWq0V=YZ+$8B1xDav#8$& z?9R*8XT7H9ME4i`AU~tjF^}*RgyyTd=~_9x^D_A?Rb4JoSQ*)#O@-PcLNwUJS6V10;b=~= zKcrO-VN2lb{vabISIh6m-0UDKFr^-2a8$y0IF2AmO6^T_>7k^C!j z7jxeO=o$;!UIr$QA4ba^#K3Rpblyl1glBEneCv-i>H$H%ZnNK#@n?pw+mAPt^h-Vf z62rM|tfL{MK5Q_T=`WPzIsY?ggciUV6;=BE7c&nyN%eK>v!~kzm^fCJ*vuYbs$>|Q z)eJ*R@4HPur(jmG;BNTLon0CsA>KS-pUMXM##%eRePwZ=?bS=2sqh6kTLC@OJz!g8 z%)I@HQcq*&CN0SnpmpY;#qp6{0s6us&DAnjhne%5wqai1YCtHVqylMhm1CMz=A}S5 zhrd-`BLoP?v zBdlaR$E>S#E(`gw{nsmX;@eVOEu~N%MS3|=kX!y@e*#N}ZsP_dR>v}Fpf8-#G)~1? zWbE$i+;UfQS_#HZ9$^u>?rev<^lXxkkQ zTmTi>@f31qTX74qgYbwFr0 z;!(X@Jh!snO?N;uuVNhK1@?wBh8-T23CAhdTNLK)sjHaipR*jFt!mc7XjDn^b$)+NrF6MfimS$ zID9T_oFe(B5Ml!{iQWdss&nN9akSa?TLXh>O=rs+^E)78EYX;9=QM~(qxuH`EV=KX z%|n_6)NdN#K?KC9%Xk>0gSPCH^EobP6uTc?-)Z!<%W3($hAyGk+BRN2d_LDp-~J!-k1m!|A&4yKLsn%e_Y}8UmB% z2eXCm}J40W{2CcN}ZStmoh)=CJM$56ly4G+-MT z@J@4tUJ%o@_-<^VI&H)}b$+ql9RMjoek?Fh`uGGQ>!L@8pvwu>B=tOcCvDoKV=!`Wr08D`hI0KuUbxns zQt-WriKq}^GBupjX@N&{IPkaeZ%Xp>Olq&C5+r%Zep0AI;Yvi3eY{4REtr++8qA&v z;Hs5L;3P|j(xhS!?VzoC15h-^MIUzs-n*n+U=_pL4hOCe)y|^OZP@i@4n+O+ZyjuKzqgk8# zLhIC*o?iK;9)A%+fgPTahP)N$pH%tfBqT^)O)je@M~-3bM&<=|uf>1jp&H&ok=7@*c+!(LR@td1G-xA{@?*CsItjR)I}ou0i#ML^R6PX~8Pj%)jC;SH zk++mJ7GWl9pzVMwZPzK|#k-81HmP&WRsW?t*2W6^5F-rO?rGgT-hH%OeQRPv#W-$^ zrS!(U5YL-uQaFsib#dRyb)LWO`nmO+wp9N#;(o=$1ZhDBg&;%h*`n3=S~yhdv7LTV z=}sSkJK)imf8*rs?Sd-^YK{EueQXNcxzfhv8YZ)PwmRSpUf>-=LCVjhd5YR$f|)`P zgCU>v)E^K%21~s?M7ty=MXoW);~8{0#8pkfK3Tf1VIbVW^V-`7nRH za{eMDXHV`{(Fs?FQkusyvb{@e3>O%gMU)@+#p1~(Jufi4sde;Ce{?xw_b!tsTIS@p zeB>c$O{O-sslH5%$cen$szqlT5|}@9BU8vMMWKZBb*euK;(gif&T6~u4(o9rACvic z(@|jGiVgDDW)7$i+LF5Z^S_6*odR9422=oqidE)fPFWUsy#ou)%F zzJEO32Cds%1E5c?qJBgDD8GU;YznkLGgu8#S&wI@@THR<5g7?BFU#; z6g$h$hc2|L__SAHi)URWfhq~%%=EQ-=CUJR886MHkkTM=1)4R=h8{Pq4D{Q&GV6tBxSKw`EsmY{cd+qM#&@{J;VFKM zpKm-Eo}6LOz}L94d#&1l!z#8+9u-1>El{X0?~KC9yWFsO$p=$vk3;@&VAlk8P6}j+ zC&vlaT(va?X}P50bflsY8r60LoR;Su7k1fC`L0*T=rhk0pN* zKM`m9?_TS7gy(>SSICc$D^c$#i#k=x_rosb)VTn21z4k&nqg&}U1SMLa->F_rpriS zu0kkFxhH|~OkQh}XqE~JTlv?F{Bw?s2bEnI6hhaC5&y?|Dk5rf>yX)HUW_lp3^*{? zM^KpHU$Z^Fvw}^A+=f@UcZp?dgWEOMIE1SZ8xh`I`n^(N2v&=}Y3;vMwi)WyHp>>Z z4Gu3}2U$XQb{nP%;&M3R#U*hx3xCnv$M<66Wj#}y>md?HR&Dsl@&|oEoJwX?ge(Oe^YM`OmjsUb+;aPt_(!b6Ra>8HF zoqrBFlY&~~`Ej{A87Xn|&1f`SndNTV4(5|SH?F2*gwMlM1;&5B+du0qg`Efy?V7i&Uoyb5VR`f1R~tEHjFn&WKdT(o;P(~S>58noTtCY6pY1@Ej@yxq<6+nP zI~!`_SxxIWPKYGZ*Nn!*JgNC@l6;voqqWu!jUb2mCSH;Z4oXklAG70R(R5bZwG!Wd zUleo@?R$;xn0(~ilUyEmIjA8O5D(i+1vcB9nPE=^H)$|9(^kjN7La#&s4UZ<_sfxY zy0###IohnXL3Gmck{GJmJk&-ru^M#qp7wJTv3t=Iu+EpmCEl37eMaANA{dj(g661^ zt~OP$swbp`bacj=dPCuGn3PUIJsMwIATBVA?M`Fy!YQ~%<}!JSSV8<_TSt}9+xF3a zlK0C!`k_@1I&nck&=Er9-XQfj=lWv`T4Jn}4Dn~*Pnn+W;2S4RMB27fbym?=Yf7CE z3Mu4$WW0Y(@-sWx+-xH0!7rBD$=%ijHM3ifl(nhG6##>t|u@2=uP^#y0#s}e(i3c(JJ z?>F5Fv%CC=bvgrd3PG)56X3!8WL_kp;IsKRo3KBQ1SK!^cO@ma+^Gc)2e~xtc3a+A z)D+S&o0P&uO0ZIbn&cxy3NTWFl16Z1BVL>*R_Tm@^48A&o;B)*+9XNlM}k5j1c3c- z+ee(TjrJoH!Q*XDxoGb>lDWDeIw^<^N2m|Jnn3FX0{mFq--N}oj4(do=&11dM-dpk z83rjBWR8w8Y_Z~*rZbqPAUrJoDBY(5Cpf@bl?;&#TXM%5n{eD2%Rqm(u4=Fy2P?hr z%7Wn+b1xI+-$#tM#{rW?=QdxHFdPsC_fYY*6W`k?F)lno8-4_-oKM{$_w31LZyB5t zB^DOJZSBO*&?Z#hgaKu*P-6dcxeC>KNcvY2Yt^mwS@}-_Z^ypEy)Etrh-lkNq4^JiBa-(Uh=TzP z(vMfD`N&Tm7i<4wi^iqWQ;M^_RHf8ef?dqF+}tcd!(y@*Lu>^rY$e|DwFE3SU5GB} zZ>!NV5S|{qBZA5yu4XyMW`&wljB_2)nUQ@J>gff%q-bK_B<|gQ^;?c-I!CXzWb;$ zRmrd)X{v=btTc!UPHdXu+&o5M_Jqj9(HlIlyU*cO)hXmrr^H6bD%MP&yr7zUrN;#9ifklmYTV-e%)Aksrcj zD5h#K2r8pLGQ%mmMez;?IRK~60h$`Fx_eHa6G8ZOE2<5;C!9+8?cdjjpNRp$opRK8 zWl14g4ycxX3|kxy7k+4B3H`QwfVNk%zx5I;`4G9MVUz|(0qnN2h`9`m00tRc#OGo7 z@x26#cWMEQwHLMFQbOgA`p_utGXgeU7q@OJB1@r ztbSl;1QZ*F<;x*6Hu`KRZ7%5FV79X}B7RYYS=wJS%{aP&lPLGm+OMkC{!&ldX8iF% zXM}9n9vghC@GCsiM#mF*zfv#M?Wsx~kntl}1#B@E_6hSwpd!;Xf9Xba4&%J7XtuSp z7-8=l5(!?JAv#E%aWEaBe1loip^Ky2h{kbtplJb-RLg7jNI2<B%|kk5x0LeQPg;-eKs4*S}#RO!5;WZolH3hw4z$~ zLhz_XRl{QhV}_Dz^@sDNnFOpVI1uw%iOdy3pmkA%rh+MzEaRADfo?XeL19kNL%XiLEW14Uo&tiNU|C~XTs`1Q>7^)s>Kd(&1L|~%}kWBSi-oP5!8V1?9 zx#Amg@=azlFaiZ? zFl9!-{I|jMs!stP1a+J5ZZPOKB#R_FHh4z3_I=lhCL3j*OR^e02yzICI)$FwmJ4f_ zIkuZDk!vEh(gI| zu1Z=}v?xs#bd>Wl;gBszJ*cMoyIjyscqmZqwW#&hjmt2}%|zcw&7RZtG3vPmQbPn; zL+31tyhV!lgY#KB`Y)>TG^f#@Yr+1|qC}TbMMEAv^bYxnSbs&%exHB2jd7lbv2yo1 z72v|d0uA@4ONA(_hGl<>A_#R}#>B{Z0})MoSpk4+XNX^|5HrW_Ux}_Ek}7{L zLg=M#MIvm^q#~d5r*&1YT;j```KTi9d%m|ZYy3rgc{$1i{|MKN?20I5B$%81yOjtf ztBLihf>}q6xi(0|mQ6Gwia3}VAZF;jJ|>**deloX-j0|eOTn57@h!#eMh+wF z7Upd_xO|^ENa~{5w3@+vleB0b;yS@Wet(j>DW0%bJ0N6DRJDB`Z`MvHU`?W9!Si}1 zXwG{F#}-agp@O+{h%Vn;Ln(T^HOJn&>mgwi5!dNo`Zb8=ebnIoY$!KgM!Y-jOdi|7 z2Y&3BVdWbe!0g0G%ALDQ@+`|XTJI;(iwu`o-u;-?hO8~SO$ugtj)3Ghihpp9`;L+$ z$4V4RE;#G7IPcqVoobKv(nIA0y-jvEUyfh3=hBMKarfM0aZc~7DeC8c#DcS}o}@YH z_cU|p4?Pg=H&c-ZdYuDl{vgxkG}TU~$X)aSeWtJjRm5(G-kmyX* zuE(}*n|o~Awr$(CZQHhO+vXnb@tNXV}G(k@m0y)Qu|lJiygH81CRB&0;0)?(4H4 zg*}QGP;>R8K~m(#O3|q>hv8OAL(}AR%$;-f4fR7{`p+7I_WKO=&Dn z$p6UVTY*jMk5hP2Agyx9$Uo>;ajYDl5NpkK;EqOCBW+1)^@&g10-ylQvxe=|5L5q+ zK5U@TIda{nJ(L{Fkxo7u-_-+RDJQVV!$D3qiRQi{7x>2mko4mMZD_cjRPtDfDNW9N z+|f?vwHV97S96__;hz2k_;p#A!Qn^0_taQc^84~0YtC?Yif zW2$W%F=>gI^k}97`^UkfaMOgn;NnD{`p_E-@9L3W^aZ>x>M()6TM^^^m%{9LYnKZn z7%+=+PLDEc#KB1MyVbPGs(j45jc0-cHZd?Ngoj|ubczY-S<1EGG-v8qm%$l~2R@2l zPKhe75nE}jmoa3gfgmTCOWPcn`klFgk#2w>(>+{jn?m5iF32t?_*MUsu=GRry<3xx zBse;qfZagp2NxDtTz13-=Hx^i$w=CPGjl%ICFD^84A4MIj(ep-p}!fzsp^y~K56uY z7x1IXLb%Ak_jC$1t8wAHbpDj+-ZTdDp~Sr}$=V0FvwQV*E%0cqzTC!qgbX8COlLmJ zh|^Yap}uuV)C>_!djTjPkAy_0tq&!u$@7Le{nz}g%~nEj}^4%2qihj@8gW|~fR@jGPSth)EBOmu1dxj3EsCIe8GI7qFDzq@(H zfK-X8a;V+>u~lU-v<(;~U~QZtGgTokTLm(eZTGX46hH~_>XzcF!Gj#n*MTy%Ac`o# zA@7H9M#C}x%6B9~D^`w^3#(Pr5gvfySJ(P2x(O9v_{XBy2@$%IXqW(Juy5(MbE2Z~ z&eRDZ4+KOzy&zr0!yOpu^A8(+nmr$-?G9bDluSPnssWO|RCQrI6iEis?%T0zu;1*KD#@Pi= zyDG=~KN6;!T_>z{TS`eI)S{OBZG@U$Zy>88ot>J5+;5{aU}ygDDOsuQN+XHXiv~a% zdvO9jL-y-Mt87tWrDqu+9%&R4iHq06>4{tRNmf4>@6aapy1;=B@zC+^LVoK}%=PAyQf+-p!vGOJn;UrhBEm%crzIW*HwbW|->pBoDOP+g54Thxe9~wYxb~IB z?N-Ub+4_=Th>&EH4eZfB98YlDKA>=RrsUxKb6<2auGfPi3YXH;Yh|v)g{Xc&fwZ4c zk%cFtbn&cBytAV9K<(qYSpsm*p5NaD3ugDLHf>kqL!N74oIzs{@{tkSdDK{(pP1{K z8uXtTfzm|ZXAgq(Dg$2vSZm|bEhn&t7n`79 zo8L3YZx4A6N6dNk>i;Yu0aAcxurIlY75SoTGU*n7sdy+^XZV%S)s^<>c^VeIQFaJ*cggXxox1 zBug&gZ+q@D?Y|QM)A);NW!%qr@FUlcGlcC4Wg=$S+|Ot0S*7I-bP%o5RQL{hqJC4*1CCd=fecpngF*`~bl zLJ7qiSiEJ~vs|D=X1KPV51IL3e0v3yiE$&2BTvb;N~5E(=~Zxlk&5tWFEO>U2n zUJ6d4ERwM}Rgl1!BIh6nrtomPSTtqwy-Fap_(h;Pn@XW))Gl%6J$Ww zN2~JbxQuyQHsTdX9^}Z4vvaMd(k9O%%EH!h_=pH2by)6>_P<6A@gtjf zg}%a~VLP3DI}HkAXT_kd{qn7b%5QA&@1~U0?7B2T)OZeuiuG3bKl>^d z{&`8Vjz)ycLvh~-Q6ofGY!yzrszDL2uLxl69PI@Is5>s`auRP`->{R;$h_`{jV;TM zWBl_aW`)}Ou7S_5?NNUD82RZG<(Br?{qdQk?G$}WJ&4cy7`&ETOhmLGRohMb^~@$GU2GoWaC{er`%HLx0m>B~G{ z1ZsP@V?AGjap;K`qmJW_Xj#H=?K|dP4qcZI<+sNrWj^(ud7c*Ui3?bhkBi@;X!1o=Jba@QJRj39uTA>b}i~aTaeA)$)|o# ztvK|r$(2XNiF;S$)yFG#qZ5Mo9(j`W*Cc{QKbOSr;mEn7VG7J02DMbkecrXyB4rG& z2f!bA$&?`b_wIEj=2E}zYu!L$K7T~_tSkw)(*2ySMZg;uH!jVkP%#UP-g!@u7-yvu zpjBY9vM{}cvE;IgnmFoL?Yn*x31!@!%Gmm_UhlRx4Yr5xOf?KzwNJaFsy5>_wfZ^V zWXjwHmQri?mT4q)2>m}|3Yw`}GalE2utj%`V0Tb6X93(*#v#XnPCM@5KQ{72ZnOLs zqWNN}Ydar@aJXZaPLS?NmZ z1WgF^z3;O-QvNbKZK7rexW3tJ%;h-4YLMyjKT}%@u8){8)#F4A=mIw_z#rH># zlZ`XtJ}MF@zGU3?x9G-Ev8f`>$b)Cl%LSS;t;kH=d|zA5x0!YL!IeVU5q7T9nf-Xssee{7l_4qL*psLVEln`c zDw=f9ZRdNtqIq;g;SKk@jwbsY@65WOr7-Xv3b!uz`}sI(yL6ep&}G+9{l?IAk5lms zayXHSQIKXR{N+kD?qPqoFF4$_yqOvmFS;|`PTiCONr}?=wPp8Y4Dd-ia86oXm2Ldc z*nveewam_+5Zw@R7bKC*STZxGZrH`jlbv!uc!y~KIGYx^U__Or(r1DM?m~bq>RL#f zJv7evX5P__n5}u3iA~g4tcI_#QQV`a7u9q{CXyWe&w=i%yn2t_vNhu*%n)&44L|fB zg#cpD(y!OZrG$RP*!KCLpaE8Xf~KG?Oa(u_!Ji(^KxQcn^m{B{7x(pPIuXcy;5M=Jjzx6^4#R}|KiQnD&RDb6JT=6>Z0JIhgBVdLTscf5bXzHdvU zQbP*Pr#j5y%pEme;00A1f~1RMC+Gd$jI{hc*GZ$~d6Ji8-Czt2G4{?-MD98INUli5 zSDPq-4Weu5--NVzi197H;lt5At>mz2Akm?us?lBlhLQiJqiK=U!M)G8h-B`-d6w1A zKE+cS6l}uZLk>GB&BSef6-dI8sAM3Z@pP$wK+$36;{FoFd-38-7@yA^T&OlYJXcYF z1PF?IRI^BD0#j*O?b5c?(`OK98eh{-d6b@cL(T7DDX?^=p3o@ZGK3IM{wjE5ZNM!L zudycn`D3Y3RkzXuZx^^3^(D-fAqAd&tpY~#c>Zmd5vF^!W(FqY%fJTmHYFqVw-;`9 zzX;FphPjV;w4J{7ZKwVj{Q+8@jco!k#vv|C_+vx-Fxx#so|gD*rvHsyy4042Oys`YEaox>2F9x6*tKrJ1$C2X$PC zmOzVIoK$z{I~jk;K;5>SD>SY%_$I&@Z*N{3w31*3E^VZMEDt)8{8E_qz~~(m0mt(T zz;PX+6r&~$7w;yv;5CgN#2xdCm6HV5EzE0|OjS>z4*PUrks4;1fnGs8x-Fjz1hMt0 z;zOL&h%dGT0+}97KB3`Q9Xd&lw%FL@?U+iAZ1?ejp&DZ4_7V_lUw(Neq}5OvV;7e! zp(G8!r4Dxr_yT4P08_*|BGt+r5kH-p(pFgPctH$KZ%E-4q7{f2XN^iy^b+A3>WSF% z%0?=Zmw@Q0$w}$h$w1hoBp^Y4MHu*X&@vc{uG2~eVPv_S3A_;i>y8@1p0+Pt1OYy^ z=ZYrzPW(mkrXwo=DR(i1PqqKD=JnmANY=Ij=(bmzQWS$s+E%^&`OV4Ge_?35ynk7) z^_fGGAt$AdUQGZ?$rHMacR}n2RPxvxSTfi)M3Z2)a}fvBb^k~;p68O9+N!)Qz*akQ zq_P~5T`-XyR&NtDRyn_z@Y8~v7ZkzTcE*yQpo^U!!J4j7lL5rA|JApLEaw)@(`4S*+)`Az>r4)UeeGX29jt9 zg+H96VFbE_N`@cM6dF?=Z+Yj4_~zj4)&uHAi8kFFDQf^8zZWGSkdZyy05AjJDARsU zddGm>>BFnEfX@oWNNI_WwP)$>PsT5eebligqs0&<-uKxNR)vrMJu`JftK-l{(_W+F zLAeywAERC#qbQ1|m%s=HMk=0gm~1uU!ffqj?QMn=1Z;Br3>X0dUR+=ZiYaqle%L)2 zncrJIAPF^`P!w4Ugz?>Z_9L6k&_C(=@|aCH=jA>;vJ{{o2tkdz00f~xLNuwA(wV)J zD4e2T!#DKDJ683tR~Ryf?3S=hHP`Z{5UMjJr7FLKg{2D|x_DJGnXZG-L?mIZKj8#2 z1vWp^uOoqc^1A&nrfR=58Km(-?kUpaz!VCzK9PmwzhGFIZG;d|3GKfjNodWwSOjnD z0bvZD?SK);66%5b2Ps!!%v<<_7HBsO1tUqx7>xwL6IfUj1H$l9zWD|d2=GD2$KSjf z&EOznB#0#-2&%*ULXhg&h$fO@45CsjG+MeWQgr#pU=-Qx4oIP>+M)A67a~nGQ;jrT zwSWlwW{gor5=Abds3oGloF{Ca2DQ>}495`FP|TVHEC%_?qv^EOPy0YbEIjc8)R2(s zR>hnxD@cbL0(=pMkWe(xjM9Pmh$P?)rRssf5b-d}?7hk7xz1>&5R`_YXx#*njDo^a z`tlM;L6K+}jB*B{-Xi;FZ(sB@j*zDlLJD#Nfuaz!Bq)~L{!XzT7RYA2aCblD-^IGf z;8?@q3Pfb!w3_kx_z1LI?Y-WNhf^5krG@3C7_r*%plA{r{iVbGjA8(V_ZMg2Jz~Xz9;#K|t6h)C~WXjqR1LEU;)9`Xn0Kh1^)r7})M@yhI15wMY zu}CiNua~z&Bk&5#=8=tHhy>ge0r|88Vn2KS5R$unYvgMSg$0xO(4USm zNslTTz*e{wvGP7OVRPlU0nb-!;1+B>4OZSydw||Vc*PV7n1`gWto{gCoIpV|;@ZtL zGLRhMqNyj)l!P)242*+3E~`=$v{w;{Dd%&IizO&9|$bS00Dr| zN=PVVWXv!JClM5M6pP2<46NW~l-jfBSYhCA>>?!mdAM?z_e=zZ{YM~&+ysyQ+_Ep= z96#;>s~LN8jEs*XIQVBz4tY+q7f!4CfJQX}3AG78R@+T`8D&1|#PBzaD*cV6qZ7WY zos&$!-i%|Rkm8~iz6Xz>XzxN%6tRwMMnjcGhEb@Z0>uz-kNG^*{C|OPnn@%AizUYQ!d|rV2hP!`$-5H#;!l` z=XtoxV_~yiAsxZ?@9sKhb?u;B1laask|JehXv^!?ZMYg=E4)oZ6(#SWP5cDrhf))F zdX(Y|d1zTunlMT$8X6pi9!z@?c=y%>Z@aL6R~$3`2fq2ggZ%$f|DWpbQnmm0xZk`3 z(*G|B!LpZ^2f6D#ke#bI?j||2o?WP>>_g_>tCl603RVAvK7DZ!qSh;~*ih^}@{k2} zkg5NuQ=?k7V%bvoU(l>kb^b3@tweevt#kfwYU6i@Pai-ESHq`pDZ=l-o1SD+(h)qZ{h&NbJuilvkQOfMQHB! z5vsHi1q8TnkDsc%50_C#>HWuIu+TTN7A%6z4Q@wF1Ju99O-(cSmfeSlW^rHL2N|X6 zM;tmg0LJ>C;QcdyHP_*AG#WGZ8^NfJ8`SZK#loMlf@#pAp4n+SJ32bvR%T{qV%&l> z*enHAt!j=u9$Rf5H3IY?*zIs%Q~_q-yEjx6U6#errE;${Cs!JuV(h@8yXrsunlC)f58FRcUzx-RF4p>b8NSI zWvv0w4GW90h4mOA6i=`Vt{7Yz%|dL4mM6Z+o(Po4z2@-3L~a8k{I7%j1x4fYK^f+} zzcT9~{1g!6$F*{Q)AtY_3&Q*_+~zMdt5Igr$JUgy4VmkN|Vad+!#R9 zrKviSuGVU$d>2-;9OOAp=8BS(Igfp-XB-lylRpbyF!uw?{N%(sWgHhynpRFvvVLC= zvu`}_?sg?LE5{#t0#-TWz5BXW=ht(X_R|Y|O3xmE=lHiNjbXs!2eEW4^v2_Om)cBf z6ig6AOLu@Qa*Sek%Q=w7_#AVg*zO5DH2ks1jYk*?`5glX`D5?e82-Bz&10LIaVw#D z7VGlWBndp%`B@D_Bw~GP_LYFArW&b`{t)dap@$=>+yeB4j;SUY=;};UQ?Mh@RC>}H zS}kCUBjK1*>-Au0QneUuplniF;I2_tmk*bm7|w1G47v%#EcR+RgpC0QgbE?iwKt*a7>jsZ4vXDPlx! z>mYqN%Uvjd9W?-Mr*OB@aL@SxJOcbD6T&IE096gZ^~;UOg!y5;%9|W}#WYJOmh6i$ zQ|r(r(Sg)GT7l!dsx4*A=I3qn&2-e&lcgn%h=Ojq^oi1p;3#x38U!u|K{cjeOQ3O6 zjrofsqTuAjt<)_n5hVmkDPx!{K@f!{aqrw}T2%3WKX6w3;O&)*e++?%npPt&*UPxi z#sm=FHA}UAmg8Iy<_&t7E7VKM=O|WVU}r2(uOk0frYqh3iUS{=~;v9Fb7(ul*tw)l%;a_WsCh9 zl8L*VS}FEZd6-T(ftXLnbD(*e^_l`h)PLS4*r8J^e!YHq=h}%v)O+2X$=QI|4z}BW zV84`4WV;`G{e-q6s^1H^XgVWn-8<+egsBI{{ZaDQme)P-g=Sm2X{#BU^?XDYfYu0i zFsQJZ3pv@=Z0ELwD^tpkq4`mA8_JwFcP|5DJ zFC37-63Rv#Zg!G=t!+`QGSMpAVrn)o__cji1r;qP@PaWW0;?7uLUUxPE>Q$Tbp}*Xw2HKzvhL07a)j5DsT;bcQsPNWcu&MPX$ z*f==)eB*x9Fid4{F{Lvr)#-$mJ!yhp3vBs9T!cw4T%**9ny z7Z#bhQ-G@8cQ1|0iAG4~kIbS(`=s0oMS>q!!oY7|#mJl{l znHlEhZB*hRe zkUWR+JhiC!eLaX$NHm-9PAlwZsm4tsEEA6yf<&UAJrE32fUGW0A_^y}XbVBSJa>6V z>G}b$C~To$%nPbDPW|+H&x_dj!Upo=`@SMMkY$UIWPyw-x|6jP8%~g@NR_UKSxNElSPpt3zu#F{nBi%~5ek=G|jg z1{Y}+uy_SSLh{(Qa_TTZP^1+qK{eU51LD0SQ>mK7EutDAj7*SlAwQLeH&ORYBeV=gDWh^CHiIcKb}8tbnW%FNo1 zQg7{m82M&K9UcF~g@VAu`}*h|=I4(gfLGVoS$yi=LODtCKVr^PIZL;*Qgy71lx(ca zx1_UL3#cM&Re!rfh{nEGnH0$t)e#>doih)rmCy3>%iRJ44YRIFZ^9rH5P^B}bv9)a zXdGjzRJ3urz?$8QH2}zZE*R2G6i8yx(C}2y!fJ7YV3Khd>3Vlv>405y#_as@g|XR# zBl4kX!El5yLkm!82Ez2xaUdW#Dei_q5?P_@{yBiD1)KT8ljjf&M!x#lbS2`Ua|(k< zfkYa;cyq%77hyy}Zizx@MqaaaRZm$toz7+D17WN3c_b0vASl#@B5a?*6 zy20j)fkTL@C>c&vFmOh(mhV&bNFvH^Hy3z6wptb#hVp(IN9|V5Skz|@(H!o)_Zx^H zgAkh}X3X0l>`lrh@ zOH@oqj=~@pVZ{WA()nfOx|3hN!`FW`%;cbFZr#XaZ{=u^bdK)TYl_pl{7moWVI2W- zaGdVF_nU|zf^WAwfRV*3{o45%y*w}FDe?sGlCpMc>}#Tg{BHjKSe{+-a{E#~o3<=@ zI2ya%RdG80>|V8LTGg2*gnLpMDjp99(x^s;qjUuJ1EqjKpdeu=XlMGeOw98k?@9Mf zKWu?jDvg=l&C4U@&%lzx&}@`Fw$Fj<^&@&0+le4}7wZ`fTeUo1fk0()o-g^H$U+NL zG6(do3gmH?B%7+a2z$M&^g~$?0mSpKnZIP73$j6)IH~?l$%^dg?2JIOG_~-e=fZB` zSiqYZW#T$1_PD4hwsO{Tos_iU$w+CG$5jJ89}#q@N6sc&SLMV*tIXN70BwoXl&Hy9 zm8Y&iUDg(Gk=n3|Ha)xSw9Vd8?;_bP>ajBHiZ#*TEK80#9Id_5Mzefckca*Cc9i8W z$Z^k)f6M3DndT(h;hFf>a@M8eQd{d_YLQo+oS<~2H@nnU&{=cI3Axn%Eq16(zrZ4D z9g?e6UoL=D48cEyJCAwx=I#`F{30@(Wn^4b88;t!Onz)pt90w^-5mpaENe*0Q!7dh z0~V21LZUDjbk{k2aAA}azot;(Hn`S7Q#{AG!U2)*1|;1kZ6uuFK**s8B%ZV`9w&Q9f^X+uFWp`NHsl$eSk+HI9h_1R zjXgj|?vRAnfXrh^$__~u_|mMD1Xd}(F7YxZ%c4=VU4=GH@?k_Oqe{o?`7=+aA`N8~A(eu6iU_15$MfV2$F6A%{e=8boQ~q(6{d*6`{P*LGg# z_@6~?@ni_LGPvzv*2hJBc!6=+5o8VUJe&~;_i^6?BKB552PE1;No;!c2}x{>+{F`I zAov^}aSVw`X^-fc19aDy`gpD`48H}NI6EY@2`)@mBcJO5iL7FGaK?Sq3KT!wK!UEw6 zUb2i_~qKE>?KZ2BYB@@d{t19i6rEZJWM2W_>z;$!y9;7YVt5541^M zwNg%{`7xMNGVZqi^V~~GXf>lfs%MQA55sPdpD+B3*B7R%2{*}R5KmEx+cBX_F3NgK zDcl)*t<V9`ADI7g}%P5E;l9ID650Iy%IZJJ9RcH+@FAUirNVY*~pA!`A@ST5Bf@CZbI;r2X!Nzu>R3dmVJgz33)xjy|VqLX1Sgw(;?zu`w zC1n~7Ih~Y}S2eIIS4X7yj7mPF(=6nwg*;VbO3hscu2{4$nkr~ z-^Z>B-MGofWjrO%BD?FFDMPd{oBTrvsS=<*e&eL7l|y0kjJBBq)7DA z;AM1wZiv<}HrXSrfniOcA?c1Gg09WyDcaY`wi-6EX@ zQD(C=Z>Kd ziKx=p*P`*C;<4-T36_kv`69nmQjT~sW@0UOot`DG9w)w{0>5kwnf$F{7Z`)YuP@Gp zBKV%$q95+ts4xtt;$x5jhU^U z&1SVOoHmQCX*wEms|}aUiH)8t)w@y?Y&7yI|7@Ks&<4#`i;R^rp4tD00B zQMIW-&|}TbE8#VE$2D&u`^`%d$kw&?4-hab8z}r{kD=K>@x*K&m1;nsMfgH4Z8I?h z2x4oK{&%+N3Fd1uoXF#E>GBB`>jks2XeP&+*Q-*6O+{ORLjc-t?!{cJwE{T-Ny?DI z95%`Kqt2w~x;`YOnE;Uj*eAUn);hLT3XAQa5Xx%am)J zB0s&WJl|@?^zB}0wyhy=>vJPef3y#V(EBZz=?THBi;5=f*{DFuWBW-e1!^GYN9 zqm^J7?I}5pETdyq?6S#)_Xiql&~{? z2e({eTnkVl7(Dwac$Msn-w$L^#ZRb20Y554&#HX=zh0Ye=PrTI_xe`R7TWBt)Hw4f zkWI=oN&cSa*=7z35h+^Lv=Dviho~26+C%}9>Q7i^84pi43)q*D&KE?$)>7;F+9MUJ zQ7I8K{l41gY5JF_HnvMU*|Y?Irf^I-a7+2$8b>+frR+C9(4R>~OfGm2WRj&(mSbj_ zwC63S5y{`MDTh4w!sYhg+MFgY#(L)XgfL(9dC%q^4u8doWqjalr}+aV(~4(&1SoL` zY!s68P5LHw720c0?Q#xB18=_t6jkC7;}L(+3^@O0uc&iaqKLqR@Zc zcFTGV+1Q%@>Dohh-C#qp1r)G<81YH@cvv<7;y_jcf8CZtdzyRQcETm|E2LlG+MbgR z*mi@ z7nQn3l(TQ?XJY>Qg&vvb-LLn`V&ZHr=Amc(le-{qrN8+($j|oYYvfFmY2xC&Y%uDr z$Y0mg@G+4~N1gM&LOD5asMm9CcRUKE1{WuqWJ`A+Rh97+YjGci(*X>>Zb^i6=0_g5 z1u`ojBhD^hst?;lY{`s~jb~2)shVmvP`LLFlgRi6DUeD?q*%g>B!MV_2*h@8=gU4X z&4I{4g9Vx;k5_i=H$^2Wk;#fE-p)VQN}Iw}P)}ah z++d4w6g=d-eT(n=ybAP&u*>uj$_!uV`K*QH@ZjS*+JiK|wt4AY*_Zc#Rpn(AFz*GW znDLGmIcFqtNum>Fkh>)_^^fOxF%!%8i&dx#DX@Cs&EeO-E- z>$va`ADVAkG4m0}9(X_e-JSCQno_vf&6AW$s&Jwop9uBXoO9Nb&d*@A@!hpMaQ5)a zOL>%a^}`=q>83BCs~1OXT0_shd_#bFbK%BD{^!mYu3C4xOYdMT>16DA6IYZW+r$dBZr3%U7-BtwG^ETSKcdP8#dy2agsTMY8^mxFFGSe#-_&S+Z^7CxobFM?zbWA+L!(|gU7P- zA+g(_?M*X8K+`5#X1pO zb--0z**$8NMU5>1RDGY#8DlDX`@|2gereaA2Lbc|rM#bjS_fygnMRo7iHtLiKcr?H z8mT_ud8y^fHZLX|RH#&#zsN`^rC-1#0nGmZCex{aV(cbk0^b+<@$9eClmKHLX`wS#OJa z^hqhx>E5a}4jO*4!QqmPLO~|CSjJb?{pI88$#6dCJ(v=n#S$BjO?k{*b8RFonwNV44@;zjO z2`AghzDJP29uMSydj+JsC6=t}o3Hbc_ql9U{%PMqi8H89Gnz{EkYF@;T;=dD_7cl? zJCO+a?0ZyIa%kD6#GGmS1CWepo5_>G>#N)-YVMP`9W z|8Ue+O?gzeFkL_mSt-0IrJqOvbL7~oGN#`hqaMeIsj~oD2po)T%c)6&(5?QTO!||~ zG6SQMxldfXk12bBuw@?Lhsy<@yp)gPRj3rPmUa})E+8!Mp;0*1@@uc0etn6L^f`4u zh3fO#^Uy2AHub$^zJ$H>bgd_~SyJNZrN}R$2k+BYu>Z78qU&!rTaFe} zclU(o!bCEq-vK2{hd4WdM)Z%_hUxk1W2y48P~#UBgGF>V%JuL);%&jMXuT=$3~b{1 zVVKhxs&SUSpg$tn5U)Tq)tl&I zdF;o?>UM1$;aG9^NbH6>f3Ao6j(qJfQ2+EQf6~Dmh8|E@B%Y7Q=q&~bvw;x5q!P3{ zt_|E+h!CMfd3LrE>6?y1Hgs9C9wxI?xP4a=#cor^E`>f`C3pqT2Iz6(3i=>OR_{DW z&NJ`e(VnH#mJ(ysmkb{G*i7wXXPGI>an2m&L>1km?JfmsI28-<#FNG@^)g~%6P zmgUHrIb2nH7{Q9tc)4rVAq#@Dlk#YSoNyY2^x}Qgq)O(|A(i$_%FB4vrKMON#G*c! zgkN~pjSo)3BDQpSgzmT5t?D_f;XssB!l2ZFWIjp3_ zXuI}r0g)o6khQBZxg9jFA z1|9f?zO~Ox0&_QMsVGs@S$`+#lZu+;%_p}D&{NU#GGyN`p)cc3KCLB(fZjbIp*4P{ z!YTy7D-Sjh{QQv&NO66abL!73-?!Jzn_& zn`!?8yByDzvq0=JuRg&dtT(*?9~gqK$}sj$V}gV-7sWYFHL#osThdrgyrco6nprWF zb7D{f^i%6?{}>BtgQh5RspnFY%oLaL+ zVR!I#;h92Zz&>eCWmIZYg3H}b%U`NN#yzf_<5J6@o@J46?4EEJ@NzIOLR>pIo$*jfk=eVFx;m z-3Jjc_@G>soPt^a&%Fs_!RQ-m3T31;mD83Emm3r+7$t5dpNMNn{~8R2>Xc})Fl-c95vUJg>ooekHOn^L%=E zQ7Qib?F=0v%K>i&J$uW>cqeH>z_8swjR*p$v4g*uvCD+DYi&XbHajYkYg3X?;l8|m z6o_h``>unq4UlhO^rl?qa^e5J+g|t6+(tKi@ni zp~npy6eS9ssOa*$m7*e~1Pa6G$Wi9TTuA|$)y`>BnZC;8JMws9Xk}Es?<{#h6s?ZZ z0k#{`o%G%v0`@WDn3E*L-4OLEW zuA^PsveR-)nG(%(ja;%o$ml^E_r{}+Ygg7mwx$Vd! z2Z0vgP#}12av@M8xcteiw%S(f|3HNS62CJ~2;s1wnCUEmP6xe=2Mr#LpnxWn>bAL} z2fJtnMnSKFUoXZR36#>b533^X=Lax1xwH{^lM{lFHGDt+b`fb@pZOW_4dXy`xA6TX z-Wk?e{di7KqmQokDGo1{UkKJh#>+(9>~X7R33s%XWwTWTsQ>edsh*|2gOfmf6>z}J z2*lWF>KuTfA%{3lkMqiKEw1=PuWz_RR4NkAPA@4;T*_R7Cgo-v(!7J6^2XSEK5Ndy!0r*jh+j!p?BO>Pk!j$>cms01q(xzgCUBe)xMa;= ztZpa=&gXD7oYC*u)GrJRW=?pXhftA<5Q zFJifZA*_#f2tzKbtsr4GwCrHlliwm3g*y=;lJ6uvSh*$$t&vxxc4(A*O94PR$zv!DxvD`Ey%kUVPOB*5 zHy!)GxV3^Y%JMO4;tHgqF9Rr}!%D7$LL*;*{J_A)9mSl}@)|X3Dkph#< zZ9!Qh!QyuqOJcZ1BAf4th+y13C&)8xpe(SUF3{Gx{-iQuGJUaKew&;!?Hy@)rt`IY zU_egRvIeO?@}CW3&p-b_RwNZSeso zZ6Bkt3oX^rQT~a=E7yWkO^7LiH%e%CmY7;u%N756^81^hZC7U-QRC z$4_*9sgWi7KL8~_+P^VJ5tPNU$sgI!M^pJd3rLnQ6peF4tM)h<5Y+%fHG01qqO%j3 zz-;AfVF`K869kzUY8A+OmO6%$fDr1y^NgJiG@Sew(r&wr1qBCg)D7)jf@K#0{6HI- znJ9MvI&aP39qM z43Pe1qyvU5CzFHb3WVmic&wl^YXK)|^k3!JEwsn=L6FG3fSe8*Qtuf+NT)gUK=%kF z4WfeX?*9h#33Qm%{6MN|cVlDFEFI{_L>MF#WdjVvm4LrGZKE4haH$}2E@lfX^tr1= z4W-_+&yhQnj}%MP@ZXe?+AZkMV!jmc#+-xNv|S4a6Za_hjdklS+CF1$;_x4w90;CV z%Eg|79hGx*HXv8SL-$#6{g%Ri$-n4fNIKi3grh%b@1tc?r|+u}9K;bN^jOaFHZr|n zw-!oF#cbn8NC*gSb|{B|vgNvhg@RzfZCY!N?6%E9Fp2*&Y{w8fC*wrtDbcj2n_MG7 zhmqGi%$_-=XSjhsx(9;QGzygcT;{8jW}&r5vzC!6_y7H?(3JRu^z* zp|;vY{dF0G$2clmDyo;`6>ALy0>xt~TfM{)RNw3zPpIKzQ`&H{YH&AMj_SAtqyIs& zCp-_mx(uSfiXbYs`7KSyAxv;X`-02L!vIGwLQOjc2eVi@x z%I!R#v++ecA~bkB6iGL+5u)yPnWy!_E_&_#?>)wKl~%f0T(aJk{zM9N+b|*)X%*@m zi6B4nbmlGPN1Gi4b@81(hDLo89gbXw1Q$Au6rNQP!Jam7c@;q%<>$@ZavIS8(K|X| zJrqbPF|)VJSFXH(q2f#|GV{P@iKg~frUmsxO`LQU*P#>n_(zu#_C~(FVKTfcapm!> zt4q6!n(Vu?Yr#gnw9xXNOkKfc}sV;neMBKS$}F{tR!DbJATfdW@hK_i)))M%o24bo6Y!k2ffko4Kv z<~M$sItmRS8Pj&)8vyc&&wqC<>EldU@~;~ey_Uga`hEd_Bm0CB;gTTyG&fWLJsKq- zBR_IbwW1&-cr($Vo~i+au@mTlP2Mxz&BA1rUvklm%%bCZW3WH?OVIrv2VNbH&M8;z zKxwi43WUP-oXQ!Af^64(r1b8WM6&s=zR*1{0-D)9i)?>l)O#LcGzF-ug)I<7xZ$o} zE-3Mhdvk^nGPAB=7GxM+b20cAyGue=v<*#Ed|1WMEu>0XRn{~zn~{~QFZkX8s92xV zMjzH8}-0q7pn2DxIXC z2-JoPN+^>w=%@RPecN%r{f;|oTx^IaGGfWx%%BlmycRH3=_4gj2$d1Y7!ZlKMgp(# z{X6IeKq`!S43FkoBOucuj=QvN_ue~X9CSdIr+cW&%f}G+DI>UT6%R;kZ!F`sZmI5c zYD(FX7Mf{~%k2$YGxWwoErJ&Se+X4;v3qGu?ASaqFNJM3!O_G7-zX>iz$P}X<$mff zc4A;K{e2%MD8t@*hR=eiD3ek;7E`1v8$AKPYhfBrxK(<|?sTYVcaVNS>Y<=UPl82K zw%Je6=Z_wrybpG{n4)}0uBoErRD!I8yPo|A`lzTus6$N%{Gb8VwDdgM{|ou>ME`LG zboP|}qNRoIF#`)D5Yic`JkOy`9U_&T3mv?{?Q7FXDD!_S*jobcx5&&r2%EN0pH3vP zs5N>4RjB==I>=!8s^GFR(Q>o@X|DD5^*^?1+|LCwmRPWR&dqsls{P9b7yb9;SAQpz zHLl~kWLHx=`u093BZ~J+_7A-viD0Wkpg(NRKReV3WaG=6AWtdPW3%}LDq6Pj#w&A@ zUpikQA}QtU?CI$FR5O!2h{h#BK^4N|daT;%jUETYfU(fv!Qt6yl7ht%#gj@WYDW(G zs{kn@LHdLdx)ZPA&=l|y{2nXde=-?9!A6UYj^MPEEsuoo<_?m22r>N@nDpX#wre0r zeP}LP0n$8x46n>s8mFzVXizs4aVM`@JrCe8m-q@Sr48dY#?H8ip_#CFZDoOzdxG4? zNI$`o(UWWMiWqwbI^!!H>Q{A>oFRdJYA+RwV}OIC=Eh>HDc=vHR9b=ptWWj@>m{^; zoq^wI)Q%R1VChEpWO%8gUl{&OQ($4)_=U-KQPUbqVBCk5Il1hDAk}jA@aXCh;GQ(S zq5t;i(NgbSe3{yV-j+GS>8#+C=)<`z(EoY+v(Hq4_x!k|F`P{-oyge{Br}KKY5Q+0aThPTm>h~h(<0x)(MO^$+4#5x2rfyNb+p|ky zDg!}@QvzhfC%f)_DnmPc(g;7VV{s^b^y<#pbN{vL!EG$ zQB7Q%EO&0?3<^_~qG#K29#t&;d0NcD!oY~?kEPq)oo(5DsBw&>YrN6nNVFcXt4e6h z9&T<;2c&bCTY&qJ^vQK*AZ!Q+WNYw8{!N&fMM47q7>7BW3+xd4*HOhlxeiYbcrWz2 zV?{{_k1TY6P7eAcQTP`9@0&^y7kex3(`(2q(;^&N)pj(uX`Ae z47}4dG+a6F(|Bg#oX$b>ka@gD7X!Sge8)CEliC^7?1>kRJ`V)kyX+7iM90uq*lS6>F+xGjruX1-u;!YMqk6b$&3YLv=wQpa_?vs^81f(M(E^U&AwE5o-I{dgYgo4@~Mg z340E(qXvr~YXhhoolORZG52!+ouhv188B3?q3X zHlzSyz0i-EAU2Gb7lFI@coDq}{GSgz5}kImBR4s6r{}tgA|%mO^Wc{{hNyN{x%f3( z=C}+1kPy3}*zs^LW73?>Gw2Q{vlaNDJt`XRt%jyaPxTa=6*V?q4=sCr)4YSCEyiyx zA9UhY1i_JHJ713SO+Q&A&=UTZbcj=R?C{}{2bM0ZON(w!h53cK&qtg#dsR?wVtk0G z-LJ%RP&?XA6tECVCNNf%KH{VRe&}V=uRGvTT3h?beI)!;RfE&S&MbrCE(VP>NxJEJ znlrSZ_xDK7<=2C(JLrFZOd}iuw-*n#y~m|7@dP#n>YHm-9X+;kxZ#?ws)hq8_Aqog zOR+OqAV{}ED0Z|(Da9^!e(|K@h7v$RhVn;i0*?jVz8^}Zx;fPk*l(-u7pL2U!cA6| ztPnpud#Fp$PPeq{c1X6rtnqIom_i;Ljdg=QqxOxo%(%kbKvS&^1&ymz`okimdBD&A z!MGHzcvny7;U~?8S}Zsb2Bsqtj(g)z-W0+o1wVNA-mui;3;mY$<-GGxR|m@aF86@{ z$^zpB6?kmoNAXafE`P-lqmHF1Mc$OYpR@aKO7pDo-B^&zdAg=-fkXC8`AbqZh6~2H zGfyK`tg#m##YaP7Kp$)+zkX}`hbU$UEtil7zEKS@7pS%5F^-`?hj?IREvSGK>l7I+ z_~M6LVm=PNN)obqm|E4Js*@SQjwp3%P7ZuF;`atG)Bx-eK@ihixPUHZ)-eoqIZAt8 z19)vp6w%fb?=3rW6j6nj8L>y^nVLsEI~omxbGRK4Y5v|wQ-`_I0C1O-@_2UQ4K)2+ zI{qkQ9hI(0G5}KvMkjA-`$;6#tPJjm zN0lY@hxr<4iS1t?* z3VpO*l>pS|Ip^2w5it_7^86sqBvG7A3Hz5_?|z;_pGJ{*T#;&ZaGL%qP2Lw5d;LVc ztqUKH4^Kg<3q0^M`xPvBWnd>4{RPHD(PSt4OsfGQ!iNuWBs2YZJ!AntCyNjRoZn(S z$wIVvG%>i~t7Acf3Rgg{kRa8lBPR0QDXFZ5N<}rUK?JQl1*QeBs-7o7d7-#MAVYT z2MtmaJ5f@>J4Gi*)1-hNM+yW5gXjwxB%iLyM)L4H<5T6S29?$|& zimp=%%4Mt3j%T(6ChU!)diVEcOtn_@>w$Y~&EM3gqE?JTTig=uFdpQmIZhq9%W^S%;F}W{~sNuAnhW23>bgtc}_8F@nl0KH- zdKhE_??Bd}0Q-PywR#O#C=bR`eUXTVK=&<;z9k*x6CLK@Nx^eyKx|Dq;Z_qBDqys_ zUxMDtaQ1R>2vZ$#+(@=kSjp(v3gZ$O)0!KoxoEtPh8XBnrd!mQQAyyahn{MG37q1n zZTRT62eugrq2=~WDKP@3*_CD(YO*oQIO5E>8youH@yyd|>&kZ$gngr|e?ip2bef0G z27n_bx}G2^+AwiQP;8?t+lR6Y88;aa9H2DJ|3`(f!Qz76`elml7h_U8(PofAGesS2wQ0KEDm>HRq zb3l-pwLhl3we|CuLmlgo1_6v;YMU#iEG9EyG?YrncMBNY-rE2p=6_=sLWhQXJEBUnwk0LO5^5pA?QCdvk)+=PwTvG?XKHcr%mz+s()6Ba2V_xL-!2eh zSYZ$?8V&j%uR(dF0>-6)GC1nR3IZ$K!Nj_|dqf5K{bO!9(PZmWZt>;>hLOX(foT`v z=fHZ1u{gfNZ^?_ejt|tkNv%B9!+1zX_m>c4lW>sD1)i-RyJ5A98tai>pJ)(K2yGgn zg%Lmcuf8fp-loOjgWc2Pf10esWN|*C96|j%SJ6PJd?9?|XO(#XHef z6Dy9i4os(AHVQVxlp>fh(VSFVx0=wiZGl`sii~h~0zWd*xjGx_(N*c( zto==rmvA*!oCqhEPauso^(W8~mFDwT{0>TpxjO`pwEYoCNJE^HMO3$q+h_`oQv5lT zo&UgrwT%^ax3O7f>V4@4R0f1F?66NOkf9*R2c8iT|e#6>e& zwlx{S2dMFvbkOMH4o@dD!#wc6XPS%C=1XpnGIy8Dzh$Del7T&FMs_f*!<#)u(_j)hXM@>T6Q&T z&`B7?eJ>O-Zj*>FG8Co!FI=e~?*_a=tk4l5w5EOY%^+jER}?tTL-9%ZF&^<*g=e1((l zv5sG-B(PNUj=n2kKD=y_QVLGbclEJk$Ui=f6AKW_03Tg1hMTZkCT}aoi zV&1u!J;H>Qv{)Cd48FOZ(Gt*d<4JLq{Jd z(s4aUhV6he^9pTD>`r>6Dm}|h!@-}MU)YOCc^4InM^4?eA~7hF*dU>n6@+3VQSN9P z&9tCCNA9yjEJBw9u0ZAAZM|0^k&ol_?amgg6X8D;*wXDZsyEI~W?*y)3*k-_$o{0x z4w-9b3ZnwD3SvG}c&OrM|7&Jg;MMWwRL;L9z@CoR-_s)CpfZ}?lL=n#j^0U>( z^ST)eTcNQcvu=pP{9CZ*c+aK0IQYKFZ$dh)9d$faFVHmvyh96(jDph!=cCXF_zs^0 zv&>5~gTV1ohmHYW_Ei}=Xoos1>?&;h2U(#0^a$Es{t*Zq7cG@X!e z(z?=GOc#(j>z8_5gs4SJbKXHZwD*HUoI<5n6@>(kt^w}#L&;)So5CT+iiRaCn4As_ zK9Mrgm2jc%29TYzB)$ED6lp}lF zZR8Q#wu>B0!Rq?4woZ7`>%N3Mp8@S$W(Xr3-|A2nNiDP^1#X1McgqVrstT~VLD-_uLe5}BsItUnjzi?mr01(mMB2QDT(U)m{m4< zPXD=(*xNmix?`&IUd;VXoz)qJRv@T^dlWk6t0?xO0)4Eq?<<5zIQG(d(b806T-NWU zSd!R_)~fxlC{myo2cnV!UgCQtIbL@lh`DwIRWq^yaWo^r0We*Aj2=^JD~c1$5CV{^ zgeek-(}bN!A1O0#+_R*92<1}L2F#--A;Q>zBnA}47*xXcHuS%Bg?+#CJxG7@gpzMj z_Ixr54+u3rL#rr>Tq`_mLn-juc}|=$QZBL$rHkdW>g2!t(JL|?5~=hm1r2g^&_w#R zBgCkRRI_0}F3A4EkG{K3(Q$;Tp1D7}kPxGFy*w0Adx_VE=zYQ3fIH2zL1NtsoO2t8 zA+2snjBHobK+Vc6&gZ*TIh2R-#_9dYk;{@X5;UqOq9|-S#y5-7OyE#Js{w{lVsDxo zX3P&I1J`84!G^qEQZwX6YlvTtQNZt@XYk@NagS`kJduRhjyM-A;CW<5{u74Mb<*mW z1b~JQ)l+t<=}y{znA>EeLqLJ5Oba*~Q%G77{aOugM8Y<)aS~zf-z(=$s@ntgG=N`( zZ@)knmQ=G41`bATlJL>SsF?(9-=!KPwlv(25~y3m#%Wm4e;>AlDV>QK(GX&f7|;gj zkAAk+@(4Puk#>*lR)}5jFyB{8{S9vbD)z;{wS;mwQl-57mzm^S8_dupCf4va_3yVF zs9dryEqGDiWl{Y|Ytwp9wuQ*|6loGC8WiOy7Pj)#4}L|k{JCI%jDu9}j0`q^Pw5G^8U^)#Hcr&~IUdse!36Mj-D5xZpOwMFcH%I~&ddBSB z{hp4pEx;_HC+3wY$8j~O%9P6)pDqvSwMY_ORA&S#M3gMV75DIGNNgLrj9#!;O@=(>kIT&2A>gKQzPosz{#;wh31>k>o`_WedZ64-I$|-4DIZq zVnE;xhUQ*V{Y$X#-9SpBi3`(j2_40+)$_IzsSpUSTt0dh1Z z3fZ@Xq8(O#Lr#D|2mzYRS6Nkox9~w9KF=XDf({lS5%jl^0Mi6OL+vyYduf#QzF($Yw=-3V z$}gsr7x_YKTkTMtga1IVHB3wR5Cs#xp?3timi09EoM z$m&5f?8G@+h`~W26*yZlEDW`_hZ2gV=7<#n>kIL${96u2bTR7{4vY(J6$6Q&T)+{I zEkzK+aTqD)E%OkWt@y2MF{gtQRF7@vAWF0_~hy61Ql zrSw;W&jBYPiuCOU8hnA_!BgdCxoMk}eT>z7J+0=^!I|lozEG+T}8hzj$c(T1DcXDQuSBBWCMNuf)@mq{pCGiT5!0d6JD??7`a~0 zN{^1Vq@4d1bg{%mGOJ}@t+lEC(7plx@XK#eTrF?sJSWyPeu(ZG=|MmMa5u}xXwttT zboPGZV&Ffrcw*VaXpnSFIQJz?6eiI|oxCUx&Rl?&SUtmM6!Zw%UObUuOb%TYkVw4R z2`KQ%^L3&L@-TGS&Gw*8!GS;#&AA+gTGqO*p*;@0Q^t73g5W6E$U${rZ!^i zld4?f=~aRz>lWITeUhbyHvH}f|Iz18v$dKJZm3gK`jO+Qpd5t>;aSai+TAEN^eaaW zUxd*YUCME(yXWXkh~{N}mA;z_yVRY7|LO#6zG+WB(kOEsO;uqjgWkXzXF&))Rt*jV zCY_m!)R}W$PA|7&`C(u~ggxzP7F-;ccl5vXq^6)$1&{U9!XUn=LPlTY`98VS$XNR5 z6?FsZrjf4Tx-W<(iNGa@xZ0mLUIOu#{5zYYqn5HhFk%llco9=+(UNjhg$jm>dEMm& z1j16=X87Mf_y0c~5I`%1mXs#S2$>MmY$W*W9uhU}3E)&-@%@rH12G4d;rLS#1!XeF z?)M#p$wT*3->X05KoeEbuW}5%)u0LYMZEkIF7AGv7(jI*t$tE7$qm>v3dk9N!9Spz z?F0*IXUFAl{?W0uJ7s64eUS`759pY$KQuEB=@wnb1KDQB(tzLTiaK1J96@uW7?dIu zn2jw)6x@_YH zP#luCs^Gek^Fb^Ygs30W2|*%mA_;1Qd49Af)fyR}Mo9GvoePV@s|SK;2jxSs8n%g4 z_z(*Cg2)2zm5sLcps?SITuF3fFR2Vb%n(d-&{tSQM_HC-wD)>~6#}aN1!4L>Fiam6 zrcPJQ#Bk%M9mE1^tF^alk=;bD;>{Wi)Z|SqCMx!S0ms_dx^i0a=7<-L*QKVt&;-Dn zy#QcGc95b;`ve&u$%sv)*N2V67l}<1C+Z6UvIeT(gR_>w+B5vjyur;E%dfH;atq;T zEjhdSTz&MH6uu|!T_Fj!3m0WM#=R>LmH4(gGrN}&tQ~aR?I6}npT{=8*;`^_^!C%0<36G%L?AIEnB%lN{BcfPmL;o&XvQsJt8V-brl;Zcn#h+TW;d1DeAF_e>$~;}hBz4iXfpyD z?G7;)ir$rRZ)QC`k0jC;Z88g=*@T5rKo!ty+nUL8RQgzm78ii~M*@#}SZJJD39^IO zTDLNB6kZGxQFL)wo4XwFV5I101ojXcauMlx7pZF8ckGKN%ul@e>wCzWwd=6+sCui_qNq%XXIHJ;?ln8OYHR+nIf|!8%DA)CwpJIaD{~VWwMJC zgkMQkzo^257q-dTi+V#AZAM&#o*&`!jse~i`m#mN%gO=H!m-G+D!SpmA2fIyQ{pMj z<;uNLjlma%=avGGZWH){^&(lo*1j-?gNfB)KSFNKMs1i3`-C)fTZgnnUU@R@TIG0I z31k(wtz1M$ z78KE1hHB0Hl`Bn<^ExmI%Azyj7VQTh)&YHNSKXxm`ZcI_$znVWoFROYChhdG(h!d7SPx+s$Ms&T(aCzciOM|wqRiVYq{JBm-io+G{#q;@HDIqT10ZP1NZj6z`IA%1pHegu_ zjg(3K7&{YUdr=8cFyCi9n&mjInKsi?x#L0O`MM&b>$o?ugxJh<-aPvgqF~T662FdE z@RsO({9347OH&)PKc~>0#thLQv$Gf6)_qkz1}K0 z4vgh>%oP--AA{!XItZg8?&AvYaw;!Cb%##=In&GWBm;Q)x7hgF|0`Kf6m(pD1xLl? z%(K&bvX-*8p&)LR-&9(@p3`7aC9~yaK51aKZ|q!*R{|nVSQGC`A5(1fHS_^*^zy)W zK|?|9cM7L=+VdC5vIIQ)>7@FhvUmIIW1)chmN7$$Rhe=y~s&tLY5eonM>&56?aFD;_sk7bgE!e(H)rx>yv{8zu#Km#88aFj-m#8xw1kLO*7=YKw|B{2gr& zUYNU?*yzAmotU& z(P-7PA6Aezas!POu|>Vo`B%stQ{f)nG|5q#Riz z7p-R%Ty%-R+;6q>LeC10%m-lMal7GAxY>l&YiF5{*ru*yU@hyOE4~;G#cWC>AwI)u zesNVhLw2rKOI{szB4a3$i=xptYFvDH$9I zKiNZttyyo{l9oOti*_Z16xdGb6U)-W4vy;qsPIzGT`IOv63Y})lR3PD}9N;sX_D8Dk!}D_N`Ha-VG}+&SiJ027=wJmrVX0@>%|plG9J3 zwojKnzD?ltg7WjoE+-wkgOBu<99fL;6bokfgOzUx>JGYVdyCuY1nf_7qmT!S`DH@l z%b`gk%OG8#p6VJrScvh&&G_0R5Uy-2iz!Vvyh0Bl9+g8^?K@FGK!{Bi*IKLekrhy~ zc~dUXS&7$~b;DlJCLwaqCy0JzGfta(7Y0PzPb2h6F{SZ7tPx-M0JL7zr>Dik585wV z#f|y1pqu=5XE8%d>>sF7c7-=ByShPa>S%>{y;sci@^$7LoP8<_pkMCjw zgdQV1Lt)r<+-|6)iVT5+ENP8i1SBe5txUccLr)xs=nO>UL*?@`@C(30pvYu-+Oftz zc&Zfe1NKQnBC8wFGZwy=d!b`WjeI6$+ zqN7Lug-UtEyoeC&-ogMeFscnOn-+t4z3`}z5wdFn>?2Vk>zw-+xTNSBV;np-%z}?K z4f)N7*|9+Up?n$d;La@NBLIf50~uMUrZMZy0nU04LBu-mZs7v+T_$F-w!3D2^o zp$xQOlrjn3;e`pKCz&FEn5gdz&z?0m?>4CpH#jb#e4PO@i_oD(JBeK{7k#eR$f6)* z6?D|6-xM*X)noMVU&Lm}PA-#nm%G{~Hb*3K`l^ir0~l)U#^&oV3ntBkPzgzQU0Y+r=>L+MUK^9TB&V@a;_(eYEszmNvj-(bYITp zWSWs#T=dRX$B($x%N2m3%2spIEu*@QIcg*BQ|m+abZ9OxS$O%IUOW~={FjjN(*;pA zPiP9&2McMr`u0h4KOFWq8oHYo`d414bBnSHa?GaUqVhCp`uMPh9GzKVIuqpk6Y(|> zT|2eqUPVyC{R`)ov#x3;ou>8?tdj*b`@iQagc)d69^qhqY#u#W11Ap(Q&`PvGb6$m zr6gNTVf#!X19&{py9o>|u=23%LYZWx3B(t$T26ObL^;#g0JoNV&>gLJMUkbeeqZs< z!^Md=OfAq&HWj~>5!wggDLnpSW8{6Y*Sn~#upQ77=AtPgVEnt*mGVA;fvzKeTWzRy z1(fTLAq4C4w8@??rry&|G#3tdOA}N>r$mRfyYBT7ybI+Rc9eB*s;?!3{r~S=D09Mk z2eVrbB*u@ytZ}e~k_ypoXs>d!^)I5fp5J?jI!RmHF$C?3F`B_H>NSo_H5yBd z(Fms}G6tw@53!B;t!T7-@FUq+xrv{2yyPB#WfR;>=A{t30fOoh^a+ zbvN!XPiZ1&y0)yNedI$`7`qiv&5nh__aTF?ZkV&7A6ZRCjv1-l8ITvrB68@IRM-MN z&FdzP>rA4WrFX;F>?B&lfJH7aqzZ_i>uJx_eEfWgq~N2=A|)?`1`Kwy$iv=`p)VBY zw9rFs72uEY9$EAjMiNSphWgF3Ki6r95fV7hB)L})*xgcy%_ z^e>XF_4Xv(6b(SgMcQoqEw+nv(Nlhm z7O^}5k>)h>Nev~rPR}3-2HAix`1(~NYTtv?8n3CY{JKd~n zfHg8hAf~Ti91t{$kZ-e-+BlEKT&RQl$nrdUSLo1div#MhudTXB9&L9x;siG-C-zma z(dyjwk>&zGDgVIozNj?MqPU}93Nt$(F=L+v$ZTU#xqoaiz?-)_({ms%;kF_;5{8y^ zPvfpBxob}74ed7r?QusswjhjBEPcWVvW!4Q+!H^7g?wZDA!w}#_Fd4b*G0=EDTO+_ z5eTt>R>qpUeF0giypjMb+LsXjEQl&c7g&gAW8fG4W*P)smH24&>Dj$AIz32t*^j!6>GD6D5F;oDCBjEzt;D($B!hE1;d}$!ZBubwlGJTak z=abt}rnCCch&YD^vP=gnM!?YaNpIr&B`aFe__L<@JiiM?gHI*)la}q&r5CO<)O%sa zaY4G<3|3jx`-qZ%M&34xf5y`@hkg4W0YXMj7U>V_)H-jK1%lsk35=dv(+kwDibS@&K+VV8)0I=S36=cU4=O-P z_FUqnyf@Oe>-@X>h$VRKzl5QACx}sP8gD9`aI#CuJ7fcI%nwohGzsf8ip4}CkD1LV zxBLy}mcNXP_`R)6F&9pb0$Vlw>SpVq=Z<=fE8qke^^&S*2R#idK@%r9TtaSIVPD*J zNiBQseP?fjTfhno^_1gpm^r-Q3E!?<|@P{_gb^}xLb`&^V(&Q^O?(LwoG8nF2#T&WxF+Hvb?56gct~$!$7Rcy6FP03?jkeSS^3_Al)^)t8|KN~eaiVX01yOJOyXKNM2P3c)FbT=_a$GGk>oT6IOQ z1W-t?ckQ&%S-lQCdW;b6YOT-A?CI;t=Znxlb5-Fw>saP8c! zGqOzcStHUNeyKBL+gJ%8kEDI;-1*-Dz_|Iz-2I_X=6re%>%j$uS#w_1c3BR(wuM1lYV2R(~wuK%7EI7BJuvVfgb z;{andS8pguO~Jn^73l0IEFQ-nXb_=^+0~fNww&Lasll@Oa^t*?L>(OjxM=;xxgN?U z8pY&4CkPbAyu|LEvjG9|AA)xsv45#hmAjT@h%coDV90Pmqf1Ii2;i{{+F0K@mUQ}> z>|(FsfdOw}AF1^A=?wrFD03F>p_53LDPdGj6+in}Ib_6x7*-bH_^0ycwY1=_#{}bu zEU=w{%ruhe&8MuKQi!e#GJvik9M*RcM3yA5f-u?YV(`tOh>B*eWo#siycZzFXix`> z#IgPRDTww4fx^h;ZykhxQ!%!M^)(oaJON{Rwwe5%?-p}(K95!Wz=Ki3;XOFmX;lS( zLjmo9#@0B%=I7%Np6M^N?=t3k(uwush-N*ARqAiBxZMwz5NA9v&oiFtsZeHD^09K` zQ~McC1w94vGwQcT|1a!yv_A#jBRRw9@i;=;HKn)}G;7P@Sgy^}e)Id`W5?^ej9}p1 zOrMDpp~c(^F{|Kq-Fsu8E2NqSgfJ5qA3mbDDJ|5Ff=v3XX2NKgxZa+4GojT)EoES2 z<_zIrv|8cy8~qSmof<*(2yINYz1UYtIZT?jY!r*^y&gF~$>@yWBYV|Md4kPa9QTp# z0{))(%5h7sj8Hl{*cpZ%MrGoPVUnh{`mNLmTYqbalGI7%^SZE6-pHHLYxBDmN~h=R3T4fkvPM~$dY`}fBFUujwL=rFSQ z$Pwr-7B6`OHxEG{HhgueQG$}OyRji9*^fu>2Z3kf@=4^jaAi1(tmZ0gp77bA*&B9k z)6JM5%~kP9pSgqt_XU^~0zSc(gUcHmReK=^)!gX|-~pxhfEwWMPf2H2RE(#^$Y<7i z!sX<6{CVkxe7MG`zkiM)yjg}k88X)*vA85010~FKH1BaO1s-76XBdb)>~tOtx=179 zrk;EQG8|3%ucGnRZwzpIJ+x)y;)w-NkNPpVYOCrd$-vz~0~6Kk#~?L`1m-O73`P}N zJkl~Ti+wUW#Fxqi9npY=B*!}0F=~)!HQPxAM#rEW*sFr+>^)?M8}QYGLo-vsn8R%Y z8bW6;8x7l0Vr;h9uLXa>Ua<^;MmQHy+{`{Jfh^+#A=(b!q&}ln6DU9%a8`)zRVN5h z5S>B%f#N}k>GYYn&A}`6Sri>y_krHSYvmhB3Ca%*LqT&uydLnA;^E4{fU^qY0`sDE!&P~CTaicnpl`Q2dS)=hHsDZ5p(=#DJq(iig$EVf z4zVjNtAxdS6}@8t?Yxz&5A#L^hOhw1##~iMk5UXuCQM92Ilzni6+3Ks5Y>K#lPw)u zahPw)KXe(J+js*emgZ1J38g3RSJ^-`9<2B?(1~9CT#5RLzJvSM|a-b6%;qf zLm6K%&H{dC49vk84zxbZ78Ac4aH}c+VKHlOG|+9}h*89pcugFz|7PQl%f3;~!Z6uW zzmgv@MXZ`+MgYLj_)`af@tBo2lqK96xN4?>xEbOd$b;D@2}m~n;3Ed_gDTF*h>zA` zY>MKOAF%@+!+KIxT-ZR)@Vu0&PPU*=I37B+6Fbx~J`>q#5HJ*C&84E^845c*&WM%u zlE1Q0lF}D9YeIdlv-!lJrDD}m{jfq*zf%-*Gu-a}@i3HCO7pn;{144mqFmkg2wpe14MJECiOFv59QWTLc zp_i&H5d>uXwqPqrbC{bED{2#uJvB=lpbr1<+8TWZ5RI;*QRspr zR@;c#0A01mz$R&`5MrVzRK32?Qk}73oq@Gg4v_;p&@WuG$}K!+0q_N#<9Lt8Fy*QP zc{5S|6fi19U>sEy2dt+mGh1D}b&N-DMw)6?N67P`Da!J8M<;T2he_4ch|;6p?d~dz zM!1kD0{_5{PyLj^;STWdi{pduR?USa*kO<4-a8z5*Fj}Nu9pbDM<>iw+^@90O>;vh zAck}z^`rz1{V<3ux{zo*g{N0RxF6*+{lxzNajm%gqUP@}!`V?LnG`+M{JZ=*<{N+_ zx-QHr-d^%Tcw%e=(r=xg$> ze6`S`8&UA1UJ(((avDuo+C1HykNoj{9v>d*?KYP=)g@(&H*u#kWrS8HVk`k`Qoaeuf^Tce0-<6oK zTrF(!n&6uHS@Y2n zZcBqzYKlP z3DtBiV-a^c#N+fo6&}vKc7KVyWmYM*hD0fj9rG}l1fC%hh6@=?usxzlJV6=i#46~$ zs?E`8?)&DnzbBYhw@8qrgb?cua`!94!rkDNHD5aG4B}^i29ddSq{dr7G$<(rIu#Az znxx5yAk+He!0w!)ZP*YlGaxaTSJBC<{^67lZn%(Qf*uJ3J5 z2FK@7U3!kTg@8~1RZeKZBnS=X!BL6IQ@n2#fUtOo26p2AUjyJ2Xmy;ZSK8ymxiF`* zRLC8lp4!NVP|cblQHl2vN=)fBrZqFY$PPe0P=u&(u}I{i7n?hUtT8JBNj~CG@Pbgz zLgiEhE#N)<5X;6-=_wy=B)y`_JbzNDbkO|c1A4cTj#wbfLX!?nt)RL2jZeY(gt7&O zBVrAvOzLHjtl^3<^BLXYENL!+nw*32-6{3)fzy@>zZ1XR)WfG;6fkaT&>;FeDBKbI zUUy78d1B(+D^TND_*lKHm7rqeS&6EUYaw+ZFP)PG~x)4dt){ zwd+RfF0X1qc>Dk&fg{@_GUu2Np- zfp~9zT*4V)IG13wSm7m@Gh5FgjdL4s^d6VyO!%c?^B(NuFz4yL*ta2#x&)&}hNsRU zjk?aqVQd8Necy)e$r!BTw$B5lOhzP!rgI4Xh7ydLs-HeTb}|YzV|JODg_c8~_xhWC zQ9Fl?H6a{%gux0)4m9}bqt8zsCF)o!>S=XVo9kn3tXsiUtq99c$DspA5FT4*y71O- zj1j2&yf`siQ>}Z?gSy&~lK%6z(~p^QS!nBUOnYd>!QQJF?5 zrNC(KzFmP!-S;c_$Le~jUPPp=P zBPB~IrIb=iDdjSA$FqisciC*$PI4<3Fr0omjsUn2=B1RFFR)3$3$IO!Ip>@; ztf*t{=GkPn>*dLm8BJtS2Im6|-!_Ki;R*H<%LOO4Y`}7XhziQUazV-%ST3}10~tY1 zKsf^d8fwo=EGS@6XNoRUV>mfJFA&KESW~NfkrcLMUW+^3QzUr24-YdJ& ze|I}h)-1f`KGo}i^DEBxxUDj8zJ;~toIEeLZZfyWzI3bIGlPBWrVV8?4(i8;tgTXBHMx7$|Ev z-!~hK66xx8@{=`iQWy;9rv@GdyQw$gSOomMxjA%u@|~GmSaDAIpo?{oUq&Vd{`Ls9qMSEoy~M31HTvziv=m)A&wCA=oP*4d^(Jy z-3ngK11@#Xc<$N45j0wG!tre>lbCR^M5Ta95ILAv$|N*Db~RAYA&DETCo}^Ho1@*< zb57s6y&UZ}>D6db1lAXrf)E8@2A7RsT5QCXVWV!>^X90xg*8^N@*NW3!5&QH`3z+e zSG;&LlvpZ&@g3&)3bJs}-9cC?JQ?j(e+^FQ6}bteta&xh!LXAx&%f}KHBXdGvzV3v zd(?-8^on-jnik#ST01R)Bx=`z(jvWz$&9#qb}#H;ooqcQ8CNi7R^&6Rrzh&QNvo}9 zfFDk<#S0EcAc4Ym<^)lE%2fH?^MFBs89(ZnFvf2uTseV@-ze9%&3S?0t%Os1lr-At7aP%^;x&M-dG&T}+UYL^qy{&CWeH$~ix~%GmA2 zvimzr%K;d5>~>zZ@B9pRUZ-scfEw_tPZ-QTVsJ_uR0~aE1BppQ=b60HFuA!t*N4pA zIT^^hp88fG_!5O*pr_g$^Nb4~!&a=q$94eWhvVT`)mockf zy4BtFzgmfulXKVI*ZwucQdY(D|R)csM0wW8)2E2*UOX}?vO++bv#w+J?ETr z&N=6tQxAI{xeDrmDRk@GYY7LCj!hH7j7RR7x@d*9x!keEA zb5csD%O5HAAm=^End5#}{h-CzqRQ@~%9hfbyj_Ol&`Xyssq1p6y^ZqH*&|PR*>le6 za)|_$n|{vO?NuIeN1Hb+l+92a#Zxc+%1{25cxG-qsq9qVcv2_VIvAF>jhVp%Fe#a! z(s7vy?e4M4rr3hT-gtRHT8uBt2V`y|L>kT8TAkjr|sv*a3(v*;rn z!Xfy_{f~d)kB2}Z5pe0pITX^SGWTrRuu-q` z7Pv(F34KDQn)UF69Q8GujkUtKs)c}b*aQAg+^?!WS~lZ;an`TS)fec3)Urj07-$IN zgcVDYDET2x)eB3$sOY)~8+mL+Wgm&?c)r3^q8C&7yc$th;8=>I7>a9OFLc{B#Zz31 z;@WbQs41%Tt?Koi>Z1)q3au|InX+GADnCE*KCLrU4XeYiPf4QnDfR+l4$S!a4-=I( zX>(RXTHo=+ud~Qol7Lr~u!Yj*GfeVXQKH>9f{qoaY*3m`!x3g=p)|!A3xNFw7fkPY z;bqk#O-_D7DW$Yh%59X&jrtT7h^aX*v3_v!;!7??bPqdat%UKs^XocM-*=Gwg5##U zRPdwJ8l@R6?X*q8{J2o0WIt{cDo)*)Z?9BL@af38oy!iH_5nO#c(vGNa=aIv= z{|MsSK?pMD+lBO?=G%+>@a;&dCk7loc(eEE^uy_)^(~6C=8;5d#Yv zvXtnC=4lvDJe_mKMpUeHhL{+R;Nc8Z6;~)xTJE?q8_nkE?|gRNRx&1zH(^_aofV2V&ZC98kCRjZ0=nlNkk4<# zBuJl_q}D&O2|R zBvI#`887TCuNLZj^P(N=e*T9b9KA5Q$Kc{_fozre@g-o+N_BgPEe|BIle7YZG;>@xl7`Lwz|?pJGsL`V@z(&mXexp>r*V zI@ai#)EY8r-HI}Ev1NxVYEc#ECDsmLqP8fhH!rbv2*QG=I(vz=g9vI;J3Kw{xZj%2 z-gqVVOuL-L^O(7NyPKIOGk3R?l6zh<^GG5eb(ooXxx1HH48YMwH`?92o0LRShJxp9 zlvl1NsgzPqPRp|IhLnv4l(VsIlK{;DGj9%d**m+#Ih$olrf2|iH##t}0d6-;d{cg) zj}Oo(sS)kZFFZd*SdxgCB=A6x(FYuVlmNJcok_p5t(c;yEcbJm=f&hn|{QqVwl$tSD69-A$;UCZJu$(->1q zGo+z{lJ`BSMMY2j25s-6NkN->69P(|Qi@XxrBV@pV$@AU;u>`pad2%-WhhRf+gaCj zQKouYD5Hi3Ufi(6(JQH5#PFLFndB|f4J`chSS@NUwrtzB!N!a_8`z+N4Ooo%>D_Ei z5KTCp8n%3;+cvjt+qSPZzio8#kg;0>3^uym&1akYc4dOpP82nn#BF}oAyKylXQ&>m zOV=eTCITvMI4&5L2-5IuUbtFFI_Y3lMfEiC)C5!yGbg;3&}o9JIuW&4Q(EY(7pfN8 zp{a%BZ`%!(3!c=Qmt2M@;z$3g-%Bn-bh+TF=Dg%G#MTqFzT`5*8KEjF?Io8X#K58U zyyQZJ3sew6#b0v4q9unG19gHYB^nm3pu{6p*}qUdv8Fkww!MWm!XVM4M2mFy7)(-5 zfWV>3g)?88P|AP?tST6=u)vi?iCwO1fP^+(TwGbHp-QO=87)}YA_f({a6*Y)c4C}> z1xpG|pk$cAFfk-+ z2L@{fskVTL8Op00q;Na&oV&Zb-60%7l7x?(MCrv^u%Rebc3ixaOUC#Nez_xVFvsz> zK@oxlcj?%hulTBuc592Tw)iSGL)|ibwS~ou^x_(}n5z@QlR;j0%kB1-P<0(>r`$Q$ zv$|t&`tI)T?kTsufr1)nYLP{+rcg>LrIga{?jRuuA#z12rQA#@2oa!7YYsOzH#Y?& z5#^@fQjjbv%lxL|$fF9Z5cQ>0Zt>LRnWr@#C2Get+CtQ2;TL2!Wey^Q$PqT`CQ+0+ zbo1-LO90-QC^Y-Q7&%?z&ycq;?vlg}62#YqZG5#MAEXm>X^0gm%fKE}It3 z;wk0kAiV);^Z{9fjgWK{3H1-q4&oZE>m-RvkVDj)Y10WR7kv&E-6$I38V{MYN+c0= z>OJJqlCVP5$x~l(gw?o4ol*~Km-65$!a*qwLW8(Qx9O?VxG6K`+NP!^Q0NrJ@|3%_ zgE}2U$5W~0>2hyg^+^^N*Hs8Yh)lWKVZ{I{KXjm~3KD`4B3D$dFyX}jX%qnvtb%|L zfi9PU+(u{LuuK-h1-gQCA@du_MS%)zaVE%(4E%O?Y*}$}fxt%V&NbGM1Q9}ne=d~N zIt}6Qpe)%F+gLl0QfC(1lT2ct+mxR^wSjE%vxrdueT!O`GzEbEIS|l4F-aBnB%g!J zpo3x(u!AM)=irVGcpPAgOlmTEK2jZiZvDEEZR0z*X7Q^O3+3!!8z6aHNX*2qPtUR7 z7uLu5y8r%0)-qWKl4v>?E?w=|qRN;5IVkfRne;Guq_jfQCl{O@H(1y@YeCiy z9%g>}0e}!e62yy*8QxDvPO6T%ef(vG$t)}|K}<3)t5|YbsU8<9DeF@onWEUt z0wbj+1&j(mR>wliiyys$FDi~1EhcCjRP*=R(-#1ms6H>Tw5Ysut*DtZ`SRLT(e^|a zM0Q+(DDMZNg8BLlRF3>Tl zcUdHO>ZQz6w*XwC6>8_4TjcPQn~s92mm8jX1-odncAN+!cI`18tjw%%L)Q!>c+o`~ z+0YMlEOIIV2xl$VOwn}$6%~*GqRSdCtmuGas{Hv*ED>@wPb$=?H9_X7Qvfc}+1C;p zIW%Zu>Z!{#PaSCH4Ui&(nlD^cqJUxRqKheN4;Vi_97&}vQcr2#r2{saKfkDPVa_>s z6UUf{qbma9l4bx{JUsPT7pJH011?dYov>yEI#7{1B8ZKPEyOsPaf$NNdy1HXh(d;I z1|}|S3A4o)U|x_sIXYhgAcji|KfTVpR>Xu5KYa&@Yx5#w#j1ueTx@}ZOrwScsYB+A z9J=vy39c(5e!AC~SmEaqJ^b_;;LjfAfbhmW36#jOuCcGj8GR13+j%88#JORl(UQ-Z-@ zFj$>IaTHgqsx&%3O!&eQf`l1AN|*wYVMUfQLTk8WSyLOM&R%jcqJ&x(BWUoT8WT-F zgZOH4rHK{^J!8PhWi>qk!@^aaS&g5)!~#N1&eXF@nIv1v?+Kgm>^N0234>?fA@*pa zq!4?D1ea%*JA;C&3;g8fm`Xec!6jI%^KIMwZ(O#H zn8aI%9SDwBF-dJ9b{sKBOp;`VD66|vsv@n+5oyzLXb`B5BPOW=dKGEYnUt!7B9I%; z@f%jQ*54M!d~=Z7b}HN`8qDXz#451rnR}(Uw)rOR6xV8;BlYY#QkzeKOWk(0v{4&H zeRIzPmo{!U%g1WHP`7G@I6_uUfvls1Cxdotr)}HRmcVuO>^RtU@F=&QfyjE6Q4wLq z8#hF9jbjANfBq3d5D5U8dCiN$@Fd%3i_BX%q@8oGL-B+4PSo+6IJR?OnSSFTfe-{B z2dM0`P{{qc8Y+rw$`!7ys;nd<Z*l~R>Y{)cVyCXMa)^rj|w}F6*+N4;_>5j2AAZvNJSkk4koHs_8ApZx~np2 znw08#4I0@PN}$rDRA=mxz3632u0*}Wy7DBx#QMRCm#tH=MMc%p9yRsGW9{=fGdF*r zd+j+DC~{!Fk9#~fo(A+3<&DGd~8p0uoJcCM0A$NjqMBPqoe2~yTrkpc!K zO6#1}M;8#$)q@OP{J?|+N-Tz_rfQwd+-tS3v2HO}nHuWIRboo8we{;=SGBH$!4 zd?lEG&0D0&T>g)HJRgUXYgF9egoP^!He@>3l0*+mR8hhUPgsa`uHq`0L;{&4|EcSA zufZ}bW2-H$-Ze6bfB9vyr)|PUK)yaRLG^qzQsjNaA)bHEqmlYQp!;}tgG4|hvQ3*d zWxS7fIM)7i4$S`%$09$3y`_&uzQrTc$31p$Y|-;+2YHV z7YtrihycY5Y;0(O2O2;uT-*J+`*V-kim~*t1!7?VKcSC%9C|K6kHU%Y-grY|#X2V=P?7Mm{0?2KxA11|-sYumd@eI0AWLhvSh2d%#2*kTX4y*ux=^ z%R(4`hog}9!qIyGi9SC)E*j)H&zmY>~ytjR8>Wwe`GG<#5oskVKu>(sz~;+yIbz=?$XtgUa{Dm zUeEqBRo8jj=A3hKKIh~(j^pN>lKTLZjD+dsAn5wexlqKa>qI!}yY7oy?>dL=?uznx zq;Ztg)28%&5$F@)s;8dx%I&b5uh8yfDV^DCJW==CBp*$sQRk)fPD!qJGubG~?hKv`qTly@$48tO zA@vdG03e%ln~2mx^GE$rG;@BH(9!@X3&6rjUSXyIo(x)_Ze-hhhd~$2%xuBW4UKG@ z_vS}K@n>jcgr=3;T)A?sy;iFYb*+6x=6OXkPi_4~P(_$cUHbSv6^D3=-%u@!I!X@m zq-RxSmx_ma#g#AmxbWl2wb^ym(QD2|MQj3(vkHg!dg(b@)b){OIY}bvAyr);w-R2; z-EZ?CkDD`ipX*)G${a&$qkVQ!Zy9`Zl7~%g6x7o;eX;TC(kl8n6ceX3qCTsUB;yEg zq<=#OmqxbYD6gxX`jS~jko@N32u$3N&t}{^G$-AB_;k7Ahi7&e8p%Yu{i%a$sUv0R zACV(SWYUzrO+Vv4QD>Gscae~avT9krS)28g^?hRqHlq0uH;boY@H{{<=%TWdK(*IP zzrm!g%l7I%{=t($JcumRmQ3O)E!@?FN~^zQlGF$^u#lmgA#M70=_S|9E;CzYI;)G7 z7OvVW-%I6NPAwFDDbmTZ(xyXg{KU0!p>%$r=$9wAhjF?~D!;#9SRO>cCU#g~QZHY= zw=7u()UgnMeVN*EHlq1xm);_6{n=`-j8ql*VEPDvAKii^@2IxW^v$EPh_o^t3X7ln zL`4mQgcFpXzfs-vnEd{p)J}?Rv9d=+$jGBw3oRknNOEoN5I?RKYsI);er}j>zew#7 z^P8A6eT*h^rk9E1KF$qg4OWolh&W;ui+~~(S(NQa3VZ4+y>~#^q7M4!UwDL(Fcm02 zBwU;RiATItD)vDx6%Lh5D%#O=h1e!Q=%c0Dnnk=BK1HhTzfbf+mU`%-L;ak3cUQ|$bNmZwpNF(h6k(~l z4g~BFg1|NEAN8gVWJSI4jyjL4DkL2{W}UB)7NVXIof+=!Cq!q4Oy)h|$n-t# zwGYlc|9}I-(I1?-1baKeKa-6?UgkTxC#(%|jmH7lh{vh_0McK7JR#?>9-w>v0qD&j zpsYjxEj&VBCUy&JgYz#O+01jkqhX=Pi8^>f`8%P^UniUq;vA_Gi_FwZt(RD1y1X~P z8p^-X!Cs9z9b%Bj_oezvFjkQ8f(l%u0Hp{eI#fatU`Tbz!Al5~s0-<%9^DnSf-3E@ ztqz?Ci6hNMQ_fNOX#d;`hqU*3BF%^AG5^2=V_(Sbg&YfIFU^$HQFcA0;*ourxYUUq zks?Xhh}*=;^#cWm3Mt4KEdM+9M<2~*S+lHJmUDG!X`$Z^LXbX!3E?Pp?`HBS2*+Sv zR9aS3lM;=JKRk!|D6_hSc=QgaEGec*j5bz7fMEfO(gI3Qf)*HIT+Ja5;#$6FY2QX@Q?-94oteD$WT&%6!Qaz3id?xjiyYM zTb^L~k)s#}egR7i*UKYbVu_Ke8bjriUSf&y+S0Ox1qSwD_jJNt0tLoOY09q1Qe4}p zC}z$<$D{g4N9?*)@yZ!K_)?wNiWExDlQaB)Q*N(sJq_Rv}mg4ha|5WNnXjUMw-p6>{J$8e0NkINu{YN-?H16s>R4HL03gZ z(sf;HOC*UTk-j&~K$Tcxn*6w1%f&_#ONv&}8>CRzr4c^ooZa0$yStg^oU>;PnUcCLz2}M_pq<;4DlwS%#rwc1 z0mQ0cO}*IWofiwGtifWSkM@8`{ORo-rBxjV?yl_ncGrB7?d}Z`3wWGHbW$0LV_A{| zF^YnaA%+-23?Tp*V+f5=Z3b)FvCxfPv?>`3X6Z{zdJ_yHes3K&X6baE_ei(CII#oM z+Q~i-mnC+Q=xJA{d9ZxGvZlwvk6wwZ?&1YB(ZeDs;_eX$X1Fi&r5z`<1y%F zIK7Wbc%NAH>0Cl5=^~O@p!e))70MZSACHv*a(6&KpV_GK1}akzdH!(%*OB{JZoHsx zzWff65=&lH7gan2Byi!_0;F9u469WAVWWJYe_xCht&&bYrCCJ(x*_TMW4cBMOtJIX zz}UZ)u$r-S=1fg%9Q4;pGb8h|V4lm)IM=~6&Mg#dBbEX>m5r=yqVDrbkA{Vu4=d}@ zA4?g75snZ_z>sG-Rl|B%QKrVs&{d55E7o0?Tdl0z6nhss$Ls6)JB-wSShp0ya3^Tl+vnOtu4+;1bs4 z1s;gnCO|TYz=dUkiq(-`l@f$8wi^=5#L3Eki`9OUeAG#6oYAhuzgbw>^(1J-T#*ha zIAj*w0h&Mk3`g}pp_|mrOHQ({g-czjilT+3SJIk;;~*D@sYG$>K&1~=>R0V_hORk^^qHtzcL5drBbnaoCE8n5u;-kuikiGmjbsn)> z*)rB+5;F~kFX6W#iLaHY(%4#I)xf@%cUX1*uou(<0cbyJ2g=g5^X9e69zgH+1PjS? zKox1`*9*`Et4RROCI4GUBK$!osKTk~vB|6;CNXnB55%=e^(&)CUZHp}A%ppQ)Ktra z)#H-am)jtw=RyF;QqUiSzrB*NgN-yp;bT=tb!fm2?FTDL4SD@Lg5G*RLK5q}}{;!J*u!!U8ZU#| zMGrgNIymye*}YI`kBxM4D~Q<#Y5M8-)^iNLV>Uo*A41v1s|&-JPZb2U$){ywqFhT6FPvHdN|e4*H~(6{ zK3uBBT$rYc7G2HTE=3b3LNtDsB*m|0V_X?xlvP`oEOXft`LwH+oYDGI+IJ<3(x~s&1?3GDd-ZBTdG>huqGtvos-Rqg%>ilebuK!nee_PWqS<=!qB;-T7O%xjNsgyfTXQ}fdz^^9w6~Y_5dSm9Za~I zyq=)9wlpp>YnxTWv8TWeR>orBPVxE{fj-_Tm8!wyYM=(wi9hy2* zE=^6Y$FIB-DWH^?M_LN=Mgw{KJ1Y_XX;v&*Ew^|sl`KpLWJhkmX~1~#xhRd(V@~$WfV8() zSKG-m4bVs+0tlZEtSEehc*%n6Dxxe`9nfZpqlDDxAkXmKJMp0Wa}km=iWJR@ zgRWB%>t%l0!WngVAOzzkOLD0G-Pga#cQw!bYPg*uEMGse-GUtOr-PG<>VvRr_KuO&Z7-fudTMouXrv|e{_f`} ziMF+6c9zm_(sxA|5AA@esiNr+LOlzQwBNI8=vlRH12gu+hT%=nK{z@6yw1HHWcBhJ z6pM|t3G?h&%XyXFRx)ch5~aN%Ccih2SnvxW84QuhlcpFV z?!SLc94e|#qZXG0bOfDp7tp5so^&0$OuUSX0jdgaQm^A%Qa+aS9*;y3BxK9R zGkv`RK!pU2IBuKhZEQqO2D=g6R7n_wvnb#2FIY0kD0@4K%8zw?<}b(#S#=`gP~NQQ zsP{nQ7)<)|h9!UeYz@Y_i}eyQ^5Ne#!(-1@s9w=P?kHDgdQc?7=1z-ZFsI4xM(R696O z4G9kImWm#yl>`$~y7cMlsJhpV0PJeDl@wSUQxM2Gd!-GZ_ga+wk&of&IsYGA)9Jkb=Bb&PUcAlTxoFAjC} z_$R`(S!c}Jn4e2=61n{g5#%t&nE_GS-l0Z@EcWZA9jEDx_WZ6pL&BJ~7GrukmdbGZ9y7t0#XA3-yx|TIkaHGpI%w;7KL9H@_O^{td z3|-kcenXDwJaewcYL+>vC7~u6<%RDU3A`#9Hw0wy!@O_TYZLh(d^yY%iy)4MER{-U zKEaw`WRD27J+9DMAFjt)yy$_^K%)d#ROxhc;XdLF5b191}ofwK;PDr$I6?8U+ zK6?G4j~7BnxFHthvqgy@D&++!?~>GOMf&hu5Wv+W*To1tl?ZXM$+q_4oRm?L!7^`9 zCvK{P-uG2um*AFngSd1r#b2`USqaxXH>ltps?1m;hB$J(m#kK<*w915VjZeCJ_IGY zQh$Z-?_6)U9Ac3PZ?hd^0xmZ7-6$<+XuEKLWKdKWlzbXpaSv`SSnYYdJ?cOc37M~a z7jTODle^dDSQUd-p@@_mv;8WO<3xgz>Vr%zK~#1b*d(EdFD^a4bOcoBiOBvMLx$I& z>K6+YEFcsw7Eh_&?i~~2BMX=HPjCoVCa-MQnDv91|JLxGP&I)9)r`%|WkI*h*Fr-@ zgbqZgIR0vNKS79$7-tnKZ{$e(IV`{=im;a0*c$?TQ9+Ust4Zc&5o*k8vg&~dL}NcB zo)_9=T5|~Y#5v&jlRW;1Sxxg&VolD{q!*;6EDF;^jEz|2X&B9whW<2dkAK) z-$s00I?E3*EvY?}t_X3bb2sXa5_6U~@kfDM0DgYV$Rm>rV5{!w$O%l)oeg0-uf>a) zJ`_BTA?8*8g-XOZt}TCV82tqXQ;Vvj!e!SV+r60dED9BuK# zIZ0T9G~RK7>^tj1u%^XJQq(%EDQWaBfD4aHOls8LkRe;d1*bO<$>}e6tsy&ncIq{E z{{7?7jFc~fQYX+}@WKoEzf6PYLWhTBk`}>EC`{B#z~N&G5uy{IsIRn3JIu&CWQP_* zx+OnkL9%yfF}Hh$LPa9#KW!Tq1iO0aUr>t~6x0VhUztASgRsuLP24s*pZgY0u$M4TH z$WondeV@2;DJc)d!`P#JGjln$o*1+TS3lHjm@taM8uc!DmIsbV*6RK(bhitoSg>1y$a@khf6_!yK?Z$+8f2FSq=>R9s%-v8; zgev0HjfoE5x7$Pzf<1OqBqaVNmRPt42oI{Zz8>iPP%Tkl+`g%UZn< zj64q4hR;IXsGRd8fPv#nx_NBb^nvZ=a0|~KB^9&FxQKk^&kyqGzrF_!PED_Cnp z{qe-pUYgc6id&`IU=N<;UkQU@e4b`F$DB~8F-vO2w*vd#YMXPo&CbHynXu!QCuU{< zXHGf|qO>TxJqS%htgLo}+vf)P--w*vRyf-h|H=DITEI?2ib~J%FE%1-&Fhh}OwS1+ z{hUA6L_xYe_|@-IWKoM)qK%=VwFArE!c4mauab@50%Np;D*OV!TXEd(XEW|5b6vn{ zisbQfdwCo5v>M3DcbrzO`VMWkag|yQbd=PiP}{t@r>}lA8b<^?b+U|rOidrJLy;vI zm>dE`s-J}*t^*fvK%2JutJJ_}d(H^#%=Y3Z^>gzbamKyM11ow2 z+t>guS9(G)+T5V0?EiQozAjAuh_4*(#Y5tIY4Y)fZi>NP3-@XDj3W(|jwbZLH za`KEsq7U|$?)ad3a!SOUqpMg7-1ys_vsEYA!%)9FihFwFsz~FcFmZ5#_Z7^F^`Rko zx4Hcpp@Jo!nK!4CmFwU!b8r>THl4nVLLZWZ9jgfi!A<}Uvm*d;vlIH6vuxk|HYto6*ci-axZRfdi&tcJz;eyXVI7lxabxBv6- zPp#!4(4^H%njteAX2%fYpDqMbjxX*j6h9^71FbCB2w^V~8bU0esY|C;>v!&URHC_j zr%}e5=_`6`HXhJ04><3slQGpGIaPaX2sLI+m-4h7f<0X0R4iXv4?}I+pOM!K(9y&t z0^}L}U@0?HuGZVgSZ9gfVG1U~ac?viW=IWmo-(Zp#qcS5rFTn|GG)GLChwE%V^XY> zbgwwIg!HTCp+ZgbKvo8q*Wh|yXp-H@!53Cby^55bn@w2G%ZaFVoP*DqK>}Y-Vx|>- zLV@!5$&*Dn3@7h=e%4Oibi2y**|Hp_q-3aQ<4QF)%2<%uF-{$G@U6mlwYKxRJoD}+NietR=TO1JfSz?8fDSfZ6xANX`!j44HR=KS&r{O1wAR_ zMu#OQHfP6~8v%hX8d1{cd5c~7->lsjZCV{xN2 ziXrs4Wz+UE!;w#4KH-vQ(#oj6ilWag!w_}?h256y$5K#gHt0Rp0VJNOSmGu|pn6Ry zbmL+pV_FsZ^RKYr|KCtX^%Slu7@lX?G%8X+wqZ4Teoe^{Is^I}&JYVE#8q^TZv>|k zx0jmY=NkP4lU3wk2v4`T-$M}|*tse7kH=khxcY+o{m$4PZOnXZ(uRv0Fw4KC6kxU~ zI`4(Zq;v7elWHjCb_W7J!h?zec18h1g^(RJ4BD_-% zLeNqmkf-r>^jP*@#@o@R_#PNKZ`RnAguuPL(BV^2Pg$*cD$nq`6e+pKOn*36FCS?X zcA>&Q`y2oSy=FRjP;j_w)l`QoX5W(~!R-Dw4E|Ma?@>bAZBCI5 zcLP5r5*7kHjSOo6@x4u%+=aNu%WGt~`R560x9Ra+PiV_HFHQSjTpgDq2-Sjo) zAA!`URK>M zGm5)iYbVZ9^$gp#(SGwIA8!UayTN_^+TQU`gzdMPx0B4(?Wv z`VJUoKJPbfh2=zMCH8$j!R4d@dw&uBMtx)Cq%Ti?G!7%~cz)N{w z+mzZ6?a1uvfZ$pD7&D7M_5A-1>l^$e7TAUC^-p*|xdI9*m@E<622R<5Y4a>8sk-Sr z8;m5-AtSUPfMQ7a(0u`HT&gHz!3MMe5ZjooNbLk}ErF<_73xG%)gUsU^tgJes;(IC z_KX`LZd=bLEmGVj!CR6Br9VPL=*E;_8(2#w&f+#prIInvua_Gs;;FVIMBzu(uwvjb zOPMk~YWvxd38xM%`8R}YiiFz6AJ$s@L04hfAbTh?qYtfWkv+S@WZIK;5gSV(^O7V$ z-C>jol8;;@k-2X~Q_3kJ-&yVQ0>Yg;RH#LL6IfwI@F`3rlq|N0a@ywS+Bn!##`{CO zlc~3j#I0l*3K@Sr8W>$OA)%-iNLa)(D9ZRb?cG<5jQE*gq2)sZCWg(hC){Cb++YVG zf+x2CfsQv!aDQ2dVVQ0^o4JH`J@R4%CX@#Z8xolKu_w=nj8!L>{fEha(+5d4DPUYa zwj`t=?@%{>#cnE?X`PCs@p3G~w6RtgIlYyst+QanA!-7a&oo^8rHJQU_+nZEX#%f?_`l z?T|L2^1E2FK+clVOR*4ot1=7#U2Ugo(D(*S86|P7>HNM|rVuw%rWmV4NuD())BC}7 zWJGrUp3Y%726;>a=sIEJkAX8+Ga&e+T|ucOaY*yN6}WH!b#Z?n(FhLogCC&GI3Sm% z{iR@~b^qQ3V5|pARKsK4oxTas+fZM4g7jM}-R=lcGeSmWqCk$M6SB+Lg>I2kRSPM! z#hi8#J6X8VF4aRh1up_64!}oIvrsbPLtx^_X;=qoxQB8Y5W~(8A465XfV?R(>$ra_ z(4~s(fCLgv$}=%ANi=?-%bX)I0B|Ws7JkTy0DcTXxgwOKf)Gm`rc|##5s>{*c*+Qr zB2iv0F1wO(SjKFJ6M(yT;!#T8n)G0fZ`O#Y^k5`-Q~q!hFwc9SowvCgh9+TyYu*ct zXdT^^jx2Yw!LXcIdy@Pi&SSzBHs~9;P}!nMX2ig9JAb$<>6+ns80*>Pwxgnyp(c%$ zJ4ycBaj=uXNhPo{Z(kh0d7dgwS`28OB6UP!->eOx85M|FKGzP^?<_L2L3?P(0m`Mg@(!fW#D=fBaNYn>w+CqFL=F*% zDn>#;B=_rX1QA%)6m1SD&xs@YG?qabtp{Nc?q-8UHcokpK>^W^B~INf?}#Csv& zp3|I;9M?c_hD|s$A6@RFD=K@;TWvn8bF~&K!&A8>8uP;4xxGWg)L{H+y~j|hBYwYx zeJ-nawpXHjq0-;U=4g*SucON3}Zj+?+X=goE6sf z#U(}U^}`+$&D3c8!y*=wZaQAtH_dum+_ass4TNvQ=-hQL;F@oSFDwT zGq^45cfB$tgUMmJ$&={GxO$j(hYQ?uB>>%?$T>3jFU$)__KdU=qgjdKUnIP zsR5wQxobP>xD>LahlOt?v4(jQdzgc|(^w4Nx=Y(IW!}};f7-z@bZn~S;H(bXW90z_ z&aJ)46N=ifJf-PuYeIs_@;P+DCaLN`dfm5o_P8P#jk$9QLhT0C=4m)T7I>LioKItf zjuyh4ZMjn1VmP@485`3m{+;}6oVsr@Ek#uK$#D~!q)hwr8C^kyF^~Ce+84BzuGis(1b>*PSU?HNLc{Nl?`g)Rt*Q5XI9kgXG z?MHLxp1vy(WI(|hYcp09T4!+J!W(ZaSJe1R$gdD_n0-;0q#}c7Yq4#1SM*`1ksngn zFWNqw%K^D2>KnHY5w!BXYF?GtsVsR70*)`sgdI;otYt$6WC%|(a3zt;jaK(rJNI2V z$WpK4e!8-YX_Pfp$_44ht-=Z3rYtr$s)C;rNv4kxfsq`)2}dJO{$2`7-Ljq92vb^+ z@w2&6{->5N^0eFy6?V6`Pk-oylem%4`)}O^zdWt)m$ii9nZs~sf9t~)K#KPZ#C7tN zp8X51!PkS*)^B%#IqlcRQTBP%82>SJV?quSvu(vWTdAO#x zuU#C3j^&3N?rojOJ``UN_zGGc;P3J9gE)^p4iD&%^~{bSr#*c^aY57U3%?ceLCxK! zJ)Cj8OTx(j8B9&#wD_;w0RO7yBoh5 zpmM5DI5$EQ{e9n1oE7BLuRi+s+eIhI$!Vw?psgA&eT!j5j&NG?l`la*)cjZFrc

    b;ui{Vo6m=hq$00l)E2tWe@pn(8zpaL`a4b0$Wzy<^0VOz2RsU5z=1;20CqU5yE~#pL(9r4 zi{&*Bf?RcnWC20Cm_$y_2Ni7c!gy7kH7&c8Yq_frjI2JJMDOA!>7B(U(U)Vz% zmFlE;VIQ%r3A?Z<cVq9cRLlc{+pWUvY6?!rI_;C9EC0K{Mp|jPxXIavn0Y)byb?NZ5Bv zQ_`1o49yW%$$j@ZLT3Do5tg{q#@`v#q)ZX|lBq_$6Jg(9smZk7N)KV(@|-z&Ug}H; z+edXg>!D#}K`=D!K-l^__soZUbnp*0yRcy$gMF}Nm?07ypYra(Vhu%PWHkT})~=kY zA}Pk)yVzrL1{!iHqcnA~etKwOOrxEZxmfou$NmMKzj3hyiHniUa_)+^*ii}+?m~*N zAKGHcrMnd@!@a81Vv!#!>nU@PIa;hEU7I?O@uW73eQaYxN^v{#vREC&i+yp$VvUGl z9%x2%V8LRonM{&?#p|R@Er;^u*wUV%dBYooRhy zkEkh@>h6g(gvc50lTE64C)Np~k5UdNwtT@NNgki9Y+`eqJf@Vzq^>owhROe1(SLF4 zOe`VEp>guj4iKS#>$19YrLnE<8z8sSsb3>Dm*f!Q&#`rPP$49KInWd?7Q_j&5 z%QOg!QNc#6zWLWSX2cR=Z7szwr?`kUL#x8XiXs+E(UfsBD@-L3t4-dhd0(SPLB!sn zA7X!y;V1ta9&Ly{T}kduS+yxwh@~#n#Cetk?+CGu<1YK`2CL^8o->C%r;irAQ{%oIIV@2^P~Er?lXBv)=k#ppJ&NqWVUdhS znWF!OEtXUi4HcQnyJ5-e$tL7UkK4Cl$tgZGke&_8RL91?wVwPM_SxI>Xg)d5YFN&H z&qB@^E}DkrH(9vSxXDs9>=hnD{th>tI>Xu+rQXYVGF)zk&2nl=@#C2sUWOfon1|(? z4BKC3l&>~*R4!IKTUk?aD6#WAc47IN&Jl%j+s<2HAimxOISeoC)MSR4h(p=S}Q*%9_j zm)9)gL5?9t*eje_^79n5FTy$%LWSQDVVTQ+l7T~5H9Ip!{ex9P*t)^p{DXq9ccx3y zj|Re;zK$g2KiDkCkRt}s)YE7m>=`~r>mY~5@g8g`U;GeqB_B-zc(B)|kmGZshv6>v zo0vCOe7!PVY#x$-I#J{%Cl^aic%<4e#&AC_Hp?VQKE8wWx7adFTiLnOo3_PPkt7GP zcr8}Fj10o!v{*xAf70kUt>&}XV$f*m6oaCZEeD_Vg(^=c~$9O%wHZ+RkvaOe`HX_9qq5{S+p) z82OF<0*^|_6;#2$3`o#|Kfw%0Koqe#&S!C>Qy%q-Hh_Rc{O3`#DuvJFqygA%`*e-vN5N>QfY~P?9 zMh{EpG^sp=2Ju0ehb2s>*SkEQo_N@ygPf8|ql{7v@34e0EsN2* zbH&dNd&r}lV|iAG)$TWxmc;0=RLUPGq|y9!Y7T44806fSL=HQi&krw!w9`%;jCUFL zeE4u!({tna={IcNFh;tV(>a>thW)|EyvOKl<3Cz}fHv&e4IgCCnZcVN1Hb_YJPKmK z0Tv*D4ULs)MxPkdm5hKju(1_GG58sr7-$U;poUfMQObS6bI8mmK$1a`0RqynSRM_* zQ)te+mN6J001eA!_~0XbbxKcfBj61C!+2JaqNDcjX4rGggbH$%_7g9|mMNHauBaiy z8aK5s`mSb)W(-Tdc=%tY!6(RK*ujr|h#{F_*z(FT4jmh2NG2HehvTq1_=FX^d|}JT ztas`xhLoNcmiX8xG{9kQn(L07q(Q9RCDJr!8W#q)nkTxF`uS|?L*WD zheKFC=W|3QGnR{8Ex{g(Xz*s>?vD!dlh1J8s0V_o2cX z*PW3QwvYc%I(e3`Ioe#`uF4!6tb{d8kdC((<7hCG zu%$_w?2Y$(B@&h-ahD@38D;WLIme8!c5vMHC~Za9CrzfI!$`^TO7H?9AOQ*xK!h!G znffa)A(#z<99>b*}HmC-=J8{K{%#GRHW_G#5)< z-}r>AoKI)Dffu;gGlr@d!fFcN`xbjwrTG(?*ka9KJA<;%6*GmrsKsKp6D4hMaJwB^ zEV1e_1ubuk`=7;n>0?+cwPmqo7^cq3VPdhbe&>)^9X7-n7E8|X;RWd~)mUG#XUIfU zOyOgv(-mu@8wn?wqbiQA*f+M;EOM#EC@a>Sb}453acNz}R+*g@(HLm(LKWMYYWRhU zlcD0N*eCT@P8hQsQc$st+%msB24(iBSw9VYAK@=t~rrC2<)`mQ@C?fIO* zksja$DVErd@DzL+RvbsM_5bj-PtnBU zK=vf06qz5#yvRg3>;coB)^Q%6n~XQBQ=6?g%O^x_dL@WK&j&^)KcYgh5NjIW6crv*m#Ku+gy>32laTX*7k^kDm%|%Pnt|%W{IG-vk%;{xVQR7| zc+rO?m`vn}oN^=k6AE7NVTmDw50PdPCs2(%~+hm~~h~Z%)2Bc7)B54(oRc%M`CNOdTQ!FXpgSVm!Eq!Dbs3|X2PquZOHDCn8ViIMZ?La>Gc|Ae2VS^gjmd4GAq2IR4idqOHf-PL z6OzWfvS}`N@PZBNXRub`SI47zYgjGC{4|wQ)Uae;Po-h0h&l9Ge>4X#(6D!kIvP2~ zu$_-FcyWd`q-}Vc8{Ve!oWKh+EHj!Rm6=4zaZ?g_QHCW)EHAHB4PKC8YnV?PM!vlH zIce}>4EvVZRKUbf=vHyy(K}@oqcgj?Pb&3+rjhNyZ@M#TNF7l0$aa zfl8V)@C7flu*Azs^I_~XbDxF9GU}y1(O_Y%(GVthY)q%}3g?VdeYpFI7QC>+8YfzO z(BV^sEqF(oy;7;L_lH|~kdxoIoWk0n8MUe#X|NP2tf|weI?fqHhVH3{7BliFL1EcY zGBGDgJXOaPym-QL6B+FsrH>h95Fu5QRRd|tv9Y>ETie4aLNuR`F%ppY*sZW4(gf)M9 z_z5!PDA$oyh7sQ+Lo%}{tjge5shRgHXlQ+kH5qj)HJ58^^t z?=kF)o+`(!IS6YvwB!?$41{eS?up#*WLC-#)(7>Y^|u>gb3Rx@9;5Qu>A@0@_+tXM1MhvU&OtJrj^ z);~oRd;dp`9luDS!KqktHT~lwN4aTKEIHz(#EJZ9y;JN}7a@6Zk#S~c1eLu?RpV@9#bhucqoF(-W}iY3R6rp#*|HF=@fyY%y8q$VMW2Z}9H zm4wEQAieOINe(wwC)TmnfLC6x@?Z?^4 zQ8G_#RANm_pV5^ZbC{75OZ>_d>+!mC<*E`KU=n-hJl_=3OQnJaUu5Vc&n*9A4rN4 zV$aYs$4*O0Gm3-Q>cb?YdEG{}2x1wlsLRSp8sb3gpW?(b3FE1o0b+A>l4IzOmh1e( zlBp}JtVSM(lpod$kC8;aJWUDd!!nVRw!0gK_QZ!hNSOG^@eK$72a4@s@z@_j8ddBm z>jX$Bn1KZFZ~#3VAP;M8zF0OB;$iy;ao~7zii+0(?yyH%e;7i|6Ce?}UrW`KefpkM|xFsmAnCmetc+on0v40Scf2*==^UjxMf2UvrS zL0@O?=3Ed17nB;dloh|Tk7C}90vVtn4PES1tDn_40g{g40BBgmaz2Q$cVo_#8MMF! zjbS*z8J76T()`*qhCQDd_KBe%#vC?obm@fylz|F)G$!knyKn$9teML4Lhm((y~2GA z?+>bS;u{VihP8Y;ql4!JNHSm(kf06_hBcVxzl?GhGy%g78e9gu793h?MBr(QQd}$^K7*7tqy5X= zqCAiQTkO$cc*g!u!RJ8&YO&^+q1laM_#`pPh6K=J`}{aMMv}4@N=-uoX0bYsd6{?h zHvM6S1ju5E4nK6-2#LjBxk4Rg7;{J*7CXLraF#O07!vS`9pt?1-bwmF*7Ah}xME3n zw$ambd;?7@HkHX$->Y%rBU!P?s)pzEjoMGGVyU|<0jk(Cyp!D=p+kn_1W1o$6Of7} znRHC^sBwq+Nk{-Hx{L7X!iWT%f_~g7ZH2Y(1pORn!M^|l0cbz~I1qpaOdz#xg;=@=Dopxfa#wnL9 z9pjvnoY;ehdi?PrKYk?vn^|o*OPjtnm*TZ$9juBl5ptdJjwL+Z1{kW1s6`%ghitO62&Q$-|Oyw8qgeRW*26 z#_r>8P8&X1%pJD1kfK&yisuzOtUIG2SzpLk6W3wMhY@Qsj2Dll!@du8JV!hSB0BW> zghl1BrK%(jOX|^noGjbsE;~30fW_>}DF#u*1|{Ifo4F(t>B$J5RoG z+DA+hG{Yv>k8>l;WritbSf?^AZI3sKmO_R#&d5Z@Kb>)|jA6;!De*8VLRLi#i&%%X zE8X0rUKrL%DXFB7AM3*d!>ai=lc_WEc)2g^ICa``lq1$v=Y<_g4*!f(rn$UzVaFRh zHiQ(VFE=hMqrVrzUs#fjZDHwDQwNpOM^sG<`+jX&)lC*Q>4y@zaq7ZxSlAjjzI&8W zGUu+a=6qtFJeHW}$_i`btj7EpRfYBAJkZanImQnaR-4JdE90lI$4n`sGDe;y7AY(j z<|gNe6_YYi*!tmzhmED#8461WeYmkPf`3Y$u=&+hjGn6Jq!acH3pvJ!`kazY*n#7a z8X;Ze6jMytPc(cZ(c6vO685i&9;`d(@J$KpL`Yj2E0TmQ#>ufievY$=AYohokR(!2 z@60&Dnz|1@b;k&s|CmHtk3sVXOiL)g;Fs&9_Nl)n&` zkB=K+La@;_2wSJ9nX$XePz1u><<~LmL1&o#V7uV`A@lO`r{RM=lj+HwYMK-$J=j4! zOj=@so?~E_G%yj+m9k z#hy25-yr92u~$aAy{XY@D2XjrHStL)vB4L$*i*xZNQt#*p~cn_RQozYzL>@S_|9iP zS*#fusy#}L8}%j@t0dpwFtw34Y6OcV9OmTcat;j+vL}4;iXBDvq>V*Nr4m~WNvy^<{i8ZB1b)X`t%cdE~AOH{0Kmc+JUvy%X?~kGx@~4c% zMSQ`DH6niK48yw<`c;nq>)&6J}syD0}@-!&svHWdc>ZA#D*6!D>qa} ztQ+xir;T+Z)=A0F4^!HpQenj66&#Ogr%i+m3kdPWBG#NahZH0_MVKRPBsYdr9=_p= zM4*wWDP|dDWY~57Q{!L--hxL#3{E8=0Wu(g9lk)sz8m+wkwSm`@FA8ok5(PyeAjmx zVgPeMjKBHpkaHAAp)U%trpFj=hK&$=`DdUi;S=*sgV=BPN`X2f@1 zl&UYRQDUytFnt1~7SJFDh2sk^?5RpKhZwakEGaiiL(JT{nxcdFf(z@|W{49z)kFlh zuujg%8)UTLaWO6I5mWjp&XR?#QTTYwF@~Sy!NQ(0svLH_!ZM+A4kHp{g*`O=cf?#3 zR!t65a%qevKYu}mr7u=(Y8YZOZ>F%um_x_XOG#nPIcj)lZUEwoC@dOcSihJQ6m~qR zK2g$XC)H2bFMPyz*M~~pxj%g2gspV1ZsLi_=%oqk=Z#4;W;c3_X2N1CpG4v-bILL1 zhcA|}=gYBy#mC*19)0*i3F}Ty|C=knNWzvE(@Ny3G(m2{gfEb=W+0hED@SC=9bx;< zIgc{cyHU^x%XEemqXo?#z9_=harY|IMUP=_0100ZVaMU@N*zXq)$|7MEg&R_FNUy2 zuEZw&vaU3RuzYCa3@)x@3SR_a|49yWRP_L1d-&@aWt5eY-#^&0y5mj^AAii@gY{G6 z+jJ@SMGsc-$T89}3jG;h@L;jql(Zl-o|B_*u!}v2-c7s?8N{YE4+zl3THQG3Pf z_gt(h>2glX2`-k)kglVLg@9Y^DW();!*9=_bOI!TKR|#j*34m}Bje{xZPEt_sKr{6 z?mOkHq1LECKmaY)a1>Xc7Cxu-cz}ReZ2d4q`KIsETNcZS2WqE|Dotd(inXCN zt_*UNv>jD!n<_Mg(9u-vk?P7T^+lXfQL%%RESfw_PqA7@qzl`J6?;=Go{@z#moY8X zQY@m~xHRm3awI7h%OM+h!zr1RQEZkz%p#P`XD&stql|cFwwmO&48``9v%-Y#`LPic zt3S?@9H*U~3O})4_}iSJDWm+HC)S4;Zh#?UJp42 z1qleK#J)BuzcC_&i4YJ#i7mzDpT@C1^o1v}=g<&y+#G_Yh$27|$R^X(v>B#wJqlvL z0Vg0J5~~IoO`F6#ZAv>p03?k%D zR!KQPKqK}X?IikjjF=mGfCd6U0|YR_)nr*a9v>zF1T12cyfX=k{-^|tBtrt?L9uWw z7z#vTP@vL$03#Iu000OY7)HV{jAU7$D|-|G16wE-DjXsj925==3=j$u3JeMe3I>D0 z03ZMW27>}&Fen&U8ARGXql3SH2jLCDy<M7j|0(EXwlf$8OhJIYaFg4YUJ^UHv89~J z7A;R0hRX+COD6QG!8tZ@G-+EP_ham@qV8%lao$8bX7KSSUQt7gAKy{=K$h<})nP73 zc0r$X{+|VX6gX<6G6yscM=Nt+Jh}p z)pJT`Cq%u|gih|9kk9=7=uIF}B@-{2s50{mzzMo7gHh~D;H|a)WKq6D*-Lk*BCnp~ z@DL*cvhQ}^kOV?xwI_SXK2X0MP@|*T%fK0sOe#Ga-cR9oEaM;xC6yFCBOxWVP!gsSBzsa9N^P95 zk;lys$aO{?!lxsYBwZ8PbU@auGSS-320`%yPBayCQ!D<>E$2~Z`mO*oGlbU~6LmS0 zUM{c>h_D~zZ6Zq_&9BfQBzS4%P2EL9@5G<07nCORwmIicdEjx|?r^%Tw4+??v&LUXLSDGU7cUGP z0rS|G?tH6eH>{nwK!sX!JPT*nm8m^`rR5|8*~eclF@UKYF#$(e;s&;|#WLs@-6xTP z^{*GsmNUXURfp0W@_2kWW{`BM$7eaz>4!Yi^4odxQAwTB7~Ls&JaMG0GW`B^&UW$o zt8aE8%g7Fb%gcWp-=rn+4(Q@SvfGUGZ1_#E>R9ly9o|G;R#b_eO&nULFi0vajfB$U zMPX5!C$+A}+D>Wqh0c%3KGrvCKI|o|1Nxzbf7~?X*IIv&JZ6iMzJHimmz?}CnoG^5s0tKc`F9x51qYO)G*o0)j0C$E8Jvs~<*??Cz6JpueXWEn zmp~MhcZYgzOHvaNG0;*nugz42z3`i|SDyr>b`c3mScdHh?fMe-l|;s$F_ z66`>P@4X=;*AB8M&yPWo{tR{(%U&TX@ySvzNP4m5l_x_~OTxMIpsbJh%XG&MG3&Z% zTSPKKo^cH_@t6a}ASKP>x6~0N<3LNcKXiOC&{pKgRoS_DrB`eLtp^FgpXK7ae7oq& z*8~TE*JUX|Rob#Fa9~UXOtHO;m4TQfW%fWx=H=Xj9fFga640sYUjgHv|IPipFsm*> z6-9CFLja%>5<#(`fY2>rjLD5-#f;ebuH(y+#TAsd?sZD5w0SKi7jAM zL@nvIL^i0|u_eG0UtV6PYYC(7>le_0d&m<_w760yzWZ-1sAm;RhZ*KrG&u~T5UuK+ zdaU@eiP2cVKg69gO)S+#c8Z80aM0o5SklTj3lC#Tbru=CNtWZ(Pm@;|Sy?HG3|DKS z%=DUA1*uy6YLvrI{od+k*VSeN;V^bPDsInzzO{4S-kz9jGi!Y9@2u;Spy|n2u%!f@ zdG_TUdboW2c4E=Y49eIMfibmYAQk-kNDi&}}JLy$B_7vLL$-^)sV-qdF@9Kw}Ni!FhoplDA|3fnp5) z3%fKb=NHktc&}JPM2B~Dx~DQKm0ifB;XR5&#Y7-hB$X8-%7t5?FI(T0F fRIK&0 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 literal 0 HcmV?d00001 diff --git a/wasm/moonriver-runtime-2700-substitute-tracing.wasm b/wasm/moonriver-runtime-2700-substitute-tracing.wasm new file mode 100644 index 0000000000000000000000000000000000000000..66a3ed05197b5cebf960143565aff9308e179177 GIT binary patch literal 1867198 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

*bUZPU&og2SC)EhfGC4 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�_B|H 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�CS+kJ~xCF|S1 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 OgT-+^)J^>HE%M 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 z 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