difftreelog
merge develop into test/playground-migration
in: master
114 files changed
.maintain/frame-weight-template.hbsdiffbeforeafterboth47 {{~#each benchmark.components as |c| ~}}47 {{~#each benchmark.components as |c| ~}}48 {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}}48 {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}}49 ) -> Weight {49 ) -> Weight {50 ({{underscore benchmark.base_weight}} as Weight)50 Weight::from_ref_time({{underscore benchmark.base_weight}} as u64)51 {{#each benchmark.component_weight as |cw|}}51 {{#each benchmark.component_weight as |cw|}}52 // Standard Error: {{underscore cw.error}}52 // Standard Error: {{underscore cw.error}}53 .saturating_add(({{underscore cw.slope}} as Weight).saturating_mul({{cw.name}} as Weight))53 .saturating_add(Weight::from_ref_time({{underscore cw.slope}} as u64).saturating_mul({{cw.name}} as u64))54 {{/each}}54 {{/each}}55 {{#if (ne benchmark.base_reads "0")}}55 {{#if (ne benchmark.base_reads "0")}}56 .saturating_add(T::DbWeight::get().reads({{benchmark.base_reads}} as Weight))56 .saturating_add(T::DbWeight::get().reads({{benchmark.base_reads}} as u64))57 {{/if}}57 {{/if}}58 {{#each benchmark.component_reads as |cr|}}58 {{#each benchmark.component_reads as |cr|}}59 .saturating_add(T::DbWeight::get().reads(({{cr.slope}} as Weight).saturating_mul({{cr.name}} as Weight)))59 .saturating_add(T::DbWeight::get().reads(({{cr.slope}} as u64).saturating_mul({{cr.name}} as u64)))60 {{/each}}60 {{/each}}61 {{#if (ne benchmark.base_writes "0")}}61 {{#if (ne benchmark.base_writes "0")}}62 .saturating_add(T::DbWeight::get().writes({{benchmark.base_writes}} as Weight))62 .saturating_add(T::DbWeight::get().writes({{benchmark.base_writes}} as u64))63 {{/if}}63 {{/if}}64 {{#each benchmark.component_writes as |cw|}}64 {{#each benchmark.component_writes as |cw|}}65 .saturating_add(T::DbWeight::get().writes(({{cw.slope}} as Weight).saturating_mul({{cw.name}} as Weight)))65 .saturating_add(T::DbWeight::get().writes(({{cw.slope}} as u64).saturating_mul({{cw.name}} as u64)))66 {{/each}}66 {{/each}}67 }67 }68 {{/each}}68 {{/each}}79 {{~#each benchmark.components as |c| ~}}79 {{~#each benchmark.components as |c| ~}}80 {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}}80 {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}}81 ) -> Weight {81 ) -> Weight {82 ({{underscore benchmark.base_weight}} as Weight)82 Weight::from_ref_time({{underscore benchmark.base_weight}} as u64)83 {{#each benchmark.component_weight as |cw|}}83 {{#each benchmark.component_weight as |cw|}}84 // Standard Error: {{underscore cw.error}}84 // Standard Error: {{underscore cw.error}}85 .saturating_add(({{underscore cw.slope}} as Weight).saturating_mul({{cw.name}} as Weight))85 .saturating_add(Weight::from_ref_time({{underscore cw.slope}} as u64).saturating_mul({{cw.name}} as u64))86 {{/each}}86 {{/each}}87 {{#if (ne benchmark.base_reads "0")}}87 {{#if (ne benchmark.base_reads "0")}}88 .saturating_add(RocksDbWeight::get().reads({{benchmark.base_reads}} as Weight))88 .saturating_add(RocksDbWeight::get().reads({{benchmark.base_reads}} as u64))89 {{/if}}89 {{/if}}90 {{#each benchmark.component_reads as |cr|}}90 {{#each benchmark.component_reads as |cr|}}91 .saturating_add(RocksDbWeight::get().reads(({{cr.slope}} as Weight).saturating_mul({{cr.name}} as Weight)))91 .saturating_add(RocksDbWeight::get().reads(({{cr.slope}} as u64).saturating_mul({{cr.name}} as u64)))92 {{/each}}92 {{/each}}93 {{#if (ne benchmark.base_writes "0")}}93 {{#if (ne benchmark.base_writes "0")}}94 .saturating_add(RocksDbWeight::get().writes({{benchmark.base_writes}} as Weight))94 .saturating_add(RocksDbWeight::get().writes({{benchmark.base_writes}} as u64))95 {{/if}}95 {{/if}}96 {{#each benchmark.component_writes as |cw|}}96 {{#each benchmark.component_writes as |cw|}}97 .saturating_add(RocksDbWeight::get().writes(({{cw.slope}} as Weight).saturating_mul({{cw.name}} as Weight)))97 .saturating_add(RocksDbWeight::get().writes(({{cw.slope}} as u64).saturating_mul({{cw.name}} as u64)))98 {{/each}}98 {{/each}}99 }99 }100 {{/each}}100 {{/each}}Cargo.lockdiffbeforeafterboth757576[[package]]76[[package]]77name = "aho-corasick"77name = "aho-corasick"78version = "0.7.18"78version = "0.7.19"79source = "registry+https://github.com/rust-lang/crates.io-index"79source = "registry+https://github.com/rust-lang/crates.io-index"80checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"80checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e"81dependencies = [81dependencies = [82 "memchr",82 "memchr",83]83]909091[[package]]91[[package]]92name = "android_system_properties"92name = "android_system_properties"93version = "0.1.4"93version = "0.1.5"94source = "registry+https://github.com/rust-lang/crates.io-index"94source = "registry+https://github.com/rust-lang/crates.io-index"95checksum = "d7ed72e1635e121ca3e79420540282af22da58be50de153d36f81ddc6b83aa9e"95checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"96dependencies = [96dependencies = [97 "libc",97 "libc",98]98]108108109[[package]]109[[package]]110name = "anyhow"110name = "anyhow"111version = "1.0.61"111version = "1.0.65"112source = "registry+https://github.com/rust-lang/crates.io-index"112source = "registry+https://github.com/rust-lang/crates.io-index"113checksum = "508b352bb5c066aac251f6daf6b36eccd03e8a88e8081cd44959ea277a3af9a8"113checksum = "98161a4e3e2184da77bb14f02184cdd111e83bbbcc9979dfee3c44b9a85f5602"114114115[[package]]115[[package]]116name = "app-promotion-rpc"116name = "app-promotion-rpc"117version = "0.1.0"117version = "0.1.0"118dependencies = [118dependencies = [119 "pallet-common",119 "pallet-common",120 "pallet-evm",120 "pallet-evm",121 "parity-scale-codec 3.1.5",121 "parity-scale-codec 3.2.1",122 "sp-api",122 "sp-api",123 "sp-core",123 "sp-core",124 "sp-runtime",124 "sp-runtime",211211212[[package]]212[[package]]213name = "async-global-executor"213name = "async-global-executor"214version = "2.2.0"214version = "2.3.0"215source = "registry+https://github.com/rust-lang/crates.io-index"215source = "registry+https://github.com/rust-lang/crates.io-index"216checksum = "5262ed948da60dd8956c6c5aca4d4163593dddb7b32d73267c93dab7b2e98940"216checksum = "0da5b41ee986eed3f524c380e6d64965aea573882a8907682ad100f7859305ca"217dependencies = [217dependencies = [218 "async-channel",218 "async-channel",219 "async-executor",219 "async-executor",220 "async-io",220 "async-io",221 "async-lock",221 "async-lock",222 "blocking",222 "blocking",223 "futures-lite",223 "futures-lite",224 "num_cpus",225 "once_cell",224 "once_cell",226]225]227226228[[package]]227[[package]]229name = "async-io"228name = "async-io"230version = "1.7.0"229version = "1.9.0"231source = "registry+https://github.com/rust-lang/crates.io-index"230source = "registry+https://github.com/rust-lang/crates.io-index"232checksum = "e5e18f61464ae81cde0a23e713ae8fd299580c54d697a35820cfd0625b8b0e07"231checksum = "83e21f3a490c72b3b0cf44962180e60045de2925d8dff97918f7ee43c8f637c7"233dependencies = [232dependencies = [233 "autocfg",234 "concurrent-queue",234 "concurrent-queue",235 "futures-lite",235 "futures-lite",236 "libc",236 "libc",255255256[[package]]256[[package]]257name = "async-process"257name = "async-process"258version = "1.4.0"258version = "1.5.0"259source = "registry+https://github.com/rust-lang/crates.io-index"259source = "registry+https://github.com/rust-lang/crates.io-index"260checksum = "cf2c06e30a24e8c78a3987d07f0930edf76ef35e027e7bdb063fccafdad1f60c"260checksum = "02111fd8655a613c25069ea89fc8d9bb89331fa77486eb3bc059ee757cfa481c"261dependencies = [261dependencies = [262 "async-io",262 "async-io",263 "autocfg",263 "blocking",264 "blocking",264 "cfg-if 1.0.0",265 "cfg-if 1.0.0",265 "event-listener",266 "event-listener",443[[package]]444[[package]]444name = "beefy-gadget"445name = "beefy-gadget"445version = "4.0.0-dev"446version = "4.0.0-dev"446source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"447source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"447dependencies = [448dependencies = [449 "async-trait",448 "beefy-primitives",450 "beefy-primitives",449 "fnv",451 "fnv",450 "futures 0.3.23",452 "futures 0.3.24",451 "futures-timer",453 "futures-timer",452 "hex",454 "hex",453 "log",455 "log",454 "parity-scale-codec 3.1.5",456 "parity-scale-codec 3.2.1",455 "parking_lot 0.12.1",457 "parking_lot 0.12.1",456 "sc-chain-spec",458 "sc-chain-spec",457 "sc-client-api",459 "sc-client-api",460 "sc-consensus",458 "sc-finality-grandpa",461 "sc-finality-grandpa",459 "sc-keystore",462 "sc-keystore",460 "sc-network",463 "sc-network",477[[package]]480[[package]]478name = "beefy-gadget-rpc"481name = "beefy-gadget-rpc"479version = "4.0.0-dev"482version = "4.0.0-dev"480source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"483source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"481dependencies = [484dependencies = [482 "beefy-gadget",485 "beefy-gadget",483 "beefy-primitives",486 "beefy-primitives",484 "futures 0.3.23",487 "futures 0.3.24",485 "jsonrpsee",488 "jsonrpsee",486 "log",489 "log",487 "parity-scale-codec 3.1.5",490 "parity-scale-codec 3.2.1",488 "parking_lot 0.12.1",491 "parking_lot 0.12.1",489 "sc-rpc",492 "sc-rpc",490 "sc-utils",493 "sc-utils",497[[package]]500[[package]]498name = "beefy-merkle-tree"501name = "beefy-merkle-tree"499version = "4.0.0-dev"502version = "4.0.0-dev"500source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"503source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"501dependencies = [504dependencies = [502 "beefy-primitives",505 "beefy-primitives",503 "sp-api",506 "sp-api",506[[package]]509[[package]]507name = "beefy-primitives"510name = "beefy-primitives"508version = "4.0.0-dev"511version = "4.0.0-dev"509source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"512source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"510dependencies = [513dependencies = [511 "parity-scale-codec 3.1.5",514 "parity-scale-codec 3.2.1",512 "scale-info",515 "scale-info",513 "sp-api",516 "sp-api",514 "sp-application-crypto",517 "sp-application-crypto",587source = "registry+https://github.com/rust-lang/crates.io-index"590source = "registry+https://github.com/rust-lang/crates.io-index"588checksum = "b9cf849ee05b2ee5fba5e36f97ff8ec2533916700fc0758d40d92136a42f3388"591checksum = "b9cf849ee05b2ee5fba5e36f97ff8ec2533916700fc0758d40d92136a42f3388"589dependencies = [592dependencies = [590 "digest 0.10.3",593 "digest 0.10.5",591]594]592595593[[package]]596[[package]]633 "cc",636 "cc",634 "cfg-if 1.0.0",637 "cfg-if 1.0.0",635 "constant_time_eq",638 "constant_time_eq",636 "digest 0.10.3",639 "digest 0.10.5",637]640]638641639[[package]]642[[package]]660663661[[package]]664[[package]]662name = "block-buffer"665name = "block-buffer"663version = "0.10.2"666version = "0.10.3"664source = "registry+https://github.com/rust-lang/crates.io-index"667source = "registry+https://github.com/rust-lang/crates.io-index"665checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324"668checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"666dependencies = [669dependencies = [667 "generic-array 0.14.6",670 "generic-array 0.14.6",668]671]751754752[[package]]755[[package]]753name = "bumpalo"756name = "bumpalo"754version = "3.10.0"757version = "3.11.0"755source = "registry+https://github.com/rust-lang/crates.io-index"758source = "registry+https://github.com/rust-lang/crates.io-index"756checksum = "37ccbd214614c6783386c1af30caf03192f17891059cecc394b4fb119e363de3"759checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d"757760758[[package]]761[[package]]759name = "byte-slice-cast"762name = "byte-slice-cast"822dependencies = [825dependencies = [823 "camino",826 "camino",824 "cargo-platform",827 "cargo-platform",825 "semver 1.0.13",828 "semver 1.0.14",826 "serde",829 "serde",827 "serde_json",830 "serde_json",828]831]846]849]847850848[[package]]851[[package]]852name = "cfg-expr"853version = "0.10.3"854source = "registry+https://github.com/rust-lang/crates.io-index"855checksum = "0aacacf4d96c24b2ad6eb8ee6df040e4f27b0d0b39a5710c30091baa830485db"856dependencies = [857 "smallvec",858]859860[[package]]849name = "cfg-if"861name = "cfg-if"850version = "0.1.10"862version = "0.1.10"851source = "registry+https://github.com/rust-lang/crates.io-index"863source = "registry+https://github.com/rust-lang/crates.io-index"936948937[[package]]949[[package]]938name = "clang-sys"950name = "clang-sys"939version = "1.3.3"951version = "1.4.0"940source = "registry+https://github.com/rust-lang/crates.io-index"952source = "registry+https://github.com/rust-lang/crates.io-index"941checksum = "5a050e2153c5be08febd6734e29298e844fdb0fa21aeddd63b4eb7baa106c69b"953checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3"942dependencies = [954dependencies = [943 "glob",955 "glob",944 "libc",956 "libc",947959948[[package]]960[[package]]949name = "clap"961name = "clap"950version = "3.2.17"962version = "3.2.22"951source = "registry+https://github.com/rust-lang/crates.io-index"963source = "registry+https://github.com/rust-lang/crates.io-index"952checksum = "29e724a68d9319343bb3328c9cc2dfde263f4b3142ee1059a9980580171c954b"964checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750"953dependencies = [965dependencies = [954 "atty",966 "atty",955 "bitflags",967 "bitflags",964976965[[package]]977[[package]]966name = "clap_derive"978name = "clap_derive"967version = "3.2.17"979version = "3.2.18"968source = "registry+https://github.com/rust-lang/crates.io-index"980source = "registry+https://github.com/rust-lang/crates.io-index"969checksum = "13547f7012c01ab4a0e8f8967730ada8f9fdf419e8b6c792788f39cf4e46eefa"981checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65"970dependencies = [982dependencies = [971 "heck",983 "heck",972 "proc-macro-error",984 "proc-macro-error",100710191008[[package]]1020[[package]]1009name = "comfy-table"1021name = "comfy-table"1010version = "6.0.0"1022version = "6.1.0"1011source = "registry+https://github.com/rust-lang/crates.io-index"1023source = "registry+https://github.com/rust-lang/crates.io-index"1012checksum = "121d8a5b0346092c18a4b2fd6f620d7a06f0eb7ac0a45860939a0884bc579c56"1024checksum = "85914173c2f558d61613bfbbf1911f14e630895087a7ed2fafc0f5319e1536e7"1013dependencies = [1025dependencies = [1014 "strum",1026 "strum",1015 "strum_macros",1027 "strum_macros",107910911080[[package]]1092[[package]]1081name = "cpufeatures"1093name = "cpufeatures"1082version = "0.2.2"1094version = "0.2.5"1083source = "registry+https://github.com/rust-lang/crates.io-index"1095source = "registry+https://github.com/rust-lang/crates.io-index"1084checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b"1096checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"1085dependencies = [1097dependencies = [1086 "libc",1098 "libc",1087]1099]121412261215[[package]]1227[[package]]1216name = "crossbeam-epoch"1228name = "crossbeam-epoch"1217version = "0.9.10"1229version = "0.9.11"1218source = "registry+https://github.com/rust-lang/crates.io-index"1230source = "registry+https://github.com/rust-lang/crates.io-index"1219checksum = "045ebe27666471bb549370b4b0b3e51b07f56325befa4284db65fc89c02511b1"1231checksum = "f916dfc5d356b0ed9dae65f1db9fc9770aa2851d2662b988ccf4fe3516e86348"1220dependencies = [1232dependencies = [1221 "autocfg",1233 "autocfg",1222 "cfg-if 1.0.0",1234 "cfg-if 1.0.0",1223 "crossbeam-utils",1235 "crossbeam-utils",1224 "memoffset",1236 "memoffset",1225 "once_cell",1226 "scopeguard",1237 "scopeguard",1227]1238]12281239123812491239[[package]]1250[[package]]1240name = "crossbeam-utils"1251name = "crossbeam-utils"1241version = "0.8.11"1252version = "0.8.12"1242source = "registry+https://github.com/rust-lang/crates.io-index"1253source = "registry+https://github.com/rust-lang/crates.io-index"1243checksum = "51887d4adc7b564537b15adcfb307936f8075dfcd5f00dde9a9f1d29383682bc"1254checksum = "edbafec5fa1f196ca66527c1b12c2ec4745ca14b50f1ad8f9f6f720b55d11fac"1244dependencies = [1255dependencies = [1245 "cfg-if 1.0.0",1256 "cfg-if 1.0.0",1246 "once_cell",1247]1257]124812581249[[package]]1259[[package]]1259checksum = "03c6a1d5fa1de37e071642dfa44ec552ca5b299adb128fab16138e24b548fd21"1269checksum = "03c6a1d5fa1de37e071642dfa44ec552ca5b299adb128fab16138e24b548fd21"1260dependencies = [1270dependencies = [1261 "generic-array 0.14.6",1271 "generic-array 0.14.6",1262 "rand_core 0.6.3",1272 "rand_core 0.6.4",1263 "subtle",1273 "subtle",1264 "zeroize",1274 "zeroize",1265]1275]1327[[package]]1337[[package]]1328name = "cumulus-client-cli"1338name = "cumulus-client-cli"1329version = "0.1.0"1339version = "0.1.0"1330source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1340source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1331dependencies = [1341dependencies = [1332 "clap",1342 "clap",1333 "parity-scale-codec 3.1.5",1343 "parity-scale-codec 3.2.1",1334 "sc-chain-spec",1344 "sc-chain-spec",1335 "sc-cli",1345 "sc-cli",1336 "sc-service",1346 "sc-service",1342[[package]]1352[[package]]1343name = "cumulus-client-collator"1353name = "cumulus-client-collator"1344version = "0.1.0"1354version = "0.1.0"1345source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1355source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1346dependencies = [1356dependencies = [1347 "cumulus-client-consensus-common",1357 "cumulus-client-consensus-common",1348 "cumulus-client-network",1358 "cumulus-client-network",1349 "cumulus-primitives-core",1359 "cumulus-primitives-core",1350 "cumulus-relay-chain-interface",1360 "cumulus-relay-chain-interface",1351 "futures 0.3.23",1361 "futures 0.3.24",1352 "parity-scale-codec 3.1.5",1362 "parity-scale-codec 3.2.1",1353 "parking_lot 0.12.1",1363 "parking_lot 0.12.1",1354 "polkadot-node-primitives",1364 "polkadot-node-primitives",1355 "polkadot-node-subsystem",1365 "polkadot-node-subsystem",1366[[package]]1376[[package]]1367name = "cumulus-client-consensus-aura"1377name = "cumulus-client-consensus-aura"1368version = "0.1.0"1378version = "0.1.0"1369source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1379source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1370dependencies = [1380dependencies = [1371 "async-trait",1381 "async-trait",1372 "cumulus-client-consensus-common",1382 "cumulus-client-consensus-common",1373 "cumulus-primitives-core",1383 "cumulus-primitives-core",1374 "futures 0.3.23",1384 "futures 0.3.24",1375 "parity-scale-codec 3.1.5",1385 "parity-scale-codec 3.2.1",1376 "sc-client-api",1386 "sc-client-api",1377 "sc-consensus",1387 "sc-consensus",1378 "sc-consensus-aura",1388 "sc-consensus-aura",1395[[package]]1405[[package]]1396name = "cumulus-client-consensus-common"1406name = "cumulus-client-consensus-common"1397version = "0.1.0"1407version = "0.1.0"1398source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1408source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1399dependencies = [1409dependencies = [1400 "async-trait",1410 "async-trait",1401 "cumulus-relay-chain-interface",1411 "cumulus-relay-chain-interface",1402 "dyn-clone",1412 "dyn-clone",1403 "futures 0.3.23",1413 "futures 0.3.24",1404 "parity-scale-codec 3.1.5",1414 "parity-scale-codec 3.2.1",1405 "polkadot-primitives",1415 "polkadot-primitives",1406 "sc-client-api",1416 "sc-client-api",1407 "sc-consensus",1417 "sc-consensus",1416[[package]]1426[[package]]1417name = "cumulus-client-network"1427name = "cumulus-client-network"1418version = "0.1.0"1428version = "0.1.0"1419source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1429source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1420dependencies = [1430dependencies = [1421 "async-trait",1431 "async-trait",1422 "cumulus-relay-chain-interface",1432 "cumulus-relay-chain-interface",1423 "derive_more",1433 "derive_more",1424 "futures 0.3.23",1434 "futures 0.3.24",1425 "futures-timer",1435 "futures-timer",1426 "parity-scale-codec 3.1.5",1436 "parity-scale-codec 3.2.1",1427 "parking_lot 0.12.1",1437 "parking_lot 0.12.1",1428 "polkadot-node-primitives",1438 "polkadot-node-primitives",1429 "polkadot-parachain",1439 "polkadot-parachain",1441[[package]]1451[[package]]1442name = "cumulus-client-pov-recovery"1452name = "cumulus-client-pov-recovery"1443version = "0.1.0"1453version = "0.1.0"1444source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1454source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1445dependencies = [1455dependencies = [1446 "cumulus-primitives-core",1456 "cumulus-primitives-core",1447 "cumulus-relay-chain-interface",1457 "cumulus-relay-chain-interface",1448 "futures 0.3.23",1458 "futures 0.3.24",1449 "futures-timer",1459 "futures-timer",1450 "parity-scale-codec 3.1.5",1460 "parity-scale-codec 3.2.1",1451 "polkadot-node-primitives",1461 "polkadot-node-primitives",1452 "polkadot-node-subsystem",1462 "polkadot-node-subsystem",1453 "polkadot-overseer",1463 "polkadot-overseer",1465[[package]]1475[[package]]1466name = "cumulus-client-service"1476name = "cumulus-client-service"1467version = "0.1.0"1477version = "0.1.0"1468source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1478source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1469dependencies = [1479dependencies = [1470 "cumulus-client-cli",1480 "cumulus-client-cli",1471 "cumulus-client-collator",1481 "cumulus-client-collator",1493[[package]]1503[[package]]1494name = "cumulus-pallet-aura-ext"1504name = "cumulus-pallet-aura-ext"1495version = "0.1.0"1505version = "0.1.0"1496source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1506source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1497dependencies = [1507dependencies = [1498 "frame-executive",1508 "frame-executive",1499 "frame-support",1509 "frame-support",1500 "frame-system",1510 "frame-system",1501 "pallet-aura",1511 "pallet-aura",1502 "parity-scale-codec 3.1.5",1512 "parity-scale-codec 3.2.1",1503 "scale-info",1513 "scale-info",1504 "serde",1514 "serde",1505 "sp-application-crypto",1515 "sp-application-crypto",1511[[package]]1521[[package]]1512name = "cumulus-pallet-dmp-queue"1522name = "cumulus-pallet-dmp-queue"1513version = "0.1.0"1523version = "0.1.0"1514source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1524source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1515dependencies = [1525dependencies = [1516 "cumulus-primitives-core",1526 "cumulus-primitives-core",1517 "frame-support",1527 "frame-support",1518 "frame-system",1528 "frame-system",1519 "log",1529 "log",1520 "parity-scale-codec 3.1.5",1530 "parity-scale-codec 3.2.1",1521 "scale-info",1531 "scale-info",1522 "sp-io",1532 "sp-io",1523 "sp-runtime",1533 "sp-runtime",1529[[package]]1539[[package]]1530name = "cumulus-pallet-parachain-system"1540name = "cumulus-pallet-parachain-system"1531version = "0.1.0"1541version = "0.1.0"1532source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1542source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1533dependencies = [1543dependencies = [1544 "bytes",1534 "cumulus-pallet-parachain-system-proc-macro",1545 "cumulus-pallet-parachain-system-proc-macro",1535 "cumulus-primitives-core",1546 "cumulus-primitives-core",1536 "cumulus-primitives-parachain-inherent",1547 "cumulus-primitives-parachain-inherent",1540 "impl-trait-for-tuples",1551 "impl-trait-for-tuples",1541 "log",1552 "log",1542 "pallet-balances",1553 "pallet-balances",1543 "parity-scale-codec 3.1.5",1554 "parity-scale-codec 3.2.1",1544 "polkadot-parachain",1555 "polkadot-parachain",1545 "scale-info",1556 "scale-info",1546 "serde",1557 "serde",1559[[package]]1570[[package]]1560name = "cumulus-pallet-parachain-system-proc-macro"1571name = "cumulus-pallet-parachain-system-proc-macro"1561version = "0.1.0"1572version = "0.1.0"1562source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1573source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1563dependencies = [1574dependencies = [1564 "proc-macro-crate",1575 "proc-macro-crate",1565 "proc-macro2",1576 "proc-macro2",1570[[package]]1581[[package]]1571name = "cumulus-pallet-xcm"1582name = "cumulus-pallet-xcm"1572version = "0.1.0"1583version = "0.1.0"1573source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1584source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1574dependencies = [1585dependencies = [1575 "cumulus-primitives-core",1586 "cumulus-primitives-core",1576 "frame-support",1587 "frame-support",1577 "frame-system",1588 "frame-system",1578 "parity-scale-codec 3.1.5",1589 "parity-scale-codec 3.2.1",1579 "scale-info",1590 "scale-info",1580 "serde",1591 "serde",1581 "sp-io",1592 "sp-io",1587[[package]]1598[[package]]1588name = "cumulus-pallet-xcmp-queue"1599name = "cumulus-pallet-xcmp-queue"1589version = "0.1.0"1600version = "0.1.0"1590source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1601source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1591dependencies = [1602dependencies = [1592 "cumulus-primitives-core",1603 "cumulus-primitives-core",1593 "frame-support",1604 "frame-support",1594 "frame-system",1605 "frame-system",1595 "log",1606 "log",1596 "parity-scale-codec 3.1.5",1607 "parity-scale-codec 3.2.1",1597 "rand_chacha 0.3.1",1608 "rand_chacha 0.3.1",1598 "scale-info",1609 "scale-info",1599 "sp-runtime",1610 "sp-runtime",1605[[package]]1616[[package]]1606name = "cumulus-primitives-core"1617name = "cumulus-primitives-core"1607version = "0.1.0"1618version = "0.1.0"1608source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1619source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1609dependencies = [1620dependencies = [1610 "frame-support",1621 "frame-support",1611 "parity-scale-codec 3.1.5",1622 "parity-scale-codec 3.2.1",1612 "polkadot-core-primitives",1623 "polkadot-core-primitives",1613 "polkadot-parachain",1624 "polkadot-parachain",1614 "polkadot-primitives",1625 "polkadot-primitives",1621[[package]]1632[[package]]1622name = "cumulus-primitives-parachain-inherent"1633name = "cumulus-primitives-parachain-inherent"1623version = "0.1.0"1634version = "0.1.0"1624source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1635source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1625dependencies = [1636dependencies = [1626 "async-trait",1637 "async-trait",1627 "cumulus-primitives-core",1638 "cumulus-primitives-core",1628 "cumulus-relay-chain-interface",1639 "cumulus-relay-chain-interface",1629 "cumulus-test-relay-sproof-builder",1640 "cumulus-test-relay-sproof-builder",1630 "parity-scale-codec 3.1.5",1641 "parity-scale-codec 3.2.1",1631 "sc-client-api",1642 "sc-client-api",1632 "scale-info",1643 "scale-info",1633 "sp-api",1644 "sp-api",1644[[package]]1655[[package]]1645name = "cumulus-primitives-timestamp"1656name = "cumulus-primitives-timestamp"1646version = "0.1.0"1657version = "0.1.0"1647source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1658source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1648dependencies = [1659dependencies = [1649 "cumulus-primitives-core",1660 "cumulus-primitives-core",1650 "futures 0.3.23",1661 "futures 0.3.24",1651 "parity-scale-codec 3.1.5",1662 "parity-scale-codec 3.2.1",1652 "sp-inherents",1663 "sp-inherents",1653 "sp-std",1664 "sp-std",1654 "sp-timestamp",1665 "sp-timestamp",1657[[package]]1668[[package]]1658name = "cumulus-primitives-utility"1669name = "cumulus-primitives-utility"1659version = "0.1.0"1670version = "0.1.0"1660source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1671source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1661dependencies = [1672dependencies = [1662 "cumulus-primitives-core",1673 "cumulus-primitives-core",1663 "frame-support",1674 "frame-support",1664 "parity-scale-codec 3.1.5",1675 "log",1676 "parity-scale-codec 3.2.1",1665 "polkadot-core-primitives",1677 "polkadot-core-primitives",1666 "polkadot-parachain",1678 "polkadot-parachain",1667 "polkadot-primitives",1679 "polkadot-primitives",1676[[package]]1688[[package]]1677name = "cumulus-relay-chain-inprocess-interface"1689name = "cumulus-relay-chain-inprocess-interface"1678version = "0.1.0"1690version = "0.1.0"1679source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1691source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1680dependencies = [1692dependencies = [1681 "async-trait",1693 "async-trait",1682 "cumulus-primitives-core",1694 "cumulus-primitives-core",1683 "cumulus-relay-chain-interface",1695 "cumulus-relay-chain-interface",1684 "futures 0.3.23",1696 "futures 0.3.24",1685 "futures-timer",1697 "futures-timer",1686 "parking_lot 0.12.1",1687 "polkadot-cli",1698 "polkadot-cli",1688 "polkadot-client",1699 "polkadot-client",1689 "polkadot-service",1700 "polkadot-service",1706[[package]]1717[[package]]1707name = "cumulus-relay-chain-interface"1718name = "cumulus-relay-chain-interface"1708version = "0.1.0"1719version = "0.1.0"1709source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1720source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1710dependencies = [1721dependencies = [1711 "async-trait",1722 "async-trait",1712 "cumulus-primitives-core",1723 "cumulus-primitives-core",1713 "derive_more",1724 "derive_more",1714 "futures 0.3.23",1725 "futures 0.3.24",1715 "jsonrpsee-core",1726 "jsonrpsee-core",1716 "parity-scale-codec 3.1.5",1727 "parity-scale-codec 3.2.1",1717 "parking_lot 0.12.1",1728 "parking_lot 0.12.1",1718 "polkadot-overseer",1729 "polkadot-overseer",1719 "polkadot-service",1730 "polkadot-service",1729[[package]]1740[[package]]1730name = "cumulus-relay-chain-rpc-interface"1741name = "cumulus-relay-chain-rpc-interface"1731version = "0.1.0"1742version = "0.1.0"1732source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1743source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1733dependencies = [1744dependencies = [1734 "async-trait",1745 "async-trait",1735 "backoff",1746 "backoff",1736 "cumulus-primitives-core",1747 "cumulus-primitives-core",1737 "cumulus-relay-chain-interface",1748 "cumulus-relay-chain-interface",1738 "futures 0.3.23",1749 "futures 0.3.24",1739 "futures-timer",1750 "futures-timer",1740 "jsonrpsee",1751 "jsonrpsee",1741 "parity-scale-codec 3.1.5",1752 "parity-scale-codec 3.2.1",1742 "parking_lot 0.12.1",1753 "parking_lot 0.12.1",1743 "polkadot-service",1754 "polkadot-service",1744 "sc-client-api",1755 "sc-client-api",1756[[package]]1767[[package]]1757name = "cumulus-test-relay-sproof-builder"1768name = "cumulus-test-relay-sproof-builder"1758version = "0.1.0"1769version = "0.1.0"1759source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"1770source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"1760dependencies = [1771dependencies = [1761 "cumulus-primitives-core",1772 "cumulus-primitives-core",1762 "parity-scale-codec 3.1.5",1773 "parity-scale-codec 3.2.1",1763 "polkadot-primitives",1774 "polkadot-primitives",1764 "sp-runtime",1775 "sp-runtime",1765 "sp-state-machine",1776 "sp-state-machine",1800dependencies = [1811dependencies = [1801 "byteorder",1812 "byteorder",1802 "digest 0.9.0",1813 "digest 0.9.0",1803 "rand_core 0.6.3",1814 "rand_core 0.6.4",1804 "subtle",1815 "subtle",1805 "zeroize",1816 "zeroize",1806]1817]188418951885[[package]]1896[[package]]1886name = "digest"1897name = "digest"1887version = "0.10.3"1898version = "0.10.5"1888source = "registry+https://github.com/rust-lang/crates.io-index"1899source = "registry+https://github.com/rust-lang/crates.io-index"1889checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506"1900checksum = "adfbc57365a37acbd2ebf2b64d7e69bb766e2fea813521ed536f5d0520dcf86c"1890dependencies = [1901dependencies = [1891 "block-buffer 0.10.2",1902 "block-buffer 0.10.3",1892 "crypto-common",1903 "crypto-common",1893 "subtle",1904 "subtle",1894]1905]2019]2030]202020312021[[package]]2032[[package]]2033name = "ed25519-zebra"2034version = "3.0.0"2035source = "registry+https://github.com/rust-lang/crates.io-index"2036checksum = "403ef3e961ab98f0ba902771d29f842058578bb1ce7e3c59dad5a6a93e784c69"2037dependencies = [2038 "curve25519-dalek 3.2.0",2039 "hex",2040 "rand_core 0.6.4",2041 "sha2 0.9.9",2042 "thiserror",2043 "zeroize",2044]20452046[[package]]2022name = "either"2047name = "either"2023version = "1.7.0"2048version = "1.8.0"2024source = "registry+https://github.com/rust-lang/crates.io-index"2049source = "registry+https://github.com/rust-lang/crates.io-index"2025checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be"2050checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"202620512027[[package]]2052[[package]]2028name = "elliptic-curve"2053name = "elliptic-curve"2036 "ff",2061 "ff",2037 "generic-array 0.14.6",2062 "generic-array 0.14.6",2038 "group",2063 "group",2039 "rand_core 0.6.3",2064 "rand_core 0.6.4",2040 "sec1",2065 "sec1",2041 "subtle",2066 "subtle",2042 "zeroize",2067 "zeroize",208721122088[[package]]2113[[package]]2089name = "env_logger"2114name = "env_logger"2090version = "0.9.0"2115version = "0.9.1"2091source = "registry+https://github.com/rust-lang/crates.io-index"2116source = "registry+https://github.com/rust-lang/crates.io-index"2092checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3"2117checksum = "c90bf5f19754d10198ccb95b70664fc925bd1fc090a0fd9a6ebc54acc8cd6272"2093dependencies = [2118dependencies = [2094 "atty",2119 "atty",2095 "humantime",2120 "humantime",2150 "ethereum-types",2175 "ethereum-types",2151 "hash-db",2176 "hash-db",2152 "hash256-std-hasher",2177 "hash256-std-hasher",2153 "parity-scale-codec 3.1.5",2178 "parity-scale-codec 3.2.1",2154 "rlp",2179 "rlp",2155 "rlp-derive",2180 "rlp-derive",2156 "scale-info",2181 "scale-info",2157 "serde",2182 "serde",2158 "sha3 0.10.2",2183 "sha3 0.10.5",2159 "triehash",2184 "triehash",2160]2185]216121862184[[package]]2209[[package]]2185name = "evm"2210name = "evm"2186version = "0.35.0"2211version = "0.35.0"2187source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.27#e9252ed42dc26fc85b6703b1ba50660a08209e55"2212source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.29#e9252ed42dc26fc85b6703b1ba50660a08209e55"2188dependencies = [2213dependencies = [2189 "auto_impl",2214 "auto_impl",2190 "environmental",2215 "environmental",2193 "evm-gasometer",2218 "evm-gasometer",2194 "evm-runtime",2219 "evm-runtime",2195 "log",2220 "log",2196 "parity-scale-codec 3.1.5",2221 "parity-scale-codec 3.2.1",2197 "primitive-types",2222 "primitive-types",2198 "rlp",2223 "rlp",2199 "scale-info",2224 "scale-info",2200 "serde",2225 "serde",2201 "sha3 0.10.2",2226 "sha3 0.10.5",2202]2227]220322282204[[package]]2229[[package]]2208 "ethereum",2233 "ethereum",2209 "evm-coder-procedural",2234 "evm-coder-procedural",2210 "evm-core",2235 "evm-core",2236 "frame-support",2211 "hex",2237 "hex",2212 "hex-literal",2238 "hex-literal",2213 "impl-trait-for-tuples",2239 "impl-trait-for-tuples",2223 "hex",2249 "hex",2224 "proc-macro2",2250 "proc-macro2",2225 "quote",2251 "quote",2226 "sha3 0.10.2",2252 "sha3 0.10.5",2227 "syn",2253 "syn",2228]2254]222922552230[[package]]2256[[package]]2231name = "evm-core"2257name = "evm-core"2232version = "0.35.0"2258version = "0.35.0"2233source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.27#e9252ed42dc26fc85b6703b1ba50660a08209e55"2259source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.29#e9252ed42dc26fc85b6703b1ba50660a08209e55"2234dependencies = [2260dependencies = [2235 "parity-scale-codec 3.1.5",2261 "parity-scale-codec 3.2.1",2236 "primitive-types",2262 "primitive-types",2237 "scale-info",2263 "scale-info",2238 "serde",2264 "serde",2241[[package]]2267[[package]]2242name = "evm-gasometer"2268name = "evm-gasometer"2243version = "0.35.0"2269version = "0.35.0"2244source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.27#e9252ed42dc26fc85b6703b1ba50660a08209e55"2270source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.29#e9252ed42dc26fc85b6703b1ba50660a08209e55"2245dependencies = [2271dependencies = [2246 "environmental",2272 "environmental",2247 "evm-core",2273 "evm-core",2252[[package]]2278[[package]]2253name = "evm-runtime"2279name = "evm-runtime"2254version = "0.35.0"2280version = "0.35.0"2255source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.27#e9252ed42dc26fc85b6703b1ba50660a08209e55"2281source = "git+https://github.com/uniquenetwork/evm?branch=unique-polkadot-v0.9.29#e9252ed42dc26fc85b6703b1ba50660a08209e55"2256dependencies = [2282dependencies = [2257 "auto_impl",2283 "auto_impl",2258 "environmental",2284 "environmental",2259 "evm-core",2285 "evm-core",2260 "primitive-types",2286 "primitive-types",2261 "sha3 0.10.2",2287 "sha3 0.10.5",2262]2288]226322892264[[package]]2290[[package]]2267source = "registry+https://github.com/rust-lang/crates.io-index"2293source = "registry+https://github.com/rust-lang/crates.io-index"2268checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5"2294checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5"2269dependencies = [2295dependencies = [2270 "futures 0.3.23",2296 "futures 0.3.24",2271]2297]227222982273[[package]]2299[[package]]2344[[package]]2370[[package]]2345name = "fc-consensus"2371name = "fc-consensus"2346version = "2.0.0-dev"2372version = "2.0.0-dev"2347source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2373source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2348dependencies = [2374dependencies = [2349 "async-trait",2375 "async-trait",2350 "fc-db",2376 "fc-db",2363[[package]]2389[[package]]2364name = "fc-db"2390name = "fc-db"2365version = "2.0.0-dev"2391version = "2.0.0-dev"2366source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2392source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2367dependencies = [2393dependencies = [2368 "fp-storage",2394 "fp-storage",2369 "kvdb-rocksdb",2395 "kvdb-rocksdb",2370 "parity-db",2396 "parity-db",2371 "parity-scale-codec 3.1.5",2397 "parity-scale-codec 3.2.1",2372 "parking_lot 0.12.1",2398 "parking_lot 0.12.1",2373 "sc-client-db",2399 "sc-client-db",2374 "sp-core",2400 "sp-core",2379[[package]]2405[[package]]2380name = "fc-mapping-sync"2406name = "fc-mapping-sync"2381version = "2.0.0-dev"2407version = "2.0.0-dev"2382source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2408source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2383dependencies = [2409dependencies = [2384 "fc-db",2410 "fc-db",2385 "fp-consensus",2411 "fp-consensus",2386 "fp-rpc",2412 "fp-rpc",2387 "futures 0.3.23",2413 "futures 0.3.24",2388 "futures-timer",2414 "futures-timer",2389 "log",2415 "log",2390 "sc-client-api",2416 "sc-client-api",2396[[package]]2422[[package]]2397name = "fc-rpc"2423name = "fc-rpc"2398version = "2.0.0-dev"2424version = "2.0.0-dev"2399source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2425source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2400dependencies = [2426dependencies = [2401 "ethereum",2427 "ethereum",2402 "ethereum-types",2428 "ethereum-types",2405 "fc-rpc-core",2431 "fc-rpc-core",2406 "fp-rpc",2432 "fp-rpc",2407 "fp-storage",2433 "fp-storage",2408 "futures 0.3.23",2434 "futures 0.3.24",2409 "hex",2435 "hex",2410 "jsonrpsee",2436 "jsonrpsee",2411 "libsecp256k1",2437 "libsecp256k1",2412 "log",2438 "log",2413 "lru 0.7.8",2439 "lru 0.7.8",2414 "parity-scale-codec 3.1.5",2440 "parity-scale-codec 3.2.1",2415 "prometheus",2441 "prometheus",2416 "rand 0.8.5",2442 "rand 0.8.5",2417 "rlp",2443 "rlp",2418 "rustc-hex",2444 "rustc-hex",2419 "sc-client-api",2445 "sc-client-api",2420 "sc-network",2446 "sc-network",2447 "sc-network-common",2421 "sc-rpc",2448 "sc-rpc",2422 "sc-service",2449 "sc-service",2423 "sc-transaction-pool",2450 "sc-transaction-pool",2424 "sc-transaction-pool-api",2451 "sc-transaction-pool-api",2425 "sp-api",2452 "sp-api",2426 "sp-block-builder",2453 "sp-block-builder",2427 "sp-blockchain",2454 "sp-blockchain",2455 "sp-consensus",2428 "sp-core",2456 "sp-core",2429 "sp-io",2457 "sp-io",2430 "sp-runtime",2458 "sp-runtime",2436[[package]]2464[[package]]2437name = "fc-rpc-core"2465name = "fc-rpc-core"2438version = "1.1.0-dev"2466version = "1.1.0-dev"2439source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2467source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2440dependencies = [2468dependencies = [2441 "ethereum",2469 "ethereum",2442 "ethereum-types",2470 "ethereum-types",2462source = "registry+https://github.com/rust-lang/crates.io-index"2490source = "registry+https://github.com/rust-lang/crates.io-index"2463checksum = "131655483be284720a17d74ff97592b8e76576dc25563148601df2d7c9080924"2491checksum = "131655483be284720a17d74ff97592b8e76576dc25563148601df2d7c9080924"2464dependencies = [2492dependencies = [2465 "rand_core 0.6.3",2493 "rand_core 0.6.4",2466 "subtle",2494 "subtle",2467]2495]246824962495checksum = "b22349c6a11563a202d95772a68e0fcf56119e74ea8a2a19cf2301460fcd0df5"2523checksum = "b22349c6a11563a202d95772a68e0fcf56119e74ea8a2a19cf2301460fcd0df5"2496dependencies = [2524dependencies = [2497 "either",2525 "either",2498 "futures 0.3.23",2526 "futures 0.3.24",2499 "futures-timer",2527 "futures-timer",2500 "log",2528 "log",2501 "num-traits",2529 "num-traits",2502 "parity-scale-codec 3.1.5",2530 "parity-scale-codec 3.2.1",2503 "parking_lot 0.12.1",2531 "parking_lot 0.12.1",2504 "scale-info",2532 "scale-info",2505]2533]2559[[package]]2587[[package]]2560name = "fork-tree"2588name = "fork-tree"2561version = "3.0.0"2589version = "3.0.0"2562source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2590source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2563dependencies = [2591dependencies = [2564 "parity-scale-codec 3.1.5",2592 "parity-scale-codec 3.2.1",2565]2593]256625942567[[package]]2595[[package]]2568name = "form_urlencoded"2596name = "form_urlencoded"2569version = "1.0.1"2597version = "1.1.0"2570source = "registry+https://github.com/rust-lang/crates.io-index"2598source = "registry+https://github.com/rust-lang/crates.io-index"2571checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"2599checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"2572dependencies = [2600dependencies = [2573 "matches",2574 "percent-encoding",2601 "percent-encoding",2575]2602]257626032577[[package]]2604[[package]]2578name = "fp-consensus"2605name = "fp-consensus"2579version = "2.0.0-dev"2606version = "2.0.0-dev"2580source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2607source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2581dependencies = [2608dependencies = [2582 "ethereum",2609 "ethereum",2583 "parity-scale-codec 3.1.5",2610 "parity-scale-codec 3.2.1",2584 "sp-core",2611 "sp-core",2585 "sp-runtime",2612 "sp-runtime",2586 "sp-std",2613 "sp-std",2589[[package]]2616[[package]]2590name = "fp-evm"2617name = "fp-evm"2591version = "3.0.0-dev"2618version = "3.0.0-dev"2592source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2619source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2593dependencies = [2620dependencies = [2594 "evm",2621 "evm",2595 "frame-support",2622 "frame-support",2596 "impl-trait-for-tuples",2623 "impl-trait-for-tuples",2597 "parity-scale-codec 3.1.5",2624 "parity-scale-codec 3.2.1",2598 "serde",2625 "serde",2599 "sp-core",2626 "sp-core",2600 "sp-std",2627 "sp-std",2603[[package]]2630[[package]]2604name = "fp-evm-mapping"2631name = "fp-evm-mapping"2605version = "0.1.0"2632version = "0.1.0"2606source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2633source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2607dependencies = [2634dependencies = [2608 "frame-support",2635 "frame-support",2609 "sp-core",2636 "sp-core",2612[[package]]2639[[package]]2613name = "fp-rpc"2640name = "fp-rpc"2614version = "3.0.0-dev"2641version = "3.0.0-dev"2615source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2642source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2616dependencies = [2643dependencies = [2617 "ethereum",2644 "ethereum",2618 "ethereum-types",2645 "ethereum-types",2619 "fp-evm",2646 "fp-evm",2620 "parity-scale-codec 3.1.5",2647 "parity-scale-codec 3.2.1",2621 "scale-info",2648 "scale-info",2622 "sp-api",2649 "sp-api",2623 "sp-core",2650 "sp-core",2629[[package]]2656[[package]]2630name = "fp-self-contained"2657name = "fp-self-contained"2631version = "1.0.0-dev"2658version = "1.0.0-dev"2632source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2659source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2633dependencies = [2660dependencies = [2634 "ethereum",2661 "ethereum",2635 "frame-support",2662 "frame-support",2636 "parity-scale-codec 3.1.5",2663 "parity-scale-codec 3.2.1",2637 "parity-util-mem",2664 "parity-util-mem",2638 "scale-info",2665 "scale-info",2639 "serde",2666 "serde",2645[[package]]2672[[package]]2646name = "fp-storage"2673name = "fp-storage"2647version = "2.0.0"2674version = "2.0.0"2648source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"2675source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"2649dependencies = [2676dependencies = [2650 "parity-scale-codec 3.1.5",2677 "parity-scale-codec 3.2.1",2651]2678]265226792653[[package]]2680[[package]]2654name = "frame-benchmarking"2681name = "frame-benchmarking"2655version = "4.0.0-dev"2682version = "4.0.0-dev"2656source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2683source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2657dependencies = [2684dependencies = [2658 "frame-support",2685 "frame-support",2659 "frame-system",2686 "frame-system",2660 "linregress",2687 "linregress",2661 "log",2688 "log",2662 "parity-scale-codec 3.1.5",2689 "parity-scale-codec 3.2.1",2663 "paste",2690 "paste",2664 "scale-info",2691 "scale-info",2665 "serde",2692 "serde",2666 "sp-api",2693 "sp-api",2667 "sp-application-crypto",2694 "sp-application-crypto",2695 "sp-core",2668 "sp-io",2696 "sp-io",2669 "sp-runtime",2697 "sp-runtime",2670 "sp-runtime-interface",2698 "sp-runtime-interface",2675[[package]]2703[[package]]2676name = "frame-benchmarking-cli"2704name = "frame-benchmarking-cli"2677version = "4.0.0-dev"2705version = "4.0.0-dev"2678source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2706source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2679dependencies = [2707dependencies = [2680 "Inflector",2708 "Inflector",2681 "chrono",2709 "chrono",2694 "linked-hash-map",2722 "linked-hash-map",2695 "log",2723 "log",2696 "memory-db",2724 "memory-db",2697 "parity-scale-codec 3.1.5",2725 "parity-scale-codec 3.2.1",2698 "rand 0.8.5",2726 "rand 0.8.5",2699 "rand_pcg 0.3.1",2727 "rand_pcg 0.3.1",2700 "sc-block-builder",2728 "sc-block-builder",2726[[package]]2754[[package]]2727name = "frame-election-provider-solution-type"2755name = "frame-election-provider-solution-type"2728version = "4.0.0-dev"2756version = "4.0.0-dev"2729source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2757source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2730dependencies = [2758dependencies = [2731 "proc-macro-crate",2759 "proc-macro-crate",2732 "proc-macro2",2760 "proc-macro2",2737[[package]]2765[[package]]2738name = "frame-election-provider-support"2766name = "frame-election-provider-support"2739version = "4.0.0-dev"2767version = "4.0.0-dev"2740source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2768source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2741dependencies = [2769dependencies = [2742 "frame-election-provider-solution-type",2770 "frame-election-provider-solution-type",2743 "frame-support",2771 "frame-support",2744 "frame-system",2772 "frame-system",2745 "parity-scale-codec 3.1.5",2773 "parity-scale-codec 3.2.1",2746 "scale-info",2774 "scale-info",2747 "sp-arithmetic",2775 "sp-arithmetic",2748 "sp-npos-elections",2776 "sp-npos-elections",2753[[package]]2781[[package]]2754name = "frame-executive"2782name = "frame-executive"2755version = "4.0.0-dev"2783version = "4.0.0-dev"2756source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2784source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2757dependencies = [2785dependencies = [2758 "frame-support",2786 "frame-support",2759 "frame-system",2787 "frame-system",2760 "parity-scale-codec 3.1.5",2788 "frame-try-runtime",2789 "parity-scale-codec 3.2.1",2761 "scale-info",2790 "scale-info",2762 "sp-core",2791 "sp-core",2763 "sp-io",2792 "sp-io",2773checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d"2802checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d"2774dependencies = [2803dependencies = [2775 "cfg-if 1.0.0",2804 "cfg-if 1.0.0",2776 "parity-scale-codec 3.1.5",2805 "parity-scale-codec 3.2.1",2777 "scale-info",2806 "scale-info",2778 "serde",2807 "serde",2779]2808]278028092781[[package]]2810[[package]]2782name = "frame-support"2811name = "frame-support"2783version = "4.0.0-dev"2812version = "4.0.0-dev"2784source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2813source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2785dependencies = [2814dependencies = [2786 "bitflags",2815 "bitflags",2787 "frame-metadata",2816 "frame-metadata",2790 "k256",2819 "k256",2791 "log",2820 "log",2792 "once_cell",2821 "once_cell",2793 "parity-scale-codec 3.1.5",2822 "parity-scale-codec 3.2.1",2794 "paste",2823 "paste",2795 "scale-info",2824 "scale-info",2796 "serde",2825 "serde",2797 "smallvec",2826 "smallvec",2827 "sp-api",2798 "sp-arithmetic",2828 "sp-arithmetic",2799 "sp-core",2829 "sp-core",2800 "sp-core-hashing-proc-macro",2830 "sp-core-hashing-proc-macro",2811[[package]]2841[[package]]2812name = "frame-support-procedural"2842name = "frame-support-procedural"2813version = "4.0.0-dev"2843version = "4.0.0-dev"2814source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2844source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2815dependencies = [2845dependencies = [2816 "Inflector",2846 "Inflector",2847 "cfg-expr",2817 "frame-support-procedural-tools",2848 "frame-support-procedural-tools",2849 "itertools",2818 "proc-macro2",2850 "proc-macro2",2819 "quote",2851 "quote",2820 "syn",2852 "syn",2823[[package]]2855[[package]]2824name = "frame-support-procedural-tools"2856name = "frame-support-procedural-tools"2825version = "4.0.0-dev"2857version = "4.0.0-dev"2826source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2858source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2827dependencies = [2859dependencies = [2828 "frame-support-procedural-tools-derive",2860 "frame-support-procedural-tools-derive",2829 "proc-macro-crate",2861 "proc-macro-crate",2835[[package]]2867[[package]]2836name = "frame-support-procedural-tools-derive"2868name = "frame-support-procedural-tools-derive"2837version = "3.0.0"2869version = "3.0.0"2838source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2870source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2839dependencies = [2871dependencies = [2840 "proc-macro2",2872 "proc-macro2",2841 "quote",2873 "quote",2845[[package]]2877[[package]]2846name = "frame-system"2878name = "frame-system"2847version = "4.0.0-dev"2879version = "4.0.0-dev"2848source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2880source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2849dependencies = [2881dependencies = [2850 "frame-support",2882 "frame-support",2851 "log",2883 "log",2852 "parity-scale-codec 3.1.5",2884 "parity-scale-codec 3.2.1",2853 "scale-info",2885 "scale-info",2854 "serde",2886 "serde",2855 "sp-core",2887 "sp-core",2862[[package]]2894[[package]]2863name = "frame-system-benchmarking"2895name = "frame-system-benchmarking"2864version = "4.0.0-dev"2896version = "4.0.0-dev"2865source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2897source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2866dependencies = [2898dependencies = [2867 "frame-benchmarking",2899 "frame-benchmarking",2868 "frame-support",2900 "frame-support",2869 "frame-system",2901 "frame-system",2870 "parity-scale-codec 3.1.5",2902 "parity-scale-codec 3.2.1",2871 "scale-info",2903 "scale-info",2872 "sp-core",2904 "sp-core",2873 "sp-runtime",2905 "sp-runtime",2877[[package]]2909[[package]]2878name = "frame-system-rpc-runtime-api"2910name = "frame-system-rpc-runtime-api"2879version = "4.0.0-dev"2911version = "4.0.0-dev"2880source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2912source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2881dependencies = [2913dependencies = [2882 "parity-scale-codec 3.1.5",2914 "parity-scale-codec 3.2.1",2883 "sp-api",2915 "sp-api",2884]2916]288529172886[[package]]2918[[package]]2887name = "frame-try-runtime"2919name = "frame-try-runtime"2888version = "0.10.0-dev"2920version = "0.10.0-dev"2889source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"2921source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"2890dependencies = [2922dependencies = [2891 "frame-support",2923 "frame-support",2924 "parity-scale-codec 3.2.1",2892 "sp-api",2925 "sp-api",2893 "sp-runtime",2926 "sp-runtime",2894 "sp-std",2927 "sp-std",2895]2928]289629292897[[package]]2930[[package]]2898name = "fs-err"2931name = "fs-err"2899version = "2.7.0"2932version = "2.8.1"2900source = "registry+https://github.com/rust-lang/crates.io-index"2933source = "registry+https://github.com/rust-lang/crates.io-index"2901checksum = "5bd79fa345a495d3ae89fb7165fec01c0e72f41821d642dda363a1e97975652e"2934checksum = "64db3e262960f0662f43a6366788d5f10f7f244b8f7d7d987f560baf5ded5c50"290229352903[[package]]2936[[package]]2904name = "fs-swap"2937name = "fs-swap"294829812949[[package]]2982[[package]]2950name = "futures"2983name = "futures"2951version = "0.3.23"2984version = "0.3.24"2952source = "registry+https://github.com/rust-lang/crates.io-index"2985source = "registry+https://github.com/rust-lang/crates.io-index"2953checksum = "ab30e97ab6aacfe635fad58f22c2bb06c8b685f7421eb1e064a729e2a5f481fa"2986checksum = "7f21eda599937fba36daeb58a22e8f5cee2d14c4a17b5b7739c7c8e5e3b8230c"2954dependencies = [2987dependencies = [2955 "futures-channel",2988 "futures-channel",2956 "futures-core",2989 "futures-core",296329962964[[package]]2997[[package]]2965name = "futures-channel"2998name = "futures-channel"2966version = "0.3.23"2999version = "0.3.24"2967source = "registry+https://github.com/rust-lang/crates.io-index"3000source = "registry+https://github.com/rust-lang/crates.io-index"2968checksum = "2bfc52cbddcfd745bf1740338492bb0bd83d76c67b445f91c5fb29fae29ecaa1"3001checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050"2969dependencies = [3002dependencies = [2970 "futures-core",3003 "futures-core",2971 "futures-sink",3004 "futures-sink",2972]3005]297330062974[[package]]3007[[package]]2975name = "futures-core"3008name = "futures-core"2976version = "0.3.23"3009version = "0.3.24"2977source = "registry+https://github.com/rust-lang/crates.io-index"3010source = "registry+https://github.com/rust-lang/crates.io-index"2978checksum = "d2acedae88d38235936c3922476b10fced7b2b68136f5e3c03c2d5be348a1115"3011checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf"297930122980[[package]]3013[[package]]2981name = "futures-executor"3014name = "futures-executor"2982version = "0.3.23"3015version = "0.3.24"2983source = "registry+https://github.com/rust-lang/crates.io-index"3016source = "registry+https://github.com/rust-lang/crates.io-index"2984checksum = "1d11aa21b5b587a64682c0094c2bdd4df0076c5324961a40cc3abd7f37930528"3017checksum = "9ff63c23854bee61b6e9cd331d523909f238fc7636290b96826e9cfa5faa00ab"2985dependencies = [3018dependencies = [2986 "futures-core",3019 "futures-core",2987 "futures-task",3020 "futures-task",299130242992[[package]]3025[[package]]2993name = "futures-io"3026name = "futures-io"2994version = "0.3.23"3027version = "0.3.24"2995source = "registry+https://github.com/rust-lang/crates.io-index"3028source = "registry+https://github.com/rust-lang/crates.io-index"2996checksum = "93a66fc6d035a26a3ae255a6d2bca35eda63ae4c5512bef54449113f7a1228e5"3029checksum = "bbf4d2a7a308fd4578637c0b17c7e1c7ba127b8f6ba00b29f717e9655d85eb68"299730302998[[package]]3031[[package]]2999name = "futures-lite"3032name = "futures-lite"301230453013[[package]]3046[[package]]3014name = "futures-macro"3047name = "futures-macro"3015version = "0.3.23"3048version = "0.3.24"3016source = "registry+https://github.com/rust-lang/crates.io-index"3049source = "registry+https://github.com/rust-lang/crates.io-index"3017checksum = "0db9cce532b0eae2ccf2766ab246f114b56b9cf6d445e00c2549fbc100ca045d"3050checksum = "42cd15d1c7456c04dbdf7e88bcd69760d74f3a798d6444e16974b505b0e62f17"3018dependencies = [3051dependencies = [3019 "proc-macro2",3052 "proc-macro2",3020 "quote",3053 "quote",303430673035[[package]]3068[[package]]3036name = "futures-sink"3069name = "futures-sink"3037version = "0.3.23"3070version = "0.3.24"3038source = "registry+https://github.com/rust-lang/crates.io-index"3071source = "registry+https://github.com/rust-lang/crates.io-index"3039checksum = "ca0bae1fe9752cf7fd9b0064c674ae63f97b37bc714d745cbde0afb7ec4e6765"3072checksum = "21b20ba5a92e727ba30e72834706623d94ac93a725410b6a6b6fbc1b07f7ba56"304030733041[[package]]3074[[package]]3042name = "futures-task"3075name = "futures-task"3043version = "0.3.23"3076version = "0.3.24"3044source = "registry+https://github.com/rust-lang/crates.io-index"3077source = "registry+https://github.com/rust-lang/crates.io-index"3045checksum = "842fc63b931f4056a24d59de13fb1272134ce261816e063e634ad0c15cdc5306"3078checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1"304630793047[[package]]3080[[package]]3048name = "futures-timer"3081name = "futures-timer"305230853053[[package]]3086[[package]]3054name = "futures-util"3087name = "futures-util"3055version = "0.3.23"3088version = "0.3.24"3056source = "registry+https://github.com/rust-lang/crates.io-index"3089source = "registry+https://github.com/rust-lang/crates.io-index"3057checksum = "f0828a5471e340229c11c77ca80017937ce3c58cb788a17e5f1c2d5c485a9577"3090checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90"3058dependencies = [3091dependencies = [3059 "futures 0.1.31",3092 "futures 0.1.31",3060 "futures-channel",3093 "futures-channel",3190checksum = "bc5ac374b108929de78460075f3dc439fa66df9d8fc77e8f12caa5165fcf0c89"3223checksum = "bc5ac374b108929de78460075f3dc439fa66df9d8fc77e8f12caa5165fcf0c89"3191dependencies = [3224dependencies = [3192 "ff",3225 "ff",3193 "rand_core 0.6.3",3226 "rand_core 0.6.4",3194 "subtle",3227 "subtle",3195]3228]319632293197[[package]]3230[[package]]3198name = "h2"3231name = "h2"3199version = "0.3.13"3232version = "0.3.14"3200source = "registry+https://github.com/rust-lang/crates.io-index"3233source = "registry+https://github.com/rust-lang/crates.io-index"3201checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"3234checksum = "5ca32592cf21ac7ccab1825cd87f6c9b3d9022c44d086172ed0966bec8af30be"3202dependencies = [3235dependencies = [3203 "bytes",3236 "bytes",3204 "fnv",3237 "fnv",321532483216[[package]]3249[[package]]3217name = "handlebars"3250name = "handlebars"3218version = "4.3.3"3251version = "4.3.4"3219source = "registry+https://github.com/rust-lang/crates.io-index"3252source = "registry+https://github.com/rust-lang/crates.io-index"3220checksum = "360d9740069b2f6cbb63ce2dbaa71a20d3185350cbb990d7bebeb9318415eb17"3253checksum = "56b224eaa4987c03c30b251de7ef0c15a6a59f34222905850dbc3026dfb24d5f"3221dependencies = [3254dependencies = [3222 "log",3255 "log",3223 "pest",3256 "pest",335933923360[[package]]3393[[package]]3361name = "httparse"3394name = "httparse"3362version = "1.7.1"3395version = "1.8.0"3363source = "registry+https://github.com/rust-lang/crates.io-index"3396source = "registry+https://github.com/rust-lang/crates.io-index"3364checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c"3397checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"336533983366[[package]]3399[[package]]3367name = "httpdate"3400name = "httpdate"341634493417[[package]]3450[[package]]3418name = "iana-time-zone"3451name = "iana-time-zone"3419version = "0.1.45"3452version = "0.1.50"3420source = "registry+https://github.com/rust-lang/crates.io-index"3453source = "registry+https://github.com/rust-lang/crates.io-index"3421checksum = "ef5528d9c2817db4e10cc78f8d4c8228906e5854f389ff6b076cee3572a09d35"3454checksum = "fd911b35d940d2bd0bea0f9100068e5b97b51a1cbe13d13382f132e0365257a0"3422dependencies = [3455dependencies = [3423 "android_system_properties",3456 "android_system_properties",3424 "core-foundation-sys",3457 "core-foundation-sys",3439]3472]344034733441[[package]]3474[[package]]3475name = "idna"3476version = "0.3.0"3477source = "registry+https://github.com/rust-lang/crates.io-index"3478checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"3479dependencies = [3480 "unicode-bidi",3481 "unicode-normalization",3482]34833484[[package]]3442name = "if-addrs"3485name = "if-addrs"3443version = "0.7.0"3486version = "0.7.0"3444source = "registry+https://github.com/rust-lang/crates.io-index"3487source = "registry+https://github.com/rust-lang/crates.io-index"3457 "async-io",3500 "async-io",3458 "core-foundation",3501 "core-foundation",3459 "fnv",3502 "fnv",3460 "futures 0.3.23",3503 "futures 0.3.24",3461 "if-addrs",3504 "if-addrs",3462 "ipnet",3505 "ipnet",3463 "log",3506 "log",3472source = "registry+https://github.com/rust-lang/crates.io-index"3515source = "registry+https://github.com/rust-lang/crates.io-index"3473checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f"3516checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f"3474dependencies = [3517dependencies = [3475 "parity-scale-codec 3.1.5",3518 "parity-scale-codec 3.2.1",3476]3519]347735203478[[package]]3521[[package]]354735903548[[package]]3591[[package]]3549name = "io-lifetimes"3592name = "io-lifetimes"3550version = "0.7.2"3593version = "0.7.3"3551source = "registry+https://github.com/rust-lang/crates.io-index"3594source = "registry+https://github.com/rust-lang/crates.io-index"3552checksum = "24c3f4eff5495aee4c0399d7b6a0dc2b6e81be84242ffbfcf253ebacccc1d0cb"3595checksum = "1ea37f355c05dde75b84bba2d767906ad522e97cd9e2eef2be7a4ab7fb442c06"355335963554[[package]]3597[[package]]3555name = "ip_network"3598name = "ip_network"357736203578[[package]]3621[[package]]3579name = "itertools"3622name = "itertools"3580version = "0.10.3"3623version = "0.10.5"3581source = "registry+https://github.com/rust-lang/crates.io-index"3624source = "registry+https://github.com/rust-lang/crates.io-index"3582checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"3625checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"3583dependencies = [3626dependencies = [3584 "either",3627 "either",3585]3628]359836413599[[package]]3642[[package]]3600name = "jobserver"3643name = "jobserver"3601version = "0.1.24"3644version = "0.1.25"3602source = "registry+https://github.com/rust-lang/crates.io-index"3645source = "registry+https://github.com/rust-lang/crates.io-index"3603checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"3646checksum = "068b1ee6743e4d11fb9c6a1e6064b3693a1b600e7f5f5988047d98b3dc9fb90b"3604dependencies = [3647dependencies = [3605 "libc",3648 "libc",3606]3649]360736503608[[package]]3651[[package]]3609name = "js-sys"3652name = "js-sys"3610version = "0.3.59"3653version = "0.3.60"3611source = "registry+https://github.com/rust-lang/crates.io-index"3654source = "registry+https://github.com/rust-lang/crates.io-index"3612checksum = "258451ab10b34f8af53416d1fdab72c22e805f0c92a1136d59470ec0b11138b2"3655checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"3613dependencies = [3656dependencies = [3614 "wasm-bindgen",3657 "wasm-bindgen",3615]3658]361636593617[[package]]3660[[package]]3618name = "jsonrpsee"3661name = "jsonrpsee"3619version = "0.14.0"3662version = "0.15.1"3620source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3663source = "registry+https://github.com/rust-lang/crates.io-index"3664checksum = "8bd0d559d5e679b1ab2f869b486a11182923863b1b3ee8b421763cdd707b783a"3621dependencies = [3665dependencies = [3622 "jsonrpsee-core",3666 "jsonrpsee-core",3623 "jsonrpsee-http-server",3667 "jsonrpsee-http-server",363036743631[[package]]3675[[package]]3632name = "jsonrpsee-client-transport"3676name = "jsonrpsee-client-transport"3633version = "0.14.0"3677version = "0.15.1"3634source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3678source = "registry+https://github.com/rust-lang/crates.io-index"3679checksum = "8752740ecd374bcbf8b69f3e80b0327942df76f793f8d4e60d3355650c31fb74"3635dependencies = [3680dependencies = [3636 "futures-util",3681 "futures-util",3637 "http",3682 "http",365036953651[[package]]3696[[package]]3652name = "jsonrpsee-core"3697name = "jsonrpsee-core"3653version = "0.14.0"3698version = "0.15.1"3654source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3699source = "registry+https://github.com/rust-lang/crates.io-index"3700checksum = "f3dc3e9cf2ba50b7b1d7d76a667619f82846caa39e8e8daa8a4962d74acaddca"3655dependencies = [3701dependencies = [3656 "anyhow",3702 "anyhow",3657 "arrayvec 0.7.2",3703 "arrayvec 0.7.2",3662 "futures-timer",3708 "futures-timer",3663 "futures-util",3709 "futures-util",3664 "globset",3710 "globset",3711 "http",3665 "hyper",3712 "hyper",3666 "jsonrpsee-types",3713 "jsonrpsee-types",3667 "lazy_static",3714 "lazy_static",3674 "thiserror",3721 "thiserror",3675 "tokio",3722 "tokio",3676 "tracing",3723 "tracing",3724 "tracing-futures",3677 "unicase",3725 "unicase",3678]3726]367937273680[[package]]3728[[package]]3681name = "jsonrpsee-http-server"3729name = "jsonrpsee-http-server"3682version = "0.14.0"3730version = "0.15.1"3683source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3731source = "registry+https://github.com/rust-lang/crates.io-index"3732checksum = "03802f0373a38c2420c70b5144742d800b509e2937edc4afb116434f07120117"3684dependencies = [3733dependencies = [3685 "futures-channel",3734 "futures-channel",3686 "futures-util",3735 "futures-util",3691 "serde_json",3740 "serde_json",3692 "tokio",3741 "tokio",3693 "tracing",3742 "tracing",3743 "tracing-futures",3694]3744]369537453696[[package]]3746[[package]]3697name = "jsonrpsee-proc-macros"3747name = "jsonrpsee-proc-macros"3698version = "0.14.0"3748version = "0.15.1"3699source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3749source = "registry+https://github.com/rust-lang/crates.io-index"3750checksum = "bd67957d4280217247588ac86614ead007b301ca2fa9f19c19f880a536f029e3"3700dependencies = [3751dependencies = [3701 "proc-macro-crate",3752 "proc-macro-crate",3702 "proc-macro2",3753 "proc-macro2",370637573707[[package]]3758[[package]]3708name = "jsonrpsee-types"3759name = "jsonrpsee-types"3709version = "0.14.0"3760version = "0.15.1"3710source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3761source = "registry+https://github.com/rust-lang/crates.io-index"3762checksum = "e290bba767401b646812f608c099b922d8142603c9e73a50fb192d3ac86f4a0d"3711dependencies = [3763dependencies = [3712 "anyhow",3764 "anyhow",3713 "beef",3765 "beef",371937713720[[package]]3772[[package]]3721name = "jsonrpsee-ws-client"3773name = "jsonrpsee-ws-client"3722version = "0.14.0"3774version = "0.15.1"3723source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3775source = "registry+https://github.com/rust-lang/crates.io-index"3776checksum = "6ee5feddd5188e62ac08fcf0e56478138e581509d4730f3f7be9b57dd402a4ff"3724dependencies = [3777dependencies = [3778 "http",3725 "jsonrpsee-client-transport",3779 "jsonrpsee-client-transport",3726 "jsonrpsee-core",3780 "jsonrpsee-core",3727 "jsonrpsee-types",3781 "jsonrpsee-types",3728]3782]372937833730[[package]]3784[[package]]3731name = "jsonrpsee-ws-server"3785name = "jsonrpsee-ws-server"3732version = "0.14.0"3786version = "0.15.1"3733source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.14.0-fix-unknown-fields#01bb8a7ec51880c79206bdcac4f09d54e58b2da8"3787source = "registry+https://github.com/rust-lang/crates.io-index"3788checksum = "d488ba74fb369e5ab68926feb75a483458b88e768d44319f37e4ecad283c7325"3734dependencies = [3789dependencies = [3735 "futures-channel",3790 "futures-channel",3736 "futures-util",3791 "futures-util",3792 "http",3737 "jsonrpsee-core",3793 "jsonrpsee-core",3738 "jsonrpsee-types",3794 "jsonrpsee-types",3739 "serde_json",3795 "serde_json",3742 "tokio-stream",3798 "tokio-stream",3743 "tokio-util",3799 "tokio-util",3744 "tracing",3800 "tracing",3801 "tracing-futures",3745]3802]374638033747[[package]]3804[[package]]376438213765[[package]]3822[[package]]3766name = "kusama-runtime"3823name = "kusama-runtime"3767version = "0.9.27"3824version = "0.9.29"3768source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"3825source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"3769dependencies = [3826dependencies = [3770 "beefy-primitives",3827 "beefy-primitives",3771 "bitvec 1.0.1",3828 "bitvec 1.0.1",3822 "pallet-vesting",3879 "pallet-vesting",3823 "pallet-xcm",3880 "pallet-xcm",3824 "pallet-xcm-benchmarks",3881 "pallet-xcm-benchmarks",3825 "parity-scale-codec 3.1.5",3882 "parity-scale-codec 3.2.1",3826 "polkadot-primitives",3883 "polkadot-primitives",3827 "polkadot-runtime-common",3884 "polkadot-runtime-common",3828 "polkadot-runtime-parachains",3885 "polkadot-runtime-parachains",385739143858[[package]]3915[[package]]3859name = "kusama-runtime-constants"3916name = "kusama-runtime-constants"3860version = "0.9.27"3917version = "0.9.29"3861source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"3918source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"3862dependencies = [3919dependencies = [3863 "frame-support",3920 "frame-support",3864 "polkadot-primitives",3921 "polkadot-primitives",392939863930[[package]]3987[[package]]3931name = "libc"3988name = "libc"3932version = "0.2.131"3989version = "0.2.134"3933source = "registry+https://github.com/rust-lang/crates.io-index"3990source = "registry+https://github.com/rust-lang/crates.io-index"3934checksum = "04c3b4822ccebfa39c02fc03d1534441b22ead323fa0f48bb7ddd8e6ba076a40"3991checksum = "329c933548736bc49fd575ee68c89e8be4d260064184389a5b77517cddd99ffb"393539923936[[package]]3993[[package]]3937name = "libloading"3994name = "libloading"3966checksum = "81327106887e42d004fbdab1fef93675be2e2e07c1b95fce45e2cc813485611d"4023checksum = "81327106887e42d004fbdab1fef93675be2e2e07c1b95fce45e2cc813485611d"3967dependencies = [4024dependencies = [3968 "bytes",4025 "bytes",3969 "futures 0.3.23",4026 "futures 0.3.24",3970 "futures-timer",4027 "futures-timer",3971 "getrandom 0.2.7",4028 "getrandom 0.2.7",3972 "instant",4029 "instant",4010checksum = "4decc51f3573653a9f4ecacb31b1b922dd20c25a6322bb15318ec04287ec46f9"4067checksum = "4decc51f3573653a9f4ecacb31b1b922dd20c25a6322bb15318ec04287ec46f9"4011dependencies = [4068dependencies = [4012 "async-trait",4069 "async-trait",4013 "futures 0.3.23",4070 "futures 0.3.24",4014 "futures-timer",4071 "futures-timer",4015 "instant",4072 "instant",4016 "libp2p-core",4073 "libp2p-core",4033 "ed25519-dalek",4090 "ed25519-dalek",4034 "either",4091 "either",4035 "fnv",4092 "fnv",4036 "futures 0.3.23",4093 "futures 0.3.24",4037 "futures-timer",4094 "futures-timer",4038 "instant",4095 "instant",4039 "lazy_static",4096 "lazy_static",4049 "rand 0.8.5",4106 "rand 0.8.5",4050 "ring",4107 "ring",4051 "rw-stream-sink",4108 "rw-stream-sink",4052 "sha2 0.10.2",4109 "sha2 0.10.6",4053 "smallvec",4110 "smallvec",4054 "thiserror",4111 "thiserror",4055 "unsigned-varint",4112 "unsigned-varint",4064checksum = "d0183dc2a3da1fbbf85e5b6cf51217f55b14f5daea0c455a9536eef646bfec71"4121checksum = "d0183dc2a3da1fbbf85e5b6cf51217f55b14f5daea0c455a9536eef646bfec71"4065dependencies = [4122dependencies = [4066 "flate2",4123 "flate2",4067 "futures 0.3.23",4124 "futures 0.3.24",4068 "libp2p-core",4125 "libp2p-core",4069]4126]407041274075checksum = "6cbf54723250fa5d521383be789bf60efdabe6bacfb443f87da261019a49b4b5"4132checksum = "6cbf54723250fa5d521383be789bf60efdabe6bacfb443f87da261019a49b4b5"4076dependencies = [4133dependencies = [4077 "async-std-resolver",4134 "async-std-resolver",4078 "futures 0.3.23",4135 "futures 0.3.24",4079 "libp2p-core",4136 "libp2p-core",4080 "log",4137 "log",4081 "parking_lot 0.12.1",4138 "parking_lot 0.12.1",4091dependencies = [4148dependencies = [4092 "cuckoofilter",4149 "cuckoofilter",4093 "fnv",4150 "fnv",4094 "futures 0.3.23",4151 "futures 0.3.24",4095 "libp2p-core",4152 "libp2p-core",4096 "libp2p-swarm",4153 "libp2p-swarm",4097 "log",4154 "log",4112 "byteorder",4169 "byteorder",4113 "bytes",4170 "bytes",4114 "fnv",4171 "fnv",4115 "futures 0.3.23",4172 "futures 0.3.24",4116 "hex_fmt",4173 "hex_fmt",4117 "instant",4174 "instant",4118 "libp2p-core",4175 "libp2p-core",4123 "prost-build",4180 "prost-build",4124 "rand 0.7.3",4181 "rand 0.7.3",4125 "regex",4182 "regex",4126 "sha2 0.10.2",4183 "sha2 0.10.6",4127 "smallvec",4184 "smallvec",4128 "unsigned-varint",4185 "unsigned-varint",4129 "wasm-timer",4186 "wasm-timer",4136checksum = "c50b585518f8efd06f93ac2f976bd672e17cdac794644b3117edd078e96bda06"4193checksum = "c50b585518f8efd06f93ac2f976bd672e17cdac794644b3117edd078e96bda06"4137dependencies = [4194dependencies = [4138 "asynchronous-codec",4195 "asynchronous-codec",4139 "futures 0.3.23",4196 "futures 0.3.24",4140 "futures-timer",4197 "futures-timer",4141 "libp2p-core",4198 "libp2p-core",4142 "libp2p-swarm",4199 "libp2p-swarm",4161 "bytes",4218 "bytes",4162 "either",4219 "either",4163 "fnv",4220 "fnv",4164 "futures 0.3.23",4221 "futures 0.3.24",4165 "futures-timer",4222 "futures-timer",4166 "instant",4223 "instant",4167 "libp2p-core",4224 "libp2p-core",4170 "prost",4227 "prost",4171 "prost-build",4228 "prost-build",4172 "rand 0.7.3",4229 "rand 0.7.3",4173 "sha2 0.10.2",4230 "sha2 0.10.6",4174 "smallvec",4231 "smallvec",4175 "thiserror",4232 "thiserror",4176 "uint",4233 "uint",4187 "async-io",4244 "async-io",4188 "data-encoding",4245 "data-encoding",4189 "dns-parser",4246 "dns-parser",4190 "futures 0.3.23",4247 "futures 0.3.24",4191 "if-watch",4248 "if-watch",4192 "lazy_static",4249 "lazy_static",4193 "libp2p-core",4250 "libp2p-core",4223dependencies = [4280dependencies = [4224 "asynchronous-codec",4281 "asynchronous-codec",4225 "bytes",4282 "bytes",4226 "futures 0.3.23",4283 "futures 0.3.24",4227 "libp2p-core",4284 "libp2p-core",4228 "log",4285 "log",4229 "nohash-hasher",4286 "nohash-hasher",4241dependencies = [4298dependencies = [4242 "bytes",4299 "bytes",4243 "curve25519-dalek 3.2.0",4300 "curve25519-dalek 3.2.0",4244 "futures 0.3.23",4301 "futures 0.3.24",4245 "lazy_static",4302 "lazy_static",4246 "libp2p-core",4303 "libp2p-core",4247 "log",4304 "log",4248 "prost",4305 "prost",4249 "prost-build",4306 "prost-build",4250 "rand 0.8.5",4307 "rand 0.8.5",4251 "sha2 0.10.2",4308 "sha2 0.10.6",4252 "snow",4309 "snow",4253 "static_assertions",4310 "static_assertions",4254 "x25519-dalek",4311 "x25519-dalek",4261source = "registry+https://github.com/rust-lang/crates.io-index"4318source = "registry+https://github.com/rust-lang/crates.io-index"4262checksum = "100a6934ae1dbf8a693a4e7dd1d730fd60b774dafc45688ed63b554497c6c925"4319checksum = "100a6934ae1dbf8a693a4e7dd1d730fd60b774dafc45688ed63b554497c6c925"4263dependencies = [4320dependencies = [4264 "futures 0.3.23",4321 "futures 0.3.24",4265 "futures-timer",4322 "futures-timer",4266 "instant",4323 "instant",4267 "libp2p-core",4324 "libp2p-core",4279dependencies = [4336dependencies = [4280 "asynchronous-codec",4337 "asynchronous-codec",4281 "bytes",4338 "bytes",4282 "futures 0.3.23",4339 "futures 0.3.24",4283 "libp2p-core",4340 "libp2p-core",4284 "log",4341 "log",4285 "prost",4342 "prost",4294source = "registry+https://github.com/rust-lang/crates.io-index"4351source = "registry+https://github.com/rust-lang/crates.io-index"4295checksum = "0f1a458bbda880107b5b36fcb9b5a1ef0c329685da0e203ed692a8ebe64cc92c"4352checksum = "0f1a458bbda880107b5b36fcb9b5a1ef0c329685da0e203ed692a8ebe64cc92c"4296dependencies = [4353dependencies = [4297 "futures 0.3.23",4354 "futures 0.3.24",4298 "log",4355 "log",4299 "pin-project",4356 "pin-project",4300 "rand 0.7.3",4357 "rand 0.7.3",4311 "asynchronous-codec",4368 "asynchronous-codec",4312 "bytes",4369 "bytes",4313 "either",4370 "either",4314 "futures 0.3.23",4371 "futures 0.3.24",4315 "futures-timer",4372 "futures-timer",4316 "instant",4373 "instant",4317 "libp2p-core",4374 "libp2p-core",4336dependencies = [4393dependencies = [4337 "asynchronous-codec",4394 "asynchronous-codec",4338 "bimap",4395 "bimap",4339 "futures 0.3.23",4396 "futures 0.3.24",4340 "futures-timer",4397 "futures-timer",4341 "instant",4398 "instant",4342 "libp2p-core",4399 "libp2p-core",4345 "prost",4402 "prost",4346 "prost-build",4403 "prost-build",4347 "rand 0.8.5",4404 "rand 0.8.5",4348 "sha2 0.10.2",4405 "sha2 0.10.6",4349 "thiserror",4406 "thiserror",4350 "unsigned-varint",4407 "unsigned-varint",4351 "void",4408 "void",4359dependencies = [4416dependencies = [4360 "async-trait",4417 "async-trait",4361 "bytes",4418 "bytes",4362 "futures 0.3.23",4419 "futures 0.3.24",4363 "instant",4420 "instant",4364 "libp2p-core",4421 "libp2p-core",4365 "libp2p-swarm",4422 "libp2p-swarm",4377dependencies = [4434dependencies = [4378 "either",4435 "either",4379 "fnv",4436 "fnv",4380 "futures 0.3.23",4437 "futures 0.3.24",4381 "futures-timer",4438 "futures-timer",4382 "instant",4439 "instant",4383 "libp2p-core",4440 "libp2p-core",4406checksum = "8a6771dc19aa3c65d6af9a8c65222bfc8fcd446630ddca487acd161fa6096f3b"4463checksum = "8a6771dc19aa3c65d6af9a8c65222bfc8fcd446630ddca487acd161fa6096f3b"4407dependencies = [4464dependencies = [4408 "async-io",4465 "async-io",4409 "futures 0.3.23",4466 "futures 0.3.24",4410 "futures-timer",4467 "futures-timer",4411 "if-watch",4468 "if-watch",4412 "ipnet",4469 "ipnet",4423checksum = "d125e3e5f0d58f3c6ac21815b20cf4b6a88b8db9dc26368ea821838f4161fd4d"4480checksum = "d125e3e5f0d58f3c6ac21815b20cf4b6a88b8db9dc26368ea821838f4161fd4d"4424dependencies = [4481dependencies = [4425 "async-std",4482 "async-std",4426 "futures 0.3.23",4483 "futures 0.3.24",4427 "libp2p-core",4484 "libp2p-core",4428 "log",4485 "log",4429]4486]4434source = "registry+https://github.com/rust-lang/crates.io-index"4491source = "registry+https://github.com/rust-lang/crates.io-index"4435checksum = "ec894790eec3c1608f8d1a8a0bdf0dbeb79ed4de2dce964222011c2896dfa05a"4492checksum = "ec894790eec3c1608f8d1a8a0bdf0dbeb79ed4de2dce964222011c2896dfa05a"4436dependencies = [4493dependencies = [4437 "futures 0.3.23",4494 "futures 0.3.24",4438 "js-sys",4495 "js-sys",4439 "libp2p-core",4496 "libp2p-core",4440 "parity-send-wrapper",4497 "parity-send-wrapper",4449checksum = "9808e57e81be76ff841c106b4c5974fb4d41a233a7bdd2afbf1687ac6def3818"4506checksum = "9808e57e81be76ff841c106b4c5974fb4d41a233a7bdd2afbf1687ac6def3818"4450dependencies = [4507dependencies = [4451 "either",4508 "either",4452 "futures 0.3.23",4509 "futures 0.3.24",4453 "futures-rustls",4510 "futures-rustls",4454 "libp2p-core",4511 "libp2p-core",4455 "log",4512 "log",4467source = "registry+https://github.com/rust-lang/crates.io-index"4524source = "registry+https://github.com/rust-lang/crates.io-index"4468checksum = "c6dea686217a06072033dc025631932810e2f6ad784e4fafa42e27d311c7a81c"4525checksum = "c6dea686217a06072033dc025631932810e2f6ad784e4fafa42e27d311c7a81c"4469dependencies = [4526dependencies = [4470 "futures 0.3.23",4527 "futures 0.3.24",4471 "libp2p-core",4528 "libp2p-core",4472 "parking_lot 0.12.1",4529 "parking_lot 0.12.1",4473 "thiserror",4530 "thiserror",458746444588[[package]]4645[[package]]4589name = "lock_api"4646name = "lock_api"4590version = "0.4.7"4647version = "0.4.9"4591source = "registry+https://github.com/rust-lang/crates.io-index"4648source = "registry+https://github.com/rust-lang/crates.io-index"4592checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"4649checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"4593dependencies = [4650dependencies = [4594 "autocfg",4651 "autocfg",4595 "scopeguard",4652 "scopeguard",461746744618[[package]]4675[[package]]4619name = "lru"4676name = "lru"4620version = "0.6.6"4677version = "0.7.8"4621source = "registry+https://github.com/rust-lang/crates.io-index"4678source = "registry+https://github.com/rust-lang/crates.io-index"4622checksum = "7ea2d928b485416e8908cff2d97d621db22b27f7b3b6729e438bcf42c671ba91"4679checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a"4623dependencies = [4680dependencies = [4624 "hashbrown 0.11.2",4681 "hashbrown 0.12.3",4625]4682]462646834627[[package]]4684[[package]]4628name = "lru"4685name = "lru"4629version = "0.7.8"4686version = "0.8.1"4630source = "registry+https://github.com/rust-lang/crates.io-index"4687source = "registry+https://github.com/rust-lang/crates.io-index"4631checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a"4688checksum = "b6e8aaa3f231bb4bd57b84b2d5dc3ae7f350265df8aa96492e0bc394a1571909"4632dependencies = [4689dependencies = [4633 "hashbrown 0.12.3",4690 "hashbrown 0.12.3",4634]4691]464447014645[[package]]4702[[package]]4646name = "lz4"4703name = "lz4"4647version = "1.23.3"4704version = "1.24.0"4648source = "registry+https://github.com/rust-lang/crates.io-index"4705source = "registry+https://github.com/rust-lang/crates.io-index"4649checksum = "4edcb94251b1c375c459e5abe9fb0168c1c826c3370172684844f8f3f8d1a885"4706checksum = "7e9e2dd86df36ce760a60f6ff6ad526f7ba1f14ba0356f8254fb6905e6494df1"4650dependencies = [4707dependencies = [4651 "libc",4708 "libc",4652 "lz4-sys",4709 "lz4-sys",4653]4710]465447114655[[package]]4712[[package]]4656name = "lz4-sys"4713name = "lz4-sys"4657version = "1.9.3"4714version = "1.9.4"4658source = "registry+https://github.com/rust-lang/crates.io-index"4715source = "registry+https://github.com/rust-lang/crates.io-index"4659checksum = "d7be8908e2ed6f31c02db8a9fa962f03e36c53fbfde437363eae3306b85d7e17"4716checksum = "57d27b317e207b10f69f5e75494119e391a96f48861ae870d1da6edac98ca900"4660dependencies = [4717dependencies = [4661 "cc",4718 "cc",4662 "libc",4719 "libc",471847754719[[package]]4776[[package]]4720name = "memmap2"4777name = "memmap2"4721version = "0.2.3"4722source = "registry+https://github.com/rust-lang/crates.io-index"4723checksum = "723e3ebdcdc5c023db1df315364573789f8857c11b631a2fdfad7c00f5c046b4"4724dependencies = [4725 "libc",4726]47274728[[package]]4729name = "memmap2"4730version = "0.5.7"4778version = "0.5.7"4731source = "registry+https://github.com/rust-lang/crates.io-index"4779source = "registry+https://github.com/rust-lang/crates.io-index"4732checksum = "95af15f345b17af2efc8ead6080fb8bc376f8cec1b35277b935637595fe77498"4780checksum = "95af15f345b17af2efc8ead6080fb8bc376f8cec1b35277b935637595fe77498"475648044757[[package]]4805[[package]]4758name = "memory-lru"4806name = "memory-lru"4759version = "0.1.0"4807version = "0.1.1"4760source = "registry+https://github.com/rust-lang/crates.io-index"4808source = "registry+https://github.com/rust-lang/crates.io-index"4761checksum = "beeb98b3d1ed2c0054bd81b5ba949a0243c3ccad751d45ea898fa8059fa2860a"4809checksum = "ce95ae042940bad7e312857b929ee3d11b8f799a80cb7b9c7ec5125516906395"4762dependencies = [4810dependencies = [4763 "lru 0.6.6",4811 "lru 0.8.1",4764]4812]476548134766[[package]]4814[[package]]4787source = "registry+https://github.com/rust-lang/crates.io-index"4835source = "registry+https://github.com/rust-lang/crates.io-index"4788checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532"4836checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532"4789dependencies = [4837dependencies = [4790 "futures 0.3.23",4838 "futures 0.3.24",4791 "rand 0.8.5",4839 "rand 0.8.5",4792 "thrift",4840 "thrift",4793]4841]480048484801[[package]]4849[[package]]4802name = "miniz_oxide"4850name = "miniz_oxide"4803version = "0.5.3"4851version = "0.5.4"4804source = "registry+https://github.com/rust-lang/crates.io-index"4852source = "registry+https://github.com/rust-lang/crates.io-index"4805checksum = "6f5c75688da582b8ffc1f1799e9db273f32133c49e048f614d22ec3256773ccc"4853checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34"4806dependencies = [4854dependencies = [4807 "adler",4855 "adler",4808]4856]4864 "blake2s_simd",4912 "blake2s_simd",4865 "blake3",4913 "blake3",4866 "core2",4914 "core2",4867 "digest 0.10.3",4915 "digest 0.10.5",4868 "multihash-derive",4916 "multihash-derive",4869 "sha2 0.10.2",4917 "sha2 0.10.6",4870 "sha3 0.10.2",4918 "sha3 0.10.5",4871 "unsigned-varint",4919 "unsigned-varint",4872]4920]487349214898checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b"4946checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b"4899dependencies = [4947dependencies = [4900 "bytes",4948 "bytes",4901 "futures 0.3.23",4949 "futures 0.3.24",4902 "log",4950 "log",4903 "pin-project",4951 "pin-project",4904 "smallvec",4952 "smallvec",4994checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6"5042checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6"4995dependencies = [5043dependencies = [4996 "bytes",5044 "bytes",4997 "futures 0.3.23",5045 "futures 0.3.24",4998 "log",5046 "log",4999 "netlink-packet-core",5047 "netlink-packet-core",5000 "netlink-sys",5048 "netlink-sys",5010dependencies = [5058dependencies = [5011 "async-io",5059 "async-io",5012 "bytes",5060 "bytes",5013 "futures 0.3.23",5061 "futures 0.3.24",5014 "libc",5062 "libc",5015 "log",5063 "log",5016]5064]516352115164[[package]]5212[[package]]5165name = "once_cell"5213name = "once_cell"5166version = "1.13.0"5214version = "1.15.0"5167source = "registry+https://github.com/rust-lang/crates.io-index"5215source = "registry+https://github.com/rust-lang/crates.io-index"5168checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"5216checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1"516952175170[[package]]5218[[package]]5171name = "opal-runtime"5219name = "opal-runtime"5172version = "0.9.27"5220version = "0.9.29"5173dependencies = [5221dependencies = [5174 "app-promotion-rpc",5222 "app-promotion-rpc",5175 "cumulus-pallet-aura-ext",5223 "cumulus-pallet-aura-ext",5231 "pallet-unique-scheduler",5279 "pallet-unique-scheduler",5232 "pallet-xcm",5280 "pallet-xcm",5233 "parachain-info",5281 "parachain-info",5234 "parity-scale-codec 3.1.5",5282 "parity-scale-codec 3.2.1",5235 "polkadot-parachain",5283 "polkadot-parachain",5236 "rmrk-rpc",5284 "rmrk-rpc",5237 "scale-info",5285 "scale-info",5281[[package]]5329[[package]]5282name = "orchestra"5330name = "orchestra"5283version = "0.0.1"5331version = "0.0.1"5284source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"5332source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"5285dependencies = [5333dependencies = [5286 "async-trait",5334 "async-trait",5287 "dyn-clonable",5335 "dyn-clonable",5288 "futures 0.3.23",5336 "futures 0.3.24",5289 "futures-timer",5337 "futures-timer",5290 "orchestra-proc-macro",5338 "orchestra-proc-macro",5291 "pin-project",5339 "pin-project",5297[[package]]5345[[package]]5298name = "orchestra-proc-macro"5346name = "orchestra-proc-macro"5299version = "0.0.1"5347version = "0.0.1"5300source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"5348source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"5301dependencies = [5349dependencies = [5302 "expander 0.0.6",5350 "expander 0.0.6",5303 "itertools",5351 "itertools",5320[[package]]5368[[package]]5321name = "orml-tokens"5369name = "orml-tokens"5322version = "0.4.1-dev"5370version = "0.4.1-dev"5323source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5371source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5324dependencies = [5372dependencies = [5325 "frame-support",5373 "frame-support",5326 "frame-system",5374 "frame-system",5327 "orml-traits",5375 "orml-traits",5328 "parity-scale-codec 3.1.5",5376 "parity-scale-codec 3.2.1",5329 "scale-info",5377 "scale-info",5330 "serde",5378 "serde",5331 "sp-runtime",5379 "sp-runtime",5335[[package]]5383[[package]]5336name = "orml-traits"5384name = "orml-traits"5337version = "0.4.1-dev"5385version = "0.4.1-dev"5338source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5386source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5339dependencies = [5387dependencies = [5340 "frame-support",5388 "frame-support",5341 "impl-trait-for-tuples",5389 "impl-trait-for-tuples",5342 "num-traits",5390 "num-traits",5343 "orml-utilities",5391 "orml-utilities",5344 "parity-scale-codec 3.1.5",5392 "parity-scale-codec 3.2.1",5345 "scale-info",5393 "scale-info",5346 "serde",5394 "serde",5347 "sp-io",5395 "sp-io",5353[[package]]5401[[package]]5354name = "orml-utilities"5402name = "orml-utilities"5355version = "0.4.1-dev"5403version = "0.4.1-dev"5356source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5404source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5357dependencies = [5405dependencies = [5358 "frame-support",5406 "frame-support",5359 "parity-scale-codec 3.1.5",5407 "parity-scale-codec 3.2.1",5360 "scale-info",5408 "scale-info",5361 "serde",5409 "serde",5362 "sp-io",5410 "sp-io",5367[[package]]5415[[package]]5368name = "orml-vesting"5416name = "orml-vesting"5369version = "0.4.1-dev"5417version = "0.4.1-dev"5370source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5418source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5371dependencies = [5419dependencies = [5372 "frame-support",5420 "frame-support",5373 "frame-system",5421 "frame-system",5374 "parity-scale-codec 3.1.5",5422 "parity-scale-codec 3.2.1",5375 "scale-info",5423 "scale-info",5376 "serde",5424 "serde",5377 "sp-io",5425 "sp-io",5382[[package]]5430[[package]]5383name = "orml-xcm-support"5431name = "orml-xcm-support"5384version = "0.4.1-dev"5432version = "0.4.1-dev"5385source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5433source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5386dependencies = [5434dependencies = [5387 "frame-support",5435 "frame-support",5388 "orml-traits",5436 "orml-traits",5389 "parity-scale-codec 3.1.5",5437 "parity-scale-codec 3.2.1",5390 "sp-runtime",5438 "sp-runtime",5391 "sp-std",5439 "sp-std",5392 "xcm",5440 "xcm",5396[[package]]5444[[package]]5397name = "orml-xtokens"5445name = "orml-xtokens"5398version = "0.4.1-dev"5446version = "0.4.1-dev"5399source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v0.9.27#377213f750755cc48e80a3131eaae63b5eda8362"5447source = "git+https://github.com/UniqueNetwork/open-runtime-module-library?branch=polkadot-v0.9.29#2caeb6621a59cbf37829d6a80bc2b89195959d45"5400dependencies = [5448dependencies = [5401 "cumulus-primitives-core",5449 "cumulus-primitives-core",5402 "frame-support",5450 "frame-support",5403 "frame-system",5451 "frame-system",5404 "orml-traits",5452 "orml-traits",5405 "orml-xcm-support",5453 "orml-xcm-support",5406 "pallet-xcm",5454 "pallet-xcm",5407 "parity-scale-codec 3.1.5",5455 "parity-scale-codec 3.2.1",5408 "scale-info",5456 "scale-info",5409 "serde",5457 "serde",5410 "sp-io",5458 "sp-io",5444 "pallet-randomness-collective-flip",5492 "pallet-randomness-collective-flip",5445 "pallet-timestamp",5493 "pallet-timestamp",5446 "pallet-unique",5494 "pallet-unique",5447 "parity-scale-codec 3.1.5",5495 "parity-scale-codec 3.2.1",5448 "scale-info",5496 "scale-info",5449 "serde",5497 "serde",5450 "sp-core",5498 "sp-core",5457[[package]]5505[[package]]5458name = "pallet-aura"5506name = "pallet-aura"5459version = "4.0.0-dev"5507version = "4.0.0-dev"5460source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5508source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5461dependencies = [5509dependencies = [5462 "frame-support",5510 "frame-support",5463 "frame-system",5511 "frame-system",5464 "pallet-timestamp",5512 "pallet-timestamp",5465 "parity-scale-codec 3.1.5",5513 "parity-scale-codec 3.2.1",5466 "scale-info",5514 "scale-info",5467 "sp-application-crypto",5515 "sp-application-crypto",5468 "sp-consensus-aura",5516 "sp-consensus-aura",5473[[package]]5521[[package]]5474name = "pallet-authority-discovery"5522name = "pallet-authority-discovery"5475version = "4.0.0-dev"5523version = "4.0.0-dev"5476source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5524source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5477dependencies = [5525dependencies = [5478 "frame-support",5526 "frame-support",5479 "frame-system",5527 "frame-system",5480 "pallet-session",5528 "pallet-session",5481 "parity-scale-codec 3.1.5",5529 "parity-scale-codec 3.2.1",5482 "scale-info",5530 "scale-info",5483 "sp-application-crypto",5531 "sp-application-crypto",5484 "sp-authority-discovery",5532 "sp-authority-discovery",5489[[package]]5537[[package]]5490name = "pallet-authorship"5538name = "pallet-authorship"5491version = "4.0.0-dev"5539version = "4.0.0-dev"5492source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5540source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5493dependencies = [5541dependencies = [5494 "frame-support",5542 "frame-support",5495 "frame-system",5543 "frame-system",5496 "impl-trait-for-tuples",5544 "impl-trait-for-tuples",5497 "parity-scale-codec 3.1.5",5545 "parity-scale-codec 3.2.1",5498 "scale-info",5546 "scale-info",5499 "sp-authorship",5547 "sp-authorship",5500 "sp-runtime",5548 "sp-runtime",5504[[package]]5552[[package]]5505name = "pallet-babe"5553name = "pallet-babe"5506version = "4.0.0-dev"5554version = "4.0.0-dev"5507source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5555source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5508dependencies = [5556dependencies = [5509 "frame-benchmarking",5557 "frame-benchmarking",5510 "frame-support",5558 "frame-support",5513 "pallet-authorship",5561 "pallet-authorship",5514 "pallet-session",5562 "pallet-session",5515 "pallet-timestamp",5563 "pallet-timestamp",5516 "parity-scale-codec 3.1.5",5564 "parity-scale-codec 3.2.1",5517 "scale-info",5565 "scale-info",5518 "sp-application-crypto",5566 "sp-application-crypto",5519 "sp-consensus-babe",5567 "sp-consensus-babe",5528[[package]]5576[[package]]5529name = "pallet-bags-list"5577name = "pallet-bags-list"5530version = "4.0.0-dev"5578version = "4.0.0-dev"5531source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5579source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5532dependencies = [5580dependencies = [5533 "frame-benchmarking",5581 "frame-benchmarking",5534 "frame-election-provider-support",5582 "frame-election-provider-support",5535 "frame-support",5583 "frame-support",5536 "frame-system",5584 "frame-system",5537 "log",5585 "log",5538 "pallet-balances",5586 "pallet-balances",5539 "parity-scale-codec 3.1.5",5587 "parity-scale-codec 3.2.1",5540 "scale-info",5588 "scale-info",5541 "sp-core",5589 "sp-core",5542 "sp-io",5590 "sp-io",5548[[package]]5596[[package]]5549name = "pallet-balances"5597name = "pallet-balances"5550version = "4.0.0-dev"5598version = "4.0.0-dev"5551source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5599source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5552dependencies = [5600dependencies = [5553 "frame-benchmarking",5601 "frame-benchmarking",5554 "frame-support",5602 "frame-support",5555 "frame-system",5603 "frame-system",5556 "log",5604 "log",5557 "parity-scale-codec 3.1.5",5605 "parity-scale-codec 3.2.1",5558 "scale-info",5606 "scale-info",5559 "sp-runtime",5607 "sp-runtime",5560 "sp-std",5608 "sp-std",5563[[package]]5611[[package]]5564name = "pallet-base-fee"5612name = "pallet-base-fee"5565version = "1.0.0"5613version = "1.0.0"5566source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"5614source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"5567dependencies = [5615dependencies = [5568 "fp-evm",5616 "fp-evm",5569 "frame-support",5617 "frame-support",5570 "frame-system",5618 "frame-system",5571 "parity-scale-codec 3.1.5",5619 "parity-scale-codec 3.2.1",5572 "scale-info",5620 "scale-info",5573 "serde",5621 "serde",5574 "sp-core",5622 "sp-core",5578[[package]]5626[[package]]5579name = "pallet-beefy"5627name = "pallet-beefy"5580version = "4.0.0-dev"5628version = "4.0.0-dev"5581source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5629source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5582dependencies = [5630dependencies = [5583 "beefy-primitives",5631 "beefy-primitives",5584 "frame-support",5632 "frame-support",5585 "frame-system",5633 "frame-system",5586 "pallet-session",5634 "pallet-session",5587 "parity-scale-codec 3.1.5",5635 "parity-scale-codec 3.2.1",5588 "scale-info",5636 "scale-info",5589 "serde",5637 "serde",5590 "sp-runtime",5638 "sp-runtime",5594[[package]]5642[[package]]5595name = "pallet-beefy-mmr"5643name = "pallet-beefy-mmr"5596version = "4.0.0-dev"5644version = "4.0.0-dev"5597source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5645source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5598dependencies = [5646dependencies = [5599 "beefy-merkle-tree",5647 "beefy-merkle-tree",5600 "beefy-primitives",5648 "beefy-primitives",5605 "pallet-beefy",5653 "pallet-beefy",5606 "pallet-mmr",5654 "pallet-mmr",5607 "pallet-session",5655 "pallet-session",5608 "parity-scale-codec 3.1.5",5656 "parity-scale-codec 3.2.1",5609 "scale-info",5657 "scale-info",5610 "serde",5658 "serde",5611 "sp-core",5659 "sp-core",5617[[package]]5665[[package]]5618name = "pallet-bounties"5666name = "pallet-bounties"5619version = "4.0.0-dev"5667version = "4.0.0-dev"5620source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5668source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5621dependencies = [5669dependencies = [5622 "frame-benchmarking",5670 "frame-benchmarking",5623 "frame-support",5671 "frame-support",5624 "frame-system",5672 "frame-system",5625 "log",5673 "log",5626 "pallet-treasury",5674 "pallet-treasury",5627 "parity-scale-codec 3.1.5",5675 "parity-scale-codec 3.2.1",5628 "scale-info",5676 "scale-info",5629 "sp-core",5677 "sp-core",5630 "sp-io",5678 "sp-io",5635[[package]]5683[[package]]5636name = "pallet-child-bounties"5684name = "pallet-child-bounties"5637version = "4.0.0-dev"5685version = "4.0.0-dev"5638source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5686source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5639dependencies = [5687dependencies = [5640 "frame-benchmarking",5688 "frame-benchmarking",5641 "frame-support",5689 "frame-support",5642 "frame-system",5690 "frame-system",5643 "log",5691 "log",5644 "pallet-bounties",5692 "pallet-bounties",5645 "pallet-treasury",5693 "pallet-treasury",5646 "parity-scale-codec 3.1.5",5694 "parity-scale-codec 3.2.1",5647 "scale-info",5695 "scale-info",5648 "sp-core",5696 "sp-core",5649 "sp-io",5697 "sp-io",5654[[package]]5702[[package]]5655name = "pallet-collective"5703name = "pallet-collective"5656version = "4.0.0-dev"5704version = "4.0.0-dev"5657source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5705source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5658dependencies = [5706dependencies = [5659 "frame-benchmarking",5707 "frame-benchmarking",5660 "frame-support",5708 "frame-support",5661 "frame-system",5709 "frame-system",5662 "log",5710 "log",5663 "parity-scale-codec 3.1.5",5711 "parity-scale-codec 3.2.1",5664 "scale-info",5712 "scale-info",5665 "sp-core",5713 "sp-core",5666 "sp-io",5714 "sp-io",5680 "frame-system",5728 "frame-system",5681 "pallet-evm",5729 "pallet-evm",5682 "pallet-evm-coder-substrate",5730 "pallet-evm-coder-substrate",5683 "parity-scale-codec 3.1.5",5731 "parity-scale-codec 3.2.1",5684 "scale-info",5732 "scale-info",5685 "serde",5733 "serde",5686 "sp-core",5734 "sp-core",5696 "fp-evm",5744 "fp-evm",5697 "frame-support",5745 "frame-support",5698 "frame-system",5746 "frame-system",5699 "parity-scale-codec 3.1.5",5747 "parity-scale-codec 3.2.1",5700 "scale-info",5748 "scale-info",5701 "smallvec",5749 "smallvec",5702 "sp-arithmetic",5750 "sp-arithmetic",5708[[package]]5756[[package]]5709name = "pallet-democracy"5757name = "pallet-democracy"5710version = "4.0.0-dev"5758version = "4.0.0-dev"5711source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5759source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5712dependencies = [5760dependencies = [5713 "frame-benchmarking",5761 "frame-benchmarking",5714 "frame-support",5762 "frame-support",5715 "frame-system",5763 "frame-system",5716 "parity-scale-codec 3.1.5",5764 "parity-scale-codec 3.2.1",5717 "scale-info",5765 "scale-info",5718 "serde",5766 "serde",5719 "sp-io",5767 "sp-io",5724[[package]]5772[[package]]5725name = "pallet-election-provider-multi-phase"5773name = "pallet-election-provider-multi-phase"5726version = "4.0.0-dev"5774version = "4.0.0-dev"5727source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5775source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5728dependencies = [5776dependencies = [5729 "frame-benchmarking",5777 "frame-benchmarking",5730 "frame-election-provider-support",5778 "frame-election-provider-support",5731 "frame-support",5779 "frame-support",5732 "frame-system",5780 "frame-system",5733 "log",5781 "log",5734 "parity-scale-codec 3.1.5",5782 "parity-scale-codec 3.2.1",5735 "rand 0.7.3",5783 "rand 0.7.3",5736 "scale-info",5784 "scale-info",5737 "sp-arithmetic",5785 "sp-arithmetic",5747[[package]]5795[[package]]5748name = "pallet-election-provider-support-benchmarking"5796name = "pallet-election-provider-support-benchmarking"5749version = "4.0.0-dev"5797version = "4.0.0-dev"5750source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5798source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5751dependencies = [5799dependencies = [5752 "frame-benchmarking",5800 "frame-benchmarking",5753 "frame-election-provider-support",5801 "frame-election-provider-support",5754 "frame-system",5802 "frame-system",5755 "parity-scale-codec 3.1.5",5803 "parity-scale-codec 3.2.1",5756 "sp-npos-elections",5804 "sp-npos-elections",5757 "sp-runtime",5805 "sp-runtime",5758]5806]575958075760[[package]]5808[[package]]5761name = "pallet-elections-phragmen"5809name = "pallet-elections-phragmen"5762version = "5.0.0-dev"5810version = "5.0.0-dev"5763source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"5811source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5764dependencies = [5812dependencies = [5765 "frame-benchmarking",5813 "frame-benchmarking",5766 "frame-support",5814 "frame-support",5767 "frame-system",5815 "frame-system",5768 "log",5816 "log",5769 "parity-scale-codec 3.1.5",5817 "parity-scale-codec 3.2.1",5770 "scale-info",5818 "scale-info",5771 "sp-core",5819 "sp-core",5772 "sp-io",5820 "sp-io",5778[[package]]5826[[package]]5779name = "pallet-ethereum"5827name = "pallet-ethereum"5780version = "4.0.0-dev"5828version = "4.0.0-dev"5781source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"5829source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"5782dependencies = [5830dependencies = [5783 "ethereum",5831 "ethereum",5784 "ethereum-types",5832 "ethereum-types",5794 "log",5842 "log",5795 "pallet-evm",5843 "pallet-evm",5796 "pallet-timestamp",5844 "pallet-timestamp",5797 "parity-scale-codec 3.1.5",5845 "parity-scale-codec 3.2.1",5798 "rlp",5846 "rlp",5799 "scale-info",5847 "scale-info",5800 "serde",5848 "serde",5801 "sha3 0.10.2",5849 "sha3 0.10.5",5802 "sp-io",5850 "sp-io",5803 "sp-runtime",5851 "sp-runtime",5804 "sp-std",5852 "sp-std",5807[[package]]5855[[package]]5808name = "pallet-evm"5856name = "pallet-evm"5809version = "6.0.0-dev"5857version = "6.0.0-dev"5810source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.27-fee-limit#0ae36821312f4a26e7f96225f1b2cb16216cddf5"5858source = "git+https://github.com/uniquenetwork/frontier?branch=unique-polkadot-v0.9.29#30b8f3330d1e9a0b3fc812d60642f6f67b93c059"5811dependencies = [5859dependencies = [5812 "evm",5860 "evm",5813 "fp-evm",5861 "fp-evm",5819 "impl-trait-for-tuples",5867 "impl-trait-for-tuples",5820 "log",5868 "log",5821 "pallet-timestamp",5869 "pallet-timestamp",5822 "parity-scale-codec 3.1.5",5870 "parity-scale-codec 3.2.1",5823 "primitive-types",5871 "primitive-types",5824 "rlp",5872 "rlp",5825 "scale-info",5873 "scale-info",5826 "serde",5874 "serde",5827 "sha3 0.10.2",5875 "sha3 0.10.5",5828 "sp-core",5876 "sp-core",5829 "sp-io",5877 "sp-io",5830 "sp-runtime",5878 "sp-runtime",5842 "frame-system",5890 "frame-system",5843 "pallet-ethereum",5891 "pallet-ethereum",5844 "pallet-evm",5892 "pallet-evm",5845 "parity-scale-codec 3.1.5",5893 "parity-scale-codec 3.2.1",5846 "scale-info",5894 "scale-info",5847 "sp-core",5895 "sp-core",5848 "sp-std",5896 "sp-std",5863 "pallet-evm",5911 "pallet-evm",5864 "pallet-evm-coder-substrate",5912 "pallet-evm-coder-substrate",5865 "pallet-evm-transaction-payment",5913 "pallet-evm-transaction-payment",5866 "parity-scale-codec 3.1.5",5914 "parity-scale-codec 3.2.1",5867 "scale-info",5915 "scale-info",5868 "sp-core",5916 "sp-core",5869 "sp-runtime",5917 "sp-runtime",5881 "frame-support",5929 "frame-support",5882 "frame-system",5930 "frame-system",5883 "pallet-evm",5931 "pallet-evm",5884 "parity-scale-codec 3.1.5",5932 "parity-scale-codec 3.2.1",5885 "scale-info",5933 "scale-info",5886 "sp-core",5934 "sp-core",5887 "sp-io",5935 "sp-io",5899 "frame-system",5947 "frame-system",5900 "pallet-ethereum",5948 "pallet-ethereum",5901 "pallet-evm",5949 "pallet-evm",5902 "parity-scale-codec 3.1.5",5950 "parity-scale-codec 3.2.1",5903 "scale-info",5951 "scale-info",5904 "sp-core",5952 "sp-core",5905 "sp-io",5953 "sp-io",5922 "pallet-common",5970 "pallet-common",5923 "pallet-fungible",5971 "pallet-fungible",5924 "pallet-timestamp",5972 "pallet-timestamp",5925 "parity-scale-codec 3.1.5",5973 "parity-scale-codec 3.2.1",5926 "scale-info",5974 "scale-info",5927 "serde",5975 "serde",5928 "serde_json",5976 "serde_json",5949 "pallet-evm",5997 "pallet-evm",5950 "pallet-evm-coder-substrate",5998 "pallet-evm-coder-substrate",5951 "pallet-structure",5999 "pallet-structure",5952 "parity-scale-codec 3.1.5",6000 "parity-scale-codec 3.2.1",5953 "scale-info",6001 "scale-info",5954 "sp-core",6002 "sp-core",5955 "sp-runtime",6003 "sp-runtime",5960[[package]]6008[[package]]5961name = "pallet-gilt"6009name = "pallet-gilt"5962version = "4.0.0-dev"6010version = "4.0.0-dev"5963source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6011source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5964dependencies = [6012dependencies = [5965 "frame-benchmarking",6013 "frame-benchmarking",5966 "frame-support",6014 "frame-support",5967 "frame-system",6015 "frame-system",5968 "parity-scale-codec 3.1.5",6016 "parity-scale-codec 3.2.1",5969 "scale-info",6017 "scale-info",5970 "sp-arithmetic",6018 "sp-arithmetic",5971 "sp-runtime",6019 "sp-runtime",5975[[package]]6023[[package]]5976name = "pallet-grandpa"6024name = "pallet-grandpa"5977version = "4.0.0-dev"6025version = "4.0.0-dev"5978source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6026source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"5979dependencies = [6027dependencies = [5980 "frame-benchmarking",6028 "frame-benchmarking",5981 "frame-support",6029 "frame-support",5982 "frame-system",6030 "frame-system",5983 "log",6031 "log",5984 "pallet-authorship",6032 "pallet-authorship",5985 "pallet-session",6033 "pallet-session",5986 "parity-scale-codec 3.1.5",6034 "parity-scale-codec 3.2.1",5987 "scale-info",6035 "scale-info",5988 "sp-application-crypto",6036 "sp-application-crypto",5989 "sp-core",6037 "sp-core",5998[[package]]6046[[package]]5999name = "pallet-identity"6047name = "pallet-identity"6000version = "4.0.0-dev"6048version = "4.0.0-dev"6001source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6049source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6002dependencies = [6050dependencies = [6003 "enumflags2",6051 "enumflags2",6004 "frame-benchmarking",6052 "frame-benchmarking",6005 "frame-support",6053 "frame-support",6006 "frame-system",6054 "frame-system",6007 "parity-scale-codec 3.1.5",6055 "parity-scale-codec 3.2.1",6008 "scale-info",6056 "scale-info",6009 "sp-io",6057 "sp-io",6010 "sp-runtime",6058 "sp-runtime",6014[[package]]6062[[package]]6015name = "pallet-im-online"6063name = "pallet-im-online"6016version = "4.0.0-dev"6064version = "4.0.0-dev"6017source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6065source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6018dependencies = [6066dependencies = [6019 "frame-benchmarking",6067 "frame-benchmarking",6020 "frame-support",6068 "frame-support",6021 "frame-system",6069 "frame-system",6022 "log",6070 "log",6023 "pallet-authorship",6071 "pallet-authorship",6024 "parity-scale-codec 3.1.5",6072 "parity-scale-codec 3.2.1",6025 "scale-info",6073 "scale-info",6026 "sp-application-crypto",6074 "sp-application-crypto",6027 "sp-core",6075 "sp-core",6034[[package]]6082[[package]]6035name = "pallet-indices"6083name = "pallet-indices"6036version = "4.0.0-dev"6084version = "4.0.0-dev"6037source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6085source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6038dependencies = [6086dependencies = [6039 "frame-benchmarking",6087 "frame-benchmarking",6040 "frame-support",6088 "frame-support",6041 "frame-system",6089 "frame-system",6042 "parity-scale-codec 3.1.5",6090 "parity-scale-codec 3.2.1",6043 "scale-info",6091 "scale-info",6044 "sp-core",6092 "sp-core",6045 "sp-io",6093 "sp-io",6058 "pallet-balances",6106 "pallet-balances",6059 "pallet-randomness-collective-flip",6107 "pallet-randomness-collective-flip",6060 "pallet-timestamp",6108 "pallet-timestamp",6061 "parity-scale-codec 3.1.5",6109 "parity-scale-codec 3.2.1",6062 "scale-info",6110 "scale-info",6063 "serde",6111 "serde",6064 "sp-core",6112 "sp-core",6070[[package]]6118[[package]]6071name = "pallet-membership"6119name = "pallet-membership"6072version = "4.0.0-dev"6120version = "4.0.0-dev"6073source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6121source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6074dependencies = [6122dependencies = [6075 "frame-benchmarking",6123 "frame-benchmarking",6076 "frame-support",6124 "frame-support",6077 "frame-system",6125 "frame-system",6078 "log",6126 "log",6079 "parity-scale-codec 3.1.5",6127 "parity-scale-codec 3.2.1",6080 "scale-info",6128 "scale-info",6081 "sp-core",6129 "sp-core",6082 "sp-io",6130 "sp-io",6087[[package]]6135[[package]]6088name = "pallet-mmr"6136name = "pallet-mmr"6089version = "4.0.0-dev"6137version = "4.0.0-dev"6090source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6138source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6091dependencies = [6139dependencies = [6092 "ckb-merkle-mountain-range",6140 "ckb-merkle-mountain-range",6093 "frame-benchmarking",6141 "frame-benchmarking",6094 "frame-support",6142 "frame-support",6095 "frame-system",6143 "frame-system",6096 "parity-scale-codec 3.1.5",6144 "parity-scale-codec 3.2.1",6097 "scale-info",6145 "scale-info",6098 "sp-core",6146 "sp-core",6099 "sp-io",6147 "sp-io",6105[[package]]6153[[package]]6106name = "pallet-mmr-rpc"6154name = "pallet-mmr-rpc"6107version = "3.0.0"6155version = "3.0.0"6108source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6156source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6109dependencies = [6157dependencies = [6110 "jsonrpsee",6158 "jsonrpsee",6111 "parity-scale-codec 3.1.5",6159 "parity-scale-codec 3.2.1",6112 "serde",6160 "serde",6113 "sp-api",6161 "sp-api",6114 "sp-blockchain",6162 "sp-blockchain",6120[[package]]6168[[package]]6121name = "pallet-multisig"6169name = "pallet-multisig"6122version = "4.0.0-dev"6170version = "4.0.0-dev"6123source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6171source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6124dependencies = [6172dependencies = [6125 "frame-benchmarking",6173 "frame-benchmarking",6126 "frame-support",6174 "frame-support",6127 "frame-system",6175 "frame-system",6128 "parity-scale-codec 3.1.5",6176 "parity-scale-codec 3.2.1",6129 "scale-info",6177 "scale-info",6130 "sp-io",6178 "sp-io",6131 "sp-runtime",6179 "sp-runtime",6135[[package]]6183[[package]]6136name = "pallet-nomination-pools"6184name = "pallet-nomination-pools"6137version = "1.0.0"6185version = "1.0.0"6138source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6186source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6139dependencies = [6187dependencies = [6140 "frame-support",6188 "frame-support",6141 "frame-system",6189 "frame-system",6142 "log",6190 "log",6143 "parity-scale-codec 3.1.5",6191 "parity-scale-codec 3.2.1",6144 "scale-info",6192 "scale-info",6145 "sp-core",6193 "sp-core",6146 "sp-io",6194 "sp-io",6152[[package]]6200[[package]]6153name = "pallet-nomination-pools-benchmarking"6201name = "pallet-nomination-pools-benchmarking"6154version = "1.0.0"6202version = "1.0.0"6155source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6203source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6156dependencies = [6204dependencies = [6157 "frame-benchmarking",6205 "frame-benchmarking",6158 "frame-election-provider-support",6206 "frame-election-provider-support",6161 "pallet-bags-list",6209 "pallet-bags-list",6162 "pallet-nomination-pools",6210 "pallet-nomination-pools",6163 "pallet-staking",6211 "pallet-staking",6164 "parity-scale-codec 3.1.5",6212 "parity-scale-codec 3.2.1",6165 "scale-info",6213 "scale-info",6166 "sp-runtime",6214 "sp-runtime",6167 "sp-staking",6215 "sp-staking",6171[[package]]6219[[package]]6172name = "pallet-nomination-pools-runtime-api"6220name = "pallet-nomination-pools-runtime-api"6173version = "1.0.0-dev"6221version = "1.0.0-dev"6174source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6222source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6175dependencies = [6223dependencies = [6176 "parity-scale-codec 3.1.5",6224 "parity-scale-codec 3.2.1",6177 "sp-api",6225 "sp-api",6178 "sp-std",6226 "sp-std",6179]6227]6191 "pallet-evm",6239 "pallet-evm",6192 "pallet-evm-coder-substrate",6240 "pallet-evm-coder-substrate",6193 "pallet-structure",6241 "pallet-structure",6194 "parity-scale-codec 3.1.5",6242 "parity-scale-codec 3.2.1",6195 "scale-info",6243 "scale-info",6196 "sp-core",6244 "sp-core",6197 "sp-runtime",6245 "sp-runtime",6203[[package]]6251[[package]]6204name = "pallet-offences"6252name = "pallet-offences"6205version = "4.0.0-dev"6253version = "4.0.0-dev"6206source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6254source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6207dependencies = [6255dependencies = [6208 "frame-support",6256 "frame-support",6209 "frame-system",6257 "frame-system",6210 "log",6258 "log",6211 "pallet-balances",6259 "pallet-balances",6212 "parity-scale-codec 3.1.5",6260 "parity-scale-codec 3.2.1",6213 "scale-info",6261 "scale-info",6214 "serde",6262 "serde",6215 "sp-runtime",6263 "sp-runtime",6220[[package]]6268[[package]]6221name = "pallet-offences-benchmarking"6269name = "pallet-offences-benchmarking"6222version = "4.0.0-dev"6270version = "4.0.0-dev"6223source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6271source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6224dependencies = [6272dependencies = [6225 "frame-benchmarking",6273 "frame-benchmarking",6226 "frame-election-provider-support",6274 "frame-election-provider-support",6233 "pallet-offences",6281 "pallet-offences",6234 "pallet-session",6282 "pallet-session",6235 "pallet-staking",6283 "pallet-staking",6236 "parity-scale-codec 3.1.5",6284 "parity-scale-codec 3.2.1",6237 "scale-info",6285 "scale-info",6238 "sp-runtime",6286 "sp-runtime",6239 "sp-staking",6287 "sp-staking",6243[[package]]6291[[package]]6244name = "pallet-preimage"6292name = "pallet-preimage"6245version = "4.0.0-dev"6293version = "4.0.0-dev"6246source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6294source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6247dependencies = [6295dependencies = [6248 "frame-benchmarking",6296 "frame-benchmarking",6249 "frame-support",6297 "frame-support",6250 "frame-system",6298 "frame-system",6251 "parity-scale-codec 3.1.5",6299 "parity-scale-codec 3.2.1",6252 "scale-info",6300 "scale-info",6253 "sp-core",6301 "sp-core",6254 "sp-io",6302 "sp-io",6259[[package]]6307[[package]]6260name = "pallet-proxy"6308name = "pallet-proxy"6261version = "4.0.0-dev"6309version = "4.0.0-dev"6262source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6310source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6263dependencies = [6311dependencies = [6264 "frame-benchmarking",6312 "frame-benchmarking",6265 "frame-support",6313 "frame-support",6266 "frame-system",6314 "frame-system",6267 "parity-scale-codec 3.1.5",6315 "parity-scale-codec 3.2.1",6268 "scale-info",6316 "scale-info",6269 "sp-io",6317 "sp-io",6270 "sp-runtime",6318 "sp-runtime",6274[[package]]6322[[package]]6275name = "pallet-randomness-collective-flip"6323name = "pallet-randomness-collective-flip"6276version = "4.0.0-dev"6324version = "4.0.0-dev"6277source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6325source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6278dependencies = [6326dependencies = [6279 "frame-support",6327 "frame-support",6280 "frame-system",6328 "frame-system",6281 "parity-scale-codec 3.1.5",6329 "parity-scale-codec 3.2.1",6282 "safe-mix",6330 "safe-mix",6283 "scale-info",6331 "scale-info",6284 "sp-runtime",6332 "sp-runtime",6288[[package]]6336[[package]]6289name = "pallet-recovery"6337name = "pallet-recovery"6290version = "4.0.0-dev"6338version = "4.0.0-dev"6291source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6339source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6292dependencies = [6340dependencies = [6293 "frame-benchmarking",6341 "frame-benchmarking",6294 "frame-support",6342 "frame-support",6295 "frame-system",6343 "frame-system",6296 "parity-scale-codec 3.1.5",6344 "parity-scale-codec 3.2.1",6297 "scale-info",6345 "scale-info",6298 "sp-io",6346 "sp-io",6299 "sp-runtime",6347 "sp-runtime",6314 "pallet-evm",6362 "pallet-evm",6315 "pallet-evm-coder-substrate",6363 "pallet-evm-coder-substrate",6316 "pallet-structure",6364 "pallet-structure",6317 "parity-scale-codec 3.1.5",6365 "parity-scale-codec 3.2.1",6318 "scale-info",6366 "scale-info",6319 "sp-core",6367 "sp-core",6320 "sp-runtime",6368 "sp-runtime",6335 "pallet-evm",6383 "pallet-evm",6336 "pallet-nonfungible",6384 "pallet-nonfungible",6337 "pallet-structure",6385 "pallet-structure",6338 "parity-scale-codec 3.1.5",6386 "parity-scale-codec 3.2.1",6339 "rmrk-traits",6387 "rmrk-traits",6340 "scale-info",6388 "scale-info",6341 "sp-core",6389 "sp-core",6355 "pallet-evm",6403 "pallet-evm",6356 "pallet-nonfungible",6404 "pallet-nonfungible",6357 "pallet-rmrk-core",6405 "pallet-rmrk-core",6358 "parity-scale-codec 3.1.5",6406 "parity-scale-codec 3.2.1",6359 "rmrk-traits",6407 "rmrk-traits",6360 "scale-info",6408 "scale-info",6361 "sp-core",6409 "sp-core",6367[[package]]6415[[package]]6368name = "pallet-scheduler"6416name = "pallet-scheduler"6369version = "4.0.0-dev"6417version = "4.0.0-dev"6370source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6418source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6371dependencies = [6419dependencies = [6372 "frame-benchmarking",6420 "frame-benchmarking",6373 "frame-support",6421 "frame-support",6374 "frame-system",6422 "frame-system",6375 "log",6423 "log",6376 "parity-scale-codec 3.1.5",6424 "parity-scale-codec 3.2.1",6377 "scale-info",6425 "scale-info",6378 "sp-io",6426 "sp-io",6379 "sp-runtime",6427 "sp-runtime",6383[[package]]6431[[package]]6384name = "pallet-session"6432name = "pallet-session"6385version = "4.0.0-dev"6433version = "4.0.0-dev"6386source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6434source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6387dependencies = [6435dependencies = [6388 "frame-support",6436 "frame-support",6389 "frame-system",6437 "frame-system",6390 "impl-trait-for-tuples",6438 "impl-trait-for-tuples",6391 "log",6439 "log",6392 "pallet-timestamp",6440 "pallet-timestamp",6393 "parity-scale-codec 3.1.5",6441 "parity-scale-codec 3.2.1",6394 "scale-info",6442 "scale-info",6395 "sp-core",6443 "sp-core",6396 "sp-io",6444 "sp-io",6404[[package]]6452[[package]]6405name = "pallet-session-benchmarking"6453name = "pallet-session-benchmarking"6406version = "4.0.0-dev"6454version = "4.0.0-dev"6407source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6455source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6408dependencies = [6456dependencies = [6409 "frame-benchmarking",6457 "frame-benchmarking",6410 "frame-support",6458 "frame-support",6420[[package]]6468[[package]]6421name = "pallet-society"6469name = "pallet-society"6422version = "4.0.0-dev"6470version = "4.0.0-dev"6423source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6471source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6424dependencies = [6472dependencies = [6425 "frame-support",6473 "frame-support",6426 "frame-system",6474 "frame-system",6427 "parity-scale-codec 3.1.5",6475 "parity-scale-codec 3.2.1",6428 "rand_chacha 0.2.2",6476 "rand_chacha 0.2.2",6429 "scale-info",6477 "scale-info",6430 "sp-runtime",6478 "sp-runtime",6434[[package]]6482[[package]]6435name = "pallet-staking"6483name = "pallet-staking"6436version = "4.0.0-dev"6484version = "4.0.0-dev"6437source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6485source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6438dependencies = [6486dependencies = [6439 "frame-benchmarking",6487 "frame-benchmarking",6440 "frame-election-provider-support",6488 "frame-election-provider-support",6443 "log",6491 "log",6444 "pallet-authorship",6492 "pallet-authorship",6445 "pallet-session",6493 "pallet-session",6446 "parity-scale-codec 3.1.5",6494 "parity-scale-codec 3.2.1",6447 "rand_chacha 0.2.2",6495 "rand_chacha 0.2.2",6448 "scale-info",6496 "scale-info",6449 "serde",6497 "serde",6457[[package]]6505[[package]]6458name = "pallet-staking-reward-curve"6506name = "pallet-staking-reward-curve"6459version = "4.0.0-dev"6507version = "4.0.0-dev"6460source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6508source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6461dependencies = [6509dependencies = [6462 "proc-macro-crate",6510 "proc-macro-crate",6463 "proc-macro2",6511 "proc-macro2",6468[[package]]6516[[package]]6469name = "pallet-staking-reward-fn"6517name = "pallet-staking-reward-fn"6470version = "4.0.0-dev"6518version = "4.0.0-dev"6471source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6519source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6472dependencies = [6520dependencies = [6473 "log",6521 "log",6474 "sp-arithmetic",6522 "sp-arithmetic",6483 "frame-system",6531 "frame-system",6484 "pallet-common",6532 "pallet-common",6485 "pallet-evm",6533 "pallet-evm",6486 "parity-scale-codec 3.1.5",6534 "parity-scale-codec 3.2.1",6487 "scale-info",6535 "scale-info",6488 "sp-std",6536 "sp-std",6489 "up-data-structs",6537 "up-data-structs",6492[[package]]6540[[package]]6493name = "pallet-sudo"6541name = "pallet-sudo"6494version = "4.0.0-dev"6542version = "4.0.0-dev"6495source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6543source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6496dependencies = [6544dependencies = [6497 "frame-support",6545 "frame-support",6498 "frame-system",6546 "frame-system",6499 "parity-scale-codec 3.1.5",6547 "parity-scale-codec 3.2.1",6500 "scale-info",6548 "scale-info",6501 "sp-io",6549 "sp-io",6502 "sp-runtime",6550 "sp-runtime",6506[[package]]6554[[package]]6507name = "pallet-template-transaction-payment"6555name = "pallet-template-transaction-payment"6508version = "3.0.0"6556version = "3.0.0"6509source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.27#853766d6033ceb68a2bef196790b962dd0663a04"6557source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.29#3f663c3ee19933cd5545e0420ce2562fa8301235"6510dependencies = [6558dependencies = [6511 "frame-benchmarking",6559 "frame-benchmarking",6512 "frame-support",6560 "frame-support",6513 "frame-system",6561 "frame-system",6514 "pallet-balances",6562 "pallet-balances",6515 "pallet-transaction-payment",6563 "pallet-transaction-payment",6516 "parity-scale-codec 3.1.5",6564 "parity-scale-codec 3.2.1",6517 "scale-info",6565 "scale-info",6518 "serde",6566 "serde",6519 "sp-core",6567 "sp-core",6526[[package]]6574[[package]]6527name = "pallet-timestamp"6575name = "pallet-timestamp"6528version = "4.0.0-dev"6576version = "4.0.0-dev"6529source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6577source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6530dependencies = [6578dependencies = [6531 "frame-benchmarking",6579 "frame-benchmarking",6532 "frame-support",6580 "frame-support",6533 "frame-system",6581 "frame-system",6534 "log",6582 "log",6535 "parity-scale-codec 3.1.5",6583 "parity-scale-codec 3.2.1",6536 "scale-info",6584 "scale-info",6537 "sp-inherents",6585 "sp-inherents",6538 "sp-io",6586 "sp-io",6544[[package]]6592[[package]]6545name = "pallet-tips"6593name = "pallet-tips"6546version = "4.0.0-dev"6594version = "4.0.0-dev"6547source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6595source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6548dependencies = [6596dependencies = [6549 "frame-benchmarking",6597 "frame-benchmarking",6550 "frame-support",6598 "frame-support",6551 "frame-system",6599 "frame-system",6552 "log",6600 "log",6553 "pallet-treasury",6601 "pallet-treasury",6554 "parity-scale-codec 3.1.5",6602 "parity-scale-codec 3.2.1",6555 "scale-info",6603 "scale-info",6556 "serde",6604 "serde",6557 "sp-core",6605 "sp-core",6563[[package]]6611[[package]]6564name = "pallet-transaction-payment"6612name = "pallet-transaction-payment"6565version = "4.0.0-dev"6613version = "4.0.0-dev"6566source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6614source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6567dependencies = [6615dependencies = [6568 "frame-support",6616 "frame-support",6569 "frame-system",6617 "frame-system",6570 "parity-scale-codec 3.1.5",6618 "parity-scale-codec 3.2.1",6571 "scale-info",6619 "scale-info",6572 "serde",6620 "serde",6573 "sp-core",6621 "sp-core",6579[[package]]6627[[package]]6580name = "pallet-transaction-payment-rpc"6628name = "pallet-transaction-payment-rpc"6581version = "4.0.0-dev"6629version = "4.0.0-dev"6582source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6630source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6583dependencies = [6631dependencies = [6584 "jsonrpsee",6632 "jsonrpsee",6585 "pallet-transaction-payment-rpc-runtime-api",6633 "pallet-transaction-payment-rpc-runtime-api",6586 "parity-scale-codec 3.1.5",6634 "parity-scale-codec 3.2.1",6587 "sp-api",6635 "sp-api",6588 "sp-blockchain",6636 "sp-blockchain",6589 "sp-core",6637 "sp-core",6594[[package]]6642[[package]]6595name = "pallet-transaction-payment-rpc-runtime-api"6643name = "pallet-transaction-payment-rpc-runtime-api"6596version = "4.0.0-dev"6644version = "4.0.0-dev"6597source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6645source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6598dependencies = [6646dependencies = [6599 "pallet-transaction-payment",6647 "pallet-transaction-payment",6600 "parity-scale-codec 3.1.5",6648 "parity-scale-codec 3.2.1",6601 "sp-api",6649 "sp-api",6602 "sp-runtime",6650 "sp-runtime",6603]6651]660466526605[[package]]6653[[package]]6606name = "pallet-treasury"6654name = "pallet-treasury"6607version = "4.0.0-dev"6655version = "4.0.0-dev"6608source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6656source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6609dependencies = [6657dependencies = [6610 "frame-benchmarking",6658 "frame-benchmarking",6611 "frame-support",6659 "frame-support",6612 "frame-system",6660 "frame-system",6613 "impl-trait-for-tuples",6661 "impl-trait-for-tuples",6614 "pallet-balances",6662 "pallet-balances",6615 "parity-scale-codec 3.1.5",6663 "parity-scale-codec 3.2.1",6616 "scale-info",6664 "scale-info",6617 "serde",6665 "serde",6618 "sp-runtime",6666 "sp-runtime",6633 "pallet-evm-coder-substrate",6681 "pallet-evm-coder-substrate",6634 "pallet-nonfungible",6682 "pallet-nonfungible",6635 "pallet-refungible",6683 "pallet-refungible",6636 "parity-scale-codec 3.1.5",6684 "parity-scale-codec 3.2.1",6637 "scale-info",6685 "scale-info",6638 "serde",6686 "serde",6639 "sp-core",6687 "sp-core",6651 "frame-support",6699 "frame-support",6652 "frame-system",6700 "frame-system",6653 "log",6701 "log",6654 "parity-scale-codec 3.1.5",6702 "parity-scale-codec 3.2.1",6655 "scale-info",6703 "scale-info",6656 "serde",6704 "serde",6657 "sp-core",6705 "sp-core",6665[[package]]6713[[package]]6666name = "pallet-utility"6714name = "pallet-utility"6667version = "4.0.0-dev"6715version = "4.0.0-dev"6668source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6716source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6669dependencies = [6717dependencies = [6670 "frame-benchmarking",6718 "frame-benchmarking",6671 "frame-support",6719 "frame-support",6672 "frame-system",6720 "frame-system",6673 "parity-scale-codec 3.1.5",6721 "parity-scale-codec 3.2.1",6674 "scale-info",6722 "scale-info",6675 "sp-core",6723 "sp-core",6676 "sp-io",6724 "sp-io",6681[[package]]6729[[package]]6682name = "pallet-vesting"6730name = "pallet-vesting"6683version = "4.0.0-dev"6731version = "4.0.0-dev"6684source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"6732source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"6685dependencies = [6733dependencies = [6686 "frame-benchmarking",6734 "frame-benchmarking",6687 "frame-support",6735 "frame-support",6688 "frame-system",6736 "frame-system",6689 "log",6737 "log",6690 "parity-scale-codec 3.1.5",6738 "parity-scale-codec 3.2.1",6691 "scale-info",6739 "scale-info",6692 "sp-runtime",6740 "sp-runtime",6693 "sp-std",6741 "sp-std",6694]6742]669567436696[[package]]6744[[package]]6697name = "pallet-xcm"6745name = "pallet-xcm"6698version = "0.9.27"6746version = "0.9.29"6699source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"6747source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"6700dependencies = [6748dependencies = [6701 "frame-support",6749 "frame-support",6702 "frame-system",6750 "frame-system",6703 "log",6751 "log",6704 "parity-scale-codec 3.1.5",6752 "parity-scale-codec 3.2.1",6705 "scale-info",6753 "scale-info",6706 "serde",6754 "serde",6707 "sp-core",6755 "sp-core",671367616714[[package]]6762[[package]]6715name = "pallet-xcm-benchmarks"6763name = "pallet-xcm-benchmarks"6716version = "0.9.27"6764version = "0.9.29"6717source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"6765source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"6718dependencies = [6766dependencies = [6719 "frame-benchmarking",6767 "frame-benchmarking",6720 "frame-support",6768 "frame-support",6721 "frame-system",6769 "frame-system",6722 "log",6770 "log",6723 "parity-scale-codec 3.1.5",6771 "parity-scale-codec 3.2.1",6724 "scale-info",6772 "scale-info",6725 "sp-runtime",6773 "sp-runtime",6726 "sp-std",6774 "sp-std",6731[[package]]6779[[package]]6732name = "parachain-info"6780name = "parachain-info"6733version = "0.1.0"6781version = "0.1.0"6734source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.27#66b684f88eba6c755651b8c47dccad2c2d9ac3db"6782source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.29#2fa95572487cfcf8dbe6941bf93545c39d47f784"6735dependencies = [6783dependencies = [6736 "cumulus-primitives-core",6784 "cumulus-primitives-core",6737 "frame-support",6785 "frame-support",6738 "frame-system",6786 "frame-system",6739 "parity-scale-codec 3.1.5",6787 "parity-scale-codec 3.2.1",6740 "scale-info",6788 "scale-info",6741 "serde",6789 "serde",6742]6790]674367916744[[package]]6792[[package]]6745name = "parity-db"6793name = "parity-db"6746version = "0.3.16"6794version = "0.3.17"6747source = "registry+https://github.com/rust-lang/crates.io-index"6795source = "registry+https://github.com/rust-lang/crates.io-index"6748checksum = "2bb474d0ed0836e185cb998a6b140ed1073d1fbf27d690ecf9ede8030289382c"6796checksum = "2c8fdb726a43661fa54b43e7114e6b88b2289cae388eb3ad766d9d1754d83fce"6749dependencies = [6797dependencies = [6750 "blake2-rfc",6798 "blake2-rfc",6751 "crc32fast",6799 "crc32fast",6754 "libc",6802 "libc",6755 "log",6803 "log",6756 "lz4",6804 "lz4",6757 "memmap2 0.2.3",6805 "memmap2",6758 "parking_lot 0.11.2",6806 "parking_lot 0.12.1",6759 "rand 0.8.5",6807 "rand 0.8.5",6760 "snap",6808 "snap",6761]6809]677668246777[[package]]6825[[package]]6778name = "parity-scale-codec"6826name = "parity-scale-codec"6779version = "3.1.5"6827version = "3.2.1"6780source = "registry+https://github.com/rust-lang/crates.io-index"6828source = "registry+https://github.com/rust-lang/crates.io-index"6781checksum = "9182e4a71cae089267ab03e67c99368db7cd877baf50f931e5d6d4b71e195ac0"6829checksum = "366e44391a8af4cfd6002ef6ba072bae071a96aafca98d7d448a34c5dca38b6a"6782dependencies = [6830dependencies = [6783 "arrayvec 0.7.2",6831 "arrayvec 0.7.2",6784 "bitvec 1.0.1",6832 "bitvec 1.0.1",6785 "byte-slice-cast",6833 "byte-slice-cast",6834 "bytes",6786 "impl-trait-for-tuples",6835 "impl-trait-for-tuples",6787 "parity-scale-codec-derive 3.1.3",6836 "parity-scale-codec-derive 3.1.3",6788 "serde",6837 "serde",691869676919[[package]]6968[[package]]6920name = "paste"6969name = "paste"6921version = "1.0.8"6970version = "1.0.9"6922source = "registry+https://github.com/rust-lang/crates.io-index"6971source = "registry+https://github.com/rust-lang/crates.io-index"6923checksum = "9423e2b32f7a043629287a536f21951e8c6a82482d0acb1eeebfc90bc2225b22"6972checksum = "b1de2e551fb905ac83f73f7aedf2f0cb4a0da7e35efa24a202a936269f1f18e1"692469736925[[package]]6974[[package]]6926name = "pbkdf2"6975name = "pbkdf2"694869976949[[package]]6998[[package]]6950name = "percent-encoding"6999name = "percent-encoding"6951version = "2.1.0"7000version = "2.2.0"6952source = "registry+https://github.com/rust-lang/crates.io-index"7001source = "registry+https://github.com/rust-lang/crates.io-index"6953checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"7002checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"695470036955[[package]]7004[[package]]6956name = "pest"7005name = "pest"6957version = "2.2.1"7006version = "2.4.0"6958source = "registry+https://github.com/rust-lang/crates.io-index"7007source = "registry+https://github.com/rust-lang/crates.io-index"6959checksum = "69486e2b8c2d2aeb9762db7b4e00b0331156393555cff467f4163ff06821eef8"7008checksum = "dbc7bc69c062e492337d74d59b120c274fd3d261b6bf6d3207d499b4b379c41a"6960dependencies = [7009dependencies = [6961 "thiserror",7010 "thiserror",6962 "ucd-trie",7011 "ucd-trie",6963]7012]696470136965[[package]]7014[[package]]6966name = "pest_derive"7015name = "pest_derive"6967version = "2.2.1"7016version = "2.4.0"6968source = "registry+https://github.com/rust-lang/crates.io-index"7017source = "registry+https://github.com/rust-lang/crates.io-index"6969checksum = "b13570633aff33c6d22ce47dd566b10a3b9122c2fe9d8e7501895905be532b91"7018checksum = "60b75706b9642ebcb34dab3bc7750f811609a0eb1dd8b88c2d15bf628c1c65b2"6970dependencies = [7019dependencies = [6971 "pest",7020 "pest",6972 "pest_generator",7021 "pest_generator",6973]7022]697470236975[[package]]7024[[package]]6976name = "pest_generator"7025name = "pest_generator"6977version = "2.2.1"7026version = "2.4.0"6978source = "registry+https://github.com/rust-lang/crates.io-index"7027source = "registry+https://github.com/rust-lang/crates.io-index"6979checksum = "b3c567e5702efdc79fb18859ea74c3eb36e14c43da7b8c1f098a4ed6514ec7a0"7028checksum = "f4f9272122f5979a6511a749af9db9bfc810393f63119970d7085fed1c4ea0db"6980dependencies = [7029dependencies = [6981 "pest",7030 "pest",6982 "pest_meta",7031 "pest_meta",698770366988[[package]]7037[[package]]6989name = "pest_meta"7038name = "pest_meta"6990version = "2.2.1"7039version = "2.4.0"6991source = "registry+https://github.com/rust-lang/crates.io-index"7040source = "registry+https://github.com/rust-lang/crates.io-index"6992checksum = "5eb32be5ee3bbdafa8c7a18b0a8a8d962b66cfa2ceee4037f49267a50ee821fe"7041checksum = "4c8717927f9b79515e565a64fe46c38b8cd0427e64c40680b14a7365ab09ac8d"6993dependencies = [7042dependencies = [6994 "once_cell",7043 "once_cell",6995 "pest",7044 "pest",6996 "sha-1 0.10.0",7045 "sha1",6997]7046]699870476999[[package]]7048[[package]]705871077059[[package]]7108[[package]]7060name = "polkadot-approval-distribution"7109name = "polkadot-approval-distribution"7061version = "0.9.27"7110version = "0.9.29"7062source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7111source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7063dependencies = [7112dependencies = [7064 "futures 0.3.23",7113 "futures 0.3.24",7065 "polkadot-node-network-protocol",7114 "polkadot-node-network-protocol",7066 "polkadot-node-primitives",7115 "polkadot-node-primitives",7067 "polkadot-node-subsystem",7116 "polkadot-node-subsystem",707371227074[[package]]7123[[package]]7075name = "polkadot-availability-bitfield-distribution"7124name = "polkadot-availability-bitfield-distribution"7076version = "0.9.27"7125version = "0.9.29"7077source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7126source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7078dependencies = [7127dependencies = [7079 "futures 0.3.23",7128 "futures 0.3.24",7080 "polkadot-node-network-protocol",7129 "polkadot-node-network-protocol",7081 "polkadot-node-subsystem",7130 "polkadot-node-subsystem",7082 "polkadot-node-subsystem-util",7131 "polkadot-node-subsystem-util",708771367088[[package]]7137[[package]]7089name = "polkadot-availability-distribution"7138name = "polkadot-availability-distribution"7090version = "0.9.27"7139version = "0.9.29"7091source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7140source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7092dependencies = [7141dependencies = [7093 "derive_more",7142 "derive_more",7094 "fatality",7143 "fatality",7095 "futures 0.3.23",7144 "futures 0.3.24",7096 "lru 0.7.8",7145 "lru 0.7.8",7097 "parity-scale-codec 3.1.5",7146 "parity-scale-codec 3.2.1",7098 "polkadot-erasure-coding",7147 "polkadot-erasure-coding",7099 "polkadot-node-network-protocol",7148 "polkadot-node-network-protocol",7100 "polkadot-node-primitives",7149 "polkadot-node-primitives",711071597111[[package]]7160[[package]]7112name = "polkadot-availability-recovery"7161name = "polkadot-availability-recovery"7113version = "0.9.27"7162version = "0.9.29"7114source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7163source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7115dependencies = [7164dependencies = [7116 "fatality",7165 "fatality",7117 "futures 0.3.23",7166 "futures 0.3.24",7118 "lru 0.7.8",7167 "lru 0.7.8",7119 "parity-scale-codec 3.1.5",7168 "parity-scale-codec 3.2.1",7120 "polkadot-erasure-coding",7169 "polkadot-erasure-coding",7121 "polkadot-node-network-protocol",7170 "polkadot-node-network-protocol",7122 "polkadot-node-primitives",7171 "polkadot-node-primitives",713171807132[[package]]7181[[package]]7133name = "polkadot-cli"7182name = "polkadot-cli"7134version = "0.9.27"7183version = "0.9.29"7135source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7184source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7136dependencies = [7185dependencies = [7137 "clap",7186 "clap",7138 "frame-benchmarking-cli",7187 "frame-benchmarking-cli",7139 "futures 0.3.23",7188 "futures 0.3.24",7140 "log",7189 "log",7141 "polkadot-client",7190 "polkadot-client",7142 "polkadot-node-core-pvf",7191 "polkadot-node-core-pvf",715772067158[[package]]7207[[package]]7159name = "polkadot-client"7208name = "polkadot-client"7160version = "0.9.27"7209version = "0.9.29"7161source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7210source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7162dependencies = [7211dependencies = [7163 "beefy-primitives",7212 "beefy-primitives",7164 "frame-benchmarking",7213 "frame-benchmarking",719772467198[[package]]7247[[package]]7199name = "polkadot-collator-protocol"7248name = "polkadot-collator-protocol"7200version = "0.9.27"7249version = "0.9.29"7201source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7250source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7202dependencies = [7251dependencies = [7203 "always-assert",7252 "always-assert",7204 "fatality",7253 "fatality",7205 "futures 0.3.23",7254 "futures 0.3.24",7206 "futures-timer",7255 "futures-timer",7207 "polkadot-node-network-protocol",7256 "polkadot-node-network-protocol",7208 "polkadot-node-primitives",7257 "polkadot-node-primitives",721872677219[[package]]7268[[package]]7220name = "polkadot-core-primitives"7269name = "polkadot-core-primitives"7221version = "0.9.27"7270version = "0.9.29"7222source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7271source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7223dependencies = [7272dependencies = [7224 "parity-scale-codec 3.1.5",7273 "parity-scale-codec 3.2.1",7225 "parity-util-mem",7274 "parity-util-mem",7226 "scale-info",7275 "scale-info",7227 "sp-core",7276 "sp-core",723172807232[[package]]7281[[package]]7233name = "polkadot-dispute-distribution"7282name = "polkadot-dispute-distribution"7234version = "0.9.27"7283version = "0.9.29"7235source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7284source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7236dependencies = [7285dependencies = [7237 "derive_more",7286 "derive_more",7238 "fatality",7287 "fatality",7239 "futures 0.3.23",7288 "futures 0.3.24",7240 "lru 0.7.8",7289 "lru 0.7.8",7241 "parity-scale-codec 3.1.5",7290 "parity-scale-codec 3.2.1",7242 "polkadot-erasure-coding",7291 "polkadot-erasure-coding",7243 "polkadot-node-network-protocol",7292 "polkadot-node-network-protocol",7244 "polkadot-node-primitives",7293 "polkadot-node-primitives",725473037255[[package]]7304[[package]]7256name = "polkadot-erasure-coding"7305name = "polkadot-erasure-coding"7257version = "0.9.27"7306version = "0.9.29"7258source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7307source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7259dependencies = [7308dependencies = [7260 "parity-scale-codec 3.1.5",7309 "parity-scale-codec 3.2.1",7261 "polkadot-node-primitives",7310 "polkadot-node-primitives",7262 "polkadot-primitives",7311 "polkadot-primitives",7263 "reed-solomon-novelpoly",7312 "reed-solomon-novelpoly",726873177269[[package]]7318[[package]]7270name = "polkadot-gossip-support"7319name = "polkadot-gossip-support"7271version = "0.9.27"7320version = "0.9.29"7272source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7321source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7273dependencies = [7322dependencies = [7274 "futures 0.3.23",7323 "futures 0.3.24",7275 "futures-timer",7324 "futures-timer",7276 "polkadot-node-network-protocol",7325 "polkadot-node-network-protocol",7277 "polkadot-node-subsystem",7326 "polkadot-node-subsystem",728873377289[[package]]7338[[package]]7290name = "polkadot-network-bridge"7339name = "polkadot-network-bridge"7291version = "0.9.27"7340version = "0.9.29"7292source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7341source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7293dependencies = [7342dependencies = [7294 "always-assert",7343 "always-assert",7295 "async-trait",7344 "async-trait",7296 "bytes",7345 "bytes",7297 "fatality",7346 "fatality",7298 "futures 0.3.23",7347 "futures 0.3.24",7299 "parity-scale-codec 3.1.5",7348 "parity-scale-codec 3.2.1",7300 "parking_lot 0.12.1",7349 "parking_lot 0.12.1",7301 "polkadot-node-network-protocol",7350 "polkadot-node-network-protocol",7302 "polkadot-node-subsystem",7351 "polkadot-node-subsystem",7303 "polkadot-node-subsystem-util",7352 "polkadot-node-subsystem-util",7304 "polkadot-overseer",7353 "polkadot-overseer",7305 "polkadot-primitives",7354 "polkadot-primitives",7306 "sc-network",7355 "sc-network",7356 "sc-network-common",7307 "sp-consensus",7357 "sp-consensus",7308 "thiserror",7358 "thiserror",7309 "tracing-gum",7359 "tracing-gum",7310]7360]731173617312[[package]]7362[[package]]7313name = "polkadot-node-collation-generation"7363name = "polkadot-node-collation-generation"7314version = "0.9.27"7364version = "0.9.29"7315source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7365source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7316dependencies = [7366dependencies = [7317 "futures 0.3.23",7367 "futures 0.3.24",7318 "parity-scale-codec 3.1.5",7368 "parity-scale-codec 3.2.1",7319 "polkadot-erasure-coding",7369 "polkadot-erasure-coding",7320 "polkadot-node-primitives",7370 "polkadot-node-primitives",7321 "polkadot-node-subsystem",7371 "polkadot-node-subsystem",732973797330[[package]]7380[[package]]7331name = "polkadot-node-core-approval-voting"7381name = "polkadot-node-core-approval-voting"7332version = "0.9.27"7382version = "0.9.29"7333source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7383source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7334dependencies = [7384dependencies = [7335 "bitvec 1.0.1",7385 "bitvec 1.0.1",7336 "derive_more",7386 "derive_more",7337 "futures 0.3.23",7387 "futures 0.3.24",7338 "futures-timer",7388 "futures-timer",7339 "kvdb",7389 "kvdb",7340 "lru 0.7.8",7390 "lru 0.7.8",7341 "merlin",7391 "merlin",7342 "parity-scale-codec 3.1.5",7392 "parity-scale-codec 3.2.1",7343 "polkadot-node-jaeger",7393 "polkadot-node-jaeger",7344 "polkadot-node-primitives",7394 "polkadot-node-primitives",7345 "polkadot-node-subsystem",7395 "polkadot-node-subsystem",735874087359[[package]]7409[[package]]7360name = "polkadot-node-core-av-store"7410name = "polkadot-node-core-av-store"7361version = "0.9.27"7411version = "0.9.29"7362source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7412source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7363dependencies = [7413dependencies = [7364 "bitvec 1.0.1",7414 "bitvec 1.0.1",7365 "futures 0.3.23",7415 "futures 0.3.24",7366 "futures-timer",7416 "futures-timer",7367 "kvdb",7417 "kvdb",7368 "parity-scale-codec 3.1.5",7418 "parity-scale-codec 3.2.1",7369 "polkadot-erasure-coding",7419 "polkadot-erasure-coding",7370 "polkadot-node-primitives",7420 "polkadot-node-primitives",7371 "polkadot-node-subsystem",7421 "polkadot-node-subsystem",737874287379[[package]]7429[[package]]7380name = "polkadot-node-core-backing"7430name = "polkadot-node-core-backing"7381version = "0.9.27"7431version = "0.9.29"7382source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7432source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7383dependencies = [7433dependencies = [7384 "bitvec 1.0.1",7434 "bitvec 1.0.1",7385 "fatality",7435 "fatality",7386 "futures 0.3.23",7436 "futures 0.3.24",7387 "polkadot-erasure-coding",7437 "polkadot-erasure-coding",7388 "polkadot-node-primitives",7438 "polkadot-node-primitives",7389 "polkadot-node-subsystem",7439 "polkadot-node-subsystem",739774477398[[package]]7448[[package]]7399name = "polkadot-node-core-bitfield-signing"7449name = "polkadot-node-core-bitfield-signing"7400version = "0.9.27"7450version = "0.9.29"7401source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7451source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7402dependencies = [7452dependencies = [7403 "futures 0.3.23",7453 "futures 0.3.24",7404 "polkadot-node-subsystem",7454 "polkadot-node-subsystem",7405 "polkadot-node-subsystem-util",7455 "polkadot-node-subsystem-util",7406 "polkadot-primitives",7456 "polkadot-primitives",741274627413[[package]]7463[[package]]7414name = "polkadot-node-core-candidate-validation"7464name = "polkadot-node-core-candidate-validation"7415version = "0.9.27"7465version = "0.9.29"7416source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7466source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7417dependencies = [7467dependencies = [7418 "async-trait",7468 "async-trait",7419 "futures 0.3.23",7469 "futures 0.3.24",7420 "parity-scale-codec 3.1.5",7470 "parity-scale-codec 3.2.1",7421 "polkadot-node-core-pvf",7471 "polkadot-node-core-pvf",7422 "polkadot-node-primitives",7472 "polkadot-node-primitives",7423 "polkadot-node-subsystem",7473 "polkadot-node-subsystem",743074807431[[package]]7481[[package]]7432name = "polkadot-node-core-chain-api"7482name = "polkadot-node-core-chain-api"7433version = "0.9.27"7483version = "0.9.29"7434source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7484source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7435dependencies = [7485dependencies = [7436 "futures 0.3.23",7486 "futures 0.3.24",7437 "polkadot-node-subsystem",7487 "polkadot-node-subsystem",7438 "polkadot-node-subsystem-util",7488 "polkadot-node-subsystem-util",7439 "polkadot-primitives",7489 "polkadot-primitives",744574957446[[package]]7496[[package]]7447name = "polkadot-node-core-chain-selection"7497name = "polkadot-node-core-chain-selection"7448version = "0.9.27"7498version = "0.9.29"7449source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7499source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7450dependencies = [7500dependencies = [7451 "futures 0.3.23",7501 "futures 0.3.24",7452 "futures-timer",7502 "futures-timer",7453 "kvdb",7503 "kvdb",7454 "parity-scale-codec 3.1.5",7504 "parity-scale-codec 3.2.1",7455 "polkadot-node-primitives",7505 "polkadot-node-primitives",7456 "polkadot-node-subsystem",7506 "polkadot-node-subsystem",7457 "polkadot-node-subsystem-util",7507 "polkadot-node-subsystem-util",746275127463[[package]]7513[[package]]7464name = "polkadot-node-core-dispute-coordinator"7514name = "polkadot-node-core-dispute-coordinator"7465version = "0.9.27"7515version = "0.9.29"7466source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7516source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7467dependencies = [7517dependencies = [7468 "fatality",7518 "fatality",7469 "futures 0.3.23",7519 "futures 0.3.24",7470 "kvdb",7520 "kvdb",7471 "lru 0.7.8",7521 "lru 0.7.8",7472 "parity-scale-codec 3.1.5",7522 "parity-scale-codec 3.2.1",7473 "polkadot-node-primitives",7523 "polkadot-node-primitives",7474 "polkadot-node-subsystem",7524 "polkadot-node-subsystem",7475 "polkadot-node-subsystem-util",7525 "polkadot-node-subsystem-util",748175317482[[package]]7532[[package]]7483name = "polkadot-node-core-parachains-inherent"7533name = "polkadot-node-core-parachains-inherent"7484version = "0.9.27"7534version = "0.9.29"7485source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7535source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7486dependencies = [7536dependencies = [7487 "async-trait",7537 "async-trait",7488 "futures 0.3.23",7538 "futures 0.3.24",7489 "futures-timer",7539 "futures-timer",7490 "polkadot-node-subsystem",7540 "polkadot-node-subsystem",7491 "polkadot-primitives",7541 "polkadot-primitives",749875487499[[package]]7549[[package]]7500name = "polkadot-node-core-provisioner"7550name = "polkadot-node-core-provisioner"7501version = "0.9.27"7551version = "0.9.29"7502source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7552source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7503dependencies = [7553dependencies = [7504 "bitvec 1.0.1",7554 "bitvec 1.0.1",7505 "fatality",7555 "fatality",7506 "futures 0.3.23",7556 "futures 0.3.24",7507 "futures-timer",7557 "futures-timer",7508 "polkadot-node-primitives",7558 "polkadot-node-primitives",7509 "polkadot-node-subsystem",7559 "polkadot-node-subsystem",751675667517[[package]]7567[[package]]7518name = "polkadot-node-core-pvf"7568name = "polkadot-node-core-pvf"7519version = "0.9.27"7569version = "0.9.29"7520source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7570source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7521dependencies = [7571dependencies = [7522 "always-assert",7572 "always-assert",7523 "assert_matches",7573 "assert_matches",7524 "async-process",7574 "async-process",7525 "async-std",7575 "async-std",7526 "futures 0.3.23",7576 "futures 0.3.24",7527 "futures-timer",7577 "futures-timer",7528 "parity-scale-codec 3.1.5",7578 "parity-scale-codec 3.2.1",7529 "pin-project",7579 "pin-project",7530 "polkadot-core-primitives",7580 "polkadot-core-primitives",7531 "polkadot-node-subsystem-util",7581 "polkadot-node-subsystem-util",754875987549[[package]]7599[[package]]7550name = "polkadot-node-core-pvf-checker"7600name = "polkadot-node-core-pvf-checker"7551version = "0.9.27"7601version = "0.9.29"7552source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7602source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7553dependencies = [7603dependencies = [7554 "futures 0.3.23",7604 "futures 0.3.24",7555 "polkadot-node-primitives",7605 "polkadot-node-primitives",7556 "polkadot-node-subsystem",7606 "polkadot-node-subsystem",7557 "polkadot-node-subsystem-util",7607 "polkadot-node-subsystem-util",756476147565[[package]]7615[[package]]7566name = "polkadot-node-core-runtime-api"7616name = "polkadot-node-core-runtime-api"7567version = "0.9.27"7617version = "0.9.29"7568source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7618source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7569dependencies = [7619dependencies = [7570 "futures 0.3.23",7620 "futures 0.3.24",7571 "memory-lru",7621 "memory-lru",7572 "parity-util-mem",7622 "parity-util-mem",7573 "polkadot-node-subsystem",7623 "polkadot-node-subsystem",758076307581[[package]]7631[[package]]7582name = "polkadot-node-jaeger"7632name = "polkadot-node-jaeger"7583version = "0.9.27"7633version = "0.9.29"7584source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7634source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7585dependencies = [7635dependencies = [7586 "async-std",7636 "async-std",7587 "lazy_static",7637 "lazy_static",7588 "log",7638 "log",7589 "mick-jaeger",7639 "mick-jaeger",7590 "parity-scale-codec 3.1.5",7640 "parity-scale-codec 3.2.1",7591 "parking_lot 0.12.1",7641 "parking_lot 0.12.1",7592 "polkadot-node-primitives",7642 "polkadot-node-primitives",7593 "polkadot-primitives",7643 "polkadot-primitives",759876487599[[package]]7649[[package]]7600name = "polkadot-node-metrics"7650name = "polkadot-node-metrics"7601version = "0.9.27"7651version = "0.9.29"7602source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7652source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7603dependencies = [7653dependencies = [7604 "bs58",7654 "bs58",7605 "futures 0.3.23",7655 "futures 0.3.24",7606 "futures-timer",7656 "futures-timer",7607 "log",7657 "log",7608 "parity-scale-codec 3.1.5",7658 "parity-scale-codec 3.2.1",7609 "polkadot-primitives",7659 "polkadot-primitives",7610 "prioritized-metered-channel",7660 "prioritized-metered-channel",7611 "sc-cli",7661 "sc-cli",761776677618[[package]]7668[[package]]7619name = "polkadot-node-network-protocol"7669name = "polkadot-node-network-protocol"7620version = "0.9.27"7670version = "0.9.29"7621source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7671source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7622dependencies = [7672dependencies = [7623 "async-trait",7673 "async-trait",7624 "derive_more",7674 "derive_more",7625 "fatality",7675 "fatality",7626 "futures 0.3.23",7676 "futures 0.3.24",7627 "parity-scale-codec 3.1.5",7677 "hex",7678 "parity-scale-codec 3.2.1",7628 "polkadot-node-jaeger",7679 "polkadot-node-jaeger",7629 "polkadot-node-primitives",7680 "polkadot-node-primitives",7630 "polkadot-primitives",7681 "polkadot-primitives",763876897639[[package]]7690[[package]]7640name = "polkadot-node-primitives"7691name = "polkadot-node-primitives"7641version = "0.9.27"7692version = "0.9.29"7642source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7693source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7643dependencies = [7694dependencies = [7644 "bounded-vec",7695 "bounded-vec",7645 "futures 0.3.23",7696 "futures 0.3.24",7646 "parity-scale-codec 3.1.5",7697 "parity-scale-codec 3.2.1",7647 "polkadot-parachain",7698 "polkadot-parachain",7648 "polkadot-primitives",7699 "polkadot-primitives",7649 "schnorrkel",7700 "schnorrkel",766077117661[[package]]7712[[package]]7662name = "polkadot-node-subsystem"7713name = "polkadot-node-subsystem"7663version = "0.9.27"7714version = "0.9.29"7664source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7715source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7665dependencies = [7716dependencies = [7666 "polkadot-node-jaeger",7717 "polkadot-node-jaeger",7667 "polkadot-node-subsystem-types",7718 "polkadot-node-subsystem-types",767077217671[[package]]7722[[package]]7672name = "polkadot-node-subsystem-types"7723name = "polkadot-node-subsystem-types"7673version = "0.9.27"7724version = "0.9.29"7674source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7725source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7675dependencies = [7726dependencies = [7676 "async-trait",7727 "async-trait",7677 "derive_more",7728 "derive_more",7678 "futures 0.3.23",7729 "futures 0.3.24",7679 "orchestra",7730 "orchestra",7680 "polkadot-node-jaeger",7731 "polkadot-node-jaeger",7681 "polkadot-node-network-protocol",7732 "polkadot-node-network-protocol",769377447694[[package]]7745[[package]]7695name = "polkadot-node-subsystem-util"7746name = "polkadot-node-subsystem-util"7696version = "0.9.27"7747version = "0.9.29"7697source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7748source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7698dependencies = [7749dependencies = [7699 "async-trait",7750 "async-trait",7700 "derive_more",7751 "derive_more",7701 "fatality",7752 "fatality",7702 "futures 0.3.23",7753 "futures 0.3.24",7703 "itertools",7754 "itertools",7704 "kvdb",7755 "kvdb",7705 "lru 0.7.8",7756 "lru 0.7.8",7706 "parity-db",7757 "parity-db",7707 "parity-scale-codec 3.1.5",7758 "parity-scale-codec 3.2.1",7708 "parity-util-mem",7759 "parity-util-mem",7709 "parking_lot 0.11.2",7760 "parking_lot 0.11.2",7710 "pin-project",7761 "pin-project",772677777727[[package]]7778[[package]]7728name = "polkadot-overseer"7779name = "polkadot-overseer"7729version = "0.9.27"7780version = "0.9.29"7730source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7781source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7731dependencies = [7782dependencies = [7732 "async-trait",7783 "async-trait",7733 "futures 0.3.23",7784 "futures 0.3.24",7734 "futures-timer",7785 "futures-timer",7735 "lru 0.7.8",7786 "lru 0.7.8",7736 "orchestra",7787 "orchestra",774978007750[[package]]7801[[package]]7751name = "polkadot-parachain"7802name = "polkadot-parachain"7752version = "0.9.27"7803version = "0.9.29"7753source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7804source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7754dependencies = [7805dependencies = [7755 "derive_more",7806 "derive_more",7756 "frame-support",7807 "frame-support",7757 "parity-scale-codec 3.1.5",7808 "parity-scale-codec 3.2.1",7758 "parity-util-mem",7809 "parity-util-mem",7759 "polkadot-core-primitives",7810 "polkadot-core-primitives",7760 "scale-info",7811 "scale-info",776678177767[[package]]7818[[package]]7768name = "polkadot-performance-test"7819name = "polkadot-performance-test"7769version = "0.9.27"7820version = "0.9.29"7770source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7821source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7771dependencies = [7822dependencies = [7772 "env_logger",7823 "env_logger",7773 "kusama-runtime",7824 "kusama-runtime",778178327782[[package]]7833[[package]]7783name = "polkadot-primitives"7834name = "polkadot-primitives"7784version = "0.9.27"7835version = "0.9.29"7785source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7836source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7786dependencies = [7837dependencies = [7787 "bitvec 1.0.1",7838 "bitvec 1.0.1",7788 "frame-system",7839 "frame-system",7789 "hex-literal",7840 "hex-literal",7790 "parity-scale-codec 3.1.5",7841 "parity-scale-codec 3.2.1",7791 "parity-util-mem",7842 "parity-util-mem",7792 "polkadot-core-primitives",7843 "polkadot-core-primitives",7793 "polkadot-parachain",7844 "polkadot-parachain",781178627812[[package]]7863[[package]]7813name = "polkadot-rpc"7864name = "polkadot-rpc"7814version = "0.9.27"7865version = "0.9.29"7815source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7866source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7816dependencies = [7867dependencies = [7817 "beefy-gadget",7868 "beefy-gadget",7818 "beefy-gadget-rpc",7869 "beefy-gadget-rpc",784378947844[[package]]7895[[package]]7845name = "polkadot-runtime"7896name = "polkadot-runtime"7846version = "0.9.27"7897version = "0.9.29"7847source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7898source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7848dependencies = [7899dependencies = [7849 "beefy-primitives",7900 "beefy-primitives",7850 "bitvec 1.0.1",7901 "bitvec 1.0.1",7876 "pallet-indices",7927 "pallet-indices",7877 "pallet-membership",7928 "pallet-membership",7878 "pallet-multisig",7929 "pallet-multisig",7930 "pallet-nomination-pools",7931 "pallet-nomination-pools-benchmarking",7932 "pallet-nomination-pools-runtime-api",7879 "pallet-offences",7933 "pallet-offences",7880 "pallet-offences-benchmarking",7934 "pallet-offences-benchmarking",7881 "pallet-preimage",7935 "pallet-preimage",7893 "pallet-utility",7947 "pallet-utility",7894 "pallet-vesting",7948 "pallet-vesting",7895 "pallet-xcm",7949 "pallet-xcm",7896 "parity-scale-codec 3.1.5",7950 "parity-scale-codec 3.2.1",7897 "polkadot-primitives",7951 "polkadot-primitives",7898 "polkadot-runtime-common",7952 "polkadot-runtime-common",7899 "polkadot-runtime-constants",7953 "polkadot-runtime-constants",792879827929[[package]]7983[[package]]7930name = "polkadot-runtime-common"7984name = "polkadot-runtime-common"7931version = "0.9.27"7985version = "0.9.29"7932source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"7986source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7933dependencies = [7987dependencies = [7934 "beefy-primitives",7988 "beefy-primitives",7935 "bitvec 1.0.1",7989 "bitvec 1.0.1",7952 "pallet-transaction-payment",8006 "pallet-transaction-payment",7953 "pallet-treasury",8007 "pallet-treasury",7954 "pallet-vesting",8008 "pallet-vesting",7955 "parity-scale-codec 3.1.5",8009 "parity-scale-codec 3.2.1",7956 "polkadot-primitives",8010 "polkadot-primitives",7957 "polkadot-runtime-parachains",8011 "polkadot-runtime-parachains",7958 "rustc-hex",8012 "rustc-hex",797580297976[[package]]8030[[package]]7977name = "polkadot-runtime-constants"8031name = "polkadot-runtime-constants"7978version = "0.9.27"8032version = "0.9.29"7979source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8033source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7980dependencies = [8034dependencies = [7981 "frame-support",8035 "frame-support",7982 "polkadot-primitives",8036 "polkadot-primitives",798780417988[[package]]8042[[package]]7989name = "polkadot-runtime-metrics"8043name = "polkadot-runtime-metrics"7990version = "0.9.27"8044version = "0.9.29"7991source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8045source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"7992dependencies = [8046dependencies = [7993 "bs58",8047 "bs58",7994 "parity-scale-codec 3.1.5",8048 "parity-scale-codec 3.2.1",7995 "polkadot-primitives",8049 "polkadot-primitives",7996 "sp-std",8050 "sp-std",7997 "sp-tracing",8051 "sp-tracing",7998]8052]799980538000[[package]]8054[[package]]8001name = "polkadot-runtime-parachains"8055name = "polkadot-runtime-parachains"8002version = "0.9.27"8056version = "0.9.29"8003source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8057source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8004dependencies = [8058dependencies = [8005 "bitflags",8059 "bitflags",8006 "bitvec 1.0.1",8060 "bitvec 1.0.1",8017 "pallet-staking",8071 "pallet-staking",8018 "pallet-timestamp",8072 "pallet-timestamp",8019 "pallet-vesting",8073 "pallet-vesting",8020 "parity-scale-codec 3.1.5",8074 "parity-scale-codec 3.2.1",8021 "polkadot-primitives",8075 "polkadot-primitives",8022 "polkadot-runtime-metrics",8076 "polkadot-runtime-metrics",8023 "rand 0.8.5",8077 "rand 0.8.5",804280968043[[package]]8097[[package]]8044name = "polkadot-service"8098name = "polkadot-service"8045version = "0.9.27"8099version = "0.9.29"8046source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8100source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8047dependencies = [8101dependencies = [8048 "async-trait",8102 "async-trait",8049 "beefy-gadget",8103 "beefy-gadget",8050 "beefy-primitives",8104 "beefy-primitives",8105 "frame-support",8051 "frame-system-rpc-runtime-api",8106 "frame-system-rpc-runtime-api",8052 "futures 0.3.23",8107 "futures 0.3.24",8053 "hex-literal",8108 "hex-literal",8054 "kusama-runtime",8109 "kusama-runtime",8055 "kvdb",8110 "kvdb",8105 "sc-consensus",8160 "sc-consensus",8106 "sc-consensus-babe",8161 "sc-consensus-babe",8107 "sc-consensus-slots",8162 "sc-consensus-slots",8108 "sc-consensus-uncles",8109 "sc-executor",8163 "sc-executor",8110 "sc-finality-grandpa",8164 "sc-finality-grandpa",8111 "sc-keystore",8165 "sc-keystore",8112 "sc-network",8166 "sc-network",8167 "sc-network-common",8113 "sc-offchain",8168 "sc-offchain",8114 "sc-service",8169 "sc-service",8115 "sc-sync-state-rpc",8170 "sc-sync-state-rpc",814582008146[[package]]8201[[package]]8147name = "polkadot-statement-distribution"8202name = "polkadot-statement-distribution"8148version = "0.9.27"8203version = "0.9.29"8149source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8204source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8150dependencies = [8205dependencies = [8151 "arrayvec 0.5.2",8206 "arrayvec 0.5.2",8152 "fatality",8207 "fatality",8153 "futures 0.3.23",8208 "futures 0.3.24",8154 "indexmap",8209 "indexmap",8155 "parity-scale-codec 3.1.5",8210 "parity-scale-codec 3.2.1",8156 "polkadot-node-network-protocol",8211 "polkadot-node-network-protocol",8157 "polkadot-node-primitives",8212 "polkadot-node-primitives",8158 "polkadot-node-subsystem",8213 "polkadot-node-subsystem",816682218167[[package]]8222[[package]]8168name = "polkadot-statement-table"8223name = "polkadot-statement-table"8169version = "0.9.27"8224version = "0.9.29"8170source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8225source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8171dependencies = [8226dependencies = [8172 "parity-scale-codec 3.1.5",8227 "parity-scale-codec 3.2.1",8173 "polkadot-primitives",8228 "polkadot-primitives",8174 "sp-core",8229 "sp-core",8175]8230]817682318177[[package]]8232[[package]]8178name = "polkadot-test-runtime"8233name = "polkadot-test-runtime"8179version = "0.9.27"8234version = "0.9.29"8180source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8235source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8181dependencies = [8236dependencies = [8182 "beefy-primitives",8237 "beefy-primitives",8183 "bitvec 1.0.1",8238 "bitvec 1.0.1",8203 "pallet-transaction-payment-rpc-runtime-api",8258 "pallet-transaction-payment-rpc-runtime-api",8204 "pallet-vesting",8259 "pallet-vesting",8205 "pallet-xcm",8260 "pallet-xcm",8206 "parity-scale-codec 3.1.5",8261 "parity-scale-codec 3.2.1",8207 "polkadot-parachain",8262 "polkadot-parachain",8208 "polkadot-primitives",8263 "polkadot-primitives",8209 "polkadot-runtime-common",8264 "polkadot-runtime-common",823782928238[[package]]8293[[package]]8239name = "polkadot-test-service"8294name = "polkadot-test-service"8240version = "0.9.27"8295version = "0.9.29"8241source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8296source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8242dependencies = [8297dependencies = [8243 "frame-benchmarking",8298 "frame-benchmarking",8244 "frame-system",8299 "frame-system",8245 "futures 0.3.23",8300 "futures 0.3.24",8246 "hex",8301 "hex",8247 "pallet-balances",8302 "pallet-balances",8248 "pallet-staking",8303 "pallet-staking",8267 "sc-executor",8322 "sc-executor",8268 "sc-finality-grandpa",8323 "sc-finality-grandpa",8269 "sc-network",8324 "sc-network",8325 "sc-network-common",8270 "sc-service",8326 "sc-service",8271 "sc-tracing",8327 "sc-tracing",8272 "sc-transaction-pool",8328 "sc-transaction-pool",829083468291[[package]]8347[[package]]8292name = "polling"8348name = "polling"8293version = "2.2.0"8349version = "2.3.0"8294source = "registry+https://github.com/rust-lang/crates.io-index"8350source = "registry+https://github.com/rust-lang/crates.io-index"8295checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259"8351checksum = "899b00b9c8ab553c743b3e11e87c5c7d423b2a2de229ba95b24a756344748011"8296dependencies = [8352dependencies = [8353 "autocfg",8297 "cfg-if 1.0.0",8354 "cfg-if 1.0.0",8298 "libc",8355 "libc",8299 "log",8356 "log",8347[[package]]8404[[package]]8348name = "prioritized-metered-channel"8405name = "prioritized-metered-channel"8349version = "0.2.0"8406version = "0.2.0"8350source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"8407source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"8351dependencies = [8408dependencies = [8352 "coarsetime",8409 "coarsetime",8353 "crossbeam-queue",8410 "crossbeam-queue",8354 "derive_more",8411 "derive_more",8355 "futures 0.3.23",8412 "futures 0.3.24",8356 "futures-timer",8413 "futures-timer",8357 "nanorand",8414 "nanorand",8358 "thiserror",8415 "thiserror",839684538397[[package]]8454[[package]]8398name = "proc-macro2"8455name = "proc-macro2"8399version = "1.0.43"8456version = "1.0.46"8400source = "registry+https://github.com/rust-lang/crates.io-index"8457source = "registry+https://github.com/rust-lang/crates.io-index"8401checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"8458checksum = "94e2ef8dbfc347b10c094890f778ee2e36ca9bb4262e86dc99cd217e35f3470b"8402dependencies = [8459dependencies = [8403 "unicode-ident",8460 "unicode-ident",8404]8461]840584628406[[package]]8463[[package]]8407name = "prometheus"8464name = "prometheus"8408version = "0.13.1"8465version = "0.13.2"8409source = "registry+https://github.com/rust-lang/crates.io-index"8466source = "registry+https://github.com/rust-lang/crates.io-index"8410checksum = "cface98dfa6d645ea4c789839f176e4b072265d085bfcc48eaa8d137f58d3c39"8467checksum = "45c8babc29389186697fe5a2a4859d697825496b83db5d0b65271cdc0488e88c"8411dependencies = [8468dependencies = [8412 "cfg-if 1.0.0",8469 "cfg-if 1.0.0",8413 "fnv",8470 "fnv",851085678511[[package]]8568[[package]]8512name = "psm"8569name = "psm"8513version = "0.1.20"8570version = "0.1.21"8514source = "registry+https://github.com/rust-lang/crates.io-index"8571source = "registry+https://github.com/rust-lang/crates.io-index"8515checksum = "f446d0a6efba22928558c4fb4ce0b3fd6c89b0061343e390bf01a703742b8125"8572checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874"8516dependencies = [8573dependencies = [8517 "cc",8574 "cc",8518]8575]8581 "pallet-unique-scheduler",8638 "pallet-unique-scheduler",8582 "pallet-xcm",8639 "pallet-xcm",8583 "parachain-info",8640 "parachain-info",8584 "parity-scale-codec 3.1.5",8641 "parity-scale-codec 3.2.1",8585 "polkadot-parachain",8642 "polkadot-parachain",8586 "rmrk-rpc",8643 "rmrk-rpc",8587 "scale-info",8644 "scale-info",8670dependencies = [8727dependencies = [8671 "libc",8728 "libc",8672 "rand_chacha 0.3.1",8729 "rand_chacha 0.3.1",8673 "rand_core 0.6.3",8730 "rand_core 0.6.4",8674]8731]867587328676[[package]]8733[[package]]8690checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"8747checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"8691dependencies = [8748dependencies = [8692 "ppv-lite86",8749 "ppv-lite86",8693 "rand_core 0.6.3",8750 "rand_core 0.6.4",8694]8751]869587528696[[package]]8753[[package]]870487618705[[package]]8762[[package]]8706name = "rand_core"8763name = "rand_core"8707version = "0.6.3"8764version = "0.6.4"8708source = "registry+https://github.com/rust-lang/crates.io-index"8765source = "registry+https://github.com/rust-lang/crates.io-index"8709checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"8766checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"8710dependencies = [8767dependencies = [8711 "getrandom 0.2.7",8768 "getrandom 0.2.7",8712]8769]8745source = "registry+https://github.com/rust-lang/crates.io-index"8802source = "registry+https://github.com/rust-lang/crates.io-index"8746checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e"8803checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e"8747dependencies = [8804dependencies = [8748 "rand_core 0.6.3",8805 "rand_core 0.6.4",8749]8806]875088078751[[package]]8808[[package]]8884[[package]]8941[[package]]8885name = "remote-externalities"8942name = "remote-externalities"8886version = "0.10.0-dev"8943version = "0.10.0-dev"8887source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"8944source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"8888dependencies = [8945dependencies = [8889 "env_logger",8946 "env_logger",8890 "jsonrpsee",8947 "jsonrpsee",8891 "log",8948 "log",8892 "parity-scale-codec 3.1.5",8949 "parity-scale-codec 3.2.1",8893 "serde",8950 "serde",8894 "serde_json",8951 "serde_json",8895 "sp-core",8952 "sp-core",8918]8975]891989768920[[package]]8977[[package]]8921name = "retain_mut"8922version = "0.1.9"8923source = "registry+https://github.com/rust-lang/crates.io-index"8924checksum = "4389f1d5789befaf6029ebd9f7dac4af7f7e3d61b69d4f30e2ac02b57e7712b0"89258926[[package]]8927name = "rfc6979"8978name = "rfc6979"8928version = "0.1.0"8979version = "0.1.0"8929source = "registry+https://github.com/rust-lang/crates.io-index"8980source = "registry+https://github.com/rust-lang/crates.io-index"8987name = "rmrk-traits"9038name = "rmrk-traits"8988version = "0.1.0"9039version = "0.1.0"8989dependencies = [9040dependencies = [8990 "parity-scale-codec 3.1.5",9041 "parity-scale-codec 3.2.1",8991 "scale-info",9042 "scale-info",8992 "serde",9043 "serde",8993]9044]900490559005[[package]]9056[[package]]9006name = "rococo-runtime"9057name = "rococo-runtime"9007version = "0.9.27"9058version = "0.9.29"9008source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"9059source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"9009dependencies = [9060dependencies = [9010 "beefy-merkle-tree",9061 "beefy-merkle-tree",9011 "beefy-primitives",9062 "beefy-primitives",9040 "pallet-transaction-payment-rpc-runtime-api",9091 "pallet-transaction-payment-rpc-runtime-api",9041 "pallet-utility",9092 "pallet-utility",9042 "pallet-xcm",9093 "pallet-xcm",9043 "parity-scale-codec 3.1.5",9094 "parity-scale-codec 3.2.1",9044 "polkadot-parachain",9095 "polkadot-parachain",9045 "polkadot-primitives",9096 "polkadot-primitives",9046 "polkadot-runtime-common",9097 "polkadot-runtime-common",907391249074[[package]]9125[[package]]9075name = "rococo-runtime-constants"9126name = "rococo-runtime-constants"9076version = "0.9.27"9127version = "0.9.29"9077source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"9128source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"9078dependencies = [9129dependencies = [9079 "frame-support",9130 "frame-support",9080 "polkadot-primitives",9131 "polkadot-primitives",908591369086[[package]]9137[[package]]9087name = "rpassword"9138name = "rpassword"9088version = "5.0.1"9139version = "7.0.0"9089source = "registry+https://github.com/rust-lang/crates.io-index"9140source = "registry+https://github.com/rust-lang/crates.io-index"9090checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb"9141checksum = "26b763cb66df1c928432cc35053f8bd4cec3335d8559fc16010017d16b3c1680"9091dependencies = [9142dependencies = [9092 "libc",9143 "libc",9093 "winapi",9144 "winapi",9100checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0"9151checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0"9101dependencies = [9152dependencies = [9102 "async-global-executor",9153 "async-global-executor",9103 "futures 0.3.23",9154 "futures 0.3.24",9104 "log",9155 "log",9105 "netlink-packet-route",9156 "netlink-packet-route",9106 "netlink-proto",9157 "netlink-proto",9141source = "registry+https://github.com/rust-lang/crates.io-index"9192source = "registry+https://github.com/rust-lang/crates.io-index"9142checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"9193checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"9143dependencies = [9194dependencies = [9144 "semver 1.0.13",9195 "semver 1.0.14",9145]9196]914691979147[[package]]9198[[package]]916092119161[[package]]9212[[package]]9162name = "rustix"9213name = "rustix"9163version = "0.35.7"9214version = "0.35.11"9164source = "registry+https://github.com/rust-lang/crates.io-index"9215source = "registry+https://github.com/rust-lang/crates.io-index"9165checksum = "d51cc38aa10f6bbb377ed28197aa052aa4e2b762c22be9d3153d01822587e787"9216checksum = "fbb2fda4666def1433b1b05431ab402e42a1084285477222b72d6c564c417cef"9166dependencies = [9217dependencies = [9167 "bitflags",9218 "bitflags",9168 "errno",9219 "errno",9169 "io-lifetimes 0.7.2",9220 "io-lifetimes 0.7.3",9170 "libc",9221 "libc",9171 "linux-raw-sys 0.0.46",9222 "linux-raw-sys 0.0.46",9172 "windows-sys",9223 "windows-sys",9217source = "registry+https://github.com/rust-lang/crates.io-index"9268source = "registry+https://github.com/rust-lang/crates.io-index"9218checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04"9269checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04"9219dependencies = [9270dependencies = [9220 "futures 0.3.23",9271 "futures 0.3.24",9221 "pin-project",9272 "pin-project",9222 "static_assertions",9273 "static_assertions",9223]9274]9258[[package]]9309[[package]]9259name = "sc-allocator"9310name = "sc-allocator"9260version = "4.1.0-dev"9311version = "4.1.0-dev"9261source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9312source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9262dependencies = [9313dependencies = [9263 "log",9314 "log",9264 "sp-core",9315 "sp-core",9269[[package]]9320[[package]]9270name = "sc-authority-discovery"9321name = "sc-authority-discovery"9271version = "0.10.0-dev"9322version = "0.10.0-dev"9272source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9323source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9273dependencies = [9324dependencies = [9274 "async-trait",9325 "async-trait",9275 "futures 0.3.23",9326 "futures 0.3.24",9276 "futures-timer",9327 "futures-timer",9277 "ip_network",9328 "ip_network",9278 "libp2p",9329 "libp2p",9279 "log",9330 "log",9280 "parity-scale-codec 3.1.5",9331 "parity-scale-codec 3.2.1",9281 "prost",9332 "prost",9282 "prost-build",9333 "prost-build",9283 "rand 0.7.3",9334 "rand 0.7.3",9284 "sc-client-api",9335 "sc-client-api",9285 "sc-network",9336 "sc-network-common",9286 "sp-api",9337 "sp-api",9287 "sp-authority-discovery",9338 "sp-authority-discovery",9288 "sp-blockchain",9339 "sp-blockchain",9296[[package]]9347[[package]]9297name = "sc-basic-authorship"9348name = "sc-basic-authorship"9298version = "0.10.0-dev"9349version = "0.10.0-dev"9299source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9350source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9300dependencies = [9351dependencies = [9301 "futures 0.3.23",9352 "futures 0.3.24",9302 "futures-timer",9353 "futures-timer",9303 "log",9354 "log",9304 "parity-scale-codec 3.1.5",9355 "parity-scale-codec 3.2.1",9305 "sc-block-builder",9356 "sc-block-builder",9306 "sc-client-api",9357 "sc-client-api",9307 "sc-proposer-metrics",9358 "sc-proposer-metrics",9319[[package]]9370[[package]]9320name = "sc-block-builder"9371name = "sc-block-builder"9321version = "0.10.0-dev"9372version = "0.10.0-dev"9322source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9373source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9323dependencies = [9374dependencies = [9324 "parity-scale-codec 3.1.5",9375 "parity-scale-codec 3.2.1",9325 "sc-client-api",9376 "sc-client-api",9326 "sp-api",9377 "sp-api",9327 "sp-block-builder",9378 "sp-block-builder",9335[[package]]9386[[package]]9336name = "sc-chain-spec"9387name = "sc-chain-spec"9337version = "4.0.0-dev"9388version = "4.0.0-dev"9338source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9389source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9339dependencies = [9390dependencies = [9340 "impl-trait-for-tuples",9391 "impl-trait-for-tuples",9341 "memmap2 0.5.7",9392 "memmap2",9342 "parity-scale-codec 3.1.5",9393 "parity-scale-codec 3.2.1",9343 "sc-chain-spec-derive",9394 "sc-chain-spec-derive",9344 "sc-network",9395 "sc-network-common",9345 "sc-telemetry",9396 "sc-telemetry",9346 "serde",9397 "serde",9347 "serde_json",9398 "serde_json",9352[[package]]9403[[package]]9353name = "sc-chain-spec-derive"9404name = "sc-chain-spec-derive"9354version = "4.0.0-dev"9405version = "4.0.0-dev"9355source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9406source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9356dependencies = [9407dependencies = [9357 "proc-macro-crate",9408 "proc-macro-crate",9358 "proc-macro2",9409 "proc-macro2",9363[[package]]9414[[package]]9364name = "sc-cli"9415name = "sc-cli"9365version = "0.10.0-dev"9416version = "0.10.0-dev"9366source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9417source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9367dependencies = [9418dependencies = [9368 "chrono",9419 "chrono",9369 "clap",9420 "clap",9370 "fdlimit",9421 "fdlimit",9371 "futures 0.3.23",9422 "futures 0.3.24",9372 "hex",9423 "hex",9373 "libp2p",9424 "libp2p",9374 "log",9425 "log",9375 "names",9426 "names",9376 "parity-scale-codec 3.1.5",9427 "parity-scale-codec 3.2.1",9377 "rand 0.7.3",9428 "rand 0.7.3",9378 "regex",9429 "regex",9379 "rpassword",9430 "rpassword",9402[[package]]9453[[package]]9403name = "sc-client-api"9454name = "sc-client-api"9404version = "4.0.0-dev"9455version = "4.0.0-dev"9405source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9456source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9406dependencies = [9457dependencies = [9407 "fnv",9458 "fnv",9408 "futures 0.3.23",9459 "futures 0.3.24",9409 "hash-db",9460 "hash-db",9410 "log",9461 "log",9411 "parity-scale-codec 3.1.5",9462 "parity-scale-codec 3.2.1",9412 "parking_lot 0.12.1",9463 "parking_lot 0.12.1",9413 "sc-executor",9464 "sc-executor",9414 "sc-transaction-pool-api",9465 "sc-transaction-pool-api",9430[[package]]9481[[package]]9431name = "sc-client-db"9482name = "sc-client-db"9432version = "0.10.0-dev"9483version = "0.10.0-dev"9433source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9484source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9434dependencies = [9485dependencies = [9435 "hash-db",9486 "hash-db",9436 "kvdb",9487 "kvdb",9439 "linked-hash-map",9490 "linked-hash-map",9440 "log",9491 "log",9441 "parity-db",9492 "parity-db",9442 "parity-scale-codec 3.1.5",9493 "parity-scale-codec 3.2.1",9443 "parking_lot 0.12.1",9494 "parking_lot 0.12.1",9444 "sc-client-api",9495 "sc-client-api",9445 "sc-state-db",9496 "sc-state-db",9455[[package]]9506[[package]]9456name = "sc-consensus"9507name = "sc-consensus"9457version = "0.10.0-dev"9508version = "0.10.0-dev"9458source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9509source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9459dependencies = [9510dependencies = [9460 "async-trait",9511 "async-trait",9461 "futures 0.3.23",9512 "futures 0.3.24",9462 "futures-timer",9513 "futures-timer",9463 "libp2p",9514 "libp2p",9464 "log",9515 "log",9479[[package]]9530[[package]]9480name = "sc-consensus-aura"9531name = "sc-consensus-aura"9481version = "0.10.0-dev"9532version = "0.10.0-dev"9482source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9533source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9483dependencies = [9534dependencies = [9484 "async-trait",9535 "async-trait",9485 "futures 0.3.23",9536 "futures 0.3.24",9486 "log",9537 "log",9487 "parity-scale-codec 3.1.5",9538 "parity-scale-codec 3.2.1",9488 "sc-block-builder",9539 "sc-block-builder",9489 "sc-client-api",9540 "sc-client-api",9490 "sc-consensus",9541 "sc-consensus",9508[[package]]9559[[package]]9509name = "sc-consensus-babe"9560name = "sc-consensus-babe"9510version = "0.10.0-dev"9561version = "0.10.0-dev"9511source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9562source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9512dependencies = [9563dependencies = [9513 "async-trait",9564 "async-trait",9514 "fork-tree",9565 "fork-tree",9515 "futures 0.3.23",9566 "futures 0.3.24",9516 "log",9567 "log",9517 "merlin",9568 "merlin",9518 "num-bigint",9569 "num-bigint",9519 "num-rational 0.2.4",9570 "num-rational 0.2.4",9520 "num-traits",9571 "num-traits",9521 "parity-scale-codec 3.1.5",9572 "parity-scale-codec 3.2.1",9522 "parking_lot 0.12.1",9573 "parking_lot 0.12.1",9523 "rand 0.7.3",9574 "rand 0.7.3",9524 "retain_mut",9525 "sc-client-api",9575 "sc-client-api",9526 "sc-consensus",9576 "sc-consensus",9527 "sc-consensus-epochs",9577 "sc-consensus-epochs",9551[[package]]9601[[package]]9552name = "sc-consensus-babe-rpc"9602name = "sc-consensus-babe-rpc"9553version = "0.10.0-dev"9603version = "0.10.0-dev"9554source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9604source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9555dependencies = [9605dependencies = [9556 "futures 0.3.23",9606 "futures 0.3.24",9557 "jsonrpsee",9607 "jsonrpsee",9558 "sc-consensus-babe",9608 "sc-consensus-babe",9559 "sc-consensus-epochs",9609 "sc-consensus-epochs",9573[[package]]9623[[package]]9574name = "sc-consensus-epochs"9624name = "sc-consensus-epochs"9575version = "0.10.0-dev"9625version = "0.10.0-dev"9576source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9626source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9577dependencies = [9627dependencies = [9578 "fork-tree",9628 "fork-tree",9579 "parity-scale-codec 3.1.5",9629 "parity-scale-codec 3.2.1",9580 "sc-client-api",9630 "sc-client-api",9581 "sc-consensus",9631 "sc-consensus",9582 "sp-blockchain",9632 "sp-blockchain",9586[[package]]9636[[package]]9587name = "sc-consensus-manual-seal"9637name = "sc-consensus-manual-seal"9588version = "0.10.0-dev"9638version = "0.10.0-dev"9589source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9639source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9590dependencies = [9640dependencies = [9591 "assert_matches",9641 "assert_matches",9592 "async-trait",9642 "async-trait",9593 "futures 0.3.23",9643 "futures 0.3.24",9594 "jsonrpsee",9644 "jsonrpsee",9595 "log",9645 "log",9596 "parity-scale-codec 3.1.5",9646 "parity-scale-codec 3.2.1",9597 "sc-client-api",9647 "sc-client-api",9598 "sc-consensus",9648 "sc-consensus",9599 "sc-consensus-aura",9649 "sc-consensus-aura",9620[[package]]9670[[package]]9621name = "sc-consensus-slots"9671name = "sc-consensus-slots"9622version = "0.10.0-dev"9672version = "0.10.0-dev"9623source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9673source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9624dependencies = [9674dependencies = [9625 "async-trait",9675 "async-trait",9626 "futures 0.3.23",9676 "futures 0.3.24",9627 "futures-timer",9677 "futures-timer",9628 "log",9678 "log",9629 "parity-scale-codec 3.1.5",9679 "parity-scale-codec 3.2.1",9630 "sc-client-api",9680 "sc-client-api",9631 "sc-consensus",9681 "sc-consensus",9632 "sc-telemetry",9682 "sc-telemetry",9643]9693]964496949645[[package]]9695[[package]]9646name = "sc-consensus-uncles"9647version = "0.10.0-dev"9648source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9649dependencies = [9650 "sc-client-api",9651 "sp-authorship",9652 "sp-runtime",9653 "thiserror",9654]96559656[[package]]9657name = "sc-executor"9696name = "sc-executor"9658version = "0.10.0-dev"9697version = "0.10.0-dev"9659source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9698source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9660dependencies = [9699dependencies = [9661 "lazy_static",9700 "lazy_static",9662 "lru 0.7.8",9701 "lru 0.7.8",9663 "parity-scale-codec 3.1.5",9702 "parity-scale-codec 3.2.1",9664 "parking_lot 0.12.1",9703 "parking_lot 0.12.1",9665 "sc-executor-common",9704 "sc-executor-common",9666 "sc-executor-wasmi",9705 "sc-executor-wasmi",9683[[package]]9722[[package]]9684name = "sc-executor-common"9723name = "sc-executor-common"9685version = "0.10.0-dev"9724version = "0.10.0-dev"9686source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9725source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9687dependencies = [9726dependencies = [9688 "environmental",9727 "environmental",9689 "parity-scale-codec 3.1.5",9728 "parity-scale-codec 3.2.1",9690 "sc-allocator",9729 "sc-allocator",9691 "sp-maybe-compressed-blob",9730 "sp-maybe-compressed-blob",9692 "sp-sandbox",9731 "sp-sandbox",9693 "sp-serializer",9694 "sp-wasm-interface",9732 "sp-wasm-interface",9695 "thiserror",9733 "thiserror",9696 "wasm-instrument",9734 "wasm-instrument",9700[[package]]9738[[package]]9701name = "sc-executor-wasmi"9739name = "sc-executor-wasmi"9702version = "0.10.0-dev"9740version = "0.10.0-dev"9703source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9741source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9704dependencies = [9742dependencies = [9705 "log",9743 "log",9706 "parity-scale-codec 3.1.5",9744 "parity-scale-codec 3.2.1",9707 "sc-allocator",9745 "sc-allocator",9708 "sc-executor-common",9746 "sc-executor-common",9709 "sp-runtime-interface",9747 "sp-runtime-interface",9715[[package]]9753[[package]]9716name = "sc-executor-wasmtime"9754name = "sc-executor-wasmtime"9717version = "0.10.0-dev"9755version = "0.10.0-dev"9718source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9756source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9719dependencies = [9757dependencies = [9720 "cfg-if 1.0.0",9758 "cfg-if 1.0.0",9721 "libc",9759 "libc",9722 "log",9760 "log",9723 "once_cell",9761 "once_cell",9724 "parity-scale-codec 3.1.5",9762 "parity-scale-codec 3.2.1",9725 "parity-wasm 0.42.2",9763 "parity-wasm 0.42.2",9726 "rustix 0.35.7",9764 "rustix 0.33.7",9765 "rustix 0.35.11",9727 "sc-allocator",9766 "sc-allocator",9728 "sc-executor-common",9767 "sc-executor-common",9729 "sp-runtime-interface",9768 "sp-runtime-interface",9735[[package]]9774[[package]]9736name = "sc-finality-grandpa"9775name = "sc-finality-grandpa"9737version = "0.10.0-dev"9776version = "0.10.0-dev"9738source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9777source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9739dependencies = [9778dependencies = [9740 "ahash",9779 "ahash",9741 "async-trait",9780 "async-trait",9742 "dyn-clone",9781 "dyn-clone",9743 "finality-grandpa",9782 "finality-grandpa",9744 "fork-tree",9783 "fork-tree",9745 "futures 0.3.23",9784 "futures 0.3.24",9746 "futures-timer",9785 "futures-timer",9747 "hex",9786 "hex",9748 "log",9787 "log",9749 "parity-scale-codec 3.1.5",9788 "parity-scale-codec 3.2.1",9750 "parking_lot 0.12.1",9789 "parking_lot 0.12.1",9751 "rand 0.8.5",9790 "rand 0.8.5",9752 "sc-block-builder",9791 "sc-block-builder",9776[[package]]9815[[package]]9777name = "sc-finality-grandpa-rpc"9816name = "sc-finality-grandpa-rpc"9778version = "0.10.0-dev"9817version = "0.10.0-dev"9779source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9818source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9780dependencies = [9819dependencies = [9781 "finality-grandpa",9820 "finality-grandpa",9782 "futures 0.3.23",9821 "futures 0.3.24",9783 "jsonrpsee",9822 "jsonrpsee",9784 "log",9823 "log",9785 "parity-scale-codec 3.1.5",9824 "parity-scale-codec 3.2.1",9786 "sc-client-api",9825 "sc-client-api",9787 "sc-finality-grandpa",9826 "sc-finality-grandpa",9788 "sc-rpc",9827 "sc-rpc",9797[[package]]9836[[package]]9798name = "sc-informant"9837name = "sc-informant"9799version = "0.10.0-dev"9838version = "0.10.0-dev"9800source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9839source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9801dependencies = [9840dependencies = [9802 "ansi_term",9841 "ansi_term",9803 "futures 0.3.23",9842 "futures 0.3.24",9804 "futures-timer",9843 "futures-timer",9805 "log",9844 "log",9806 "parity-util-mem",9845 "parity-util-mem",9807 "sc-client-api",9846 "sc-client-api",9808 "sc-network",9847 "sc-network-common",9809 "sc-transaction-pool-api",9848 "sc-transaction-pool-api",9810 "sp-blockchain",9849 "sp-blockchain",9811 "sp-runtime",9850 "sp-runtime",9814[[package]]9853[[package]]9815name = "sc-keystore"9854name = "sc-keystore"9816version = "4.0.0-dev"9855version = "4.0.0-dev"9817source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9856source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9818dependencies = [9857dependencies = [9819 "async-trait",9858 "async-trait",9820 "hex",9859 "hex",9829[[package]]9868[[package]]9830name = "sc-network"9869name = "sc-network"9831version = "0.10.0-dev"9870version = "0.10.0-dev"9832source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9871source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9833dependencies = [9872dependencies = [9834 "async-trait",9873 "async-trait",9835 "asynchronous-codec",9874 "asynchronous-codec",9839 "either",9878 "either",9840 "fnv",9879 "fnv",9841 "fork-tree",9880 "fork-tree",9842 "futures 0.3.23",9881 "futures 0.3.24",9843 "futures-timer",9882 "futures-timer",9844 "hex",9883 "hex",9845 "ip_network",9884 "ip_network",9848 "linked_hash_set",9887 "linked_hash_set",9849 "log",9888 "log",9850 "lru 0.7.8",9889 "lru 0.7.8",9851 "parity-scale-codec 3.1.5",9890 "parity-scale-codec 3.2.1",9852 "parking_lot 0.12.1",9891 "parking_lot 0.12.1",9853 "pin-project",9892 "pin-project",9854 "prost",9893 "prost",9878[[package]]9917[[package]]9879name = "sc-network-common"9918name = "sc-network-common"9880version = "0.10.0-dev"9919version = "0.10.0-dev"9881source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9920source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9882dependencies = [9921dependencies = [9922 "async-trait",9883 "bitflags",9923 "bitflags",9884 "futures 0.3.23",9924 "bytes",9925 "futures 0.3.24",9885 "libp2p",9926 "libp2p",9886 "parity-scale-codec 3.1.5",9927 "parity-scale-codec 3.2.1",9887 "prost-build",9928 "prost-build",9888 "sc-consensus",9929 "sc-consensus",9889 "sc-peerset",9930 "sc-peerset",9931 "serde",9890 "smallvec",9932 "smallvec",9933 "sp-blockchain",9891 "sp-consensus",9934 "sp-consensus",9892 "sp-finality-grandpa",9935 "sp-finality-grandpa",9893 "sp-runtime",9936 "sp-runtime",9937 "thiserror",9894]9938]989599399896[[package]]9940[[package]]9897name = "sc-network-gossip"9941name = "sc-network-gossip"9898version = "0.10.0-dev"9942version = "0.10.0-dev"9899source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9943source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9900dependencies = [9944dependencies = [9901 "ahash",9945 "ahash",9902 "futures 0.3.23",9946 "futures 0.3.24",9903 "futures-timer",9947 "futures-timer",9904 "libp2p",9948 "libp2p",9905 "log",9949 "log",9906 "lru 0.7.8",9950 "lru 0.7.8",9907 "sc-network",9951 "sc-network-common",9952 "sc-peerset",9908 "sp-runtime",9953 "sp-runtime",9909 "substrate-prometheus-endpoint",9954 "substrate-prometheus-endpoint",9910 "tracing",9955 "tracing",9913[[package]]9958[[package]]9914name = "sc-network-light"9959name = "sc-network-light"9915version = "0.10.0-dev"9960version = "0.10.0-dev"9916source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9961source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9917dependencies = [9962dependencies = [9918 "futures 0.3.23",9963 "futures 0.3.24",9964 "hex",9919 "libp2p",9965 "libp2p",9920 "log",9966 "log",9921 "parity-scale-codec 3.1.5",9967 "parity-scale-codec 3.2.1",9922 "prost",9968 "prost",9923 "prost-build",9969 "prost-build",9924 "sc-client-api",9970 "sc-client-api",9933[[package]]9979[[package]]9934name = "sc-network-sync"9980name = "sc-network-sync"9935version = "0.10.0-dev"9981version = "0.10.0-dev"9936source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"9982source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9937dependencies = [9983dependencies = [9938 "fork-tree",9984 "fork-tree",9939 "futures 0.3.23",9985 "futures 0.3.24",9986 "hex",9940 "libp2p",9987 "libp2p",9941 "log",9988 "log",9942 "lru 0.7.8",9989 "lru 0.7.8",9943 "parity-scale-codec 3.1.5",9990 "parity-scale-codec 3.2.1",9944 "prost",9991 "prost",9945 "prost-build",9992 "prost-build",9946 "sc-client-api",9993 "sc-client-api",9960[[package]]10007[[package]]9961name = "sc-offchain"10008name = "sc-offchain"9962version = "4.0.0-dev"10009version = "4.0.0-dev"9963source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10010source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9964dependencies = [10011dependencies = [9965 "bytes",10012 "bytes",9966 "fnv",10013 "fnv",9967 "futures 0.3.23",10014 "futures 0.3.24",9968 "futures-timer",10015 "futures-timer",9969 "hex",10016 "hex",9970 "hyper",10017 "hyper",9971 "hyper-rustls",10018 "hyper-rustls",10019 "libp2p",9972 "num_cpus",10020 "num_cpus",9973 "once_cell",10021 "once_cell",9974 "parity-scale-codec 3.1.5",10022 "parity-scale-codec 3.2.1",9975 "parking_lot 0.12.1",10023 "parking_lot 0.12.1",9976 "rand 0.7.3",10024 "rand 0.7.3",9977 "sc-client-api",10025 "sc-client-api",9978 "sc-network",10026 "sc-network-common",10027 "sc-peerset",9979 "sc-utils",10028 "sc-utils",9980 "sp-api",10029 "sp-api",9981 "sp-core",10030 "sp-core",9988[[package]]10037[[package]]9989name = "sc-peerset"10038name = "sc-peerset"9990version = "4.0.0-dev"10039version = "4.0.0-dev"9991source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10040source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"9992dependencies = [10041dependencies = [9993 "futures 0.3.23",10042 "futures 0.3.24",9994 "libp2p",10043 "libp2p",9995 "log",10044 "log",9996 "sc-utils",10045 "sc-utils",10001[[package]]10050[[package]]10002name = "sc-proposer-metrics"10051name = "sc-proposer-metrics"10003version = "0.10.0-dev"10052version = "0.10.0-dev"10004source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10053source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10005dependencies = [10054dependencies = [10006 "log",10055 "log",10007 "substrate-prometheus-endpoint",10056 "substrate-prometheus-endpoint",10010[[package]]10059[[package]]10011name = "sc-rpc"10060name = "sc-rpc"10012version = "4.0.0-dev"10061version = "4.0.0-dev"10013source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10062source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10014dependencies = [10063dependencies = [10015 "futures 0.3.23",10064 "futures 0.3.24",10016 "hash-db",10065 "hash-db",10017 "jsonrpsee",10066 "jsonrpsee",10018 "log",10067 "log",10019 "parity-scale-codec 3.1.5",10068 "parity-scale-codec 3.2.1",10020 "parking_lot 0.12.1",10069 "parking_lot 0.12.1",10021 "sc-block-builder",10070 "sc-block-builder",10022 "sc-chain-spec",10071 "sc-chain-spec",10040[[package]]10089[[package]]10041name = "sc-rpc-api"10090name = "sc-rpc-api"10042version = "0.10.0-dev"10091version = "0.10.0-dev"10043source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10092source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10044dependencies = [10093dependencies = [10045 "futures 0.3.23",10094 "futures 0.3.24",10046 "jsonrpsee",10095 "jsonrpsee",10047 "log",10096 "log",10048 "parity-scale-codec 3.1.5",10097 "parity-scale-codec 3.2.1",10049 "parking_lot 0.12.1",10098 "parking_lot 0.12.1",10050 "sc-chain-spec",10099 "sc-chain-spec",10051 "sc-transaction-pool-api",10100 "sc-transaction-pool-api",10063[[package]]10112[[package]]10064name = "sc-rpc-server"10113name = "sc-rpc-server"10065version = "4.0.0-dev"10114version = "4.0.0-dev"10066source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10115source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10067dependencies = [10116dependencies = [10068 "futures 0.3.23",10117 "futures 0.3.24",10069 "jsonrpsee",10118 "jsonrpsee",10070 "log",10119 "log",10071 "serde_json",10120 "serde_json",10076[[package]]10125[[package]]10077name = "sc-service"10126name = "sc-service"10078version = "0.10.0-dev"10127version = "0.10.0-dev"10079source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10128source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10080dependencies = [10129dependencies = [10081 "async-trait",10130 "async-trait",10082 "directories",10131 "directories",10083 "exit-future",10132 "exit-future",10084 "futures 0.3.23",10133 "futures 0.3.24",10085 "futures-timer",10134 "futures-timer",10086 "hash-db",10135 "hash-db",10087 "jsonrpsee",10136 "jsonrpsee",10088 "log",10137 "log",10089 "parity-scale-codec 3.1.5",10138 "parity-scale-codec 3.2.1",10090 "parity-util-mem",10139 "parity-util-mem",10091 "parking_lot 0.12.1",10140 "parking_lot 0.12.1",10092 "pin-project",10141 "pin-project",10143[[package]]10192[[package]]10144name = "sc-state-db"10193name = "sc-state-db"10145version = "0.10.0-dev"10194version = "0.10.0-dev"10146source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10195source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10147dependencies = [10196dependencies = [10148 "log",10197 "log",10149 "parity-scale-codec 3.1.5",10198 "parity-scale-codec 3.2.1",10150 "parity-util-mem",10199 "parity-util-mem",10151 "parity-util-mem-derive",10200 "parity-util-mem-derive",10152 "parking_lot 0.12.1",10201 "parking_lot 0.12.1",10157[[package]]10206[[package]]10158name = "sc-sync-state-rpc"10207name = "sc-sync-state-rpc"10159version = "0.10.0-dev"10208version = "0.10.0-dev"10160source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10209source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10161dependencies = [10210dependencies = [10162 "jsonrpsee",10211 "jsonrpsee",10163 "parity-scale-codec 3.1.5",10212 "parity-scale-codec 3.2.1",10164 "sc-chain-spec",10213 "sc-chain-spec",10165 "sc-client-api",10214 "sc-client-api",10166 "sc-consensus-babe",10215 "sc-consensus-babe",10176[[package]]10225[[package]]10177name = "sc-sysinfo"10226name = "sc-sysinfo"10178version = "6.0.0-dev"10227version = "6.0.0-dev"10179source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10228source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10180dependencies = [10229dependencies = [10181 "futures 0.3.23",10230 "futures 0.3.24",10182 "libc",10231 "libc",10183 "log",10232 "log",10184 "rand 0.7.3",10233 "rand 0.7.3",10195[[package]]10244[[package]]10196name = "sc-telemetry"10245name = "sc-telemetry"10197version = "4.0.0-dev"10246version = "4.0.0-dev"10198source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10247source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10199dependencies = [10248dependencies = [10200 "chrono",10249 "chrono",10201 "futures 0.3.23",10250 "futures 0.3.24",10202 "libp2p",10251 "libp2p",10203 "log",10252 "log",10204 "parking_lot 0.12.1",10253 "parking_lot 0.12.1",10213[[package]]10262[[package]]10214name = "sc-tracing"10263name = "sc-tracing"10215version = "4.0.0-dev"10264version = "4.0.0-dev"10216source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10265source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10217dependencies = [10266dependencies = [10218 "ansi_term",10267 "ansi_term",10219 "atty",10268 "atty",10244[[package]]10293[[package]]10245name = "sc-tracing-proc-macro"10294name = "sc-tracing-proc-macro"10246version = "4.0.0-dev"10295version = "4.0.0-dev"10247source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10296source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10248dependencies = [10297dependencies = [10249 "proc-macro-crate",10298 "proc-macro-crate",10250 "proc-macro2",10299 "proc-macro2",10255[[package]]10304[[package]]10256name = "sc-transaction-pool"10305name = "sc-transaction-pool"10257version = "4.0.0-dev"10306version = "4.0.0-dev"10258source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10307source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10259dependencies = [10308dependencies = [10260 "futures 0.3.23",10309 "futures 0.3.24",10261 "futures-timer",10310 "futures-timer",10262 "linked-hash-map",10311 "linked-hash-map",10263 "log",10312 "log",10264 "parity-scale-codec 3.1.5",10313 "parity-scale-codec 3.2.1",10265 "parity-util-mem",10314 "parity-util-mem",10266 "parking_lot 0.12.1",10315 "parking_lot 0.12.1",10267 "retain_mut",10268 "sc-client-api",10316 "sc-client-api",10269 "sc-transaction-pool-api",10317 "sc-transaction-pool-api",10270 "sc-utils",10318 "sc-utils",10282[[package]]10330[[package]]10283name = "sc-transaction-pool-api"10331name = "sc-transaction-pool-api"10284version = "4.0.0-dev"10332version = "4.0.0-dev"10285source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10333source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10286dependencies = [10334dependencies = [10287 "futures 0.3.23",10335 "futures 0.3.24",10288 "log",10336 "log",10289 "serde",10337 "serde",10290 "sp-blockchain",10338 "sp-blockchain",10295[[package]]10343[[package]]10296name = "sc-utils"10344name = "sc-utils"10297version = "4.0.0-dev"10345version = "4.0.0-dev"10298source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10346source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10299dependencies = [10347dependencies = [10300 "futures 0.3.23",10348 "futures 0.3.24",10301 "futures-timer",10349 "futures-timer",10302 "lazy_static",10350 "lazy_static",10303 "log",10351 "log",103071035510308[[package]]10356[[package]]10309name = "scale-info"10357name = "scale-info"10310version = "2.1.2"10358version = "2.2.0"10311source = "registry+https://github.com/rust-lang/crates.io-index"10359source = "registry+https://github.com/rust-lang/crates.io-index"10312checksum = "c46be926081c9f4dd5dd9b6f1d3e3229f2360bc6502dd8836f84a93b7c75e99a"10360checksum = "333af15b02563b8182cd863f925bd31ef8fa86a0e095d30c091956057d436153"10313dependencies = [10361dependencies = [10314 "bitvec 1.0.1",10362 "bitvec 1.0.1",10315 "cfg-if 1.0.0",10363 "cfg-if 1.0.0",10316 "derive_more",10364 "derive_more",10317 "parity-scale-codec 3.1.5",10365 "parity-scale-codec 3.2.1",10318 "scale-info-derive",10366 "scale-info-derive",10319 "serde",10367 "serde",10320]10368]103211036910322[[package]]10370[[package]]10323name = "scale-info-derive"10371name = "scale-info-derive"10324version = "2.1.2"10372version = "2.2.0"10325source = "registry+https://github.com/rust-lang/crates.io-index"10373source = "registry+https://github.com/rust-lang/crates.io-index"10326checksum = "50e334bb10a245e28e5fd755cabcafd96cfcd167c99ae63a46924ca8d8703a3c"10374checksum = "53f56acbd0743d29ffa08f911ab5397def774ad01bab3786804cf6ee057fb5e1"10327dependencies = [10375dependencies = [10328 "proc-macro-crate",10376 "proc-macro-crate",10329 "proc-macro2",10377 "proc-macro2",104161046410417[[package]]10465[[package]]10418name = "security-framework"10466name = "security-framework"10419version = "2.6.1"10467version = "2.7.0"10420source = "registry+https://github.com/rust-lang/crates.io-index"10468source = "registry+https://github.com/rust-lang/crates.io-index"10421checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc"10469checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c"10422dependencies = [10470dependencies = [10423 "bitflags",10471 "bitflags",10424 "core-foundation",10472 "core-foundation",104571050510458[[package]]10506[[package]]10459name = "semver"10507name = "semver"10460version = "1.0.13"10508version = "1.0.14"10461source = "registry+https://github.com/rust-lang/crates.io-index"10509source = "registry+https://github.com/rust-lang/crates.io-index"10462checksum = "93f6841e709003d68bb2deee8c343572bf446003ec20a583e76f7b15cebf3711"10510checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4"10463dependencies = [10511dependencies = [10464 "serde",10512 "serde",10465]10513]104721052010473[[package]]10521[[package]]10474name = "serde"10522name = "serde"10475version = "1.0.143"10523version = "1.0.145"10476source = "registry+https://github.com/rust-lang/crates.io-index"10524source = "registry+https://github.com/rust-lang/crates.io-index"10477checksum = "53e8e5d5b70924f74ff5c6d64d9a5acd91422117c60f48c4e07855238a254553"10525checksum = "728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b"10478dependencies = [10526dependencies = [10479 "serde_derive",10527 "serde_derive",10480]10528]104811052910482[[package]]10530[[package]]10483name = "serde_derive"10531name = "serde_derive"10484version = "1.0.143"10532version = "1.0.145"10485source = "registry+https://github.com/rust-lang/crates.io-index"10533source = "registry+https://github.com/rust-lang/crates.io-index"10486checksum = "d3d8e8de557aee63c26b85b947f5e59b690d0454c753f3adeb5cd7835ab88391"10534checksum = "81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c"10487dependencies = [10535dependencies = [10488 "proc-macro2",10536 "proc-macro2",10489 "quote",10537 "quote",104921054010493[[package]]10541[[package]]10494name = "serde_json"10542name = "serde_json"10495version = "1.0.83"10543version = "1.0.85"10496source = "registry+https://github.com/rust-lang/crates.io-index"10544source = "registry+https://github.com/rust-lang/crates.io-index"10497checksum = "38dd04e3c8279e75b31ef29dbdceebfe5ad89f4d0937213c53f7d49d01b3d5a7"10545checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44"10498dependencies = [10546dependencies = [10499 "itoa 1.0.3",10547 "itoa 1.0.3",10500 "ryu",10548 "ryu",10524]10572]105251057310526[[package]]10574[[package]]10527name = "sha-1"10575name = "sha1"10528version = "0.10.0"10576version = "0.10.5"10529source = "registry+https://github.com/rust-lang/crates.io-index"10577source = "registry+https://github.com/rust-lang/crates.io-index"10530checksum = "028f48d513f9678cda28f6e4064755b3fbb2af6acd672f2c209b62323f7aea0f"10578checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"10531dependencies = [10579dependencies = [10532 "cfg-if 1.0.0",10580 "cfg-if 1.0.0",10533 "cpufeatures",10581 "cpufeatures",10534 "digest 0.10.3",10582 "digest 0.10.5",10535]10583]105361058410537[[package]]10585[[package]]105611060910562[[package]]10610[[package]]10563name = "sha2"10611name = "sha2"10564version = "0.10.2"10612version = "0.10.6"10565source = "registry+https://github.com/rust-lang/crates.io-index"10613source = "registry+https://github.com/rust-lang/crates.io-index"10566checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676"10614checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"10567dependencies = [10615dependencies = [10568 "cfg-if 1.0.0",10616 "cfg-if 1.0.0",10569 "cpufeatures",10617 "cpufeatures",10570 "digest 0.10.3",10618 "digest 0.10.5",10571]10619]105721062010573[[package]]10621[[package]]105841063210585[[package]]10633[[package]]10586name = "sha3"10634name = "sha3"10587version = "0.10.2"10635version = "0.10.5"10588source = "registry+https://github.com/rust-lang/crates.io-index"10636source = "registry+https://github.com/rust-lang/crates.io-index"10589checksum = "0a31480366ec990f395a61b7c08122d99bd40544fdb5abcfc1b06bb29994312c"10637checksum = "e2904bea16a1ae962b483322a1c7b81d976029203aea1f461e51cd7705db7ba9"10590dependencies = [10638dependencies = [10591 "digest 0.10.3",10639 "digest 0.10.5",10592 "keccak",10640 "keccak",10593]10641]105941064210633checksum = "02658e48d89f2bec991f9a78e69cfa4c316f8d6a6c4ec12fae1aeb263d486788"10681checksum = "02658e48d89f2bec991f9a78e69cfa4c316f8d6a6c4ec12fae1aeb263d486788"10634dependencies = [10682dependencies = [10635 "digest 0.9.0",10683 "digest 0.9.0",10636 "rand_core 0.6.3",10684 "rand_core 0.6.4",10637]10685]106381068610639[[package]]10687[[package]]106651071310666[[package]]10714[[package]]10667name = "slot-range-helper"10715name = "slot-range-helper"10668version = "0.9.27"10716version = "0.9.29"10669source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"10717source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"10670dependencies = [10718dependencies = [10671 "enumn",10719 "enumn",10672 "parity-scale-codec 3.1.5",10720 "parity-scale-codec 3.2.1",10673 "paste",10721 "paste",10674 "sp-runtime",10722 "sp-runtime",10675 "sp-std",10723 "sp-std",106861073410687[[package]]10735[[package]]10688name = "smallvec"10736name = "smallvec"10689version = "1.9.0"10737version = "1.10.0"10690source = "registry+https://github.com/rust-lang/crates.io-index"10738source = "registry+https://github.com/rust-lang/crates.io-index"10691checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1"10739checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"106921074010693[[package]]10741[[package]]10694name = "snap"10742name = "snap"10706 "blake2",10754 "blake2",10707 "chacha20poly1305",10755 "chacha20poly1305",10708 "curve25519-dalek 4.0.0-pre.1",10756 "curve25519-dalek 4.0.0-pre.1",10709 "rand_core 0.6.3",10757 "rand_core 0.6.4",10710 "ring",10758 "ring",10711 "rustc_version 0.4.0",10759 "rustc_version 0.4.0",10712 "sha2 0.10.2",10760 "sha2 0.10.6",10713 "subtle",10761 "subtle",10714]10762]107151076310716[[package]]10764[[package]]10717name = "socket2"10765name = "socket2"10718version = "0.4.4"10766version = "0.4.7"10719source = "registry+https://github.com/rust-lang/crates.io-index"10767source = "registry+https://github.com/rust-lang/crates.io-index"10720checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"10768checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"10721dependencies = [10769dependencies = [10722 "libc",10770 "libc",10723 "winapi",10771 "winapi",10732 "base64",10780 "base64",10733 "bytes",10781 "bytes",10734 "flate2",10782 "flate2",10735 "futures 0.3.23",10783 "futures 0.3.24",10736 "httparse",10784 "httparse",10737 "log",10785 "log",10738 "rand 0.8.5",10786 "rand 0.8.5",10739 "sha-1 0.9.8",10787 "sha-1",10740]10788]107411078910742[[package]]10790[[package]]10743name = "sp-api"10791name = "sp-api"10744version = "4.0.0-dev"10792version = "4.0.0-dev"10745source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10793source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10746dependencies = [10794dependencies = [10747 "hash-db",10795 "hash-db",10748 "log",10796 "log",10749 "parity-scale-codec 3.1.5",10797 "parity-scale-codec 3.2.1",10750 "sp-api-proc-macro",10798 "sp-api-proc-macro",10751 "sp-core",10799 "sp-core",10752 "sp-runtime",10800 "sp-runtime",10753 "sp-state-machine",10801 "sp-state-machine",10754 "sp-std",10802 "sp-std",10803 "sp-trie",10755 "sp-version",10804 "sp-version",10756 "thiserror",10805 "thiserror",10757]10806]107581080710759[[package]]10808[[package]]10760name = "sp-api-proc-macro"10809name = "sp-api-proc-macro"10761version = "4.0.0-dev"10810version = "4.0.0-dev"10762source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10811source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10763dependencies = [10812dependencies = [10764 "blake2",10813 "blake2",10765 "proc-macro-crate",10814 "proc-macro-crate",10771[[package]]10820[[package]]10772name = "sp-application-crypto"10821name = "sp-application-crypto"10773version = "6.0.0"10822version = "6.0.0"10774source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10823source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10775dependencies = [10824dependencies = [10776 "parity-scale-codec 3.1.5",10825 "parity-scale-codec 3.2.1",10777 "scale-info",10826 "scale-info",10778 "serde",10827 "serde",10779 "sp-core",10828 "sp-core",10784[[package]]10833[[package]]10785name = "sp-arithmetic"10834name = "sp-arithmetic"10786version = "5.0.0"10835version = "5.0.0"10787source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10836source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10788dependencies = [10837dependencies = [10789 "integer-sqrt",10838 "integer-sqrt",10790 "num-traits",10839 "num-traits",10791 "parity-scale-codec 3.1.5",10840 "parity-scale-codec 3.2.1",10792 "scale-info",10841 "scale-info",10793 "serde",10842 "serde",10794 "sp-debug-derive",10843 "sp-debug-derive",10799[[package]]10848[[package]]10800name = "sp-authority-discovery"10849name = "sp-authority-discovery"10801version = "4.0.0-dev"10850version = "4.0.0-dev"10802source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10851source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10803dependencies = [10852dependencies = [10804 "parity-scale-codec 3.1.5",10853 "parity-scale-codec 3.2.1",10805 "scale-info",10854 "scale-info",10806 "sp-api",10855 "sp-api",10807 "sp-application-crypto",10856 "sp-application-crypto",10812[[package]]10861[[package]]10813name = "sp-authorship"10862name = "sp-authorship"10814version = "4.0.0-dev"10863version = "4.0.0-dev"10815source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10864source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10816dependencies = [10865dependencies = [10817 "async-trait",10866 "async-trait",10818 "parity-scale-codec 3.1.5",10867 "parity-scale-codec 3.2.1",10819 "sp-inherents",10868 "sp-inherents",10820 "sp-runtime",10869 "sp-runtime",10821 "sp-std",10870 "sp-std",10824[[package]]10873[[package]]10825name = "sp-block-builder"10874name = "sp-block-builder"10826version = "4.0.0-dev"10875version = "4.0.0-dev"10827source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10876source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10828dependencies = [10877dependencies = [10829 "parity-scale-codec 3.1.5",10878 "parity-scale-codec 3.2.1",10830 "sp-api",10879 "sp-api",10831 "sp-inherents",10880 "sp-inherents",10832 "sp-runtime",10881 "sp-runtime",10836[[package]]10885[[package]]10837name = "sp-blockchain"10886name = "sp-blockchain"10838version = "4.0.0-dev"10887version = "4.0.0-dev"10839source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10888source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10840dependencies = [10889dependencies = [10841 "futures 0.3.23",10890 "futures 0.3.24",10842 "log",10891 "log",10843 "lru 0.7.8",10892 "lru 0.7.8",10844 "parity-scale-codec 3.1.5",10893 "parity-scale-codec 3.2.1",10845 "parking_lot 0.12.1",10894 "parking_lot 0.12.1",10846 "sp-api",10895 "sp-api",10847 "sp-consensus",10896 "sp-consensus",10854[[package]]10903[[package]]10855name = "sp-consensus"10904name = "sp-consensus"10856version = "0.10.0-dev"10905version = "0.10.0-dev"10857source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10906source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10858dependencies = [10907dependencies = [10859 "async-trait",10908 "async-trait",10860 "futures 0.3.23",10909 "futures 0.3.24",10861 "futures-timer",10910 "futures-timer",10862 "log",10911 "log",10863 "parity-scale-codec 3.1.5",10912 "parity-scale-codec 3.2.1",10864 "sp-core",10913 "sp-core",10865 "sp-inherents",10914 "sp-inherents",10866 "sp-runtime",10915 "sp-runtime",10873[[package]]10922[[package]]10874name = "sp-consensus-aura"10923name = "sp-consensus-aura"10875version = "0.10.0-dev"10924version = "0.10.0-dev"10876source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10925source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10877dependencies = [10926dependencies = [10878 "async-trait",10927 "async-trait",10879 "parity-scale-codec 3.1.5",10928 "parity-scale-codec 3.2.1",10880 "scale-info",10929 "scale-info",10881 "sp-api",10930 "sp-api",10882 "sp-application-crypto",10931 "sp-application-crypto",10891[[package]]10940[[package]]10892name = "sp-consensus-babe"10941name = "sp-consensus-babe"10893version = "0.10.0-dev"10942version = "0.10.0-dev"10894source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10943source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10895dependencies = [10944dependencies = [10896 "async-trait",10945 "async-trait",10897 "merlin",10946 "merlin",10898 "parity-scale-codec 3.1.5",10947 "parity-scale-codec 3.2.1",10899 "scale-info",10948 "scale-info",10900 "serde",10949 "serde",10901 "sp-api",10950 "sp-api",10914[[package]]10963[[package]]10915name = "sp-consensus-slots"10964name = "sp-consensus-slots"10916version = "0.10.0-dev"10965version = "0.10.0-dev"10917source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10966source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10918dependencies = [10967dependencies = [10919 "parity-scale-codec 3.1.5",10968 "parity-scale-codec 3.2.1",10920 "scale-info",10969 "scale-info",10921 "serde",10970 "serde",10922 "sp-arithmetic",10971 "sp-arithmetic",10928[[package]]10977[[package]]10929name = "sp-consensus-vrf"10978name = "sp-consensus-vrf"10930version = "0.10.0-dev"10979version = "0.10.0-dev"10931source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10980source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10932dependencies = [10981dependencies = [10933 "parity-scale-codec 3.1.5",10982 "parity-scale-codec 3.2.1",10934 "scale-info",10983 "scale-info",10935 "schnorrkel",10984 "schnorrkel",10936 "sp-core",10985 "sp-core",10941[[package]]10990[[package]]10942name = "sp-core"10991name = "sp-core"10943version = "6.0.0"10992version = "6.0.0"10944source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"10993source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10945dependencies = [10994dependencies = [10946 "base58",10995 "base58",10947 "bitflags",10996 "bitflags",10948 "blake2-rfc",10997 "blake2-rfc",10949 "byteorder",10998 "byteorder",10950 "dyn-clonable",10999 "dyn-clonable",10951 "ed25519-dalek",11000 "ed25519-zebra",10952 "futures 0.3.23",11001 "futures 0.3.24",10953 "hash-db",11002 "hash-db",10954 "hash256-std-hasher",11003 "hash256-std-hasher",10955 "hex",11004 "hex",10959 "log",11008 "log",10960 "merlin",11009 "merlin",10961 "num-traits",11010 "num-traits",10962 "parity-scale-codec 3.1.5",11011 "parity-scale-codec 3.2.1",10963 "parity-util-mem",11012 "parity-util-mem",10964 "parking_lot 0.12.1",11013 "parking_lot 0.12.1",10965 "primitive-types",11014 "primitive-types",10987[[package]]11036[[package]]10988name = "sp-core-hashing"11037name = "sp-core-hashing"10989version = "4.0.0"11038version = "4.0.0"10990source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11039source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"10991dependencies = [11040dependencies = [10992 "blake2",11041 "blake2",10993 "byteorder",11042 "byteorder",10994 "digest 0.10.3",11043 "digest 0.10.5",10995 "sha2 0.10.2",11044 "sha2 0.10.6",10996 "sha3 0.10.2",11045 "sha3 0.10.5",10997 "sp-std",11046 "sp-std",10998 "twox-hash",11047 "twox-hash",10999]11048]110001104911001[[package]]11050[[package]]11002name = "sp-core-hashing-proc-macro"11051name = "sp-core-hashing-proc-macro"11003version = "5.0.0"11052version = "5.0.0"11004source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11053source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11005dependencies = [11054dependencies = [11006 "proc-macro2",11055 "proc-macro2",11007 "quote",11056 "quote",11012[[package]]11061[[package]]11013name = "sp-database"11062name = "sp-database"11014version = "4.0.0-dev"11063version = "4.0.0-dev"11015source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11064source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11016dependencies = [11065dependencies = [11017 "kvdb",11066 "kvdb",11018 "parking_lot 0.12.1",11067 "parking_lot 0.12.1",11021[[package]]11070[[package]]11022name = "sp-debug-derive"11071name = "sp-debug-derive"11023version = "4.0.0"11072version = "4.0.0"11024source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11073source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11025dependencies = [11074dependencies = [11026 "proc-macro2",11075 "proc-macro2",11027 "quote",11076 "quote",11031[[package]]11080[[package]]11032name = "sp-externalities"11081name = "sp-externalities"11033version = "0.12.0"11082version = "0.12.0"11034source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11083source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11035dependencies = [11084dependencies = [11036 "environmental",11085 "environmental",11037 "parity-scale-codec 3.1.5",11086 "parity-scale-codec 3.2.1",11038 "sp-std",11087 "sp-std",11039 "sp-storage",11088 "sp-storage",11040]11089]110411109011042[[package]]11091[[package]]11043name = "sp-finality-grandpa"11092name = "sp-finality-grandpa"11044version = "4.0.0-dev"11093version = "4.0.0-dev"11045source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11094source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11046dependencies = [11095dependencies = [11047 "finality-grandpa",11096 "finality-grandpa",11048 "log",11097 "log",11049 "parity-scale-codec 3.1.5",11098 "parity-scale-codec 3.2.1",11050 "scale-info",11099 "scale-info",11051 "serde",11100 "serde",11052 "sp-api",11101 "sp-api",11060[[package]]11109[[package]]11061name = "sp-inherents"11110name = "sp-inherents"11062version = "4.0.0-dev"11111version = "4.0.0-dev"11063source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11112source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11064dependencies = [11113dependencies = [11065 "async-trait",11114 "async-trait",11066 "impl-trait-for-tuples",11115 "impl-trait-for-tuples",11067 "parity-scale-codec 3.1.5",11116 "parity-scale-codec 3.2.1",11068 "sp-core",11117 "sp-core",11069 "sp-runtime",11118 "sp-runtime",11070 "sp-std",11119 "sp-std",11074[[package]]11123[[package]]11075name = "sp-io"11124name = "sp-io"11076version = "6.0.0"11125version = "6.0.0"11077source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11126source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11078dependencies = [11127dependencies = [11079 "futures 0.3.23",11128 "bytes",11129 "futures 0.3.24",11080 "hash-db",11130 "hash-db",11081 "libsecp256k1",11131 "libsecp256k1",11082 "log",11132 "log",11083 "parity-scale-codec 3.1.5",11133 "parity-scale-codec 3.2.1",11084 "parking_lot 0.12.1",11134 "parking_lot 0.12.1",11085 "secp256k1",11135 "secp256k1",11086 "sp-core",11136 "sp-core",11099[[package]]11149[[package]]11100name = "sp-keyring"11150name = "sp-keyring"11101version = "6.0.0"11151version = "6.0.0"11102source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11152source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11103dependencies = [11153dependencies = [11104 "lazy_static",11154 "lazy_static",11105 "sp-core",11155 "sp-core",11110[[package]]11160[[package]]11111name = "sp-keystore"11161name = "sp-keystore"11112version = "0.12.0"11162version = "0.12.0"11113source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11163source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11114dependencies = [11164dependencies = [11115 "async-trait",11165 "async-trait",11116 "futures 0.3.23",11166 "futures 0.3.24",11117 "merlin",11167 "merlin",11118 "parity-scale-codec 3.1.5",11168 "parity-scale-codec 3.2.1",11119 "parking_lot 0.12.1",11169 "parking_lot 0.12.1",11120 "schnorrkel",11170 "schnorrkel",11121 "serde",11171 "serde",11127[[package]]11177[[package]]11128name = "sp-maybe-compressed-blob"11178name = "sp-maybe-compressed-blob"11129version = "4.1.0-dev"11179version = "4.1.0-dev"11130source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11180source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11131dependencies = [11181dependencies = [11132 "thiserror",11182 "thiserror",11133 "zstd",11183 "zstd",11136[[package]]11186[[package]]11137name = "sp-mmr-primitives"11187name = "sp-mmr-primitives"11138version = "4.0.0-dev"11188version = "4.0.0-dev"11139source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11189source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11140dependencies = [11190dependencies = [11141 "log",11191 "log",11142 "parity-scale-codec 3.1.5",11192 "parity-scale-codec 3.2.1",11143 "serde",11193 "serde",11144 "sp-api",11194 "sp-api",11145 "sp-core",11195 "sp-core",11151[[package]]11201[[package]]11152name = "sp-npos-elections"11202name = "sp-npos-elections"11153version = "4.0.0-dev"11203version = "4.0.0-dev"11154source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11204source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11155dependencies = [11205dependencies = [11156 "parity-scale-codec 3.1.5",11206 "parity-scale-codec 3.2.1",11157 "scale-info",11207 "scale-info",11158 "serde",11208 "serde",11159 "sp-arithmetic",11209 "sp-arithmetic",11165[[package]]11215[[package]]11166name = "sp-offchain"11216name = "sp-offchain"11167version = "4.0.0-dev"11217version = "4.0.0-dev"11168source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11218source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11169dependencies = [11219dependencies = [11170 "sp-api",11220 "sp-api",11171 "sp-core",11221 "sp-core",11175[[package]]11225[[package]]11176name = "sp-panic-handler"11226name = "sp-panic-handler"11177version = "4.0.0"11227version = "4.0.0"11178source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11228source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11179dependencies = [11229dependencies = [11180 "backtrace",11230 "backtrace",11181 "lazy_static",11231 "lazy_static",11185[[package]]11235[[package]]11186name = "sp-rpc"11236name = "sp-rpc"11187version = "6.0.0"11237version = "6.0.0"11188source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11238source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11189dependencies = [11239dependencies = [11190 "rustc-hash",11240 "rustc-hash",11191 "serde",11241 "serde",11195[[package]]11245[[package]]11196name = "sp-runtime"11246name = "sp-runtime"11197version = "6.0.0"11247version = "6.0.0"11198source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11248source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11199dependencies = [11249dependencies = [11200 "either",11250 "either",11201 "hash256-std-hasher",11251 "hash256-std-hasher",11202 "impl-trait-for-tuples",11252 "impl-trait-for-tuples",11203 "log",11253 "log",11204 "parity-scale-codec 3.1.5",11254 "parity-scale-codec 3.2.1",11205 "parity-util-mem",11255 "parity-util-mem",11206 "paste",11256 "paste",11207 "rand 0.7.3",11257 "rand 0.7.3",11217[[package]]11267[[package]]11218name = "sp-runtime-interface"11268name = "sp-runtime-interface"11219version = "6.0.0"11269version = "6.0.0"11220source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11270source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11221dependencies = [11271dependencies = [11272 "bytes",11222 "impl-trait-for-tuples",11273 "impl-trait-for-tuples",11223 "parity-scale-codec 3.1.5",11274 "parity-scale-codec 3.2.1",11224 "primitive-types",11275 "primitive-types",11225 "sp-externalities",11276 "sp-externalities",11226 "sp-runtime-interface-proc-macro",11277 "sp-runtime-interface-proc-macro",11234[[package]]11285[[package]]11235name = "sp-runtime-interface-proc-macro"11286name = "sp-runtime-interface-proc-macro"11236version = "5.0.0"11287version = "5.0.0"11237source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11288source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11238dependencies = [11289dependencies = [11239 "Inflector",11290 "Inflector",11240 "proc-macro-crate",11291 "proc-macro-crate",11246[[package]]11297[[package]]11247name = "sp-sandbox"11298name = "sp-sandbox"11248version = "0.10.0-dev"11299version = "0.10.0-dev"11249source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11300source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11250dependencies = [11301dependencies = [11251 "log",11302 "log",11252 "parity-scale-codec 3.1.5",11303 "parity-scale-codec 3.2.1",11253 "sp-core",11304 "sp-core",11254 "sp-io",11305 "sp-io",11255 "sp-std",11306 "sp-std",11258]11309]112591131011260[[package]]11311[[package]]11261name = "sp-serializer"11262version = "4.0.0-dev"11263source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11264dependencies = [11265 "serde",11266 "serde_json",11267]1126811269[[package]]11270name = "sp-session"11312name = "sp-session"11271version = "4.0.0-dev"11313version = "4.0.0-dev"11272source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11314source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11273dependencies = [11315dependencies = [11274 "parity-scale-codec 3.1.5",11316 "parity-scale-codec 3.2.1",11275 "scale-info",11317 "scale-info",11276 "sp-api",11318 "sp-api",11277 "sp-core",11319 "sp-core",11283[[package]]11325[[package]]11284name = "sp-staking"11326name = "sp-staking"11285version = "4.0.0-dev"11327version = "4.0.0-dev"11286source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11328source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11287dependencies = [11329dependencies = [11288 "parity-scale-codec 3.1.5",11330 "parity-scale-codec 3.2.1",11289 "scale-info",11331 "scale-info",11290 "sp-runtime",11332 "sp-runtime",11291 "sp-std",11333 "sp-std",11294[[package]]11336[[package]]11295name = "sp-state-machine"11337name = "sp-state-machine"11296version = "0.12.0"11338version = "0.12.0"11297source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11339source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11298dependencies = [11340dependencies = [11299 "hash-db",11341 "hash-db",11300 "log",11342 "log",11301 "num-traits",11343 "num-traits",11302 "parity-scale-codec 3.1.5",11344 "parity-scale-codec 3.2.1",11303 "parking_lot 0.12.1",11345 "parking_lot 0.12.1",11304 "rand 0.7.3",11346 "rand 0.7.3",11305 "smallvec",11347 "smallvec",11316[[package]]11358[[package]]11317name = "sp-std"11359name = "sp-std"11318version = "4.0.0"11360version = "4.0.0"11319source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11361source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"113201136211321[[package]]11363[[package]]11322name = "sp-storage"11364name = "sp-storage"11323version = "6.0.0"11365version = "6.0.0"11324source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11366source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11325dependencies = [11367dependencies = [11326 "impl-serde",11368 "impl-serde",11327 "parity-scale-codec 3.1.5",11369 "parity-scale-codec 3.2.1",11328 "ref-cast",11370 "ref-cast",11329 "serde",11371 "serde",11330 "sp-debug-derive",11372 "sp-debug-derive",11334[[package]]11376[[package]]11335name = "sp-tasks"11377name = "sp-tasks"11336version = "4.0.0-dev"11378version = "4.0.0-dev"11337source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11379source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11338dependencies = [11380dependencies = [11339 "log",11381 "log",11340 "sp-core",11382 "sp-core",11347[[package]]11389[[package]]11348name = "sp-timestamp"11390name = "sp-timestamp"11349version = "4.0.0-dev"11391version = "4.0.0-dev"11350source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11392source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11351dependencies = [11393dependencies = [11352 "async-trait",11394 "async-trait",11353 "futures-timer",11395 "futures-timer",11354 "log",11396 "log",11355 "parity-scale-codec 3.1.5",11397 "parity-scale-codec 3.2.1",11356 "sp-api",11398 "sp-api",11357 "sp-inherents",11399 "sp-inherents",11358 "sp-runtime",11400 "sp-runtime",11363[[package]]11405[[package]]11364name = "sp-tracing"11406name = "sp-tracing"11365version = "5.0.0"11407version = "5.0.0"11366source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11408source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11367dependencies = [11409dependencies = [11368 "parity-scale-codec 3.1.5",11410 "parity-scale-codec 3.2.1",11369 "sp-std",11411 "sp-std",11370 "tracing",11412 "tracing",11371 "tracing-core",11413 "tracing-core",11375[[package]]11417[[package]]11376name = "sp-transaction-pool"11418name = "sp-transaction-pool"11377version = "4.0.0-dev"11419version = "4.0.0-dev"11378source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11420source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11379dependencies = [11421dependencies = [11380 "sp-api",11422 "sp-api",11381 "sp-runtime",11423 "sp-runtime",11384[[package]]11426[[package]]11385name = "sp-transaction-storage-proof"11427name = "sp-transaction-storage-proof"11386version = "4.0.0-dev"11428version = "4.0.0-dev"11387source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11429source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11388dependencies = [11430dependencies = [11389 "async-trait",11431 "async-trait",11390 "log",11432 "log",11391 "parity-scale-codec 3.1.5",11433 "parity-scale-codec 3.2.1",11392 "scale-info",11434 "scale-info",11393 "sp-core",11435 "sp-core",11394 "sp-inherents",11436 "sp-inherents",11400[[package]]11442[[package]]11401name = "sp-trie"11443name = "sp-trie"11402version = "6.0.0"11444version = "6.0.0"11403source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11445source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11404dependencies = [11446dependencies = [11447 "ahash",11405 "hash-db",11448 "hash-db",11449 "hashbrown 0.12.3",11450 "lazy_static",11451 "lru 0.7.8",11406 "memory-db",11452 "memory-db",11407 "parity-scale-codec 3.1.5",11453 "nohash-hasher",11454 "parity-scale-codec 3.2.1",11455 "parking_lot 0.12.1",11408 "scale-info",11456 "scale-info",11409 "sp-core",11457 "sp-core",11410 "sp-std",11458 "sp-std",11411 "thiserror",11459 "thiserror",11460 "tracing",11412 "trie-db",11461 "trie-db",11413 "trie-root",11462 "trie-root",11414]11463]114151146411416[[package]]11465[[package]]11417name = "sp-version"11466name = "sp-version"11418version = "5.0.0"11467version = "5.0.0"11419source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11468source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11420dependencies = [11469dependencies = [11421 "impl-serde",11470 "impl-serde",11422 "parity-scale-codec 3.1.5",11471 "parity-scale-codec 3.2.1",11423 "parity-wasm 0.42.2",11472 "parity-wasm 0.42.2",11424 "scale-info",11473 "scale-info",11425 "serde",11474 "serde",11433[[package]]11482[[package]]11434name = "sp-version-proc-macro"11483name = "sp-version-proc-macro"11435version = "4.0.0-dev"11484version = "4.0.0-dev"11436source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11485source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11437dependencies = [11486dependencies = [11438 "parity-scale-codec 3.1.5",11487 "parity-scale-codec 3.2.1",11439 "proc-macro2",11488 "proc-macro2",11440 "quote",11489 "quote",11441 "syn",11490 "syn",11444[[package]]11493[[package]]11445name = "sp-wasm-interface"11494name = "sp-wasm-interface"11446version = "6.0.0"11495version = "6.0.0"11447source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11496source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11448dependencies = [11497dependencies = [11449 "impl-trait-for-tuples",11498 "impl-trait-for-tuples",11450 "log",11499 "log",11451 "parity-scale-codec 3.1.5",11500 "parity-scale-codec 3.2.1",11452 "sp-std",11501 "sp-std",11453 "wasmi",11502 "wasmi",11454 "wasmtime",11503 "wasmtime",114621151111463[[package]]11512[[package]]11464name = "ss58-registry"11513name = "ss58-registry"11465version = "1.25.0"11514version = "1.30.0"11466source = "registry+https://github.com/rust-lang/crates.io-index"11515source = "registry+https://github.com/rust-lang/crates.io-index"11467checksum = "a039906277e0d8db996cd9d1ef19278c10209d994ecfc1025ced16342873a17c"11516checksum = "c2486f3d026e958566c6079caef44108cddf0ae6f8a411ef74fb08cdb56e614a"11468dependencies = [11517dependencies = [11469 "Inflector",11518 "Inflector",11470 "num-format",11519 "num-format",11577[[package]]11626[[package]]11578name = "substrate-build-script-utils"11627name = "substrate-build-script-utils"11579version = "3.0.0"11628version = "3.0.0"11580source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11629source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11581dependencies = [11630dependencies = [11582 "platforms",11631 "platforms",11583]11632]115841163311585[[package]]11634[[package]]11586name = "substrate-frame-rpc-system"11635name = "substrate-frame-rpc-system"11587version = "4.0.0-dev"11636version = "4.0.0-dev"11588source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11637source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11589dependencies = [11638dependencies = [11590 "frame-system-rpc-runtime-api",11639 "frame-system-rpc-runtime-api",11591 "futures 0.3.23",11640 "futures 0.3.24",11592 "jsonrpsee",11641 "jsonrpsee",11593 "log",11642 "log",11594 "parity-scale-codec 3.1.5",11643 "parity-scale-codec 3.2.1",11595 "sc-client-api",11644 "sc-client-api",11596 "sc-rpc-api",11645 "sc-rpc-api",11597 "sc-transaction-pool-api",11646 "sc-transaction-pool-api",11606[[package]]11655[[package]]11607name = "substrate-prometheus-endpoint"11656name = "substrate-prometheus-endpoint"11608version = "0.10.0-dev"11657version = "0.10.0-dev"11609source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11658source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11610dependencies = [11659dependencies = [11611 "futures-util",11660 "futures-util",11612 "hyper",11661 "hyper",11619[[package]]11668[[package]]11620name = "substrate-state-trie-migration-rpc"11669name = "substrate-state-trie-migration-rpc"11621version = "4.0.0-dev"11670version = "4.0.0-dev"11622source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11671source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11623dependencies = [11672dependencies = [11624 "jsonrpsee",11673 "jsonrpsee",11625 "log",11674 "log",11626 "parity-scale-codec 3.1.5",11675 "parity-scale-codec 3.2.1",11627 "sc-client-api",11676 "sc-client-api",11628 "sc-rpc-api",11677 "sc-rpc-api",11629 "scale-info",11678 "scale-info",11640[[package]]11689[[package]]11641name = "substrate-test-client"11690name = "substrate-test-client"11642version = "2.0.1"11691version = "2.0.1"11643source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11692source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11644dependencies = [11693dependencies = [11645 "async-trait",11694 "async-trait",11646 "futures 0.3.23",11695 "futures 0.3.24",11647 "hex",11696 "hex",11648 "parity-scale-codec 3.1.5",11697 "parity-scale-codec 3.2.1",11649 "sc-client-api",11698 "sc-client-api",11650 "sc-client-db",11699 "sc-client-db",11651 "sc-consensus",11700 "sc-consensus",11666[[package]]11715[[package]]11667name = "substrate-test-utils"11716name = "substrate-test-utils"11668version = "4.0.0-dev"11717version = "4.0.0-dev"11669source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11718source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11670dependencies = [11719dependencies = [11671 "futures 0.3.23",11720 "futures 0.3.24",11672 "substrate-test-utils-derive",11721 "substrate-test-utils-derive",11673 "tokio",11722 "tokio",11674]11723]116751172411676[[package]]11725[[package]]11677name = "substrate-test-utils-derive"11726name = "substrate-test-utils-derive"11678version = "0.10.0-dev"11727version = "0.10.0-dev"11679source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11728source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11680dependencies = [11729dependencies = [11681 "proc-macro-crate",11730 "proc-macro-crate",11682 "proc-macro2",11731 "proc-macro2",11687[[package]]11736[[package]]11688name = "substrate-wasm-builder"11737name = "substrate-wasm-builder"11689version = "5.0.0-dev"11738version = "5.0.0-dev"11690source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"11739source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"11691dependencies = [11740dependencies = [11692 "ansi_term",11741 "ansi_term",11693 "build-helper",11742 "build-helper",117091175811710[[package]]11759[[package]]11711name = "syn"11760name = "syn"11712version = "1.0.99"11761version = "1.0.101"11713source = "registry+https://github.com/rust-lang/crates.io-index"11762source = "registry+https://github.com/rust-lang/crates.io-index"11714checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"11763checksum = "e90cde112c4b9690b8cbe810cba9ddd8bc1d7472e2cae317b69e9438c1cba7d2"11715dependencies = [11764dependencies = [11716 "proc-macro2",11765 "proc-macro2",11717 "quote",11766 "quote",117881183711789[[package]]11838[[package]]11790name = "test-runtime-constants"11839name = "test-runtime-constants"11791version = "0.9.27"11840version = "0.9.29"11792source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"11841source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"11793dependencies = [11842dependencies = [11794 "frame-support",11843 "frame-support",11795 "polkadot-primitives",11844 "polkadot-primitives",11818 "pallet-timestamp",11867 "pallet-timestamp",11819 "pallet-transaction-payment",11868 "pallet-transaction-payment",11820 "pallet-unique",11869 "pallet-unique",11821 "parity-scale-codec 3.1.5",11870 "parity-scale-codec 3.2.1",11822 "scale-info",11871 "scale-info",11823 "sp-core",11872 "sp-core",11824 "sp-io",11873 "sp-io",118301187911831[[package]]11880[[package]]11832name = "textwrap"11881name = "textwrap"11833version = "0.15.0"11882version = "0.15.1"11834source = "registry+https://github.com/rust-lang/crates.io-index"11883source = "registry+https://github.com/rust-lang/crates.io-index"11835checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"11884checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16"118361188511837[[package]]11886[[package]]11838name = "thiserror"11887name = "thiserror"11839version = "1.0.32"11888version = "1.0.37"11840source = "registry+https://github.com/rust-lang/crates.io-index"11889source = "registry+https://github.com/rust-lang/crates.io-index"11841checksum = "f5f6586b7f764adc0231f4c79be7b920e766bb2f3e51b3661cdb263828f19994"11890checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"11842dependencies = [11891dependencies = [11843 "thiserror-impl",11892 "thiserror-impl",11844]11893]118451189411846[[package]]11895[[package]]11847name = "thiserror-impl"11896name = "thiserror-impl"11848version = "1.0.32"11897version = "1.0.37"11849source = "registry+https://github.com/rust-lang/crates.io-index"11898source = "registry+https://github.com/rust-lang/crates.io-index"11850checksum = "12bafc5b54507e0149cdf1b145a5d80ab80a90bcd9275df43d4fff68460f6c21"11899checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"11851dependencies = [11900dependencies = [11852 "proc-macro2",11901 "proc-macro2",11853 "quote",11902 "quote",119761202511977[[package]]12026[[package]]11978name = "tokio"12027name = "tokio"11979version = "1.20.1"12028version = "1.21.2"11980source = "registry+https://github.com/rust-lang/crates.io-index"12029source = "registry+https://github.com/rust-lang/crates.io-index"11981checksum = "7a8325f63a7d4774dd041e363b2409ed1c5cbbd0f867795e661df066b2b0a581"12030checksum = "a9e03c497dc955702ba729190dc4aac6f2a0ce97f913e5b1b5912fc5039d9099"11982dependencies = [12031dependencies = [11983 "autocfg",12032 "autocfg",11984 "bytes",12033 "bytes",11985 "libc",12034 "libc",11986 "memchr",12035 "memchr",11987 "mio",12036 "mio",11988 "num_cpus",12037 "num_cpus",11989 "once_cell",11990 "parking_lot 0.12.1",12038 "parking_lot 0.12.1",11991 "pin-project-lite 0.2.9",12039 "pin-project-lite 0.2.9",11992 "signal-hook-registry",12040 "signal-hook-registry",120191206712020[[package]]12068[[package]]12021name = "tokio-stream"12069name = "tokio-stream"12022version = "0.1.9"12070version = "0.1.10"12023source = "registry+https://github.com/rust-lang/crates.io-index"12071source = "registry+https://github.com/rust-lang/crates.io-index"12024checksum = "df54d54117d6fdc4e4fea40fe1e4e566b3505700e148a6827e59b34b0d2600d9"12072checksum = "f6edf2d6bc038a43d31353570e27270603f4648d18f5ed10c0e179abe43255af"12025dependencies = [12073dependencies = [12026 "futures-core",12074 "futures-core",12027 "pin-project-lite 0.2.9",12075 "pin-project-lite 0.2.9",120301207812031[[package]]12079[[package]]12032name = "tokio-util"12080name = "tokio-util"12033version = "0.7.3"12081version = "0.7.4"12034source = "registry+https://github.com/rust-lang/crates.io-index"12082source = "registry+https://github.com/rust-lang/crates.io-index"12035checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45"12083checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740"12036dependencies = [12084dependencies = [12037 "bytes",12085 "bytes",12038 "futures-core",12086 "futures-core",121031215112104[[package]]12152[[package]]12105name = "tracing-gum"12153name = "tracing-gum"12106version = "0.9.27"12154version = "0.9.29"12107source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"12155source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"12108dependencies = [12156dependencies = [12109 "polkadot-node-jaeger",12157 "polkadot-node-jaeger",12110 "polkadot-primitives",12158 "polkadot-primitives",121141216212115[[package]]12163[[package]]12116name = "tracing-gum-proc-macro"12164name = "tracing-gum-proc-macro"12117version = "0.9.27"12165version = "0.9.29"12118source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"12166source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"12119dependencies = [12167dependencies = [12120 "expander 0.0.6",12168 "expander 0.0.6",12121 "proc-macro-crate",12169 "proc-macro-crate",121701221812171[[package]]12219[[package]]12172name = "trie-db"12220name = "trie-db"12173version = "0.23.1"12221version = "0.24.0"12174source = "registry+https://github.com/rust-lang/crates.io-index"12222source = "registry+https://github.com/rust-lang/crates.io-index"12175checksum = "d32d034c0d3db64b43c31de38e945f15b40cd4ca6d2dcfc26d4798ce8de4ab83"12223checksum = "004e1e8f92535694b4cb1444dc5a8073ecf0815e3357f729638b9f8fc4062908"12176dependencies = [12224dependencies = [12177 "hash-db",12225 "hash-db",12178 "hashbrown 0.12.3",12226 "hashbrown 0.12.3",12213 "futures-channel",12261 "futures-channel",12214 "futures-io",12262 "futures-io",12215 "futures-util",12263 "futures-util",12216 "idna",12264 "idna 0.2.3",12217 "ipnet",12265 "ipnet",12218 "lazy_static",12266 "lazy_static",12219 "log",12267 "log",12252[[package]]12300[[package]]12253name = "try-runtime-cli"12301name = "try-runtime-cli"12254version = "0.10.0-dev"12302version = "0.10.0-dev"12255source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.27#8eff668a42325aeb4433eace1604f4d286a6ec05"12303source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#c6ebc1e73f85deba349db0ea785ad53addb6f69f"12256dependencies = [12304dependencies = [12257 "clap",12305 "clap",12306 "frame-try-runtime",12258 "jsonrpsee",12307 "jsonrpsee",12259 "log",12308 "log",12260 "parity-scale-codec 3.1.5",12309 "parity-scale-codec 3.2.1",12261 "remote-externalities",12310 "remote-externalities",12262 "sc-chain-spec",12311 "sc-chain-spec",12263 "sc-cli",12312 "sc-cli",12287checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"12336checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"12288dependencies = [12337dependencies = [12289 "cfg-if 1.0.0",12338 "cfg-if 1.0.0",12290 "digest 0.10.3",12339 "digest 0.10.5",12291 "rand 0.8.5",12340 "rand 0.8.5",12292 "static_assertions",12341 "static_assertions",12293]12342]12307 "jsonrpsee",12356 "jsonrpsee",12308 "pallet-common",12357 "pallet-common",12309 "pallet-evm",12358 "pallet-evm",12310 "parity-scale-codec 3.1.5",12359 "parity-scale-codec 3.2.1",12311 "rmrk-rpc",12360 "rmrk-rpc",12312 "sp-api",12361 "sp-api",12313 "sp-blockchain",12362 "sp-blockchain",123201236912321[[package]]12370[[package]]12322name = "ucd-trie"12371name = "ucd-trie"12323version = "0.1.4"12372version = "0.1.5"12324source = "registry+https://github.com/rust-lang/crates.io-index"12373source = "registry+https://github.com/rust-lang/crates.io-index"12325checksum = "89570599c4fe5585de2b388aab47e99f7fa4e9238a1399f707a02e356058141c"12374checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81"123261237512327[[package]]12376[[package]]12328name = "uint"12377name = "uint"12329version = "0.9.3"12378version = "0.9.4"12330source = "registry+https://github.com/rust-lang/crates.io-index"12379source = "registry+https://github.com/rust-lang/crates.io-index"12331checksum = "12f03af7ccf01dd611cc450a0d10dbc9b745770d096473e2faf0ca6e2d66d1e0"12380checksum = "a45526d29728d135c2900b0d30573fe3ee79fceb12ef534c7bb30e810a91b601"12332dependencies = [12381dependencies = [12333 "byteorder",12382 "byteorder",12334 "crunchy",12383 "crunchy",123531240212354[[package]]12403[[package]]12355name = "unicode-ident"12404name = "unicode-ident"12356version = "1.0.3"12405version = "1.0.4"12357source = "registry+https://github.com/rust-lang/crates.io-index"12406source = "registry+https://github.com/rust-lang/crates.io-index"12358checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"12407checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd"123591240812360[[package]]12409[[package]]12361name = "unicode-normalization"12410name = "unicode-normalization"12362version = "0.1.21"12411version = "0.1.22"12363source = "registry+https://github.com/rust-lang/crates.io-index"12412source = "registry+https://github.com/rust-lang/crates.io-index"12364checksum = "854cbdc4f7bc6ae19c820d44abdc3277ac3e1b2b93db20a636825d9322fb60e6"12413checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"12365dependencies = [12414dependencies = [12366 "tinyvec",12415 "tinyvec",12367]12416]123681241712369[[package]]12418[[package]]12370name = "unicode-width"12419name = "unicode-width"12371version = "0.1.9"12420version = "0.1.10"12372source = "registry+https://github.com/rust-lang/crates.io-index"12421source = "registry+https://github.com/rust-lang/crates.io-index"12373checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"12422checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"123741242312375[[package]]12424[[package]]12376name = "unicode-xid"12425name = "unicode-xid"12377version = "0.2.3"12426version = "0.2.4"12378source = "registry+https://github.com/rust-lang/crates.io-index"12427source = "registry+https://github.com/rust-lang/crates.io-index"12379checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04"12428checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"123801242912381[[package]]12430[[package]]12382name = "unique-node"12431name = "unique-node"12383version = "0.9.27"12432version = "0.9.29"12384dependencies = [12433dependencies = [12385 "app-promotion-rpc",12434 "app-promotion-rpc",12386 "clap",12435 "clap",12404 "fp-rpc",12453 "fp-rpc",12405 "frame-benchmarking",12454 "frame-benchmarking",12406 "frame-benchmarking-cli",12455 "frame-benchmarking-cli",12407 "futures 0.3.23",12456 "futures 0.3.24",12408 "jsonrpsee",12457 "jsonrpsee",12409 "log",12458 "log",12410 "opal-runtime",12459 "opal-runtime",12411 "pallet-ethereum",12460 "pallet-ethereum",12412 "pallet-transaction-payment-rpc",12461 "pallet-transaction-payment-rpc",12413 "pallet-transaction-payment-rpc-runtime-api",12462 "pallet-transaction-payment-rpc-runtime-api",12414 "parity-scale-codec 3.1.5",12463 "parity-scale-codec 3.2.1",12415 "parking_lot 0.12.1",12464 "parking_lot 0.12.1",12416 "polkadot-cli",12465 "polkadot-cli",12417 "polkadot-parachain",12466 "polkadot-parachain",12478 "fc-rpc-core",12527 "fc-rpc-core",12479 "fp-rpc",12528 "fp-rpc",12480 "fp-storage",12529 "fp-storage",12481 "futures 0.3.23",12530 "futures 0.3.24",12482 "jsonrpsee",12531 "jsonrpsee",12483 "pallet-common",12532 "pallet-common",12484 "pallet-ethereum",12533 "pallet-ethereum",12581 "pallet-unique-scheduler",12630 "pallet-unique-scheduler",12582 "pallet-xcm",12631 "pallet-xcm",12583 "parachain-info",12632 "parachain-info",12584 "parity-scale-codec 3.1.5",12633 "parity-scale-codec 3.2.1",12585 "polkadot-parachain",12634 "polkadot-parachain",12586 "rmrk-rpc",12635 "rmrk-rpc",12587 "scale-info",12636 "scale-info",126401268912641[[package]]12690[[package]]12642name = "up-common"12691name = "up-common"12643version = "0.9.27"12692version = "0.9.29"12644dependencies = [12693dependencies = [12645 "fp-rpc",12694 "fp-rpc",12646 "frame-support",12695 "frame-support",12660 "frame-support",12709 "frame-support",12661 "frame-system",12710 "frame-system",12662 "pallet-evm",12711 "pallet-evm",12663 "parity-scale-codec 3.1.5",12712 "parity-scale-codec 3.2.1",12664 "rmrk-traits",12713 "rmrk-traits",12665 "scale-info",12714 "scale-info",12666 "serde",12715 "serde",12676dependencies = [12725dependencies = [12677 "pallet-common",12726 "pallet-common",12678 "pallet-evm",12727 "pallet-evm",12679 "parity-scale-codec 3.1.5",12728 "parity-scale-codec 3.2.1",12680 "sp-api",12729 "sp-api",12681 "sp-core",12730 "sp-core",12682 "sp-runtime",12731 "sp-runtime",12687[[package]]12736[[package]]12688name = "up-sponsorship"12737name = "up-sponsorship"12689version = "0.1.0"12738version = "0.1.0"12690source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.27#853766d6033ceb68a2bef196790b962dd0663a04"12739source = "git+https://github.com/uniquenetwork/pallet-sponsoring?branch=polkadot-v0.9.29#3f663c3ee19933cd5545e0420ce2562fa8301235"12691dependencies = [12740dependencies = [12692 "impl-trait-for-tuples",12741 "impl-trait-for-tuples",12693]12742]126941274312695[[package]]12744[[package]]12696name = "url"12745name = "url"12697version = "2.2.2"12746version = "2.3.1"12698source = "registry+https://github.com/rust-lang/crates.io-index"12747source = "registry+https://github.com/rust-lang/crates.io-index"12699checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"12748checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"12700dependencies = [12749dependencies = [12701 "form_urlencoded",12750 "form_urlencoded",12702 "idna",12751 "idna 0.3.0",12703 "matches",12704 "percent-encoding",12752 "percent-encoding",12705]12753]1270612754127851283312786[[package]]12834[[package]]12787name = "wasm-bindgen"12835name = "wasm-bindgen"12788version = "0.2.82"12836version = "0.2.83"12789source = "registry+https://github.com/rust-lang/crates.io-index"12837source = "registry+https://github.com/rust-lang/crates.io-index"12790checksum = "fc7652e3f6c4706c8d9cd54832c4a4ccb9b5336e2c3bd154d5cccfbf1c1f5f7d"12838checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"12791dependencies = [12839dependencies = [12792 "cfg-if 1.0.0",12840 "cfg-if 1.0.0",12793 "wasm-bindgen-macro",12841 "wasm-bindgen-macro",12794]12842]127951284312796[[package]]12844[[package]]12797name = "wasm-bindgen-backend"12845name = "wasm-bindgen-backend"12798version = "0.2.82"12846version = "0.2.83"12799source = "registry+https://github.com/rust-lang/crates.io-index"12847source = "registry+https://github.com/rust-lang/crates.io-index"12800checksum = "662cd44805586bd52971b9586b1df85cdbbd9112e4ef4d8f41559c334dc6ac3f"12848checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"12801dependencies = [12849dependencies = [12802 "bumpalo",12850 "bumpalo",12803 "log",12851 "log",128101285812811[[package]]12859[[package]]12812name = "wasm-bindgen-futures"12860name = "wasm-bindgen-futures"12813version = "0.4.32"12861version = "0.4.33"12814source = "registry+https://github.com/rust-lang/crates.io-index"12862source = "registry+https://github.com/rust-lang/crates.io-index"12815checksum = "fa76fb221a1f8acddf5b54ace85912606980ad661ac7a503b4570ffd3a624dad"12863checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d"12816dependencies = [12864dependencies = [12817 "cfg-if 1.0.0",12865 "cfg-if 1.0.0",12818 "js-sys",12866 "js-sys",128221287012823[[package]]12871[[package]]12824name = "wasm-bindgen-macro"12872name = "wasm-bindgen-macro"12825version = "0.2.82"12873version = "0.2.83"12826source = "registry+https://github.com/rust-lang/crates.io-index"12874source = "registry+https://github.com/rust-lang/crates.io-index"12827checksum = "b260f13d3012071dfb1512849c033b1925038373aea48ced3012c09df952c602"12875checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"12828dependencies = [12876dependencies = [12829 "quote",12877 "quote",12830 "wasm-bindgen-macro-support",12878 "wasm-bindgen-macro-support",12831]12879]128321288012833[[package]]12881[[package]]12834name = "wasm-bindgen-macro-support"12882name = "wasm-bindgen-macro-support"12835version = "0.2.82"12883version = "0.2.83"12836source = "registry+https://github.com/rust-lang/crates.io-index"12884source = "registry+https://github.com/rust-lang/crates.io-index"12837checksum = "5be8e654bdd9b79216c2929ab90721aa82faf65c48cdf08bdc4e7f51357b80da"12885checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"12838dependencies = [12886dependencies = [12839 "proc-macro2",12887 "proc-macro2",12840 "quote",12888 "quote",128451289312846[[package]]12894[[package]]12847name = "wasm-bindgen-shared"12895name = "wasm-bindgen-shared"12848version = "0.2.82"12896version = "0.2.83"12849source = "registry+https://github.com/rust-lang/crates.io-index"12897source = "registry+https://github.com/rust-lang/crates.io-index"12850checksum = "6598dd0bd3c7d51095ff6531a5b23e02acdc81804e30d8f07afb77b7215a140a"12898checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"128511289912852[[package]]12900[[package]]12853name = "wasm-gc-api"12901name = "wasm-gc-api"12875source = "registry+https://github.com/rust-lang/crates.io-index"12923source = "registry+https://github.com/rust-lang/crates.io-index"12876checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"12924checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"12877dependencies = [12925dependencies = [12878 "futures 0.3.23",12926 "futures 0.3.24",12879 "js-sys",12927 "js-sys",12880 "parking_lot 0.11.2",12928 "parking_lot 0.11.2",12881 "pin-utils",12929 "pin-utils",130881313613089[[package]]13137[[package]]13090name = "web-sys"13138name = "web-sys"13091version = "0.3.59"13139version = "0.3.60"13092source = "registry+https://github.com/rust-lang/crates.io-index"13140source = "registry+https://github.com/rust-lang/crates.io-index"13093checksum = "ed055ab27f941423197eb86b2035720b1a3ce40504df082cac2ecc6ed73335a1"13141checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f"13094dependencies = [13142dependencies = [13095 "js-sys",13143 "js-sys",13096 "wasm-bindgen",13144 "wasm-bindgen",131081315613109[[package]]13157[[package]]13110name = "webpki-roots"13158name = "webpki-roots"13111version = "0.22.4"13159version = "0.22.5"13112source = "registry+https://github.com/rust-lang/crates.io-index"13160source = "registry+https://github.com/rust-lang/crates.io-index"13113checksum = "f1c760f0d366a6c24a02ed7816e23e691f5d92291f94d15e836006fd11b04daf"13161checksum = "368bfe657969fb01238bb756d351dcade285e0f6fcbd36dcb23359a5169975be"13114dependencies = [13162dependencies = [13115 "webpki",13163 "webpki",13116]13164]131261317413127[[package]]13175[[package]]13128name = "westend-runtime"13176name = "westend-runtime"13129version = "0.9.27"13177version = "0.9.29"13130source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13178source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13131dependencies = [13179dependencies = [13132 "beefy-primitives",13180 "beefy-primitives",13133 "bitvec 1.0.1",13181 "bitvec 1.0.1",13180 "pallet-vesting",13228 "pallet-vesting",13181 "pallet-xcm",13229 "pallet-xcm",13182 "pallet-xcm-benchmarks",13230 "pallet-xcm-benchmarks",13183 "parity-scale-codec 3.1.5",13231 "parity-scale-codec 3.2.1",13184 "polkadot-parachain",13232 "polkadot-parachain",13185 "polkadot-primitives",13233 "polkadot-primitives",13186 "polkadot-runtime-common",13234 "polkadot-runtime-common",132151326313216[[package]]13264[[package]]13217name = "westend-runtime-constants"13265name = "westend-runtime-constants"13218version = "0.9.27"13266version = "0.9.29"13219source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13267source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13220dependencies = [13268dependencies = [13221 "frame-support",13269 "frame-support",13222 "polkadot-primitives",13270 "polkadot-primitives",132271327513228[[package]]13276[[package]]13229name = "which"13277name = "which"13230version = "4.2.5"13278version = "4.3.0"13231source = "registry+https://github.com/rust-lang/crates.io-index"13279source = "registry+https://github.com/rust-lang/crates.io-index"13232checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae"13280checksum = "1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b"13233dependencies = [13281dependencies = [13234 "either",13282 "either",13235 "lazy_static",13236 "libc",13283 "libc",13284 "once_cell",13237]13285]132381328613239[[package]]13287[[package]]133961344413397[[package]]13445[[package]]13398name = "xcm"13446name = "xcm"13399version = "0.9.27"13447version = "0.9.29"13400source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13448source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13401dependencies = [13449dependencies = [13402 "derivative",13450 "derivative",13403 "impl-trait-for-tuples",13451 "impl-trait-for-tuples",13404 "log",13452 "log",13405 "parity-scale-codec 3.1.5",13453 "parity-scale-codec 3.2.1",13406 "scale-info",13454 "scale-info",13407 "sp-runtime",13455 "sp-runtime",13408 "xcm-procedural",13456 "xcm-procedural",13409]13457]134101345813411[[package]]13459[[package]]13412name = "xcm-builder"13460name = "xcm-builder"13413version = "0.9.27"13461version = "0.9.29"13414source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13462source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13415dependencies = [13463dependencies = [13416 "frame-support",13464 "frame-support",13417 "frame-system",13465 "frame-system",13418 "log",13466 "log",13419 "pallet-transaction-payment",13467 "pallet-transaction-payment",13420 "parity-scale-codec 3.1.5",13468 "parity-scale-codec 3.2.1",13421 "polkadot-parachain",13469 "polkadot-parachain",13422 "scale-info",13470 "scale-info",13423 "sp-arithmetic",13471 "sp-arithmetic",134301347813431[[package]]13479[[package]]13432name = "xcm-executor"13480name = "xcm-executor"13433version = "0.9.27"13481version = "0.9.29"13434source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13482source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13435dependencies = [13483dependencies = [13436 "frame-benchmarking",13484 "frame-benchmarking",13437 "frame-support",13485 "frame-support",13438 "impl-trait-for-tuples",13486 "impl-trait-for-tuples",13439 "log",13487 "log",13440 "parity-scale-codec 3.1.5",13488 "parity-scale-codec 3.2.1",13441 "sp-arithmetic",13489 "sp-arithmetic",13442 "sp-core",13490 "sp-core",13443 "sp-io",13491 "sp-io",134481349613449[[package]]13497[[package]]13450name = "xcm-procedural"13498name = "xcm-procedural"13451version = "0.9.27"13499version = "0.9.29"13452source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.27#b017bad50d360a1c6e3cdf9652bdb85e5f479fea"13500source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.29#94078b44fb6c9767bf60ffcaaa3be40681be5a76"13453dependencies = [13501dependencies = [13454 "Inflector",13502 "Inflector",13455 "proc-macro2",13503 "proc-macro2",13463source = "registry+https://github.com/rust-lang/crates.io-index"13511source = "registry+https://github.com/rust-lang/crates.io-index"13464checksum = "e5d9ba232399af1783a58d8eb26f6b5006fbefe2dc9ef36bd283324792d03ea5"13512checksum = "e5d9ba232399af1783a58d8eb26f6b5006fbefe2dc9ef36bd283324792d03ea5"13465dependencies = [13513dependencies = [13466 "futures 0.3.23",13514 "futures 0.3.24",13467 "log",13515 "log",13468 "nohash-hasher",13516 "nohash-hasher",13469 "parking_lot 0.12.1",13517 "parking_lot 0.12.1",Cargo.tomldiffbeforeafterboth15[profile.release]15[profile.release]16panic = 'unwind'16panic = 'unwind'1718[patch.crates-io]19jsonrpsee = { git = "https://github.com/uniquenetwork/jsonrpsee", branch = "unique-v0.14.0-fix-unknown-fields" }20jsonrpsee-types = { git = "https://github.com/uniquenetwork/jsonrpsee", branch = "unique-v0.14.0-fix-unknown-fields" }21jsonrpsee-core = { git = "https://github.com/uniquenetwork/jsonrpsee", branch = "unique-v0.14.0-fix-unknown-fields" }2217client/rpc/Cargo.tomldiffbeforeafterboth11app-promotion-rpc = { path = "../../primitives/app_promotion_rpc"}11app-promotion-rpc = { path = "../../primitives/app_promotion_rpc"}12rmrk-rpc = { path = "../../primitives/rmrk-rpc" }12rmrk-rpc = { path = "../../primitives/rmrk-rpc" }13codec = { package = "parity-scale-codec", version = "3.1.2" }13codec = { package = "parity-scale-codec", version = "3.1.2" }14jsonrpsee = { version = "0.14.0", features = ["server", "macros"] }14jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }15anyhow = "1.0.57"15anyhow = "1.0.57"161617sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-blockchain = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }20sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }20sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }2323crates/evm-coder/Cargo.tomldiffbeforeafterboth11primitive-types = { version = "0.11.1", default-features = false }11primitive-types = { version = "0.11.1", default-features = false }12# Evm doesn't have reexports for log and others12# Evm doesn't have reexports for log and others13ethereum = { version = "0.12.0", default-features = false }13ethereum = { version = "0.12.0", default-features = false }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15# Error types for execution16# Error types for execution16evm-core = { default-features = false , git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.27" }17evm-core = { default-features = false , git = "https://github.com/uniquenetwork/evm", branch = "unique-polkadot-v0.9.29" }17# We have tuple-heavy code in solidity.rs18# We have tuple-heavy code in solidity.rs18impl-trait-for-tuples = "0.2.2"19impl-trait-for-tuples = "0.2.2"1920242525[features]26[features]26default = ["std"]27default = ["std"]27std = ["ethereum/std", "primitive-types/std", "evm-core/std"]28std = ["ethereum/std", "primitive-types/std", "evm-core/std", "frame-support/std"]2829crates/evm-coder/procedural/src/solidity_interface.rsdiffbeforeafterboth560 selector: u32,560 selector: u32,561 args: Vec<MethodArg>,561 args: Vec<MethodArg>,562 has_normal_args: bool,562 has_normal_args: bool,563 has_value_args: bool,563 mutability: Mutability,564 mutability: Mutability,564 result: Type,565 result: Type,565 weight: Option<Expr>,566 weight: Option<Expr>,655 write!(selector_str, "{}", arg.selector_ty()).unwrap();656 write!(selector_str, "{}", arg.selector_ty()).unwrap();656 has_normal_args = true;657 has_normal_args = true;657 }658 }659 let has_value_args = args.iter().any(|a| a.is_value());658 selector_str.push(')');660 selector_str.push(')');659 let selector = fn_selector_str(&selector_str);661 let selector = fn_selector_str(&selector_str);660662667 selector,669 selector,668 args,670 args,669 has_normal_args,671 has_normal_args,672 has_value_args,670 mutability,673 mutability,671 result: result.clone(),674 result: result.clone(),672 weight,675 weight,823 let docs = &self.docs;826 let docs = &self.docs;824 let selector_str = &self.selector_str;827 let selector_str = &self.selector_str;825 let selector = self.selector;828 let selector = self.selector;826829 let is_payable = self.has_value_args;827 quote! {830 quote! {828 SolidityFunction {831 SolidityFunction {829 docs: &[#(#docs),*],832 docs: &[#(#docs),*],830 selector_str: #selector_str,833 selector_str: #selector_str,831 selector: #selector,834 selector: #selector,832 name: #camel_name,835 name: #camel_name,833 mutability: #mutability,836 mutability: #mutability,837 is_payable: #is_payable,834 args: (838 args: (835 #(839 #(836 #args,840 #args,1122 #weight_variants,1126 #weight_variants,1123 )*1127 )*1124 // TODO: It should be very cheap, but not free1128 // TODO: It should be very cheap, but not free1125 Self::ERC165Call(::evm_coder::ERC165Call::SupportsInterface {..}, _) => 100u64.into(),1129 Self::ERC165Call(::evm_coder::ERC165Call::SupportsInterface {..}, _) => ::frame_support::weights::Weight::from_ref_time(100).into(),1126 #(1130 #(1127 #weight_variants_this,1131 #weight_variants_this,1128 )*1132 )*crates/evm-coder/src/execution.rsdiffbeforeafterboth58 Self { weight }58 Self { weight }59 }59 }60}60}61impl From<u64> for DispatchInfo {62 fn from(weight: u64) -> Self {63 Self {64 weight: Weight::from_ref_time(weight),65 }66 }67}61impl From<()> for DispatchInfo {68impl From<()> for DispatchInfo {62 fn from(_: ()) -> Self {69 fn from(_: ()) -> Self {63 Self { weight: 0 }70 Self {71 weight: Weight::zero(),72 }64 }73 }65}74}crates/evm-coder/src/lib.rsdiffbeforeafterboth169/// Should be same between evm-coder and substrate to avoid confusion169/// Should be same between evm-coder and substrate to avoid confusion170///170///171/// Isn't same thing as gas, some mapping is required between those types171/// Isn't same thing as gas, some mapping is required between those types172pub type Weight = u64;172pub type Weight = frame_support::weights::Weight;173173174/// In substrate, we have benchmarking, which allows174/// In substrate, we have benchmarking, which allows175/// us to not rely on gas metering, but instead predict amount of gas to execute call175/// us to not rely on gas metering, but instead predict amount of gas to execute callcrates/evm-coder/src/solidity.rsdiffbeforeafterboth422 pub args: A,422 pub args: A,423 pub result: R,423 pub result: R,424 pub mutability: SolidityMutability,424 pub mutability: SolidityMutability,425 pub is_payable: bool,425}426}426impl<A: SolidityArguments, R: SolidityArguments> SolidityFunctions for SolidityFunction<A, R> {427impl<A: SolidityArguments, R: SolidityArguments> SolidityFunctions for SolidityFunction<A, R> {427 fn solidity_name(428 fn solidity_name(452 SolidityMutability::View => write!(writer, " view")?,453 SolidityMutability::View => write!(writer, " view")?,453 SolidityMutability::Mutable => {}454 SolidityMutability::Mutable => {}454 }455 }456 if self.is_payable {457 write!(writer, " payable")?;458 }455 if !self.result.is_empty() {459 if !self.result.is_empty() {456 write!(writer, " returns (")?;460 write!(writer, " returns (")?;457 self.result.solidity_name(writer, tc)?;461 self.result.solidity_name(writer, tc)?;crates/evm-coder/tests/conditional_is.rsdiffbeforeafterboth1use evm_coder::{types::*, solidity_interface, execution::Result, Call};1use evm_coder::{types::*, solidity_interface, execution::Result};223pub struct Contract(bool);3pub struct Contract(bool);44node/cli/Cargo.tomldiffbeforeafterboth334[build-dependencies.substrate-build-script-utils]4[build-dependencies.substrate-build-script-utils]5git = "https://github.com/paritytech/substrate"5git = "https://github.com/paritytech/substrate"6branch = "polkadot-v0.9.27"6branch = "polkadot-v0.9.29"778################################################################################8################################################################################9# Substrate Dependecies9# Substrate Dependecies161617[dependencies.frame-benchmarking]17[dependencies.frame-benchmarking]18git = "https://github.com/paritytech/substrate"18git = "https://github.com/paritytech/substrate"19branch = "polkadot-v0.9.27"19branch = "polkadot-v0.9.29"202021[dependencies.frame-benchmarking-cli]21[dependencies.frame-benchmarking-cli]22git = "https://github.com/paritytech/substrate"22git = "https://github.com/paritytech/substrate"23branch = "polkadot-v0.9.27"23branch = "polkadot-v0.9.29"242425[dependencies.try-runtime-cli]25[dependencies.try-runtime-cli]26git = "https://github.com/paritytech/substrate"26git = "https://github.com/paritytech/substrate"27branch = "polkadot-v0.9.27"27branch = "polkadot-v0.9.29"282829[dependencies.pallet-transaction-payment-rpc]29[dependencies.pallet-transaction-payment-rpc]30git = "https://github.com/paritytech/substrate"30git = "https://github.com/paritytech/substrate"31branch = "polkadot-v0.9.27"31branch = "polkadot-v0.9.29"323233[dependencies.substrate-prometheus-endpoint]33[dependencies.substrate-prometheus-endpoint]34git = "https://github.com/paritytech/substrate"34git = "https://github.com/paritytech/substrate"35branch = "polkadot-v0.9.27"35branch = "polkadot-v0.9.29"363637[dependencies.sc-basic-authorship]37[dependencies.sc-basic-authorship]38git = "https://github.com/paritytech/substrate"38git = "https://github.com/paritytech/substrate"39branch = "polkadot-v0.9.27"39branch = "polkadot-v0.9.29"404041[dependencies.sc-chain-spec]41[dependencies.sc-chain-spec]42git = "https://github.com/paritytech/substrate"42git = "https://github.com/paritytech/substrate"43branch = "polkadot-v0.9.27"43branch = "polkadot-v0.9.29"444445[dependencies.sc-cli]45[dependencies.sc-cli]46features = ['wasmtime']46features = ['wasmtime']47git = "https://github.com/paritytech/substrate"47git = "https://github.com/paritytech/substrate"48branch = "polkadot-v0.9.27"48branch = "polkadot-v0.9.29"494950[dependencies.sc-client-api]50[dependencies.sc-client-api]51git = "https://github.com/paritytech/substrate"51git = "https://github.com/paritytech/substrate"52branch = "polkadot-v0.9.27"52branch = "polkadot-v0.9.29"535354[dependencies.sc-consensus]54[dependencies.sc-consensus]55git = "https://github.com/paritytech/substrate"55git = "https://github.com/paritytech/substrate"56branch = "polkadot-v0.9.27"56branch = "polkadot-v0.9.29"575758[dependencies.sc-consensus-aura]58[dependencies.sc-consensus-aura]59git = "https://github.com/paritytech/substrate"59git = "https://github.com/paritytech/substrate"60branch = "polkadot-v0.9.27"60branch = "polkadot-v0.9.29"616162[dependencies.sc-executor]62[dependencies.sc-executor]63features = ['wasmtime']63features = ['wasmtime']64git = "https://github.com/paritytech/substrate"64git = "https://github.com/paritytech/substrate"65branch = "polkadot-v0.9.27"65branch = "polkadot-v0.9.29"666667[dependencies.sc-finality-grandpa]67[dependencies.sc-finality-grandpa]68git = "https://github.com/paritytech/substrate"68git = "https://github.com/paritytech/substrate"69branch = "polkadot-v0.9.27"69branch = "polkadot-v0.9.29"707071[dependencies.sc-keystore]71[dependencies.sc-keystore]72git = "https://github.com/paritytech/substrate"72git = "https://github.com/paritytech/substrate"73branch = "polkadot-v0.9.27"73branch = "polkadot-v0.9.29"747475[dependencies.sc-rpc]75[dependencies.sc-rpc]76git = "https://github.com/paritytech/substrate"76git = "https://github.com/paritytech/substrate"77branch = "polkadot-v0.9.27"77branch = "polkadot-v0.9.29"787879[dependencies.sc-rpc-api]79[dependencies.sc-rpc-api]80git = "https://github.com/paritytech/substrate"80git = "https://github.com/paritytech/substrate"81branch = "polkadot-v0.9.27"81branch = "polkadot-v0.9.29"828283[dependencies.sc-service]83[dependencies.sc-service]84features = ['wasmtime']84features = ['wasmtime']85git = "https://github.com/paritytech/substrate"85git = "https://github.com/paritytech/substrate"86branch = "polkadot-v0.9.27"86branch = "polkadot-v0.9.29"878788[dependencies.sc-telemetry]88[dependencies.sc-telemetry]89git = "https://github.com/paritytech/substrate"89git = "https://github.com/paritytech/substrate"90branch = "polkadot-v0.9.27"90branch = "polkadot-v0.9.29"919192[dependencies.sc-transaction-pool]92[dependencies.sc-transaction-pool]93git = "https://github.com/paritytech/substrate"93git = "https://github.com/paritytech/substrate"94branch = "polkadot-v0.9.27"94branch = "polkadot-v0.9.29"959596[dependencies.sc-tracing]96[dependencies.sc-tracing]97git = "https://github.com/paritytech/substrate"97git = "https://github.com/paritytech/substrate"98branch = "polkadot-v0.9.27"98branch = "polkadot-v0.9.29"9999100[dependencies.sc-sysinfo]100[dependencies.sc-sysinfo]101git = "https://github.com/paritytech/substrate"101git = "https://github.com/paritytech/substrate"102branch = "polkadot-v0.9.27"102branch = "polkadot-v0.9.29"103103104[dependencies.sp-block-builder]104[dependencies.sp-block-builder]105git = "https://github.com/paritytech/substrate"105git = "https://github.com/paritytech/substrate"106branch = "polkadot-v0.9.27"106branch = "polkadot-v0.9.29"107107108[dependencies.sp-api]108[dependencies.sp-api]109git = "https://github.com/paritytech/substrate"109git = "https://github.com/paritytech/substrate"110branch = "polkadot-v0.9.27"110branch = "polkadot-v0.9.29"111111112[dependencies.sp-blockchain]112[dependencies.sp-blockchain]113git = "https://github.com/paritytech/substrate"113git = "https://github.com/paritytech/substrate"114branch = "polkadot-v0.9.27"114branch = "polkadot-v0.9.29"115115116[dependencies.sp-consensus]116[dependencies.sp-consensus]117git = "https://github.com/paritytech/substrate"117git = "https://github.com/paritytech/substrate"118branch = "polkadot-v0.9.27"118branch = "polkadot-v0.9.29"119119120[dependencies.sp-consensus-aura]120[dependencies.sp-consensus-aura]121git = "https://github.com/paritytech/substrate"121git = "https://github.com/paritytech/substrate"122branch = "polkadot-v0.9.27"122branch = "polkadot-v0.9.29"123123124[dependencies.sp-core]124[dependencies.sp-core]125git = "https://github.com/paritytech/substrate"125git = "https://github.com/paritytech/substrate"126branch = "polkadot-v0.9.27"126branch = "polkadot-v0.9.29"127127128[dependencies.sp-finality-grandpa]128[dependencies.sp-finality-grandpa]129git = "https://github.com/paritytech/substrate"129git = "https://github.com/paritytech/substrate"130branch = "polkadot-v0.9.27"130branch = "polkadot-v0.9.29"131131132[dependencies.sp-inherents]132[dependencies.sp-inherents]133git = "https://github.com/paritytech/substrate"133git = "https://github.com/paritytech/substrate"134branch = "polkadot-v0.9.27"134branch = "polkadot-v0.9.29"135135136[dependencies.sp-keystore]136[dependencies.sp-keystore]137git = "https://github.com/paritytech/substrate"137git = "https://github.com/paritytech/substrate"138branch = "polkadot-v0.9.27"138branch = "polkadot-v0.9.29"139139140[dependencies.sp-offchain]140[dependencies.sp-offchain]141git = "https://github.com/paritytech/substrate"141git = "https://github.com/paritytech/substrate"142branch = "polkadot-v0.9.27"142branch = "polkadot-v0.9.29"143143144[dependencies.sp-runtime]144[dependencies.sp-runtime]145git = "https://github.com/paritytech/substrate"145git = "https://github.com/paritytech/substrate"146branch = "polkadot-v0.9.27"146branch = "polkadot-v0.9.29"147147148[dependencies.sp-session]148[dependencies.sp-session]149git = "https://github.com/paritytech/substrate"149git = "https://github.com/paritytech/substrate"150branch = "polkadot-v0.9.27"150branch = "polkadot-v0.9.29"151151152[dependencies.sp-timestamp]152[dependencies.sp-timestamp]153git = "https://github.com/paritytech/substrate"153git = "https://github.com/paritytech/substrate"154branch = "polkadot-v0.9.27"154branch = "polkadot-v0.9.29"155155156[dependencies.sp-transaction-pool]156[dependencies.sp-transaction-pool]157git = "https://github.com/paritytech/substrate"157git = "https://github.com/paritytech/substrate"158branch = "polkadot-v0.9.27"158branch = "polkadot-v0.9.29"159159160[dependencies.sp-trie]160[dependencies.sp-trie]161git = "https://github.com/paritytech/substrate"161git = "https://github.com/paritytech/substrate"162branch = "polkadot-v0.9.27"162branch = "polkadot-v0.9.29"163163164[dependencies.substrate-frame-rpc-system]164[dependencies.substrate-frame-rpc-system]165git = "https://github.com/paritytech/substrate"165git = "https://github.com/paritytech/substrate"166branch = "polkadot-v0.9.27"166branch = "polkadot-v0.9.29"167167168[dependencies.sc-network]168[dependencies.sc-network]169git = "https://github.com/paritytech/substrate"169git = "https://github.com/paritytech/substrate"170branch = "polkadot-v0.9.27"170branch = "polkadot-v0.9.29"171171172[dependencies.serde]172[dependencies.serde]173features = ['derive']173features = ['derive']178178179[dependencies.sc-consensus-manual-seal]179[dependencies.sc-consensus-manual-seal]180git = "https://github.com/paritytech/substrate"180git = "https://github.com/paritytech/substrate"181branch = "polkadot-v0.9.27"181branch = "polkadot-v0.9.29"182182183################################################################################183################################################################################184# Cumulus dependencies184# Cumulus dependencies185185186[dependencies.cumulus-client-consensus-aura]186[dependencies.cumulus-client-consensus-aura]187git = "https://github.com/paritytech/cumulus"187git = "https://github.com/paritytech/cumulus"188branch = "polkadot-v0.9.27"188branch = "polkadot-v0.9.29"189189190[dependencies.cumulus-client-consensus-common]190[dependencies.cumulus-client-consensus-common]191git = "https://github.com/paritytech/cumulus"191git = "https://github.com/paritytech/cumulus"192branch = "polkadot-v0.9.27"192branch = "polkadot-v0.9.29"193193194[dependencies.cumulus-client-collator]194[dependencies.cumulus-client-collator]195git = "https://github.com/paritytech/cumulus"195git = "https://github.com/paritytech/cumulus"196branch = "polkadot-v0.9.27"196branch = "polkadot-v0.9.29"197197198[dependencies.cumulus-client-cli]198[dependencies.cumulus-client-cli]199git = "https://github.com/paritytech/cumulus"199git = "https://github.com/paritytech/cumulus"200branch = "polkadot-v0.9.27"200branch = "polkadot-v0.9.29"201201202[dependencies.cumulus-client-network]202[dependencies.cumulus-client-network]203git = "https://github.com/paritytech/cumulus"203git = "https://github.com/paritytech/cumulus"204branch = "polkadot-v0.9.27"204branch = "polkadot-v0.9.29"205205206[dependencies.cumulus-primitives-core]206[dependencies.cumulus-primitives-core]207git = "https://github.com/paritytech/cumulus"207git = "https://github.com/paritytech/cumulus"208branch = "polkadot-v0.9.27"208branch = "polkadot-v0.9.29"209209210[dependencies.cumulus-primitives-parachain-inherent]210[dependencies.cumulus-primitives-parachain-inherent]211git = "https://github.com/paritytech/cumulus"211git = "https://github.com/paritytech/cumulus"212branch = "polkadot-v0.9.27"212branch = "polkadot-v0.9.29"213213214[dependencies.cumulus-client-service]214[dependencies.cumulus-client-service]215git = "https://github.com/paritytech/cumulus"215git = "https://github.com/paritytech/cumulus"216branch = "polkadot-v0.9.27"216branch = "polkadot-v0.9.29"217217218[dependencies.cumulus-relay-chain-interface]218[dependencies.cumulus-relay-chain-interface]219git = "https://github.com/paritytech/cumulus"219git = "https://github.com/paritytech/cumulus"220branch = "polkadot-v0.9.27"220branch = "polkadot-v0.9.29"221221222[dependencies.cumulus-relay-chain-inprocess-interface]222[dependencies.cumulus-relay-chain-inprocess-interface]223git = "https://github.com/paritytech/cumulus"223git = "https://github.com/paritytech/cumulus"224branch = "polkadot-v0.9.27"224branch = "polkadot-v0.9.29"225225226[dependencies.cumulus-relay-chain-rpc-interface]226[dependencies.cumulus-relay-chain-rpc-interface]227git = "https://github.com/paritytech/cumulus"227git = "https://github.com/paritytech/cumulus"228branch = "polkadot-v0.9.27"228branch = "polkadot-v0.9.29"229229230################################################################################230################################################################################231# Polkadot dependencies231# Polkadot dependencies232[dependencies.polkadot-primitives]232[dependencies.polkadot-primitives]233git = "https://github.com/paritytech/polkadot"233git = "https://github.com/paritytech/polkadot"234branch = "release-v0.9.27"234branch = "release-v0.9.29"235235236[dependencies.polkadot-service]236[dependencies.polkadot-service]237git = "https://github.com/paritytech/polkadot"237git = "https://github.com/paritytech/polkadot"238branch = "release-v0.9.27"238branch = "release-v0.9.29"239239240[dependencies.polkadot-cli]240[dependencies.polkadot-cli]241git = "https://github.com/paritytech/polkadot"241git = "https://github.com/paritytech/polkadot"242branch = "release-v0.9.27"242branch = "release-v0.9.29"243243244[dependencies.polkadot-test-service]244[dependencies.polkadot-test-service]245git = "https://github.com/paritytech/polkadot"245git = "https://github.com/paritytech/polkadot"246branch = "release-v0.9.27"246branch = "release-v0.9.29"247247248[dependencies.polkadot-parachain]248[dependencies.polkadot-parachain]249git = "https://github.com/paritytech/polkadot"249git = "https://github.com/paritytech/polkadot"250branch = "release-v0.9.27"250branch = "release-v0.9.29"251251252252253################################################################################253################################################################################277277278[dependencies.pallet-transaction-payment-rpc-runtime-api]278[dependencies.pallet-transaction-payment-rpc-runtime-api]279git = "https://github.com/paritytech/substrate"279git = "https://github.com/paritytech/substrate"280branch = "polkadot-v0.9.27"280branch = "polkadot-v0.9.29"281281282################################################################################282################################################################################283# Package283# Package291license = 'GPLv3'291license = 'GPLv3'292name = 'unique-node'292name = 'unique-node'293repository = 'https://github.com/UniqueNetwork/unique-chain'293repository = 'https://github.com/UniqueNetwork/unique-chain'294version = "0.9.27"294version = "0.9.29"295295296[[bin]]296[[bin]]297name = 'unique-collator'297name = 'unique-collator'306flexi_logger = "0.22.5"306flexi_logger = "0.22.5"307parking_lot = '0.12.1'307parking_lot = '0.12.1'308clap = "3.1.2"308clap = "3.1.2"309jsonrpsee = { version = "0.14.0", features = ["server", "macros"] }309jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }310tokio = { version = "1.19.2", features = ["time"] }310tokio = { version = "1.19.2", features = ["time"] }311311312fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }312fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }313fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }313fc-consensus = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }314fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }314fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }315fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }315fc-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }316fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }316fc-db = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }317fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }317fp-rpc = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }318pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }318pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }319319320unique-rpc = { default-features = false, path = "../rpc" }320unique-rpc = { default-features = false, path = "../rpc" }321app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}321app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}node/cli/src/command.rsdiffbeforeafterboth574 fn base_path(&self) -> Result<Option<BasePath>> {574 fn base_path(&self) -> Result<Option<BasePath>> {575 Ok(self575 Ok(self576 .shared_params()576 .shared_params()577 .base_path()577 .base_path()?578 .or_else(|| self.base_path.clone().map(Into::into)))578 .or_else(|| self.base_path.clone().map(Into::into)))579 }579 }580580628 self.base.base.transaction_pool(is_dev)628 self.base.base.transaction_pool(is_dev)629 }629 }630631 fn state_cache_child_ratio(&self) -> Result<Option<usize>> {632 self.base.base.state_cache_child_ratio()633 }634630635 fn rpc_methods(&self) -> Result<sc_service::config::RpcMethods> {631 fn rpc_methods(&self) -> Result<sc_service::config::RpcMethods> {636 self.base.base.rpc_methods()632 self.base.base.rpc_methods()node/cli/src/service.rsdiffbeforeafterboth43use cumulus_primitives_core::ParaId;43use cumulus_primitives_core::ParaId;44use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain;44use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain;45use cumulus_relay_chain_interface::{RelayChainError, RelayChainInterface, RelayChainResult};45use cumulus_relay_chain_interface::{RelayChainError, RelayChainInterface, RelayChainResult};46use cumulus_relay_chain_rpc_interface::RelayChainRPCInterface;46use cumulus_relay_chain_rpc_interface::{RelayChainRpcInterface, create_client_and_start_worker};474748// Substrate Imports48// Substrate Imports49use sc_client_api::ExecutorProvider;49use sc_client_api::ExecutorProvider;50use sc_executor::NativeElseWasmExecutor;50use sc_executor::NativeElseWasmExecutor;51use sc_executor::NativeExecutionDispatch;51use sc_executor::NativeExecutionDispatch;52use sc_network::NetworkService;52use sc_network::{NetworkService, NetworkBlock};53use sc_service::{BasePath, Configuration, PartialComponents, TaskManager};53use sc_service::{BasePath, Configuration, PartialComponents, TaskManager};54use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle};54use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle};55use sp_keystore::SyncCryptoStorePtr;55use sp_keystore::SyncCryptoStorePtr;320 Option<CollatorPair>,320 Option<CollatorPair>,321)> {321)> {322 match collator_options.relay_chain_rpc_url {322 match collator_options.relay_chain_rpc_url {323 Some(relay_chain_url) => Ok((323 Some(relay_chain_url) => {324 let rpc_client = create_client_and_start_worker(relay_chain_url, task_manager).await?;325326 Ok((324 Arc::new(RelayChainRPCInterface::new(relay_chain_url).await?) as Arc<_>,327 Arc::new(RelayChainRpcInterface::new(rpc_client)) as Arc<_>,325 None,328 None,326 )),329 ))330 }327 None => build_inprocess_relay_chain(331 None => build_inprocess_relay_chain(328 polkadot_config,332 polkadot_config,329 parachain_config,333 parachain_config,node/rpc/Cargo.tomldiffbeforeafterboth111112[dependencies]12[dependencies]13futures = { version = "0.3.17", features = ["compat"] }13futures = { version = "0.3.17", features = ["compat"] }14jsonrpsee = { version = "0.14.0", features = ["server", "macros"] }14jsonrpsee = { version = "0.15.1", features = ["server", "macros"] }15# pallet-contracts-rpc = { git = 'https://github.com/paritytech/substrate', branch = 'master' }15# pallet-contracts-rpc = { git = 'https://github.com/paritytech/substrate', branch = 'master' }16pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }20sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }20sc-consensus-epochs = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }21sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }21sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }22sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }22sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }23sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }23sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }24sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }24sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }25sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }26sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }26sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }27sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }27sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }28sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }28sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }29sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }29sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }30sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }30sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }31sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }31sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }32sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }32sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }33sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }33sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }34sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }34sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }35sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }35sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }36sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }36sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }37sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }37sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }38sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }38sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }39sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }39sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }40substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }40substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }41tokio = { version = "1.19.2", features = ["macros", "sync"] }41tokio = { version = "1.19.2", features = ["macros", "sync"] }424243pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }43pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }44fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }44fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }45fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }45fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }46fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }46fp-storage = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }47fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }47fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }48fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }48fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }49fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }49fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }505051pallet-common = { default-features = false, path = "../../pallets/common" }51pallet-common = { default-features = false, path = "../../pallets/common" }52up-common = { path = "../../primitives/common" }52up-common = { path = "../../primitives/common" }node/rpc/src/lib.rsdiffbeforeafterboth176 };176 };177 use uc_rpc::{UniqueApiServer, Unique};177 use uc_rpc::{UniqueApiServer, Unique};178179 #[cfg(not(any(feature = "unique-runtime", feature = "quartz-runtime")))]178 use uc_rpc::{AppPromotionApiServer, AppPromotion};180 use uc_rpc::{AppPromotionApiServer, AppPromotion};179181180 #[cfg(not(feature = "unique-runtime"))]182 #[cfg(not(feature = "unique-runtime"))]pallets/app-promotion/Cargo.tomldiffbeforeafterboth46# Substrate Dependencies46# Substrate Dependencies474748codec = { default-features = false, features = ['derive'], package = 'parity-scale-codec', version = '3.1.2' }48codec = { default-features = false, features = ['derive'], package = 'parity-scale-codec', version = '3.1.2' }49frame-benchmarking = {default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }49frame-benchmarking = {default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }50frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }50frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }51frame-system ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }51frame-system ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }52pallet-balances ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }52pallet-balances ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }53pallet-timestamp ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }53pallet-timestamp ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }54pallet-randomness-collective-flip ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }54pallet-randomness-collective-flip ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }55pallet-evm ={ default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }55pallet-evm ={ default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }56sp-std ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }56sp-std ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }57sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }57sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }58sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }58sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }59sp-io ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }59sp-io ={ default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }60serde = { default-features = false, features = ['derive'], version = '1.0.130' }60serde = { default-features = false, features = ['derive'], version = '1.0.130' }616162################################################################################62################################################################################pallets/app-promotion/src/lib.rsdiffbeforeafterboth410 .sum();410 .sum();411411412 if total_staked.is_zero() {412 if total_staked.is_zero() {413 return Ok(None.into()); // TO-DO413 return Ok(None::<Weight>.into()); // TO-DO414 }414 }415415416 pendings416 pendings433433434 Self::deposit_event(Event::Unstake(staker_id, total_staked));434 Self::deposit_event(Event::Unstake(staker_id, total_staked));435435436 Ok(None.into())436 Ok(None::<Weight>.into())437 }437 }438438439 /// Sets the pallet to be the sponsor for the collection.439 /// Sets the pallet to be the sponsor for the collection.pallets/app-promotion/src/weights.rsdiffbeforeafterboth51 // Storage: AppPromotion PendingUnstake (r:1 w:0)51 // Storage: AppPromotion PendingUnstake (r:1 w:0)52 // Storage: System Account (r:1 w:1)52 // Storage: System Account (r:1 w:1)53 fn on_initialize(b: u32, ) -> Weight {53 fn on_initialize(b: u32, ) -> Weight {54 (2_651_000 as Weight)54 Weight::from_ref_time(2_651_000)55 // Standard Error: 103_00055 // Standard Error: 103_00056 .saturating_add((6_024_000 as Weight).saturating_mul(b as Weight))56 .saturating_add(Weight::from_ref_time(6_024_000).saturating_mul(b as u64))57 .saturating_add(T::DbWeight::get().reads(1 as Weight))57 .saturating_add(T::DbWeight::get().reads(1 as u64))58 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))58 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))59 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))59 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(b as u64)))60 }60 }61 // Storage: AppPromotion Admin (r:0 w:1)61 // Storage: AppPromotion Admin (r:0 w:1)62 fn set_admin_address() -> Weight {62 fn set_admin_address() -> Weight {63 (7_117_000 as Weight)63 Weight::from_ref_time(7_117_000)64 .saturating_add(T::DbWeight::get().writes(1 as Weight))64 .saturating_add(T::DbWeight::get().writes(1 as u64))65 }65 }66 // Storage: AppPromotion Admin (r:1 w:0)66 // Storage: AppPromotion Admin (r:1 w:0)67 // Storage: ParachainSystem ValidationData (r:1 w:0)67 // Storage: ParachainSystem ValidationData (r:1 w:0)68 // Storage: AppPromotion NextCalculatedRecord (r:1 w:1)68 // Storage: AppPromotion NextCalculatedRecord (r:1 w:1)69 // Storage: AppPromotion Staked (r:2 w:0)69 // Storage: AppPromotion Staked (r:2 w:0)70 fn payout_stakers(b: u32, ) -> Weight {70 fn payout_stakers(b: u32, ) -> Weight {71 (9_958_000 as Weight)71 Weight::from_ref_time(9_958_000)72 // Standard Error: 8_00072 // Standard Error: 8_00073 .saturating_add((4_406_000 as Weight).saturating_mul(b as Weight))73 .saturating_add(Weight::from_ref_time(4_406_000).saturating_mul(b as u64))74 .saturating_add(T::DbWeight::get().reads(4 as Weight))74 .saturating_add(T::DbWeight::get().reads(4 as u64))75 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))75 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))76 .saturating_add(T::DbWeight::get().writes(1 as Weight))76 .saturating_add(T::DbWeight::get().writes(1 as u64))77 }77 }78 // Storage: AppPromotion StakesPerAccount (r:1 w:1)78 // Storage: AppPromotion StakesPerAccount (r:1 w:1)79 // Storage: System Account (r:1 w:1)79 // Storage: System Account (r:1 w:1)82 // Storage: AppPromotion Staked (r:1 w:1)82 // Storage: AppPromotion Staked (r:1 w:1)83 // Storage: AppPromotion TotalStaked (r:1 w:1)83 // Storage: AppPromotion TotalStaked (r:1 w:1)84 fn stake() -> Weight {84 fn stake() -> Weight {85 (20_574_000 as Weight)85 Weight::from_ref_time(20_574_000)86 .saturating_add(T::DbWeight::get().reads(6 as Weight))86 .saturating_add(T::DbWeight::get().reads(6 as u64))87 .saturating_add(T::DbWeight::get().writes(5 as Weight))87 .saturating_add(T::DbWeight::get().writes(5 as u64))88 }88 }89 // Storage: AppPromotion PendingUnstake (r:1 w:1)89 // Storage: AppPromotion PendingUnstake (r:1 w:1)90 // Storage: AppPromotion Staked (r:2 w:1)90 // Storage: AppPromotion Staked (r:2 w:1)93 // Storage: AppPromotion TotalStaked (r:1 w:1)93 // Storage: AppPromotion TotalStaked (r:1 w:1)94 // Storage: AppPromotion StakesPerAccount (r:0 w:1)94 // Storage: AppPromotion StakesPerAccount (r:0 w:1)95 fn unstake() -> Weight {95 fn unstake() -> Weight {96 (31_703_000 as Weight)96 Weight::from_ref_time(31_703_000)97 .saturating_add(T::DbWeight::get().reads(6 as Weight))97 .saturating_add(T::DbWeight::get().reads(6 as u64))98 .saturating_add(T::DbWeight::get().writes(6 as Weight))98 .saturating_add(T::DbWeight::get().writes(6 as u64))99 }99 }100 // Storage: AppPromotion Admin (r:1 w:0)100 // Storage: AppPromotion Admin (r:1 w:0)101 // Storage: Common CollectionById (r:1 w:1)101 // Storage: Common CollectionById (r:1 w:1)102 fn sponsor_collection() -> Weight {102 fn sponsor_collection() -> Weight {103 (12_932_000 as Weight)103 Weight::from_ref_time(12_932_000)104 .saturating_add(T::DbWeight::get().reads(2 as Weight))104 .saturating_add(T::DbWeight::get().reads(2 as u64))105 .saturating_add(T::DbWeight::get().writes(1 as Weight))105 .saturating_add(T::DbWeight::get().writes(1 as u64))106 }106 }107 // Storage: AppPromotion Admin (r:1 w:0)107 // Storage: AppPromotion Admin (r:1 w:0)108 // Storage: Common CollectionById (r:1 w:1)108 // Storage: Common CollectionById (r:1 w:1)109 fn stop_sponsoring_collection() -> Weight {109 fn stop_sponsoring_collection() -> Weight {110 (12_453_000 as Weight)110 Weight::from_ref_time(12_453_000)111 .saturating_add(T::DbWeight::get().reads(2 as Weight))111 .saturating_add(T::DbWeight::get().reads(2 as u64))112 .saturating_add(T::DbWeight::get().writes(1 as Weight))112 .saturating_add(T::DbWeight::get().writes(1 as u64))113 }113 }114 // Storage: AppPromotion Admin (r:1 w:0)114 // Storage: AppPromotion Admin (r:1 w:0)115 // Storage: EvmContractHelpers Sponsoring (r:0 w:1)115 // Storage: EvmContractHelpers Sponsoring (r:0 w:1)116 fn sponsor_contract() -> Weight {116 fn sponsor_contract() -> Weight {117 (11_952_000 as Weight)117 Weight::from_ref_time(11_952_000)118 .saturating_add(T::DbWeight::get().reads(1 as Weight))118 .saturating_add(T::DbWeight::get().reads(1 as u64))119 .saturating_add(T::DbWeight::get().writes(1 as Weight))119 .saturating_add(T::DbWeight::get().writes(1 as u64))120 }120 }121 // Storage: AppPromotion Admin (r:1 w:0)121 // Storage: AppPromotion Admin (r:1 w:0)122 // Storage: EvmContractHelpers Sponsoring (r:1 w:1)122 // Storage: EvmContractHelpers Sponsoring (r:1 w:1)123 fn stop_sponsoring_contract() -> Weight {123 fn stop_sponsoring_contract() -> Weight {124 (12_538_000 as Weight)124 Weight::from_ref_time(12_538_000)125 .saturating_add(T::DbWeight::get().reads(2 as Weight))125 .saturating_add(T::DbWeight::get().reads(2 as u64))126 .saturating_add(T::DbWeight::get().writes(1 as Weight))126 .saturating_add(T::DbWeight::get().writes(1 as u64))127 }127 }128}128}129129132 // Storage: AppPromotion PendingUnstake (r:1 w:0)132 // Storage: AppPromotion PendingUnstake (r:1 w:0)133 // Storage: System Account (r:1 w:1)133 // Storage: System Account (r:1 w:1)134 fn on_initialize(b: u32, ) -> Weight {134 fn on_initialize(b: u32, ) -> Weight {135 (2_651_000 as Weight)135 Weight::from_ref_time(2_651_000)136 // Standard Error: 103_000136 // Standard Error: 103_000137 .saturating_add((6_024_000 as Weight).saturating_mul(b as Weight))137 .saturating_add(Weight::from_ref_time(6_024_000).saturating_mul(b as u64))138 .saturating_add(RocksDbWeight::get().reads(1 as Weight))138 .saturating_add(RocksDbWeight::get().reads(1 as u64))139 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))139 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))140 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))140 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(b as u64)))141 }141 }142 // Storage: AppPromotion Admin (r:0 w:1)142 // Storage: AppPromotion Admin (r:0 w:1)143 fn set_admin_address() -> Weight {143 fn set_admin_address() -> Weight {144 (7_117_000 as Weight)144 Weight::from_ref_time(7_117_000)145 .saturating_add(RocksDbWeight::get().writes(1 as Weight))145 .saturating_add(RocksDbWeight::get().writes(1 as u64))146 }146 }147 // Storage: AppPromotion Admin (r:1 w:0)147 // Storage: AppPromotion Admin (r:1 w:0)148 // Storage: ParachainSystem ValidationData (r:1 w:0)148 // Storage: ParachainSystem ValidationData (r:1 w:0)149 // Storage: AppPromotion NextCalculatedRecord (r:1 w:1)149 // Storage: AppPromotion NextCalculatedRecord (r:1 w:1)150 // Storage: AppPromotion Staked (r:2 w:0)150 // Storage: AppPromotion Staked (r:2 w:0)151 fn payout_stakers(b: u32, ) -> Weight {151 fn payout_stakers(b: u32, ) -> Weight {152 (9_958_000 as Weight)152 Weight::from_ref_time(9_958_000)153 // Standard Error: 8_000153 // Standard Error: 8_000154 .saturating_add((4_406_000 as Weight).saturating_mul(b as Weight))154 .saturating_add(Weight::from_ref_time(4_406_000).saturating_mul(b as u64))155 .saturating_add(RocksDbWeight::get().reads(4 as Weight))155 .saturating_add(RocksDbWeight::get().reads(4 as u64))156 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))156 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))157 .saturating_add(RocksDbWeight::get().writes(1 as Weight))157 .saturating_add(RocksDbWeight::get().writes(1 as u64))158 }158 }159 // Storage: AppPromotion StakesPerAccount (r:1 w:1)159 // Storage: AppPromotion StakesPerAccount (r:1 w:1)160 // Storage: System Account (r:1 w:1)160 // Storage: System Account (r:1 w:1)163 // Storage: AppPromotion Staked (r:1 w:1)163 // Storage: AppPromotion Staked (r:1 w:1)164 // Storage: AppPromotion TotalStaked (r:1 w:1)164 // Storage: AppPromotion TotalStaked (r:1 w:1)165 fn stake() -> Weight {165 fn stake() -> Weight {166 (20_574_000 as Weight)166 Weight::from_ref_time(20_574_000)167 .saturating_add(RocksDbWeight::get().reads(6 as Weight))167 .saturating_add(RocksDbWeight::get().reads(6 as u64))168 .saturating_add(RocksDbWeight::get().writes(5 as Weight))168 .saturating_add(RocksDbWeight::get().writes(5 as u64))169 }169 }170 // Storage: AppPromotion PendingUnstake (r:1 w:1)170 // Storage: AppPromotion PendingUnstake (r:1 w:1)171 // Storage: AppPromotion Staked (r:2 w:1)171 // Storage: AppPromotion Staked (r:2 w:1)174 // Storage: AppPromotion TotalStaked (r:1 w:1)174 // Storage: AppPromotion TotalStaked (r:1 w:1)175 // Storage: AppPromotion StakesPerAccount (r:0 w:1)175 // Storage: AppPromotion StakesPerAccount (r:0 w:1)176 fn unstake() -> Weight {176 fn unstake() -> Weight {177 (31_703_000 as Weight)177 Weight::from_ref_time(31_703_000)178 .saturating_add(RocksDbWeight::get().reads(6 as Weight))178 .saturating_add(RocksDbWeight::get().reads(6 as u64))179 .saturating_add(RocksDbWeight::get().writes(6 as Weight))179 .saturating_add(RocksDbWeight::get().writes(6 as u64))180 }180 }181 // Storage: AppPromotion Admin (r:1 w:0)181 // Storage: AppPromotion Admin (r:1 w:0)182 // Storage: Common CollectionById (r:1 w:1)182 // Storage: Common CollectionById (r:1 w:1)183 fn sponsor_collection() -> Weight {183 fn sponsor_collection() -> Weight {184 (12_932_000 as Weight)184 Weight::from_ref_time(12_932_000)185 .saturating_add(RocksDbWeight::get().reads(2 as Weight))185 .saturating_add(RocksDbWeight::get().reads(2 as u64))186 .saturating_add(RocksDbWeight::get().writes(1 as Weight))186 .saturating_add(RocksDbWeight::get().writes(1 as u64))187 }187 }188 // Storage: AppPromotion Admin (r:1 w:0)188 // Storage: AppPromotion Admin (r:1 w:0)189 // Storage: Common CollectionById (r:1 w:1)189 // Storage: Common CollectionById (r:1 w:1)190 fn stop_sponsoring_collection() -> Weight {190 fn stop_sponsoring_collection() -> Weight {191 (12_453_000 as Weight)191 Weight::from_ref_time(12_453_000)192 .saturating_add(RocksDbWeight::get().reads(2 as Weight))192 .saturating_add(RocksDbWeight::get().reads(2 as u64))193 .saturating_add(RocksDbWeight::get().writes(1 as Weight))193 .saturating_add(RocksDbWeight::get().writes(1 as u64))194 }194 }195 // Storage: AppPromotion Admin (r:1 w:0)195 // Storage: AppPromotion Admin (r:1 w:0)196 // Storage: EvmContractHelpers Sponsoring (r:0 w:1)196 // Storage: EvmContractHelpers Sponsoring (r:0 w:1)197 fn sponsor_contract() -> Weight {197 fn sponsor_contract() -> Weight {198 (11_952_000 as Weight)198 Weight::from_ref_time(11_952_000)199 .saturating_add(RocksDbWeight::get().reads(1 as Weight))199 .saturating_add(RocksDbWeight::get().reads(1 as u64))200 .saturating_add(RocksDbWeight::get().writes(1 as Weight))200 .saturating_add(RocksDbWeight::get().writes(1 as u64))201 }201 }202 // Storage: AppPromotion Admin (r:1 w:0)202 // Storage: AppPromotion Admin (r:1 w:0)203 // Storage: EvmContractHelpers Sponsoring (r:1 w:1)203 // Storage: EvmContractHelpers Sponsoring (r:1 w:1)204 fn stop_sponsoring_contract() -> Weight {204 fn stop_sponsoring_contract() -> Weight {205 (12_538_000 as Weight)205 Weight::from_ref_time(12_538_000)206 .saturating_add(RocksDbWeight::get().reads(2 as Weight))206 .saturating_add(RocksDbWeight::get().reads(2 as u64))207 .saturating_add(RocksDbWeight::get().writes(1 as Weight))207 .saturating_add(RocksDbWeight::get().writes(1 as u64))208 }208 }209}209}210210pallets/common/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }20fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }20fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }22pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }24ethereum = { version = "0.12.0", default-features = false }24ethereum = { version = "0.12.0", default-features = false }25pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }25pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }262627serde = { version = "1.0.130", default-features = false }27serde = { version = "1.0.130", default-features = false }28scale-info = { version = "2.0.1", default-features = false, features = [28scale-info = { version = "2.0.1", default-features = false, features = [pallets/common/src/benchmarking.rsdiffbeforeafterboth116 create_collection_raw(116 create_collection_raw(117 owner,117 owner,118 CollectionMode::NFT,118 CollectionMode::NFT,119 |owner, data| <Pallet<T>>::init_collection(owner, data, CollectionFlags::default()),119 |owner: T::CrossAccountId, data| {120 <Pallet<T>>::init_collection(owner.clone(), owner, data, CollectionFlags::default())121 },120 |h| h,122 |h| h,121 )123 )122}124}pallets/common/src/dispatch.rsdiffbeforeafterboth19 // Read collection19 // Read collection20 <T as frame_system::Config>::DbWeight::get().reads(1)20 <T as frame_system::Config>::DbWeight::get().reads(1)21 // Dynamic dispatch?21 // Dynamic dispatch?22 + 6_000_00022 + Weight::from_ref_time(6_000_000)23 // submit_logs is measured as part of collection pallets23 // submit_logs is measured as part of collection pallets24}24}252578 /// * `data` - Description of the created collection.78 /// * `data` - Description of the created collection.79 fn create(79 fn create(80 sender: T::CrossAccountId,80 sender: T::CrossAccountId,81 payer: T::CrossAccountId,81 data: CreateCollectionData<T::AccountId>,82 data: CreateCollectionData<T::AccountId>,82 ) -> Result<CollectionId, DispatchError>;83 ) -> Result<CollectionId, DispatchError>;8384pallets/common/src/lib.rsdiffbeforeafterboth185 /// Consume gas for reading.185 /// Consume gas for reading.186 pub fn consume_store_reads(&self, reads: u64) -> evm_coder::execution::Result<()> {186 pub fn consume_store_reads(&self, reads: u64) -> evm_coder::execution::Result<()> {187 self.recorder187 self.recorder188 .consume_gas(T::GasWeightMapping::weight_to_gas(188 .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(189 <T as frame_system::Config>::DbWeight::get()189 <T as frame_system::Config>::DbWeight::get()190 .read190 .read191 .saturating_mul(reads),191 .saturating_mul(reads),192 ))192 )))193 }193 }194194195 /// Consume gas for writing.195 /// Consume gas for writing.196 pub fn consume_store_writes(&self, writes: u64) -> evm_coder::execution::Result<()> {196 pub fn consume_store_writes(&self, writes: u64) -> evm_coder::execution::Result<()> {197 self.recorder197 self.recorder198 .consume_gas(T::GasWeightMapping::weight_to_gas(198 .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(199 <T as frame_system::Config>::DbWeight::get()199 <T as frame_system::Config>::DbWeight::get()200 .write200 .write201 .saturating_mul(writes),201 .saturating_mul(writes),202 ))202 )))203 }203 }204204205 /// Consume gas for reading and writing.205 /// Consume gas for reading and writing.212 let reads = weight.read.saturating_mul(reads);212 let reads = weight.read.saturating_mul(reads);213 let writes = weight.read.saturating_mul(writes);213 let writes = weight.read.saturating_mul(writes);214 self.recorder214 self.recorder215 .consume_gas(T::GasWeightMapping::weight_to_gas(215 .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(216 reads.saturating_add(writes),216 reads.saturating_add(writes),217 ))217 )))218 }218 }219219220 /// Save collection to storage.220 /// Save collection to storage.706 fn on_runtime_upgrade() -> Weight {706 fn on_runtime_upgrade() -> Weight {707 StorageVersion::new(1).put::<Pallet<T>>();707 StorageVersion::new(1).put::<Pallet<T>>();708708709 0709 Weight::zero()710 }710 }711 }711 }712}712}866 /// * `flags` - Extra flags to store.866 /// * `flags` - Extra flags to store.867 pub fn init_collection(867 pub fn init_collection(868 owner: T::CrossAccountId,868 owner: T::CrossAccountId,869 payer: T::CrossAccountId,869 data: CreateCollectionData<T::AccountId>,870 data: CreateCollectionData<T::AccountId>,870 flags: CollectionFlags,871 flags: CollectionFlags,871 ) -> Result<CollectionId, DispatchError> {872 ) -> Result<CollectionId, DispatchError> {939 ),940 ),940 );941 );941 <T as Config>::Currency::settle(942 <T as Config>::Currency::settle(942 owner.as_sub(),943 payer.as_sub(),943 imbalance,944 imbalance,944 WithdrawReasons::TRANSFER,945 WithdrawReasons::TRANSFER,945 ExistenceRequirement::KeepAlive,946 ExistenceRequirement::KeepAlive,pallets/common/src/weights.rsdiffbeforeafterboth42impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {42impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {43 // Storage: Common CollectionProperties (r:1 w:1)43 // Storage: Common CollectionProperties (r:1 w:1)44 fn set_collection_properties(b: u32, ) -> Weight {44 fn set_collection_properties(b: u32, ) -> Weight {45 (0 as Weight)45 (Weight::from_ref_time(0))46 // Standard Error: 142_818_00046 // Standard Error: 142_818_00047 .saturating_add((2_786_252_000 as Weight).saturating_mul(b as Weight))47 .saturating_add(Weight::from_ref_time(2_786_252_000).saturating_mul(b as u64))48 .saturating_add(T::DbWeight::get().reads(1 as Weight))48 .saturating_add(T::DbWeight::get().reads(1 as u64))49 .saturating_add(T::DbWeight::get().writes(1 as Weight))49 .saturating_add(T::DbWeight::get().writes(1 as u64))50 }50 }51 // Storage: Common CollectionProperties (r:1 w:1)51 // Storage: Common CollectionProperties (r:1 w:1)52 fn delete_collection_properties(b: u32, ) -> Weight {52 fn delete_collection_properties(b: u32, ) -> Weight {53 (0 as Weight)53 (Weight::from_ref_time(0))54 // Standard Error: 101_087_00054 // Standard Error: 101_087_00055 .saturating_add((2_739_521_000 as Weight).saturating_mul(b as Weight))55 .saturating_add(Weight::from_ref_time(2_739_521_000).saturating_mul(b as u64))56 .saturating_add(T::DbWeight::get().reads(1 as Weight))56 .saturating_add(T::DbWeight::get().reads(1 as u64))57 .saturating_add(T::DbWeight::get().writes(1 as Weight))57 .saturating_add(T::DbWeight::get().writes(1 as u64))58 }58 }59}59}606061// For backwards compatibility and tests61// For backwards compatibility and tests62impl WeightInfo for () {62impl WeightInfo for () {63 // Storage: Common CollectionProperties (r:1 w:1)63 // Storage: Common CollectionProperties (r:1 w:1)64 fn set_collection_properties(b: u32, ) -> Weight {64 fn set_collection_properties(b: u32, ) -> Weight {65 (0 as Weight)65 (Weight::from_ref_time(0))66 // Standard Error: 142_818_00066 // Standard Error: 142_818_00067 .saturating_add((2_786_252_000 as Weight).saturating_mul(b as Weight))67 .saturating_add(Weight::from_ref_time(2_786_252_000).saturating_mul(b as u64))68 .saturating_add(RocksDbWeight::get().reads(1 as Weight))68 .saturating_add(RocksDbWeight::get().reads(1 as u64))69 .saturating_add(RocksDbWeight::get().writes(1 as Weight))69 .saturating_add(RocksDbWeight::get().writes(1 as u64))70 }70 }71 // Storage: Common CollectionProperties (r:1 w:1)71 // Storage: Common CollectionProperties (r:1 w:1)72 fn delete_collection_properties(b: u32, ) -> Weight {72 fn delete_collection_properties(b: u32, ) -> Weight {73 (0 as Weight)73 (Weight::from_ref_time(0))74 // Standard Error: 101_087_00074 // Standard Error: 101_087_00075 .saturating_add((2_739_521_000 as Weight).saturating_mul(b as Weight))75 .saturating_add(Weight::from_ref_time(2_739_521_000).saturating_mul(b as u64))76 .saturating_add(RocksDbWeight::get().reads(1 as Weight))76 .saturating_add(RocksDbWeight::get().reads(1 as u64))77 .saturating_add(RocksDbWeight::get().writes(1 as Weight))77 .saturating_add(RocksDbWeight::get().writes(1 as u64))78 }78 }79}79}8080pallets/configuration/Cargo.tomldiffbeforeafterboth10scale-info = { version = "2.0.1", default-features = false, features = [10scale-info = { version = "2.0.1", default-features = false, features = [11 "derive",11 "derive",12] }12] }13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-arithmetic = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-arithmetic = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }20smallvec = "1.6.1"20smallvec = "1.6.1"212122[features]22[features]pallets/configuration/src/lib.rsdiffbeforeafterboth202021use frame_support::{21use frame_support::{22 pallet,22 pallet,23 weights::{WeightToFeePolynomial, WeightToFeeCoefficients, WeightToFeeCoefficient},23 weights::{WeightToFeePolynomial, WeightToFeeCoefficients, WeightToFeeCoefficient, Weight},24 traits::Get,24 traits::Get,25};25};26use sp_arithmetic::traits::{BaseArithmetic, Unsigned};26use sp_arithmetic::traits::{BaseArithmetic, Unsigned};115115116pub struct FeeCalculator<T>(PhantomData<T>);116pub struct FeeCalculator<T>(PhantomData<T>);117impl<T: Config> fp_evm::FeeCalculator for FeeCalculator<T> {117impl<T: Config> fp_evm::FeeCalculator for FeeCalculator<T> {118 fn min_gas_price() -> (U256, u64) {118 fn min_gas_price() -> (U256, Weight) {119 (119 (120 <MinGasPriceOverride<T>>::get().into(),120 <MinGasPriceOverride<T>>::get().into(),121 T::DbWeight::get().reads(1),121 T::DbWeight::get().reads(1),pallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth8scale-info = { version = "2.0.1", default-features = false, features = [8scale-info = { version = "2.0.1", default-features = false, features = [9 "derive",9 "derive",10] }10] }11sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }11sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }12sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }12sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }13ethereum = { version = "0.12.0", default-features = false }13ethereum = { version = "0.12.0", default-features = false }14evm-coder = { default-features = false, path = "../../crates/evm-coder" }14evm-coder = { default-features = false, path = "../../crates/evm-coder" }15pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }15pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }16pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }16pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }17frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }20up-data-structs = { default-features = false, path = "../../primitives/data-structs" }20up-data-structs = { default-features = false, path = "../../primitives/data-structs" }212122[dependencies.codec]22[dependencies.codec]pallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth12ethereum = { version = "0.12.0", default-features = false }12ethereum = { version = "0.12.0", default-features = false }131314# Substrate14# Substrate15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }202021# Unique21# Unique22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }23fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }23fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }24up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27" }24up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29" }252526# Locals26# Locals27evm-coder = { default-features = false, path = '../../crates/evm-coder' }27evm-coder = { default-features = false, path = '../../crates/evm-coder' }pallets/evm-migration/Cargo.tomldiffbeforeafterboth8scale-info = { version = "2.0.1", default-features = false, features = [8scale-info = { version = "2.0.1", default-features = false, features = [9 "derive",9 "derive",10] }10] }11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }13frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }18pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }202021[dependencies.codec]21[dependencies.codec]22default-features = false22default-features = falsepallets/evm-migration/src/weights.rsdiffbeforeafterboth46 // Storage: System Account (r:1 w:0)46 // Storage: System Account (r:1 w:0)47 // Storage: EVM AccountCodes (r:1 w:0)47 // Storage: EVM AccountCodes (r:1 w:0)48 fn begin() -> Weight {48 fn begin() -> Weight {49 (8_035_000 as Weight)49 Weight::from_ref_time(8_035_000)50 .saturating_add(T::DbWeight::get().reads(3 as Weight))50 .saturating_add(T::DbWeight::get().reads(3 as u64))51 .saturating_add(T::DbWeight::get().writes(1 as Weight))51 .saturating_add(T::DbWeight::get().writes(1 as u64))52 }52 }53 // Storage: EvmMigration MigrationPending (r:1 w:0)53 // Storage: EvmMigration MigrationPending (r:1 w:0)54 // Storage: EVM AccountStorages (r:0 w:1)54 // Storage: EVM AccountStorages (r:0 w:1)55 fn set_data(b: u32, ) -> Weight {55 fn set_data(b: u32, ) -> Weight {56 (3_076_000 as Weight)56 Weight::from_ref_time(3_076_000)57 // Standard Error: 057 // Standard Error: 058 .saturating_add((828_000 as Weight).saturating_mul(b as Weight))58 .saturating_add(Weight::from_ref_time(828_000).saturating_mul(b as u64))59 .saturating_add(T::DbWeight::get().reads(1 as Weight))59 .saturating_add(T::DbWeight::get().reads(1 as u64))60 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))60 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(b as u64)))61 }61 }62 // Storage: EvmMigration MigrationPending (r:1 w:1)62 // Storage: EvmMigration MigrationPending (r:1 w:1)63 // Storage: EVM AccountCodes (r:0 w:1)63 // Storage: EVM AccountCodes (r:0 w:1)64 fn finish(_b: u32, ) -> Weight {64 fn finish(_b: u32, ) -> Weight {65 (6_591_000 as Weight)65 Weight::from_ref_time(6_591_000)66 .saturating_add(T::DbWeight::get().reads(1 as Weight))66 .saturating_add(T::DbWeight::get().reads(1 as u64))67 .saturating_add(T::DbWeight::get().writes(2 as Weight))67 .saturating_add(T::DbWeight::get().writes(2 as u64))68 }68 }69}69}707074 // Storage: System Account (r:1 w:0)74 // Storage: System Account (r:1 w:0)75 // Storage: EVM AccountCodes (r:1 w:0)75 // Storage: EVM AccountCodes (r:1 w:0)76 fn begin() -> Weight {76 fn begin() -> Weight {77 (8_035_000 as Weight)77 Weight::from_ref_time(8_035_000)78 .saturating_add(RocksDbWeight::get().reads(3 as Weight))78 .saturating_add(RocksDbWeight::get().reads(3 as u64))79 .saturating_add(RocksDbWeight::get().writes(1 as Weight))79 .saturating_add(RocksDbWeight::get().writes(1 as u64))80 }80 }81 // Storage: EvmMigration MigrationPending (r:1 w:0)81 // Storage: EvmMigration MigrationPending (r:1 w:0)82 // Storage: EVM AccountStorages (r:0 w:1)82 // Storage: EVM AccountStorages (r:0 w:1)83 fn set_data(b: u32, ) -> Weight {83 fn set_data(b: u32, ) -> Weight {84 (3_076_000 as Weight)84 Weight::from_ref_time(3_076_000)85 // Standard Error: 085 // Standard Error: 086 .saturating_add((828_000 as Weight).saturating_mul(b as Weight))86 .saturating_add(Weight::from_ref_time(828_000).saturating_mul(b as u64))87 .saturating_add(RocksDbWeight::get().reads(1 as Weight))87 .saturating_add(RocksDbWeight::get().reads(1 as u64))88 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))88 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(b as u64)))89 }89 }90 // Storage: EvmMigration MigrationPending (r:1 w:1)90 // Storage: EvmMigration MigrationPending (r:1 w:1)91 // Storage: EVM AccountCodes (r:0 w:1)91 // Storage: EVM AccountCodes (r:0 w:1)92 fn finish(_b: u32, ) -> Weight {92 fn finish(_b: u32, ) -> Weight {93 (6_591_000 as Weight)93 Weight::from_ref_time(6_591_000)94 .saturating_add(RocksDbWeight::get().reads(1 as Weight))94 .saturating_add(RocksDbWeight::get().reads(1 as u64))95 .saturating_add(RocksDbWeight::get().writes(2 as Weight))95 .saturating_add(RocksDbWeight::get().writes(2 as u64))96 }96 }97}97}9898pallets/evm-transaction-payment/Cargo.tomldiffbeforeafterboth8scale-info = { version = "2.0.1", default-features = false, features = [8scale-info = { version = "2.0.1", default-features = false, features = [9 "derive",9 "derive",10] }10] }11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }11frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }12frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }13sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }18fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }18fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }19pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }20up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27" }20up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29" }21fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }21fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }222223[dependencies.codec]23[dependencies.codec]24default-features = false24default-features = falsepallets/foreign-assets/Cargo.tomldiffbeforeafterboth9serde = { version = "1.0.136", optional = true }9serde = { version = "1.0.136", optional = true }10scale-info = { version = "2.0.1", default-features = false, features = ["derive"] }10scale-info = { version = "2.0.1", default-features = false, features = ["derive"] }11codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false }11codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false }12sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27", default-features = false }12sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29", default-features = false }13sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27", default-features = false }13sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29", default-features = false }14frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27", default-features = false }14frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29", default-features = false }15frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27", default-features = false }15frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29", default-features = false }16up-data-structs = { default-features = false, path = '../../primitives/data-structs' }16up-data-structs = { default-features = false, path = '../../primitives/data-structs' }17pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27", default-features = false }17pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29", default-features = false }18pallet-common = { default-features = false, path = '../common' }18pallet-common = { default-features = false, path = '../common' }19pallet-fungible = { default-features = false, path = '../fungible' }19pallet-fungible = { default-features = false, path = '../fungible' }20xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.27", default-features = false }20xcm = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.29", default-features = false }21xcm-builder = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.27", default-features = false }21xcm-builder = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.29", default-features = false }22xcm-executor = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.27", default-features = false }22xcm-executor = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.29", default-features = false }23#orml-tokens = { git = 'https://github.com/UniqueNetwork/open-runtime-module-library', branch = 'unique-polkadot-v0.9.24', version = "0.4.1-dev", default-features = false }23#orml-tokens = { git = 'https://github.com/UniqueNetwork/open-runtime-module-library', branch = 'unique-polkadot-v0.9.24', version = "0.4.1-dev", default-features = false }24orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-library", branch = "polkadot-v0.9.27", version = "0.4.1-dev", default-features = false }24orml-tokens = { git = "https://github.com/UniqueNetwork/open-runtime-module-library", branch = "polkadot-v0.9.29", version = "0.4.1-dev", default-features = false }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }262627[dev-dependencies]27[dev-dependencies]28serde_json = "1.0.68"28serde_json = "1.0.68"29hex = { version = "0.4" }29hex = { version = "0.4" }30sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }30sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }31sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }31sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }32pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }32pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }33pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }33pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }343435[features]35[features]36default = ["std"]36default = ["std"]pallets/foreign-assets/src/lib.rsdiffbeforeafterboth545455// NOTE:v1::MultiLocation is used in storages, we would need to do migration if upgrade the55// NOTE:v1::MultiLocation is used in storages, we would need to do migration if upgrade the56// MultiLocation in the future.56// MultiLocation in the future.57use xcm::opaque::latest::prelude::XcmError;57use xcm::opaque::latest::{prelude::XcmError, Weight};58use xcm::{v1::MultiLocation, VersionedMultiLocation};58use xcm::{v1::MultiLocation, VersionedMultiLocation};59use xcm_executor::{traits::WeightTrader, Assets};59use xcm_executor::{traits::WeightTrader, Assets};6060309 mode: CollectionMode::Fungible(md.decimals),309 mode: CollectionMode::Fungible(md.decimals),310 ..Default::default()310 ..Default::default()311 };311 };312312 let owner = T::CrossAccountId::from_sub(owner);313 let bounded_collection_id = <PalletFungible<T>>::init_foreign_collection(313 let bounded_collection_id =314 CrossAccountId::from_sub(owner),314 <PalletFungible<T>>::init_foreign_collection(owner.clone(), owner, data)?;315 data,316 )?;317 let foreign_asset_id =315 let foreign_asset_id =318 Self::do_register_foreign_asset(&location, &metadata, bounded_collection_id)?;316 Self::do_register_foreign_asset(&location, &metadata, bounded_collection_id)?;pallets/foreign-assets/src/weights.rsdiffbeforeafterboth53 // Storage: Common CollectionProperties (r:0 w:1)53 // Storage: Common CollectionProperties (r:0 w:1)54 // Storage: Common CollectionById (r:0 w:1)54 // Storage: Common CollectionById (r:0 w:1)55 fn register_foreign_asset() -> Weight {55 fn register_foreign_asset() -> Weight {56 (52_161_000 as Weight)56 Weight::from_ref_time(52_161_000)57 .saturating_add(T::DbWeight::get().reads(9 as Weight))57 .saturating_add(T::DbWeight::get().reads(9 as u64))58 .saturating_add(T::DbWeight::get().writes(11 as Weight))58 .saturating_add(T::DbWeight::get().writes(11 as u64))59 }59 }60 // Storage: ForeignAssets ForeignAssetLocations (r:1 w:1)60 // Storage: ForeignAssets ForeignAssetLocations (r:1 w:1)61 // Storage: ForeignAssets AssetMetadatas (r:1 w:1)61 // Storage: ForeignAssets AssetMetadatas (r:1 w:1)62 fn update_foreign_asset() -> Weight {62 fn update_foreign_asset() -> Weight {63 (19_111_000 as Weight)63 Weight::from_ref_time(19_111_000)64 .saturating_add(T::DbWeight::get().reads(2 as Weight))64 .saturating_add(T::DbWeight::get().reads(2 as u64))65 .saturating_add(T::DbWeight::get().writes(2 as Weight))65 .saturating_add(T::DbWeight::get().writes(2 as u64))66 }66 }67}67}686880 // Storage: Common CollectionProperties (r:0 w:1)80 // Storage: Common CollectionProperties (r:0 w:1)81 // Storage: Common CollectionById (r:0 w:1)81 // Storage: Common CollectionById (r:0 w:1)82 fn register_foreign_asset() -> Weight {82 fn register_foreign_asset() -> Weight {83 (52_161_000 as Weight)83 Weight::from_ref_time(52_161_000)84 .saturating_add(RocksDbWeight::get().reads(9 as Weight))84 .saturating_add(RocksDbWeight::get().reads(9 as u64))85 .saturating_add(RocksDbWeight::get().writes(11 as Weight))85 .saturating_add(RocksDbWeight::get().writes(11 as u64))86 }86 }87 // Storage: ForeignAssets ForeignAssetLocations (r:1 w:1)87 // Storage: ForeignAssets ForeignAssetLocations (r:1 w:1)88 // Storage: ForeignAssets AssetMetadatas (r:1 w:1)88 // Storage: ForeignAssets AssetMetadatas (r:1 w:1)89 fn update_foreign_asset() -> Weight {89 fn update_foreign_asset() -> Weight {90 (19_111_000 as Weight)90 Weight::from_ref_time(19_111_000)91 .saturating_add(RocksDbWeight::get().reads(2 as Weight))91 .saturating_add(RocksDbWeight::get().reads(2 as u64))92 .saturating_add(RocksDbWeight::get().writes(2 as Weight))92 .saturating_add(RocksDbWeight::get().writes(2 as u64))93 }93 }94}94}9595pallets/fungible/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }20pallet-structure = { default-features = false, path = '../structure' }20pallet-structure = { default-features = false, path = '../structure' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22evm-coder = { default-features = false, path = '../../crates/evm-coder' }22evm-coder = { default-features = false, path = '../../crates/evm-coder' }23pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }23pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }24ethereum = { version = "0.12.0", default-features = false }24ethereum = { version = "0.12.0", default-features = false }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }26pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }26pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }27scale-info = { version = "2.0.1", default-features = false, features = [27scale-info = { version = "2.0.1", default-features = false, features = [28 "derive",28 "derive",29] }29] }pallets/fungible/src/benchmarking.rsdiffbeforeafterboth31 create_collection_raw(31 create_collection_raw(32 owner,32 owner,33 CollectionMode::Fungible(0),33 CollectionMode::Fungible(0),34 <Pallet<T>>::init_collection,34 |owner: T::CrossAccountId, data| <Pallet<T>>::init_collection(owner.clone(), owner, data),35 FungibleHandle::cast,35 FungibleHandle::cast,36 )36 )37}37}pallets/fungible/src/common.rsdiffbeforeafterboth45 CreateItemExData::Fungible(f) => {45 CreateItemExData::Fungible(f) => {46 <SelfWeightOf<T>>::create_multiple_items_ex(f.len() as u32)46 <SelfWeightOf<T>>::create_multiple_items_ex(f.len() as u32)47 }47 }48 _ => 0,48 _ => Weight::zero(),49 }49 }50 }50 }5151555556 fn set_collection_properties(_amount: u32) -> Weight {56 fn set_collection_properties(_amount: u32) -> Weight {57 // Error57 // Error58 058 Weight::zero()59 }59 }606061 fn delete_collection_properties(_amount: u32) -> Weight {61 fn delete_collection_properties(_amount: u32) -> Weight {62 // Error62 // Error63 063 Weight::zero()64 }64 }656566 fn set_token_properties(_amount: u32) -> Weight {66 fn set_token_properties(_amount: u32) -> Weight {67 // Error67 // Error68 068 Weight::zero()69 }69 }707071 fn delete_token_properties(_amount: u32) -> Weight {71 fn delete_token_properties(_amount: u32) -> Weight {72 // Error72 // Error73 073 Weight::zero()74 }74 }757576 fn set_token_property_permissions(_amount: u32) -> Weight {76 fn set_token_property_permissions(_amount: u32) -> Weight {77 // Error77 // Error78 078 Weight::zero()79 }79 }808081 fn transfer() -> Weight {81 fn transfer() -> Weight {101101102 fn burn_recursively_breadth_raw(_amount: u32) -> Weight {102 fn burn_recursively_breadth_raw(_amount: u32) -> Weight {103 // Fungible tokens can't have children103 // Fungible tokens can't have children104 0104 Weight::zero()105 }105 }106106107 fn token_owner() -> Weight {107 fn token_owner() -> Weight {108 0108 Weight::zero()109 }109 }110}110}111111pallets/fungible/src/lib.rsdiffbeforeafterboth210 /// Initializes the collection. Returns [CollectionId] on success, [DispatchError] otherwise.210 /// Initializes the collection. Returns [CollectionId] on success, [DispatchError] otherwise.211 pub fn init_collection(211 pub fn init_collection(212 owner: T::CrossAccountId,212 owner: T::CrossAccountId,213 payer: T::CrossAccountId,213 data: CreateCollectionData<T::AccountId>,214 data: CreateCollectionData<T::AccountId>,214 ) -> Result<CollectionId, DispatchError> {215 ) -> Result<CollectionId, DispatchError> {215 <PalletCommon<T>>::init_collection(owner, data, CollectionFlags::default())216 <PalletCommon<T>>::init_collection(owner, payer, data, CollectionFlags::default())216 }217 }217218218 /// Initializes the collection with ForeignCollection flag. Returns [CollectionId] on success, [DispatchError] otherwise.219 /// Initializes the collection with ForeignCollection flag. Returns [CollectionId] on success, [DispatchError] otherwise.219 pub fn init_foreign_collection(220 pub fn init_foreign_collection(220 owner: T::CrossAccountId,221 owner: T::CrossAccountId,222 payer: T::CrossAccountId,221 data: CreateCollectionData<T::AccountId>,223 data: CreateCollectionData<T::AccountId>,222 ) -> Result<CollectionId, DispatchError> {224 ) -> Result<CollectionId, DispatchError> {223 let id = <PalletCommon<T>>::init_collection(225 let id = <PalletCommon<T>>::init_collection(224 owner,226 owner,227 payer,225 data,228 data,226 CollectionFlags {229 CollectionFlags {227 foreign: true,230 foreign: true,pallets/fungible/src/weights.rsdiffbeforeafterboth48 // Storage: Fungible TotalSupply (r:1 w:1)48 // Storage: Fungible TotalSupply (r:1 w:1)49 // Storage: Fungible Balance (r:1 w:1)49 // Storage: Fungible Balance (r:1 w:1)50 fn create_item() -> Weight {50 fn create_item() -> Weight {51 (18_195_000 as Weight)51 Weight::from_ref_time(18_195_000)52 .saturating_add(T::DbWeight::get().reads(2 as Weight))52 .saturating_add(T::DbWeight::get().reads(2 as u64))53 .saturating_add(T::DbWeight::get().writes(2 as Weight))53 .saturating_add(T::DbWeight::get().writes(2 as u64))54 }54 }55 // Storage: Fungible TotalSupply (r:1 w:1)55 // Storage: Fungible TotalSupply (r:1 w:1)56 // Storage: Fungible Balance (r:4 w:4)56 // Storage: Fungible Balance (r:4 w:4)57 fn create_multiple_items_ex(b: u32, ) -> Weight {57 fn create_multiple_items_ex(b: u32, ) -> Weight {58 (19_218_000 as Weight)58 Weight::from_ref_time(19_218_000)59 // Standard Error: 3_00059 // Standard Error: 3_00060 .saturating_add((4_516_000 as Weight).saturating_mul(b as Weight))60 .saturating_add(Weight::from_ref_time(4_516_000).saturating_mul(b as u64))61 .saturating_add(T::DbWeight::get().reads(1 as Weight))61 .saturating_add(T::DbWeight::get().reads(1 as u64))62 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))62 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))63 .saturating_add(T::DbWeight::get().writes(1 as Weight))63 .saturating_add(T::DbWeight::get().writes(1 as u64))64 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))64 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(b as u64)))65 }65 }66 // Storage: Fungible TotalSupply (r:1 w:1)66 // Storage: Fungible TotalSupply (r:1 w:1)67 // Storage: Fungible Balance (r:1 w:1)67 // Storage: Fungible Balance (r:1 w:1)68 fn burn_item() -> Weight {68 fn burn_item() -> Weight {69 (18_719_000 as Weight)69 Weight::from_ref_time(18_719_000)70 .saturating_add(T::DbWeight::get().reads(2 as Weight))70 .saturating_add(T::DbWeight::get().reads(2 as u64))71 .saturating_add(T::DbWeight::get().writes(2 as Weight))71 .saturating_add(T::DbWeight::get().writes(2 as u64))72 }72 }73 // Storage: Fungible Balance (r:2 w:2)73 // Storage: Fungible Balance (r:2 w:2)74 fn transfer() -> Weight {74 fn transfer() -> Weight {75 (20_563_000 as Weight)75 Weight::from_ref_time(20_563_000)76 .saturating_add(T::DbWeight::get().reads(2 as Weight))76 .saturating_add(T::DbWeight::get().reads(2 as u64))77 .saturating_add(T::DbWeight::get().writes(2 as Weight))77 .saturating_add(T::DbWeight::get().writes(2 as u64))78 }78 }79 // Storage: Fungible Balance (r:1 w:0)79 // Storage: Fungible Balance (r:1 w:0)80 // Storage: Fungible Allowance (r:0 w:1)80 // Storage: Fungible Allowance (r:0 w:1)81 fn approve() -> Weight {81 fn approve() -> Weight {82 (17_583_000 as Weight)82 Weight::from_ref_time(17_583_000)83 .saturating_add(T::DbWeight::get().reads(1 as Weight))83 .saturating_add(T::DbWeight::get().reads(1 as u64))84 .saturating_add(T::DbWeight::get().writes(1 as Weight))84 .saturating_add(T::DbWeight::get().writes(1 as u64))85 }85 }86 // Storage: Fungible Allowance (r:1 w:1)86 // Storage: Fungible Allowance (r:1 w:1)87 // Storage: Fungible Balance (r:2 w:2)87 // Storage: Fungible Balance (r:2 w:2)88 fn transfer_from() -> Weight {88 fn transfer_from() -> Weight {89 (29_845_000 as Weight)89 Weight::from_ref_time(29_845_000)90 .saturating_add(T::DbWeight::get().reads(3 as Weight))90 .saturating_add(T::DbWeight::get().reads(3 as u64))91 .saturating_add(T::DbWeight::get().writes(3 as Weight))91 .saturating_add(T::DbWeight::get().writes(3 as u64))92 }92 }93 // Storage: Fungible Allowance (r:1 w:1)93 // Storage: Fungible Allowance (r:1 w:1)94 // Storage: Fungible TotalSupply (r:1 w:1)94 // Storage: Fungible TotalSupply (r:1 w:1)95 // Storage: Fungible Balance (r:1 w:1)95 // Storage: Fungible Balance (r:1 w:1)96 fn burn_from() -> Weight {96 fn burn_from() -> Weight {97 (28_248_000 as Weight)97 Weight::from_ref_time(28_248_000)98 .saturating_add(T::DbWeight::get().reads(3 as Weight))98 .saturating_add(T::DbWeight::get().reads(3 as u64))99 .saturating_add(T::DbWeight::get().writes(3 as Weight))99 .saturating_add(T::DbWeight::get().writes(3 as u64))100 }100 }101}101}102102105 // Storage: Fungible TotalSupply (r:1 w:1)105 // Storage: Fungible TotalSupply (r:1 w:1)106 // Storage: Fungible Balance (r:1 w:1)106 // Storage: Fungible Balance (r:1 w:1)107 fn create_item() -> Weight {107 fn create_item() -> Weight {108 (18_195_000 as Weight)108 Weight::from_ref_time(18_195_000)109 .saturating_add(RocksDbWeight::get().reads(2 as Weight))109 .saturating_add(RocksDbWeight::get().reads(2 as u64))110 .saturating_add(RocksDbWeight::get().writes(2 as Weight))110 .saturating_add(RocksDbWeight::get().writes(2 as u64))111 }111 }112 // Storage: Fungible TotalSupply (r:1 w:1)112 // Storage: Fungible TotalSupply (r:1 w:1)113 // Storage: Fungible Balance (r:4 w:4)113 // Storage: Fungible Balance (r:4 w:4)114 fn create_multiple_items_ex(b: u32, ) -> Weight {114 fn create_multiple_items_ex(b: u32, ) -> Weight {115 (19_218_000 as Weight)115 Weight::from_ref_time(19_218_000)116 // Standard Error: 3_000116 // Standard Error: 3_000117 .saturating_add((4_516_000 as Weight).saturating_mul(b as Weight))117 .saturating_add(Weight::from_ref_time(4_516_000).saturating_mul(b as u64))118 .saturating_add(RocksDbWeight::get().reads(1 as Weight))118 .saturating_add(RocksDbWeight::get().reads(1 as u64))119 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))119 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))120 .saturating_add(RocksDbWeight::get().writes(1 as Weight))120 .saturating_add(RocksDbWeight::get().writes(1 as u64))121 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))121 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(b as u64)))122 }122 }123 // Storage: Fungible TotalSupply (r:1 w:1)123 // Storage: Fungible TotalSupply (r:1 w:1)124 // Storage: Fungible Balance (r:1 w:1)124 // Storage: Fungible Balance (r:1 w:1)125 fn burn_item() -> Weight {125 fn burn_item() -> Weight {126 (18_719_000 as Weight)126 Weight::from_ref_time(18_719_000)127 .saturating_add(RocksDbWeight::get().reads(2 as Weight))127 .saturating_add(RocksDbWeight::get().reads(2 as u64))128 .saturating_add(RocksDbWeight::get().writes(2 as Weight))128 .saturating_add(RocksDbWeight::get().writes(2 as u64))129 }129 }130 // Storage: Fungible Balance (r:2 w:2)130 // Storage: Fungible Balance (r:2 w:2)131 fn transfer() -> Weight {131 fn transfer() -> Weight {132 (20_563_000 as Weight)132 Weight::from_ref_time(20_563_000)133 .saturating_add(RocksDbWeight::get().reads(2 as Weight))133 .saturating_add(RocksDbWeight::get().reads(2 as u64))134 .saturating_add(RocksDbWeight::get().writes(2 as Weight))134 .saturating_add(RocksDbWeight::get().writes(2 as u64))135 }135 }136 // Storage: Fungible Balance (r:1 w:0)136 // Storage: Fungible Balance (r:1 w:0)137 // Storage: Fungible Allowance (r:0 w:1)137 // Storage: Fungible Allowance (r:0 w:1)138 fn approve() -> Weight {138 fn approve() -> Weight {139 (17_583_000 as Weight)139 Weight::from_ref_time(17_583_000)140 .saturating_add(RocksDbWeight::get().reads(1 as Weight))140 .saturating_add(RocksDbWeight::get().reads(1 as u64))141 .saturating_add(RocksDbWeight::get().writes(1 as Weight))141 .saturating_add(RocksDbWeight::get().writes(1 as u64))142 }142 }143 // Storage: Fungible Allowance (r:1 w:1)143 // Storage: Fungible Allowance (r:1 w:1)144 // Storage: Fungible Balance (r:2 w:2)144 // Storage: Fungible Balance (r:2 w:2)145 fn transfer_from() -> Weight {145 fn transfer_from() -> Weight {146 (29_845_000 as Weight)146 Weight::from_ref_time(29_845_000)147 .saturating_add(RocksDbWeight::get().reads(3 as Weight))147 .saturating_add(RocksDbWeight::get().reads(3 as u64))148 .saturating_add(RocksDbWeight::get().writes(3 as Weight))148 .saturating_add(RocksDbWeight::get().writes(3 as u64))149 }149 }150 // Storage: Fungible Allowance (r:1 w:1)150 // Storage: Fungible Allowance (r:1 w:1)151 // Storage: Fungible TotalSupply (r:1 w:1)151 // Storage: Fungible TotalSupply (r:1 w:1)152 // Storage: Fungible Balance (r:1 w:1)152 // Storage: Fungible Balance (r:1 w:1)153 fn burn_from() -> Weight {153 fn burn_from() -> Weight {154 (28_248_000 as Weight)154 Weight::from_ref_time(28_248_000)155 .saturating_add(RocksDbWeight::get().reads(3 as Weight))155 .saturating_add(RocksDbWeight::get().reads(3 as u64))156 .saturating_add(RocksDbWeight::get().writes(3 as Weight))156 .saturating_add(RocksDbWeight::get().writes(3 as u64))157 }157 }158}158}159159pallets/inflation/Cargo.tomldiffbeforeafterboth43default-features = false43default-features = false44optional = true44optional = true45git = "https://github.com/paritytech/substrate"45git = "https://github.com/paritytech/substrate"46branch = "polkadot-v0.9.27"46branch = "polkadot-v0.9.29"474748[dependencies.frame-support]48[dependencies.frame-support]49default-features = false49default-features = false50git = "https://github.com/paritytech/substrate"50git = "https://github.com/paritytech/substrate"51branch = "polkadot-v0.9.27"51branch = "polkadot-v0.9.29"525253[dependencies.frame-system]53[dependencies.frame-system]54default-features = false54default-features = false55git = "https://github.com/paritytech/substrate"55git = "https://github.com/paritytech/substrate"56branch = "polkadot-v0.9.27"56branch = "polkadot-v0.9.29"575758[dependencies.pallet-balances]58[dependencies.pallet-balances]59default-features = false59default-features = false60git = "https://github.com/paritytech/substrate"60git = "https://github.com/paritytech/substrate"61branch = "polkadot-v0.9.27"61branch = "polkadot-v0.9.29"626263[dependencies.pallet-timestamp]63[dependencies.pallet-timestamp]64default-features = false64default-features = false65git = "https://github.com/paritytech/substrate"65git = "https://github.com/paritytech/substrate"66branch = "polkadot-v0.9.27"66branch = "polkadot-v0.9.29"676768[dependencies.pallet-randomness-collective-flip]68[dependencies.pallet-randomness-collective-flip]69default-features = false69default-features = false70git = "https://github.com/paritytech/substrate"70git = "https://github.com/paritytech/substrate"71branch = "polkadot-v0.9.27"71branch = "polkadot-v0.9.29"727273[dependencies.sp-std]73[dependencies.sp-std]74default-features = false74default-features = false75git = "https://github.com/paritytech/substrate"75git = "https://github.com/paritytech/substrate"76branch = "polkadot-v0.9.27"76branch = "polkadot-v0.9.29"777778[dependencies.serde]78[dependencies.serde]79default-features = false79default-features = false83[dependencies.sp-runtime]83[dependencies.sp-runtime]84default-features = false84default-features = false85git = "https://github.com/paritytech/substrate"85git = "https://github.com/paritytech/substrate"86branch = "polkadot-v0.9.27"86branch = "polkadot-v0.9.29"878788[dependencies.sp-core]88[dependencies.sp-core]89default-features = false89default-features = false90git = "https://github.com/paritytech/substrate"90git = "https://github.com/paritytech/substrate"91branch = "polkadot-v0.9.27"91branch = "polkadot-v0.9.29"929293[dependencies.sp-io]93[dependencies.sp-io]94default-features = false94default-features = false95git = "https://github.com/paritytech/substrate"95git = "https://github.com/paritytech/substrate"96branch = "polkadot-v0.9.27"96branch = "polkadot-v0.9.29"979798[dependencies]98[dependencies]99scale-info = { version = "2.0.1", default-features = false, features = [99scale-info = { version = "2.0.1", default-features = false, features = [pallets/inflation/src/lib.rsdiffbeforeafterboth110 where110 where111 <T as frame_system::Config>::BlockNumber: From<u32>,111 <T as frame_system::Config>::BlockNumber: From<u32>,112 {112 {113 let mut consumed_weight = 0;113 let mut consumed_weight = Weight::zero();114 let mut add_weight = |reads, writes, weight| {114 let mut add_weight = |reads, writes, weight| {115 consumed_weight += T::DbWeight::get().reads_writes(reads, writes);115 consumed_weight += T::DbWeight::get().reads_writes(reads, writes);116 consumed_weight += weight;116 consumed_weight += weight;119 let block_interval: u32 = T::InflationBlockInterval::get().try_into().unwrap_or(0);119 let block_interval: u32 = T::InflationBlockInterval::get().try_into().unwrap_or(0);120 let current_relay_block = T::BlockNumberProvider::current_block_number();120 let current_relay_block = T::BlockNumberProvider::current_block_number();121 let next_inflation: T::BlockNumber = <NextInflationBlock<T>>::get();121 let next_inflation: T::BlockNumber = <NextInflationBlock<T>>::get();122 add_weight(1, 0, 5_000_000);122 add_weight(1, 0, Weight::from_ref_time(5_000_000));123123124 // Apply inflation every InflationBlockInterval blocks124 // Apply inflation every InflationBlockInterval blocks125 // If next_inflation == 0, this means inflation wasn't yet initialized125 // If next_inflation == 0, this means inflation wasn't yet initialized128 // Do the "current_relay_block >= next_recalculation" check in the "current_relay_block >= next_inflation"128 // Do the "current_relay_block >= next_recalculation" check in the "current_relay_block >= next_inflation"129 // block because it saves InflationBlockInterval DB reads for NextRecalculationBlock.129 // block because it saves InflationBlockInterval DB reads for NextRecalculationBlock.130 let next_recalculation: T::BlockNumber = <NextRecalculationBlock<T>>::get();130 let next_recalculation: T::BlockNumber = <NextRecalculationBlock<T>>::get();131 add_weight(1, 0, 0);131 add_weight(1, 0, Weight::zero());132 if current_relay_block >= next_recalculation {132 if current_relay_block >= next_recalculation {133 Self::recalculate_inflation(next_recalculation);133 Self::recalculate_inflation(next_recalculation);134 add_weight(0, 4, 5_000_000);134 add_weight(0, 4, Weight::from_ref_time(5_000_000));135 }135 }136136137 T::Currency::deposit_into_existing(137 T::Currency::deposit_into_existing(143 // Update inflation block143 // Update inflation block144 <NextInflationBlock<T>>::set(next_inflation + block_interval.into());144 <NextInflationBlock<T>>::set(next_inflation + block_interval.into());145145146 add_weight(3, 3, 10_000_000);146 add_weight(3, 3, Weight::from_ref_time(10_000_000));147 }147 }148148149 consumed_weight149 consumed_weightpallets/inflation/src/tests.rsdiffbeforeafterboth21use frame_support::{21use frame_support::{22 assert_ok, parameter_types,22 assert_ok, parameter_types,23 traits::{Currency, OnInitialize, Everything, ConstU32},23 traits::{Currency, OnInitialize, Everything, ConstU32},24 weights::Weight,24};25};25use frame_system::RawOrigin;26use frame_system::RawOrigin;26use sp_core::H256;27use sp_core::H256;69parameter_types! {70parameter_types! {70 pub const BlockHashCount: u64 = 250;71 pub const BlockHashCount: u64 = 250;71 pub BlockWeights: frame_system::limits::BlockWeights =72 pub BlockWeights: frame_system::limits::BlockWeights =72 frame_system::limits::BlockWeights::simple_max(1024);73 frame_system::limits::BlockWeights::simple_max(Weight::from_ref_time(1024));73 pub const SS58Prefix: u8 = 42;74 pub const SS58Prefix: u8 = 42;74}75}7576pallets/nonfungible/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }20pallet-common = { default-features = false, path = '../common' }20pallet-common = { default-features = false, path = '../common' }21pallet-structure = { default-features = false, path = '../structure' }21pallet-structure = { default-features = false, path = '../structure' }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }23evm-coder = { default-features = false, path = '../../crates/evm-coder' }24pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }24pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }25ethereum = { version = "0.12.0", default-features = false }25ethereum = { version = "0.12.0", default-features = false }26frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }26frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }27scale-info = { version = "2.0.1", default-features = false, features = [27scale-info = { version = "2.0.1", default-features = false, features = [28 "derive",28 "derive",29] }29] }pallets/nonfungible/src/benchmarking.rsdiffbeforeafterboth54 create_collection_raw(54 create_collection_raw(55 owner,55 owner,56 CollectionMode::NFT,56 CollectionMode::NFT,57 |owner, data| <Pallet<T>>::init_collection(owner, data, true),57 |owner: T::CrossAccountId, data| {58 <Pallet<T>>::init_collection(owner.clone(), owner, data, true)59 },58 NonfungibleHandle::cast,60 NonfungibleHandle::cast,59 )61 )60}62}pallets/nonfungible/src/common.rsdiffbeforeafterboth44 CreateItemExData::NFT(t) => {44 CreateItemExData::NFT(t) => {45 <SelfWeightOf<T>>::create_multiple_items_ex(t.len() as u32)45 <SelfWeightOf<T>>::create_multiple_items_ex(t.len() as u32)46 + t.iter()46 + t.iter()47 .map(|t| {47 .filter_map(|t| {48 if t.properties.len() > 0 {48 if t.properties.len() > 0 {49 Self::set_token_properties(t.properties.len() as u32)49 Some(Self::set_token_properties(t.properties.len() as u32))50 } else {50 } else {51 051 None52 }52 }53 })53 })54 .sum::<u64>()54 .fold(Weight::zero(), |a, b| a.saturating_add(b))55 }55 }56 _ => 0,56 _ => Weight::zero(),57 }57 }58 }58 }595967 }67 }68 _ => None,68 _ => None,69 })69 })70 .sum::<u64>()70 .fold(Weight::zero(), |a, b| a.saturating_add(b))71 }71 }727273 fn burn_item() -> Weight {73 fn burn_item() -> Weight {pallets/nonfungible/src/lib.rsdiffbeforeafterboth114use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};114use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};115use sp_core::H160;115use sp_core::H160;116use sp_runtime::{ArithmeticError, DispatchError, DispatchResult, TransactionOutcome};116use sp_runtime::{ArithmeticError, DispatchError, DispatchResult, TransactionOutcome};117use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap, collections::btree_set::BTreeSet};117use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};118use core::ops::Deref;118use core::ops::Deref;119use codec::{Encode, Decode, MaxEncodedLen};119use codec::{Encode, Decode, MaxEncodedLen};120use scale_info::TypeInfo;120use scale_info::TypeInfo;278 fn on_runtime_upgrade() -> Weight {278 fn on_runtime_upgrade() -> Weight {279 StorageVersion::new(1).put::<Pallet<T>>();279 StorageVersion::new(1).put::<Pallet<T>>();280280281 0281 Weight::zero()282 }282 }283 }283 }284}284}405 /// - `data`: Contains settings for collection limits and permissions.405 /// - `data`: Contains settings for collection limits and permissions.406 pub fn init_collection(406 pub fn init_collection(407 owner: T::CrossAccountId,407 owner: T::CrossAccountId,408 payer: T::CrossAccountId,408 data: CreateCollectionData<T::AccountId>,409 data: CreateCollectionData<T::AccountId>,409 is_external: bool,410 is_external: bool,410 ) -> Result<CollectionId, DispatchError> {411 ) -> Result<CollectionId, DispatchError> {411 <PalletCommon<T>>::init_collection(412 <PalletCommon<T>>::init_collection(412 owner,413 owner,414 payer,413 data,415 data,414 CollectionFlags {416 CollectionFlags {415 external: is_external,417 external: is_external,543 let current_token_account =545 let current_token_account =544 T::CrossTokenAddressMapping::token_to_address(collection.id, token);546 T::CrossTokenAddressMapping::token_to_address(collection.id, token);545547546 let mut weight = 0 as Weight;548 let mut weight = Weight::zero();547549548 // This method is transactional, if user in fact doesn't have permissions to remove token -550 // This method is transactional, if user in fact doesn't have permissions to remove token -549 // tokens removed here will be restored after rejected transaction551 // tokens removed here will be restored after rejected transactionpallets/nonfungible/src/weights.rsdiffbeforeafterboth57 // Storage: Nonfungible TokenData (r:0 w:1)57 // Storage: Nonfungible TokenData (r:0 w:1)58 // Storage: Nonfungible Owned (r:0 w:1)58 // Storage: Nonfungible Owned (r:0 w:1)59 fn create_item() -> Weight {59 fn create_item() -> Weight {60 (25_905_000 as Weight)60 Weight::from_ref_time(25_905_000)61 .saturating_add(T::DbWeight::get().reads(2 as Weight))61 .saturating_add(T::DbWeight::get().reads(2 as u64))62 .saturating_add(T::DbWeight::get().writes(4 as Weight))62 .saturating_add(T::DbWeight::get().writes(4 as u64))63 }63 }64 // Storage: Nonfungible TokensMinted (r:1 w:1)64 // Storage: Nonfungible TokensMinted (r:1 w:1)65 // Storage: Nonfungible AccountBalance (r:1 w:1)65 // Storage: Nonfungible AccountBalance (r:1 w:1)66 // Storage: Nonfungible TokenData (r:0 w:4)66 // Storage: Nonfungible TokenData (r:0 w:4)67 // Storage: Nonfungible Owned (r:0 w:4)67 // Storage: Nonfungible Owned (r:0 w:4)68 fn create_multiple_items(b: u32, ) -> Weight {68 fn create_multiple_items(b: u32, ) -> Weight {69 (24_955_000 as Weight)69 Weight::from_ref_time(24_955_000)70 // Standard Error: 3_00070 // Standard Error: 3_00071 .saturating_add((5_340_000 as Weight).saturating_mul(b as Weight))71 .saturating_add(Weight::from_ref_time(5_340_000).saturating_mul(b as u64))72 .saturating_add(T::DbWeight::get().reads(2 as Weight))72 .saturating_add(T::DbWeight::get().reads(2 as u64))73 .saturating_add(T::DbWeight::get().writes(2 as Weight))73 .saturating_add(T::DbWeight::get().writes(2 as u64))74 .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(b as Weight)))74 .saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(b as u64)))75 }75 }76 // Storage: Nonfungible TokensMinted (r:1 w:1)76 // Storage: Nonfungible TokensMinted (r:1 w:1)77 // Storage: Nonfungible AccountBalance (r:4 w:4)77 // Storage: Nonfungible AccountBalance (r:4 w:4)78 // Storage: Nonfungible TokenData (r:0 w:4)78 // Storage: Nonfungible TokenData (r:0 w:4)79 // Storage: Nonfungible Owned (r:0 w:4)79 // Storage: Nonfungible Owned (r:0 w:4)80 fn create_multiple_items_ex(b: u32, ) -> Weight {80 fn create_multiple_items_ex(b: u32, ) -> Weight {81 (13_666_000 as Weight)81 Weight::from_ref_time(13_666_000)82 // Standard Error: 5_00082 // Standard Error: 5_00083 .saturating_add((8_299_000 as Weight).saturating_mul(b as Weight))83 .saturating_add(Weight::from_ref_time(8_299_000).saturating_mul(b as u64))84 .saturating_add(T::DbWeight::get().reads(1 as Weight))84 .saturating_add(T::DbWeight::get().reads(1 as u64))85 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))85 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))86 .saturating_add(T::DbWeight::get().writes(1 as Weight))86 .saturating_add(T::DbWeight::get().writes(1 as u64))87 .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))87 .saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(b as u64)))88 }88 }89 // Storage: Nonfungible TokenData (r:1 w:1)89 // Storage: Nonfungible TokenData (r:1 w:1)90 // Storage: Nonfungible TokenChildren (r:1 w:0)90 // Storage: Nonfungible TokenChildren (r:1 w:0)94 // Storage: Nonfungible Owned (r:0 w:1)94 // Storage: Nonfungible Owned (r:0 w:1)95 // Storage: Nonfungible TokenProperties (r:0 w:1)95 // Storage: Nonfungible TokenProperties (r:0 w:1)96 fn burn_item() -> Weight {96 fn burn_item() -> Weight {97 (36_205_000 as Weight)97 Weight::from_ref_time(36_205_000)98 .saturating_add(T::DbWeight::get().reads(5 as Weight))98 .saturating_add(T::DbWeight::get().reads(5 as u64))99 .saturating_add(T::DbWeight::get().writes(5 as Weight))99 .saturating_add(T::DbWeight::get().writes(5 as u64))100 }100 }101 // Storage: Nonfungible TokenChildren (r:1 w:0)101 // Storage: Nonfungible TokenChildren (r:1 w:0)102 // Storage: Nonfungible TokenData (r:1 w:1)102 // Storage: Nonfungible TokenData (r:1 w:1)106 // Storage: Nonfungible Owned (r:0 w:1)106 // Storage: Nonfungible Owned (r:0 w:1)107 // Storage: Nonfungible TokenProperties (r:0 w:1)107 // Storage: Nonfungible TokenProperties (r:0 w:1)108 fn burn_recursively_self_raw() -> Weight {108 fn burn_recursively_self_raw() -> Weight {109 (44_550_000 as Weight)109 Weight::from_ref_time(44_550_000)110 .saturating_add(T::DbWeight::get().reads(5 as Weight))110 .saturating_add(T::DbWeight::get().reads(5 as u64))111 .saturating_add(T::DbWeight::get().writes(5 as Weight))111 .saturating_add(T::DbWeight::get().writes(5 as u64))112 }112 }113 // Storage: Nonfungible TokenChildren (r:1 w:0)113 // Storage: Nonfungible TokenChildren (r:1 w:0)114 // Storage: Nonfungible TokenData (r:1 w:1)114 // Storage: Nonfungible TokenData (r:1 w:1)119 // Storage: Nonfungible TokenProperties (r:0 w:1)119 // Storage: Nonfungible TokenProperties (r:0 w:1)120 // Storage: Common CollectionById (r:1 w:0)120 // Storage: Common CollectionById (r:1 w:0)121 fn burn_recursively_breadth_plus_self_plus_self_per_each_raw(b: u32, ) -> Weight {121 fn burn_recursively_breadth_plus_self_plus_self_per_each_raw(b: u32, ) -> Weight {122 (0 as Weight)122 (Weight::from_ref_time(0))123 // Standard Error: 1_536_000123 // Standard Error: 1_536_000124 .saturating_add((312_125_000 as Weight).saturating_mul(b as Weight))124 .saturating_add(Weight::from_ref_time(312_125_000).saturating_mul(b as u64))125 .saturating_add(T::DbWeight::get().reads(7 as Weight))125 .saturating_add(T::DbWeight::get().reads(7 as u64))126 .saturating_add(T::DbWeight::get().reads((4 as Weight).saturating_mul(b as Weight)))126 .saturating_add(T::DbWeight::get().reads((4 as u64).saturating_mul(b as u64)))127 .saturating_add(T::DbWeight::get().writes(6 as Weight))127 .saturating_add(T::DbWeight::get().writes(6 as u64))128 .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))128 .saturating_add(T::DbWeight::get().writes((4 as u64).saturating_mul(b as u64)))129 }129 }130 // Storage: Nonfungible TokenData (r:1 w:1)130 // Storage: Nonfungible TokenData (r:1 w:1)131 // Storage: Nonfungible AccountBalance (r:2 w:2)131 // Storage: Nonfungible AccountBalance (r:2 w:2)132 // Storage: Nonfungible Allowance (r:1 w:0)132 // Storage: Nonfungible Allowance (r:1 w:0)133 // Storage: Nonfungible Owned (r:0 w:2)133 // Storage: Nonfungible Owned (r:0 w:2)134 fn transfer() -> Weight {134 fn transfer() -> Weight {135 (31_116_000 as Weight)135 Weight::from_ref_time(31_116_000)136 .saturating_add(T::DbWeight::get().reads(4 as Weight))136 .saturating_add(T::DbWeight::get().reads(4 as u64))137 .saturating_add(T::DbWeight::get().writes(5 as Weight))137 .saturating_add(T::DbWeight::get().writes(5 as u64))138 }138 }139 // Storage: Nonfungible TokenData (r:1 w:0)139 // Storage: Nonfungible TokenData (r:1 w:0)140 // Storage: Nonfungible Allowance (r:1 w:1)140 // Storage: Nonfungible Allowance (r:1 w:1)141 fn approve() -> Weight {141 fn approve() -> Weight {142 (20_802_000 as Weight)142 Weight::from_ref_time(20_802_000)143 .saturating_add(T::DbWeight::get().reads(2 as Weight))143 .saturating_add(T::DbWeight::get().reads(2 as u64))144 .saturating_add(T::DbWeight::get().writes(1 as Weight))144 .saturating_add(T::DbWeight::get().writes(1 as u64))145 }145 }146 // Storage: Nonfungible Allowance (r:1 w:1)146 // Storage: Nonfungible Allowance (r:1 w:1)147 // Storage: Nonfungible TokenData (r:1 w:1)147 // Storage: Nonfungible TokenData (r:1 w:1)148 // Storage: Nonfungible AccountBalance (r:2 w:2)148 // Storage: Nonfungible AccountBalance (r:2 w:2)149 // Storage: Nonfungible Owned (r:0 w:2)149 // Storage: Nonfungible Owned (r:0 w:2)150 fn transfer_from() -> Weight {150 fn transfer_from() -> Weight {151 (36_083_000 as Weight)151 Weight::from_ref_time(36_083_000)152 .saturating_add(T::DbWeight::get().reads(4 as Weight))152 .saturating_add(T::DbWeight::get().reads(4 as u64))153 .saturating_add(T::DbWeight::get().writes(6 as Weight))153 .saturating_add(T::DbWeight::get().writes(6 as u64))154 }154 }155 // Storage: Nonfungible Allowance (r:1 w:1)155 // Storage: Nonfungible Allowance (r:1 w:1)156 // Storage: Nonfungible TokenData (r:1 w:1)156 // Storage: Nonfungible TokenData (r:1 w:1)160 // Storage: Nonfungible Owned (r:0 w:1)160 // Storage: Nonfungible Owned (r:0 w:1)161 // Storage: Nonfungible TokenProperties (r:0 w:1)161 // Storage: Nonfungible TokenProperties (r:0 w:1)162 fn burn_from() -> Weight {162 fn burn_from() -> Weight {163 (41_781_000 as Weight)163 Weight::from_ref_time(41_781_000)164 .saturating_add(T::DbWeight::get().reads(5 as Weight))164 .saturating_add(T::DbWeight::get().reads(5 as u64))165 .saturating_add(T::DbWeight::get().writes(6 as Weight))165 .saturating_add(T::DbWeight::get().writes(6 as u64))166 }166 }167 // Storage: Common CollectionPropertyPermissions (r:1 w:1)167 // Storage: Common CollectionPropertyPermissions (r:1 w:1)168 fn set_token_property_permissions(b: u32, ) -> Weight {168 fn set_token_property_permissions(b: u32, ) -> Weight {169 (0 as Weight)169 (Weight::from_ref_time(0))170 // Standard Error: 58_000170 // Standard Error: 58_000171 .saturating_add((15_705_000 as Weight).saturating_mul(b as Weight))171 .saturating_add(Weight::from_ref_time(15_705_000).saturating_mul(b as u64))172 .saturating_add(T::DbWeight::get().reads(1 as Weight))172 .saturating_add(T::DbWeight::get().reads(1 as u64))173 .saturating_add(T::DbWeight::get().writes(1 as Weight))173 .saturating_add(T::DbWeight::get().writes(1 as u64))174 }174 }175 // Storage: Common CollectionPropertyPermissions (r:1 w:0)175 // Storage: Common CollectionPropertyPermissions (r:1 w:0)176 // Storage: Nonfungible TokenProperties (r:1 w:1)176 // Storage: Nonfungible TokenProperties (r:1 w:1)177 fn set_token_properties(b: u32, ) -> Weight {177 fn set_token_properties(b: u32, ) -> Weight {178 (0 as Weight)178 (Weight::from_ref_time(0))179 // Standard Error: 3_595_000179 // Standard Error: 3_595_000180 .saturating_add((590_344_000 as Weight).saturating_mul(b as Weight))180 .saturating_add(Weight::from_ref_time(590_344_000).saturating_mul(b as u64))181 .saturating_add(T::DbWeight::get().reads(2 as Weight))181 .saturating_add(T::DbWeight::get().reads(2 as u64))182 .saturating_add(T::DbWeight::get().writes(1 as Weight))182 .saturating_add(T::DbWeight::get().writes(1 as u64))183 }183 }184 // Storage: Common CollectionPropertyPermissions (r:1 w:0)184 // Storage: Common CollectionPropertyPermissions (r:1 w:0)185 // Storage: Nonfungible TokenProperties (r:1 w:1)185 // Storage: Nonfungible TokenProperties (r:1 w:1)186 fn delete_token_properties(b: u32, ) -> Weight {186 fn delete_token_properties(b: u32, ) -> Weight {187 (0 as Weight)187 (Weight::from_ref_time(0))188 // Standard Error: 3_664_000188 // Standard Error: 3_664_000189 .saturating_add((605_836_000 as Weight).saturating_mul(b as Weight))189 .saturating_add(Weight::from_ref_time(605_836_000).saturating_mul(b as u64))190 .saturating_add(T::DbWeight::get().reads(2 as Weight))190 .saturating_add(T::DbWeight::get().reads(2 as u64))191 .saturating_add(T::DbWeight::get().writes(1 as Weight))191 .saturating_add(T::DbWeight::get().writes(1 as u64))192 }192 }193 // Storage: Nonfungible TokenData (r:1 w:0)193 // Storage: Nonfungible TokenData (r:1 w:0)194 fn token_owner() -> Weight {194 fn token_owner() -> Weight {195 (4_366_000 as Weight)195 Weight::from_ref_time(4_366_000)196 .saturating_add(T::DbWeight::get().reads(1 as Weight))196 .saturating_add(T::DbWeight::get().reads(1 as u64))197 }197 }198}198}199199204 // Storage: Nonfungible TokenData (r:0 w:1)204 // Storage: Nonfungible TokenData (r:0 w:1)205 // Storage: Nonfungible Owned (r:0 w:1)205 // Storage: Nonfungible Owned (r:0 w:1)206 fn create_item() -> Weight {206 fn create_item() -> Weight {207 (25_905_000 as Weight)207 Weight::from_ref_time(25_905_000)208 .saturating_add(RocksDbWeight::get().reads(2 as Weight))208 .saturating_add(RocksDbWeight::get().reads(2 as u64))209 .saturating_add(RocksDbWeight::get().writes(4 as Weight))209 .saturating_add(RocksDbWeight::get().writes(4 as u64))210 }210 }211 // Storage: Nonfungible TokensMinted (r:1 w:1)211 // Storage: Nonfungible TokensMinted (r:1 w:1)212 // Storage: Nonfungible AccountBalance (r:1 w:1)212 // Storage: Nonfungible AccountBalance (r:1 w:1)213 // Storage: Nonfungible TokenData (r:0 w:4)213 // Storage: Nonfungible TokenData (r:0 w:4)214 // Storage: Nonfungible Owned (r:0 w:4)214 // Storage: Nonfungible Owned (r:0 w:4)215 fn create_multiple_items(b: u32, ) -> Weight {215 fn create_multiple_items(b: u32, ) -> Weight {216 (24_955_000 as Weight)216 Weight::from_ref_time(24_955_000)217 // Standard Error: 3_000217 // Standard Error: 3_000218 .saturating_add((5_340_000 as Weight).saturating_mul(b as Weight))218 .saturating_add(Weight::from_ref_time(5_340_000).saturating_mul(b as u64))219 .saturating_add(RocksDbWeight::get().reads(2 as Weight))219 .saturating_add(RocksDbWeight::get().reads(2 as u64))220 .saturating_add(RocksDbWeight::get().writes(2 as Weight))220 .saturating_add(RocksDbWeight::get().writes(2 as u64))221 .saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(b as Weight)))221 .saturating_add(RocksDbWeight::get().writes((2 as u64).saturating_mul(b as u64)))222 }222 }223 // Storage: Nonfungible TokensMinted (r:1 w:1)223 // Storage: Nonfungible TokensMinted (r:1 w:1)224 // Storage: Nonfungible AccountBalance (r:4 w:4)224 // Storage: Nonfungible AccountBalance (r:4 w:4)225 // Storage: Nonfungible TokenData (r:0 w:4)225 // Storage: Nonfungible TokenData (r:0 w:4)226 // Storage: Nonfungible Owned (r:0 w:4)226 // Storage: Nonfungible Owned (r:0 w:4)227 fn create_multiple_items_ex(b: u32, ) -> Weight {227 fn create_multiple_items_ex(b: u32, ) -> Weight {228 (13_666_000 as Weight)228 Weight::from_ref_time(13_666_000)229 // Standard Error: 5_000229 // Standard Error: 5_000230 .saturating_add((8_299_000 as Weight).saturating_mul(b as Weight))230 .saturating_add(Weight::from_ref_time(8_299_000).saturating_mul(b as u64))231 .saturating_add(RocksDbWeight::get().reads(1 as Weight))231 .saturating_add(RocksDbWeight::get().reads(1 as u64))232 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))232 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))233 .saturating_add(RocksDbWeight::get().writes(1 as Weight))233 .saturating_add(RocksDbWeight::get().writes(1 as u64))234 .saturating_add(RocksDbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))234 .saturating_add(RocksDbWeight::get().writes((3 as u64).saturating_mul(b as u64)))235 }235 }236 // Storage: Nonfungible TokenData (r:1 w:1)236 // Storage: Nonfungible TokenData (r:1 w:1)237 // Storage: Nonfungible TokenChildren (r:1 w:0)237 // Storage: Nonfungible TokenChildren (r:1 w:0)241 // Storage: Nonfungible Owned (r:0 w:1)241 // Storage: Nonfungible Owned (r:0 w:1)242 // Storage: Nonfungible TokenProperties (r:0 w:1)242 // Storage: Nonfungible TokenProperties (r:0 w:1)243 fn burn_item() -> Weight {243 fn burn_item() -> Weight {244 (36_205_000 as Weight)244 Weight::from_ref_time(36_205_000)245 .saturating_add(RocksDbWeight::get().reads(5 as Weight))245 .saturating_add(RocksDbWeight::get().reads(5 as u64))246 .saturating_add(RocksDbWeight::get().writes(5 as Weight))246 .saturating_add(RocksDbWeight::get().writes(5 as u64))247 }247 }248 // Storage: Nonfungible TokenChildren (r:1 w:0)248 // Storage: Nonfungible TokenChildren (r:1 w:0)249 // Storage: Nonfungible TokenData (r:1 w:1)249 // Storage: Nonfungible TokenData (r:1 w:1)253 // Storage: Nonfungible Owned (r:0 w:1)253 // Storage: Nonfungible Owned (r:0 w:1)254 // Storage: Nonfungible TokenProperties (r:0 w:1)254 // Storage: Nonfungible TokenProperties (r:0 w:1)255 fn burn_recursively_self_raw() -> Weight {255 fn burn_recursively_self_raw() -> Weight {256 (44_550_000 as Weight)256 Weight::from_ref_time(44_550_000)257 .saturating_add(RocksDbWeight::get().reads(5 as Weight))257 .saturating_add(RocksDbWeight::get().reads(5 as u64))258 .saturating_add(RocksDbWeight::get().writes(5 as Weight))258 .saturating_add(RocksDbWeight::get().writes(5 as u64))259 }259 }260 // Storage: Nonfungible TokenChildren (r:1 w:0)260 // Storage: Nonfungible TokenChildren (r:1 w:0)261 // Storage: Nonfungible TokenData (r:1 w:1)261 // Storage: Nonfungible TokenData (r:1 w:1)266 // Storage: Nonfungible TokenProperties (r:0 w:1)266 // Storage: Nonfungible TokenProperties (r:0 w:1)267 // Storage: Common CollectionById (r:1 w:0)267 // Storage: Common CollectionById (r:1 w:0)268 fn burn_recursively_breadth_plus_self_plus_self_per_each_raw(b: u32, ) -> Weight {268 fn burn_recursively_breadth_plus_self_plus_self_per_each_raw(b: u32, ) -> Weight {269 (0 as Weight)269 (Weight::from_ref_time(0))270 // Standard Error: 1_536_000270 // Standard Error: 1_536_000271 .saturating_add((312_125_000 as Weight).saturating_mul(b as Weight))271 .saturating_add(Weight::from_ref_time(312_125_000).saturating_mul(b as u64))272 .saturating_add(RocksDbWeight::get().reads(7 as Weight))272 .saturating_add(RocksDbWeight::get().reads(7 as u64))273 .saturating_add(RocksDbWeight::get().reads((4 as Weight).saturating_mul(b as Weight)))273 .saturating_add(RocksDbWeight::get().reads((4 as u64).saturating_mul(b as u64)))274 .saturating_add(RocksDbWeight::get().writes(6 as Weight))274 .saturating_add(RocksDbWeight::get().writes(6 as u64))275 .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))275 .saturating_add(RocksDbWeight::get().writes((4 as u64).saturating_mul(b as u64)))276 }276 }277 // Storage: Nonfungible TokenData (r:1 w:1)277 // Storage: Nonfungible TokenData (r:1 w:1)278 // Storage: Nonfungible AccountBalance (r:2 w:2)278 // Storage: Nonfungible AccountBalance (r:2 w:2)279 // Storage: Nonfungible Allowance (r:1 w:0)279 // Storage: Nonfungible Allowance (r:1 w:0)280 // Storage: Nonfungible Owned (r:0 w:2)280 // Storage: Nonfungible Owned (r:0 w:2)281 fn transfer() -> Weight {281 fn transfer() -> Weight {282 (31_116_000 as Weight)282 Weight::from_ref_time(31_116_000)283 .saturating_add(RocksDbWeight::get().reads(4 as Weight))283 .saturating_add(RocksDbWeight::get().reads(4 as u64))284 .saturating_add(RocksDbWeight::get().writes(5 as Weight))284 .saturating_add(RocksDbWeight::get().writes(5 as u64))285 }285 }286 // Storage: Nonfungible TokenData (r:1 w:0)286 // Storage: Nonfungible TokenData (r:1 w:0)287 // Storage: Nonfungible Allowance (r:1 w:1)287 // Storage: Nonfungible Allowance (r:1 w:1)288 fn approve() -> Weight {288 fn approve() -> Weight {289 (20_802_000 as Weight)289 Weight::from_ref_time(20_802_000)290 .saturating_add(RocksDbWeight::get().reads(2 as Weight))290 .saturating_add(RocksDbWeight::get().reads(2 as u64))291 .saturating_add(RocksDbWeight::get().writes(1 as Weight))291 .saturating_add(RocksDbWeight::get().writes(1 as u64))292 }292 }293 // Storage: Nonfungible Allowance (r:1 w:1)293 // Storage: Nonfungible Allowance (r:1 w:1)294 // Storage: Nonfungible TokenData (r:1 w:1)294 // Storage: Nonfungible TokenData (r:1 w:1)295 // Storage: Nonfungible AccountBalance (r:2 w:2)295 // Storage: Nonfungible AccountBalance (r:2 w:2)296 // Storage: Nonfungible Owned (r:0 w:2)296 // Storage: Nonfungible Owned (r:0 w:2)297 fn transfer_from() -> Weight {297 fn transfer_from() -> Weight {298 (36_083_000 as Weight)298 Weight::from_ref_time(36_083_000)299 .saturating_add(RocksDbWeight::get().reads(4 as Weight))299 .saturating_add(RocksDbWeight::get().reads(4 as u64))300 .saturating_add(RocksDbWeight::get().writes(6 as Weight))300 .saturating_add(RocksDbWeight::get().writes(6 as u64))301 }301 }302 // Storage: Nonfungible Allowance (r:1 w:1)302 // Storage: Nonfungible Allowance (r:1 w:1)303 // Storage: Nonfungible TokenData (r:1 w:1)303 // Storage: Nonfungible TokenData (r:1 w:1)307 // Storage: Nonfungible Owned (r:0 w:1)307 // Storage: Nonfungible Owned (r:0 w:1)308 // Storage: Nonfungible TokenProperties (r:0 w:1)308 // Storage: Nonfungible TokenProperties (r:0 w:1)309 fn burn_from() -> Weight {309 fn burn_from() -> Weight {310 (41_781_000 as Weight)310 Weight::from_ref_time(41_781_000)311 .saturating_add(RocksDbWeight::get().reads(5 as Weight))311 .saturating_add(RocksDbWeight::get().reads(5 as u64))312 .saturating_add(RocksDbWeight::get().writes(6 as Weight))312 .saturating_add(RocksDbWeight::get().writes(6 as u64))313 }313 }314 // Storage: Common CollectionPropertyPermissions (r:1 w:1)314 // Storage: Common CollectionPropertyPermissions (r:1 w:1)315 fn set_token_property_permissions(b: u32, ) -> Weight {315 fn set_token_property_permissions(b: u32, ) -> Weight {316 (0 as Weight)316 (Weight::from_ref_time(0))317 // Standard Error: 58_000317 // Standard Error: 58_000318 .saturating_add((15_705_000 as Weight).saturating_mul(b as Weight))318 .saturating_add(Weight::from_ref_time(15_705_000).saturating_mul(b as u64))319 .saturating_add(RocksDbWeight::get().reads(1 as Weight))319 .saturating_add(RocksDbWeight::get().reads(1 as u64))320 .saturating_add(RocksDbWeight::get().writes(1 as Weight))320 .saturating_add(RocksDbWeight::get().writes(1 as u64))321 }321 }322 // Storage: Common CollectionPropertyPermissions (r:1 w:0)322 // Storage: Common CollectionPropertyPermissions (r:1 w:0)323 // Storage: Nonfungible TokenProperties (r:1 w:1)323 // Storage: Nonfungible TokenProperties (r:1 w:1)324 fn set_token_properties(b: u32, ) -> Weight {324 fn set_token_properties(b: u32, ) -> Weight {325 (0 as Weight)325 (Weight::from_ref_time(0))326 // Standard Error: 3_595_000326 // Standard Error: 3_595_000327 .saturating_add((590_344_000 as Weight).saturating_mul(b as Weight))327 .saturating_add(Weight::from_ref_time(590_344_000).saturating_mul(b as u64))328 .saturating_add(RocksDbWeight::get().reads(2 as Weight))328 .saturating_add(RocksDbWeight::get().reads(2 as u64))329 .saturating_add(RocksDbWeight::get().writes(1 as Weight))329 .saturating_add(RocksDbWeight::get().writes(1 as u64))330 }330 }331 // Storage: Common CollectionPropertyPermissions (r:1 w:0)331 // Storage: Common CollectionPropertyPermissions (r:1 w:0)332 // Storage: Nonfungible TokenProperties (r:1 w:1)332 // Storage: Nonfungible TokenProperties (r:1 w:1)333 fn delete_token_properties(b: u32, ) -> Weight {333 fn delete_token_properties(b: u32, ) -> Weight {334 (0 as Weight)334 (Weight::from_ref_time(0))335 // Standard Error: 3_664_000335 // Standard Error: 3_664_000336 .saturating_add((605_836_000 as Weight).saturating_mul(b as Weight))336 .saturating_add(Weight::from_ref_time(605_836_000).saturating_mul(b as u64))337 .saturating_add(RocksDbWeight::get().reads(2 as Weight))337 .saturating_add(RocksDbWeight::get().reads(2 as u64))338 .saturating_add(RocksDbWeight::get().writes(1 as Weight))338 .saturating_add(RocksDbWeight::get().writes(1 as u64))339 }339 }340 // Storage: Nonfungible TokenData (r:1 w:0)340 // Storage: Nonfungible TokenData (r:1 w:0)341 fn token_owner() -> Weight {341 fn token_owner() -> Weight {342 (4_366_000 as Weight)342 Weight::from_ref_time(4_366_000)343 .saturating_add(RocksDbWeight::get().reads(1 as Weight))343 .saturating_add(RocksDbWeight::get().reads(1 as u64))344 }344 }345}345}346346pallets/proxy-rmrk-core/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }21pallet-structure = { default-features = false, path = "../../pallets/structure" }21pallet-structure = { default-features = false, path = "../../pallets/structure" }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22up-data-structs = { default-features = false, path = '../../primitives/data-structs' }23pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }23pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }25rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }25rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }26scale-info = { version = "2.0.1", default-features = false, features = [26scale-info = { version = "2.0.1", default-features = false, features = [27 "derive",27 "derive",pallets/proxy-rmrk-core/src/lib.rsdiffbeforeafterboth1448 data: CreateCollectionData<T::AccountId>,1448 data: CreateCollectionData<T::AccountId>,1449 properties: impl Iterator<Item = Property>,1449 properties: impl Iterator<Item = Property>,1450 ) -> Result<CollectionId, DispatchError> {1450 ) -> Result<CollectionId, DispatchError> {1451 let collection_id = <PalletNft<T>>::init_collection(sender, data, true);1451 let collection_id = <PalletNft<T>>::init_collection(sender.clone(), sender, data, true);145214521453 if let Err(DispatchError::Arithmetic(_)) = &collection_id {1453 if let Err(DispatchError::Arithmetic(_)) = &collection_id {1454 return Err(<Error<T>>::NoAvailableCollectionId.into());1454 return Err(<Error<T>>::NoAvailableCollectionId.into());pallets/proxy-rmrk-core/src/weights.rsdiffbeforeafterboth64 // Storage: Common CollectionById (r:0 w:1)64 // Storage: Common CollectionById (r:0 w:1)65 // Storage: RmrkCore UniqueCollectionId (r:0 w:1)65 // Storage: RmrkCore UniqueCollectionId (r:0 w:1)66 fn create_collection() -> Weight {66 fn create_collection() -> Weight {67 (49_754_000 as Weight)67 Weight::from_ref_time(49_754_000)68 .saturating_add(T::DbWeight::get().reads(5 as Weight))68 .saturating_add(T::DbWeight::get().reads(5 as u64))69 .saturating_add(T::DbWeight::get().writes(8 as Weight))69 .saturating_add(T::DbWeight::get().writes(8 as u64))70 }70 }71 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)71 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)72 // Storage: Common CollectionProperties (r:1 w:1)72 // Storage: Common CollectionProperties (r:1 w:1)77 // Storage: Nonfungible TokensBurnt (r:0 w:1)77 // Storage: Nonfungible TokensBurnt (r:0 w:1)78 // Storage: Common AdminAmount (r:0 w:1)78 // Storage: Common AdminAmount (r:0 w:1)79 fn destroy_collection() -> Weight {79 fn destroy_collection() -> Weight {80 (48_588_000 as Weight)80 Weight::from_ref_time(48_588_000)81 .saturating_add(T::DbWeight::get().reads(5 as Weight))81 .saturating_add(T::DbWeight::get().reads(5 as u64))82 .saturating_add(T::DbWeight::get().writes(6 as Weight))82 .saturating_add(T::DbWeight::get().writes(6 as u64))83 }83 }84 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)84 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)85 // Storage: Common CollectionById (r:1 w:1)85 // Storage: Common CollectionById (r:1 w:1)86 // Storage: Common CollectionProperties (r:1 w:0)86 // Storage: Common CollectionProperties (r:1 w:0)87 fn change_collection_issuer() -> Weight {87 fn change_collection_issuer() -> Weight {88 (25_054_000 as Weight)88 Weight::from_ref_time(25_054_000)89 .saturating_add(T::DbWeight::get().reads(3 as Weight))89 .saturating_add(T::DbWeight::get().reads(3 as u64))90 .saturating_add(T::DbWeight::get().writes(1 as Weight))90 .saturating_add(T::DbWeight::get().writes(1 as u64))91 }91 }92 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)92 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)93 // Storage: Common CollectionProperties (r:1 w:0)93 // Storage: Common CollectionProperties (r:1 w:0)94 // Storage: Common CollectionById (r:1 w:1)94 // Storage: Common CollectionById (r:1 w:1)95 // Storage: Nonfungible TokensMinted (r:1 w:0)95 // Storage: Nonfungible TokensMinted (r:1 w:0)96 // Storage: Nonfungible TokensBurnt (r:1 w:0)96 // Storage: Nonfungible TokensBurnt (r:1 w:0)97 fn lock_collection() -> Weight {97 fn lock_collection() -> Weight {98 (26_483_000 as Weight)98 Weight::from_ref_time(26_483_000)99 .saturating_add(T::DbWeight::get().reads(5 as Weight))99 .saturating_add(T::DbWeight::get().reads(5 as u64))100 .saturating_add(T::DbWeight::get().writes(1 as Weight))100 .saturating_add(T::DbWeight::get().writes(1 as u64))101 }101 }102 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)102 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)103 // Storage: Common CollectionProperties (r:1 w:0)103 // Storage: Common CollectionProperties (r:1 w:0)109 // Storage: Nonfungible Owned (r:0 w:1)109 // Storage: Nonfungible Owned (r:0 w:1)110 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)110 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)111 fn mint_nft(b: u32, ) -> Weight {111 fn mint_nft(b: u32, ) -> Weight {112 (62_419_000 as Weight)112 Weight::from_ref_time(62_419_000)113 // Standard Error: 7_000113 // Standard Error: 7_000114 .saturating_add((12_325_000 as Weight).saturating_mul(b as Weight))114 .saturating_add(Weight::from_ref_time(12_325_000).saturating_mul(b as u64))115 .saturating_add(T::DbWeight::get().reads(6 as Weight))115 .saturating_add(T::DbWeight::get().reads(6 as u64))116 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))116 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))117 .saturating_add(T::DbWeight::get().writes(5 as Weight))117 .saturating_add(T::DbWeight::get().writes(5 as u64))118 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))118 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(b as u64)))119 }119 }120 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)120 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)121 // Storage: Common CollectionProperties (r:1 w:0)121 // Storage: Common CollectionProperties (r:1 w:0)128 // Storage: Nonfungible Owned (r:0 w:1)128 // Storage: Nonfungible Owned (r:0 w:1)129 // Storage: Nonfungible TokenProperties (r:0 w:1)129 // Storage: Nonfungible TokenProperties (r:0 w:1)130 fn burn_nft(b: u32, ) -> Weight {130 fn burn_nft(b: u32, ) -> Weight {131 (0 as Weight)131 (Weight::from_ref_time(0))132 // Standard Error: 1_488_000132 // Standard Error: 1_488_000133 .saturating_add((298_367_000 as Weight).saturating_mul(b as Weight))133 .saturating_add(Weight::from_ref_time(298_367_000).saturating_mul(b as u64))134 .saturating_add(T::DbWeight::get().reads(9 as Weight))134 .saturating_add(T::DbWeight::get().reads(9 as u64))135 .saturating_add(T::DbWeight::get().reads((4 as Weight).saturating_mul(b as Weight)))135 .saturating_add(T::DbWeight::get().reads((4 as u64).saturating_mul(b as u64)))136 .saturating_add(T::DbWeight::get().writes(6 as Weight))136 .saturating_add(T::DbWeight::get().writes(6 as u64))137 .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))137 .saturating_add(T::DbWeight::get().writes((4 as u64).saturating_mul(b as u64)))138 }138 }139 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)139 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)140 // Storage: Common CollectionProperties (r:1 w:0)140 // Storage: Common CollectionProperties (r:1 w:0)146 // Storage: Nonfungible TokenChildren (r:0 w:1)146 // Storage: Nonfungible TokenChildren (r:0 w:1)147 // Storage: Nonfungible Owned (r:0 w:2)147 // Storage: Nonfungible Owned (r:0 w:2)148 fn send() -> Weight {148 fn send() -> Weight {149 (81_942_000 as Weight)149 Weight::from_ref_time(81_942_000)150 .saturating_add(T::DbWeight::get().reads(12 as Weight))150 .saturating_add(T::DbWeight::get().reads(12 as u64))151 .saturating_add(T::DbWeight::get().writes(6 as Weight))151 .saturating_add(T::DbWeight::get().writes(6 as u64))152 }152 }153 // Storage: RmrkCore UniqueCollectionId (r:2 w:0)153 // Storage: RmrkCore UniqueCollectionId (r:2 w:0)154 // Storage: Common CollectionProperties (r:1 w:0)154 // Storage: Common CollectionProperties (r:1 w:0)161 // Storage: Nonfungible TokenChildren (r:0 w:1)161 // Storage: Nonfungible TokenChildren (r:0 w:1)162 // Storage: Nonfungible Owned (r:0 w:2)162 // Storage: Nonfungible Owned (r:0 w:2)163 fn accept_nft() -> Weight {163 fn accept_nft() -> Weight {164 (97_925_000 as Weight)164 Weight::from_ref_time(97_925_000)165 .saturating_add(T::DbWeight::get().reads(16 as Weight))165 .saturating_add(T::DbWeight::get().reads(16 as u64))166 .saturating_add(T::DbWeight::get().writes(8 as Weight))166 .saturating_add(T::DbWeight::get().writes(8 as u64))167 }167 }168 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)168 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)169 // Storage: Common CollectionProperties (r:1 w:0)169 // Storage: Common CollectionProperties (r:1 w:0)177 // Storage: Nonfungible Allowance (r:5 w:0)177 // Storage: Nonfungible Allowance (r:5 w:0)178 // Storage: Nonfungible Owned (r:0 w:5)178 // Storage: Nonfungible Owned (r:0 w:5)179 fn reject_nft() -> Weight {179 fn reject_nft() -> Weight {180 (277_794_000 as Weight)180 Weight::from_ref_time(277_794_000)181 .saturating_add(T::DbWeight::get().reads(30 as Weight))181 .saturating_add(T::DbWeight::get().reads(30 as u64))182 .saturating_add(T::DbWeight::get().writes(26 as Weight))182 .saturating_add(T::DbWeight::get().writes(26 as u64))183 }183 }184 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)184 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)185 // Storage: Common CollectionProperties (r:1 w:0)185 // Storage: Common CollectionProperties (r:1 w:0)186 // Storage: Common CollectionById (r:1 w:0)186 // Storage: Common CollectionById (r:1 w:0)187 // Storage: Nonfungible TokenProperties (r:1 w:1)187 // Storage: Nonfungible TokenProperties (r:1 w:1)188 // Storage: Nonfungible TokenData (r:5 w:0)188 // Storage: Nonfungible TokenData (r:5 w:0)189 fn set_property() -> Weight {189 fn set_property() -> Weight {190 (54_657_000 as Weight)190 Weight::from_ref_time(54_657_000)191 .saturating_add(T::DbWeight::get().reads(9 as Weight))191 .saturating_add(T::DbWeight::get().reads(9 as u64))192 .saturating_add(T::DbWeight::get().writes(1 as Weight))192 .saturating_add(T::DbWeight::get().writes(1 as u64))193 }193 }194 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)194 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)195 // Storage: Common CollectionProperties (r:1 w:0)195 // Storage: Common CollectionProperties (r:1 w:0)196 // Storage: Common CollectionById (r:1 w:0)196 // Storage: Common CollectionById (r:1 w:0)197 // Storage: Nonfungible TokenProperties (r:1 w:1)197 // Storage: Nonfungible TokenProperties (r:1 w:1)198 // Storage: Nonfungible TokenData (r:5 w:0)198 // Storage: Nonfungible TokenData (r:5 w:0)199 fn set_priority() -> Weight {199 fn set_priority() -> Weight {200 (55_056_000 as Weight)200 Weight::from_ref_time(55_056_000)201 .saturating_add(T::DbWeight::get().reads(9 as Weight))201 .saturating_add(T::DbWeight::get().reads(9 as u64))202 .saturating_add(T::DbWeight::get().writes(1 as Weight))202 .saturating_add(T::DbWeight::get().writes(1 as u64))203 }203 }204 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)204 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)205 // Storage: Common CollectionProperties (r:1 w:0)205 // Storage: Common CollectionProperties (r:1 w:0)208 // Storage: Nonfungible TokenProperties (r:1 w:1)208 // Storage: Nonfungible TokenProperties (r:1 w:1)209 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)209 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)210 fn add_basic_resource() -> Weight {210 fn add_basic_resource() -> Weight {211 (61_673_000 as Weight)211 Weight::from_ref_time(61_673_000)212 .saturating_add(T::DbWeight::get().reads(10 as Weight))212 .saturating_add(T::DbWeight::get().reads(10 as u64))213 .saturating_add(T::DbWeight::get().writes(2 as Weight))213 .saturating_add(T::DbWeight::get().writes(2 as u64))214 }214 }215 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)215 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)216 // Storage: Common CollectionProperties (r:1 w:0)216 // Storage: Common CollectionProperties (r:1 w:0)219 // Storage: Nonfungible TokenProperties (r:1 w:1)219 // Storage: Nonfungible TokenProperties (r:1 w:1)220 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)220 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)221 fn add_composable_resource() -> Weight {221 fn add_composable_resource() -> Weight {222 (67_125_000 as Weight)222 Weight::from_ref_time(67_125_000)223 .saturating_add(T::DbWeight::get().reads(11 as Weight))223 .saturating_add(T::DbWeight::get().reads(11 as u64))224 .saturating_add(T::DbWeight::get().writes(3 as Weight))224 .saturating_add(T::DbWeight::get().writes(3 as u64))225 }225 }226 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)226 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)227 // Storage: Common CollectionProperties (r:1 w:0)227 // Storage: Common CollectionProperties (r:1 w:0)230 // Storage: Nonfungible TokenProperties (r:1 w:1)230 // Storage: Nonfungible TokenProperties (r:1 w:1)231 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)231 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)232 fn add_slot_resource() -> Weight {232 fn add_slot_resource() -> Weight {233 (69_058_000 as Weight)233 Weight::from_ref_time(69_058_000)234 .saturating_add(T::DbWeight::get().reads(10 as Weight))234 .saturating_add(T::DbWeight::get().reads(10 as u64))235 .saturating_add(T::DbWeight::get().writes(2 as Weight))235 .saturating_add(T::DbWeight::get().writes(2 as u64))236 }236 }237 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)237 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)238 // Storage: Common CollectionProperties (r:1 w:0)238 // Storage: Common CollectionProperties (r:1 w:0)239 // Storage: Common CollectionById (r:1 w:0)239 // Storage: Common CollectionById (r:1 w:0)240 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)240 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)241 // Storage: Nonfungible TokenData (r:5 w:0)241 // Storage: Nonfungible TokenData (r:5 w:0)242 fn remove_resource() -> Weight {242 fn remove_resource() -> Weight {243 (53_427_000 as Weight)243 Weight::from_ref_time(53_427_000)244 .saturating_add(T::DbWeight::get().reads(9 as Weight))244 .saturating_add(T::DbWeight::get().reads(9 as u64))245 .saturating_add(T::DbWeight::get().writes(1 as Weight))245 .saturating_add(T::DbWeight::get().writes(1 as u64))246 }246 }247 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)247 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)248 // Storage: Common CollectionProperties (r:1 w:0)248 // Storage: Common CollectionProperties (r:1 w:0)249 // Storage: Common CollectionById (r:1 w:0)249 // Storage: Common CollectionById (r:1 w:0)250 // Storage: Nonfungible TokenData (r:5 w:0)250 // Storage: Nonfungible TokenData (r:5 w:0)251 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)251 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)252 fn accept_resource() -> Weight {252 fn accept_resource() -> Weight {253 (50_623_000 as Weight)253 Weight::from_ref_time(50_623_000)254 .saturating_add(T::DbWeight::get().reads(9 as Weight))254 .saturating_add(T::DbWeight::get().reads(9 as u64))255 .saturating_add(T::DbWeight::get().writes(1 as Weight))255 .saturating_add(T::DbWeight::get().writes(1 as u64))256 }256 }257 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)257 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)258 // Storage: Common CollectionProperties (r:1 w:0)258 // Storage: Common CollectionProperties (r:1 w:0)259 // Storage: Common CollectionById (r:1 w:0)259 // Storage: Common CollectionById (r:1 w:0)260 // Storage: Nonfungible TokenData (r:5 w:0)260 // Storage: Nonfungible TokenData (r:5 w:0)261 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)261 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)262 fn accept_resource_removal() -> Weight {262 fn accept_resource_removal() -> Weight {263 (50_917_000 as Weight)263 Weight::from_ref_time(50_917_000)264 .saturating_add(T::DbWeight::get().reads(9 as Weight))264 .saturating_add(T::DbWeight::get().reads(9 as u64))265 .saturating_add(T::DbWeight::get().writes(1 as Weight))265 .saturating_add(T::DbWeight::get().writes(1 as u64))266 }266 }267}267}268268277 // Storage: Common CollectionById (r:0 w:1)277 // Storage: Common CollectionById (r:0 w:1)278 // Storage: RmrkCore UniqueCollectionId (r:0 w:1)278 // Storage: RmrkCore UniqueCollectionId (r:0 w:1)279 fn create_collection() -> Weight {279 fn create_collection() -> Weight {280 (49_754_000 as Weight)280 Weight::from_ref_time(49_754_000)281 .saturating_add(RocksDbWeight::get().reads(5 as Weight))281 .saturating_add(RocksDbWeight::get().reads(5 as u64))282 .saturating_add(RocksDbWeight::get().writes(8 as Weight))282 .saturating_add(RocksDbWeight::get().writes(8 as u64))283 }283 }284 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)284 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)285 // Storage: Common CollectionProperties (r:1 w:1)285 // Storage: Common CollectionProperties (r:1 w:1)290 // Storage: Nonfungible TokensBurnt (r:0 w:1)290 // Storage: Nonfungible TokensBurnt (r:0 w:1)291 // Storage: Common AdminAmount (r:0 w:1)291 // Storage: Common AdminAmount (r:0 w:1)292 fn destroy_collection() -> Weight {292 fn destroy_collection() -> Weight {293 (48_588_000 as Weight)293 Weight::from_ref_time(48_588_000)294 .saturating_add(RocksDbWeight::get().reads(5 as Weight))294 .saturating_add(RocksDbWeight::get().reads(5 as u64))295 .saturating_add(RocksDbWeight::get().writes(6 as Weight))295 .saturating_add(RocksDbWeight::get().writes(6 as u64))296 }296 }297 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)297 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)298 // Storage: Common CollectionById (r:1 w:1)298 // Storage: Common CollectionById (r:1 w:1)299 // Storage: Common CollectionProperties (r:1 w:0)299 // Storage: Common CollectionProperties (r:1 w:0)300 fn change_collection_issuer() -> Weight {300 fn change_collection_issuer() -> Weight {301 (25_054_000 as Weight)301 Weight::from_ref_time(25_054_000)302 .saturating_add(RocksDbWeight::get().reads(3 as Weight))302 .saturating_add(RocksDbWeight::get().reads(3 as u64))303 .saturating_add(RocksDbWeight::get().writes(1 as Weight))303 .saturating_add(RocksDbWeight::get().writes(1 as u64))304 }304 }305 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)305 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)306 // Storage: Common CollectionProperties (r:1 w:0)306 // Storage: Common CollectionProperties (r:1 w:0)307 // Storage: Common CollectionById (r:1 w:1)307 // Storage: Common CollectionById (r:1 w:1)308 // Storage: Nonfungible TokensMinted (r:1 w:0)308 // Storage: Nonfungible TokensMinted (r:1 w:0)309 // Storage: Nonfungible TokensBurnt (r:1 w:0)309 // Storage: Nonfungible TokensBurnt (r:1 w:0)310 fn lock_collection() -> Weight {310 fn lock_collection() -> Weight {311 (26_483_000 as Weight)311 Weight::from_ref_time(26_483_000)312 .saturating_add(RocksDbWeight::get().reads(5 as Weight))312 .saturating_add(RocksDbWeight::get().reads(5 as u64))313 .saturating_add(RocksDbWeight::get().writes(1 as Weight))313 .saturating_add(RocksDbWeight::get().writes(1 as u64))314 }314 }315 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)315 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)316 // Storage: Common CollectionProperties (r:1 w:0)316 // Storage: Common CollectionProperties (r:1 w:0)322 // Storage: Nonfungible Owned (r:0 w:1)322 // Storage: Nonfungible Owned (r:0 w:1)323 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)323 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)324 fn mint_nft(b: u32, ) -> Weight {324 fn mint_nft(b: u32, ) -> Weight {325 (62_419_000 as Weight)325 Weight::from_ref_time(62_419_000)326 // Standard Error: 7_000326 // Standard Error: 7_000327 .saturating_add((12_325_000 as Weight).saturating_mul(b as Weight))327 .saturating_add(Weight::from_ref_time(12_325_000).saturating_mul(b as u64))328 .saturating_add(RocksDbWeight::get().reads(6 as Weight))328 .saturating_add(RocksDbWeight::get().reads(6 as u64))329 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))329 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))330 .saturating_add(RocksDbWeight::get().writes(5 as Weight))330 .saturating_add(RocksDbWeight::get().writes(5 as u64))331 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(b as Weight)))331 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(b as u64)))332 }332 }333 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)333 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)334 // Storage: Common CollectionProperties (r:1 w:0)334 // Storage: Common CollectionProperties (r:1 w:0)341 // Storage: Nonfungible Owned (r:0 w:1)341 // Storage: Nonfungible Owned (r:0 w:1)342 // Storage: Nonfungible TokenProperties (r:0 w:1)342 // Storage: Nonfungible TokenProperties (r:0 w:1)343 fn burn_nft(b: u32, ) -> Weight {343 fn burn_nft(b: u32, ) -> Weight {344 (0 as Weight)344 (Weight::from_ref_time(0))345 // Standard Error: 1_488_000345 // Standard Error: 1_488_000346 .saturating_add((298_367_000 as Weight).saturating_mul(b as Weight))346 .saturating_add(Weight::from_ref_time(298_367_000).saturating_mul(b as u64))347 .saturating_add(RocksDbWeight::get().reads(9 as Weight))347 .saturating_add(RocksDbWeight::get().reads(9 as u64))348 .saturating_add(RocksDbWeight::get().reads((4 as Weight).saturating_mul(b as Weight)))348 .saturating_add(RocksDbWeight::get().reads((4 as u64).saturating_mul(b as u64)))349 .saturating_add(RocksDbWeight::get().writes(6 as Weight))349 .saturating_add(RocksDbWeight::get().writes(6 as u64))350 .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))350 .saturating_add(RocksDbWeight::get().writes((4 as u64).saturating_mul(b as u64)))351 }351 }352 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)352 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)353 // Storage: Common CollectionProperties (r:1 w:0)353 // Storage: Common CollectionProperties (r:1 w:0)359 // Storage: Nonfungible TokenChildren (r:0 w:1)359 // Storage: Nonfungible TokenChildren (r:0 w:1)360 // Storage: Nonfungible Owned (r:0 w:2)360 // Storage: Nonfungible Owned (r:0 w:2)361 fn send() -> Weight {361 fn send() -> Weight {362 (81_942_000 as Weight)362 Weight::from_ref_time(81_942_000)363 .saturating_add(RocksDbWeight::get().reads(12 as Weight))363 .saturating_add(RocksDbWeight::get().reads(12 as u64))364 .saturating_add(RocksDbWeight::get().writes(6 as Weight))364 .saturating_add(RocksDbWeight::get().writes(6 as u64))365 }365 }366 // Storage: RmrkCore UniqueCollectionId (r:2 w:0)366 // Storage: RmrkCore UniqueCollectionId (r:2 w:0)367 // Storage: Common CollectionProperties (r:1 w:0)367 // Storage: Common CollectionProperties (r:1 w:0)374 // Storage: Nonfungible TokenChildren (r:0 w:1)374 // Storage: Nonfungible TokenChildren (r:0 w:1)375 // Storage: Nonfungible Owned (r:0 w:2)375 // Storage: Nonfungible Owned (r:0 w:2)376 fn accept_nft() -> Weight {376 fn accept_nft() -> Weight {377 (97_925_000 as Weight)377 Weight::from_ref_time(97_925_000)378 .saturating_add(RocksDbWeight::get().reads(16 as Weight))378 .saturating_add(RocksDbWeight::get().reads(16 as u64))379 .saturating_add(RocksDbWeight::get().writes(8 as Weight))379 .saturating_add(RocksDbWeight::get().writes(8 as u64))380 }380 }381 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)381 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)382 // Storage: Common CollectionProperties (r:1 w:0)382 // Storage: Common CollectionProperties (r:1 w:0)390 // Storage: Nonfungible Allowance (r:5 w:0)390 // Storage: Nonfungible Allowance (r:5 w:0)391 // Storage: Nonfungible Owned (r:0 w:5)391 // Storage: Nonfungible Owned (r:0 w:5)392 fn reject_nft() -> Weight {392 fn reject_nft() -> Weight {393 (277_794_000 as Weight)393 Weight::from_ref_time(277_794_000)394 .saturating_add(RocksDbWeight::get().reads(30 as Weight))394 .saturating_add(RocksDbWeight::get().reads(30 as u64))395 .saturating_add(RocksDbWeight::get().writes(26 as Weight))395 .saturating_add(RocksDbWeight::get().writes(26 as u64))396 }396 }397 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)397 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)398 // Storage: Common CollectionProperties (r:1 w:0)398 // Storage: Common CollectionProperties (r:1 w:0)399 // Storage: Common CollectionById (r:1 w:0)399 // Storage: Common CollectionById (r:1 w:0)400 // Storage: Nonfungible TokenProperties (r:1 w:1)400 // Storage: Nonfungible TokenProperties (r:1 w:1)401 // Storage: Nonfungible TokenData (r:5 w:0)401 // Storage: Nonfungible TokenData (r:5 w:0)402 fn set_property() -> Weight {402 fn set_property() -> Weight {403 (54_657_000 as Weight)403 Weight::from_ref_time(54_657_000)404 .saturating_add(RocksDbWeight::get().reads(9 as Weight))404 .saturating_add(RocksDbWeight::get().reads(9 as u64))405 .saturating_add(RocksDbWeight::get().writes(1 as Weight))405 .saturating_add(RocksDbWeight::get().writes(1 as u64))406 }406 }407 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)407 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)408 // Storage: Common CollectionProperties (r:1 w:0)408 // Storage: Common CollectionProperties (r:1 w:0)409 // Storage: Common CollectionById (r:1 w:0)409 // Storage: Common CollectionById (r:1 w:0)410 // Storage: Nonfungible TokenProperties (r:1 w:1)410 // Storage: Nonfungible TokenProperties (r:1 w:1)411 // Storage: Nonfungible TokenData (r:5 w:0)411 // Storage: Nonfungible TokenData (r:5 w:0)412 fn set_priority() -> Weight {412 fn set_priority() -> Weight {413 (55_056_000 as Weight)413 Weight::from_ref_time(55_056_000)414 .saturating_add(RocksDbWeight::get().reads(9 as Weight))414 .saturating_add(RocksDbWeight::get().reads(9 as u64))415 .saturating_add(RocksDbWeight::get().writes(1 as Weight))415 .saturating_add(RocksDbWeight::get().writes(1 as u64))416 }416 }417 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)417 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)418 // Storage: Common CollectionProperties (r:1 w:0)418 // Storage: Common CollectionProperties (r:1 w:0)421 // Storage: Nonfungible TokenProperties (r:1 w:1)421 // Storage: Nonfungible TokenProperties (r:1 w:1)422 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)422 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)423 fn add_basic_resource() -> Weight {423 fn add_basic_resource() -> Weight {424 (61_673_000 as Weight)424 Weight::from_ref_time(61_673_000)425 .saturating_add(RocksDbWeight::get().reads(10 as Weight))425 .saturating_add(RocksDbWeight::get().reads(10 as u64))426 .saturating_add(RocksDbWeight::get().writes(2 as Weight))426 .saturating_add(RocksDbWeight::get().writes(2 as u64))427 }427 }428 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)428 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)429 // Storage: Common CollectionProperties (r:1 w:0)429 // Storage: Common CollectionProperties (r:1 w:0)432 // Storage: Nonfungible TokenProperties (r:1 w:1)432 // Storage: Nonfungible TokenProperties (r:1 w:1)433 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)433 // Storage: Nonfungible TokenAuxProperties (r:2 w:2)434 fn add_composable_resource() -> Weight {434 fn add_composable_resource() -> Weight {435 (67_125_000 as Weight)435 Weight::from_ref_time(67_125_000)436 .saturating_add(RocksDbWeight::get().reads(11 as Weight))436 .saturating_add(RocksDbWeight::get().reads(11 as u64))437 .saturating_add(RocksDbWeight::get().writes(3 as Weight))437 .saturating_add(RocksDbWeight::get().writes(3 as u64))438 }438 }439 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)439 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)440 // Storage: Common CollectionProperties (r:1 w:0)440 // Storage: Common CollectionProperties (r:1 w:0)443 // Storage: Nonfungible TokenProperties (r:1 w:1)443 // Storage: Nonfungible TokenProperties (r:1 w:1)444 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)444 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)445 fn add_slot_resource() -> Weight {445 fn add_slot_resource() -> Weight {446 (69_058_000 as Weight)446 Weight::from_ref_time(69_058_000)447 .saturating_add(RocksDbWeight::get().reads(10 as Weight))447 .saturating_add(RocksDbWeight::get().reads(10 as u64))448 .saturating_add(RocksDbWeight::get().writes(2 as Weight))448 .saturating_add(RocksDbWeight::get().writes(2 as u64))449 }449 }450 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)450 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)451 // Storage: Common CollectionProperties (r:1 w:0)451 // Storage: Common CollectionProperties (r:1 w:0)452 // Storage: Common CollectionById (r:1 w:0)452 // Storage: Common CollectionById (r:1 w:0)453 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)453 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)454 // Storage: Nonfungible TokenData (r:5 w:0)454 // Storage: Nonfungible TokenData (r:5 w:0)455 fn remove_resource() -> Weight {455 fn remove_resource() -> Weight {456 (53_427_000 as Weight)456 Weight::from_ref_time(53_427_000)457 .saturating_add(RocksDbWeight::get().reads(9 as Weight))457 .saturating_add(RocksDbWeight::get().reads(9 as u64))458 .saturating_add(RocksDbWeight::get().writes(1 as Weight))458 .saturating_add(RocksDbWeight::get().writes(1 as u64))459 }459 }460 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)460 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)461 // Storage: Common CollectionProperties (r:1 w:0)461 // Storage: Common CollectionProperties (r:1 w:0)462 // Storage: Common CollectionById (r:1 w:0)462 // Storage: Common CollectionById (r:1 w:0)463 // Storage: Nonfungible TokenData (r:5 w:0)463 // Storage: Nonfungible TokenData (r:5 w:0)464 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)464 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)465 fn accept_resource() -> Weight {465 fn accept_resource() -> Weight {466 (50_623_000 as Weight)466 Weight::from_ref_time(50_623_000)467 .saturating_add(RocksDbWeight::get().reads(9 as Weight))467 .saturating_add(RocksDbWeight::get().reads(9 as u64))468 .saturating_add(RocksDbWeight::get().writes(1 as Weight))468 .saturating_add(RocksDbWeight::get().writes(1 as u64))469 }469 }470 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)470 // Storage: RmrkCore UniqueCollectionId (r:1 w:0)471 // Storage: Common CollectionProperties (r:1 w:0)471 // Storage: Common CollectionProperties (r:1 w:0)472 // Storage: Common CollectionById (r:1 w:0)472 // Storage: Common CollectionById (r:1 w:0)473 // Storage: Nonfungible TokenData (r:5 w:0)473 // Storage: Nonfungible TokenData (r:5 w:0)474 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)474 // Storage: Nonfungible TokenAuxProperties (r:1 w:1)475 fn accept_resource_removal() -> Weight {475 fn accept_resource_removal() -> Weight {476 (50_917_000 as Weight)476 Weight::from_ref_time(50_917_000)477 .saturating_add(RocksDbWeight::get().reads(9 as Weight))477 .saturating_add(RocksDbWeight::get().reads(9 as u64))478 .saturating_add(RocksDbWeight::get().writes(1 as Weight))478 .saturating_add(RocksDbWeight::get().writes(1 as u64))479 }479 }480}480}481481pallets/proxy-rmrk-equip/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19pallet-common = { default-features = false, path = '../common' }19pallet-common = { default-features = false, path = '../common' }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }20pallet-nonfungible = { default-features = false, path = "../../pallets/nonfungible" }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }21up-data-structs = { default-features = false, path = '../../primitives/data-structs' }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }22pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }23frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }23frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }24rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }24rmrk-traits = { default-features = false, path = "../../primitives/rmrk-traits" }25scale-info = { version = "2.0.1", default-features = false, features = [25scale-info = { version = "2.0.1", default-features = false, features = [26 "derive",26 "derive",pallets/proxy-rmrk-equip/src/lib.rsdiffbeforeafterboth252252253 let collection_id_res =253 let collection_id_res = <PalletNft<T>>::init_collection(254 <PalletNft<T>>::init_collection(cross_sender.clone(), data, true);254 cross_sender.clone(),255 cross_sender.clone(),256 data,257 true,258 );255259256 if let Err(DispatchError::Arithmetic(_)) = &collection_id_res {260 if let Err(DispatchError::Arithmetic(_)) = &collection_id_res {pallets/proxy-rmrk-equip/src/weights.rsdiffbeforeafterboth54 // Storage: Nonfungible TokenData (r:0 w:1)54 // Storage: Nonfungible TokenData (r:0 w:1)55 // Storage: Nonfungible Owned (r:0 w:1)55 // Storage: Nonfungible Owned (r:0 w:1)56 fn create_base(b: u32, ) -> Weight {56 fn create_base(b: u32, ) -> Weight {57 (58_417_000 as Weight)57 Weight::from_ref_time(58_417_000)58 // Standard Error: 27_00058 // Standard Error: 27_00059 .saturating_add((20_439_000 as Weight).saturating_mul(b as Weight))59 .saturating_add(Weight::from_ref_time(20_439_000).saturating_mul(b as u64))60 .saturating_add(T::DbWeight::get().reads(6 as Weight))60 .saturating_add(T::DbWeight::get().reads(6 as u64))61 .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(b as Weight)))61 .saturating_add(T::DbWeight::get().reads((2 as u64).saturating_mul(b as u64)))62 .saturating_add(T::DbWeight::get().writes(8 as Weight))62 .saturating_add(T::DbWeight::get().writes(8 as u64))63 .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))63 .saturating_add(T::DbWeight::get().writes((4 as u64).saturating_mul(b as u64)))64 }64 }65 // Storage: Common CollectionProperties (r:1 w:0)65 // Storage: Common CollectionProperties (r:1 w:0)66 // Storage: Common CollectionById (r:1 w:0)66 // Storage: Common CollectionById (r:1 w:0)71 // Storage: Nonfungible TokenData (r:0 w:1)71 // Storage: Nonfungible TokenData (r:0 w:1)72 // Storage: Nonfungible Owned (r:0 w:1)72 // Storage: Nonfungible Owned (r:0 w:1)73 fn theme_add(b: u32, ) -> Weight {73 fn theme_add(b: u32, ) -> Weight {74 (46_005_000 as Weight)74 Weight::from_ref_time(46_005_000)75 // Standard Error: 42_00075 // Standard Error: 42_00076 .saturating_add((2_922_000 as Weight).saturating_mul(b as Weight))76 .saturating_add(Weight::from_ref_time(2_922_000).saturating_mul(b as u64))77 .saturating_add(T::DbWeight::get().reads(6 as Weight))77 .saturating_add(T::DbWeight::get().reads(6 as u64))78 .saturating_add(T::DbWeight::get().writes(5 as Weight))78 .saturating_add(T::DbWeight::get().writes(5 as u64))79 }79 }80 // Storage: Common CollectionProperties (r:1 w:0)80 // Storage: Common CollectionProperties (r:1 w:0)81 // Storage: Common CollectionById (r:1 w:0)81 // Storage: Common CollectionById (r:1 w:0)82 // Storage: RmrkEquip InernalPartId (r:1 w:0)82 // Storage: RmrkEquip InernalPartId (r:1 w:0)83 // Storage: Nonfungible TokenProperties (r:1 w:1)83 // Storage: Nonfungible TokenProperties (r:1 w:1)84 fn equippable() -> Weight {84 fn equippable() -> Weight {85 (32_526_000 as Weight)85 Weight::from_ref_time(32_526_000)86 .saturating_add(T::DbWeight::get().reads(4 as Weight))86 .saturating_add(T::DbWeight::get().reads(4 as u64))87 .saturating_add(T::DbWeight::get().writes(1 as Weight))87 .saturating_add(T::DbWeight::get().writes(1 as u64))88 }88 }89}89}9090103 // Storage: Nonfungible TokenData (r:0 w:1)103 // Storage: Nonfungible TokenData (r:0 w:1)104 // Storage: Nonfungible Owned (r:0 w:1)104 // Storage: Nonfungible Owned (r:0 w:1)105 fn create_base(b: u32, ) -> Weight {105 fn create_base(b: u32, ) -> Weight {106 (58_417_000 as Weight)106 Weight::from_ref_time(58_417_000)107 // Standard Error: 27_000107 // Standard Error: 27_000108 .saturating_add((20_439_000 as Weight).saturating_mul(b as Weight))108 .saturating_add(Weight::from_ref_time(20_439_000).saturating_mul(b as u64))109 .saturating_add(RocksDbWeight::get().reads(6 as Weight))109 .saturating_add(RocksDbWeight::get().reads(6 as u64))110 .saturating_add(RocksDbWeight::get().reads((2 as Weight).saturating_mul(b as Weight)))110 .saturating_add(RocksDbWeight::get().reads((2 as u64).saturating_mul(b as u64)))111 .saturating_add(RocksDbWeight::get().writes(8 as Weight))111 .saturating_add(RocksDbWeight::get().writes(8 as u64))112 .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))112 .saturating_add(RocksDbWeight::get().writes((4 as u64).saturating_mul(b as u64)))113 }113 }114 // Storage: Common CollectionProperties (r:1 w:0)114 // Storage: Common CollectionProperties (r:1 w:0)115 // Storage: Common CollectionById (r:1 w:0)115 // Storage: Common CollectionById (r:1 w:0)120 // Storage: Nonfungible TokenData (r:0 w:1)120 // Storage: Nonfungible TokenData (r:0 w:1)121 // Storage: Nonfungible Owned (r:0 w:1)121 // Storage: Nonfungible Owned (r:0 w:1)122 fn theme_add(b: u32, ) -> Weight {122 fn theme_add(b: u32, ) -> Weight {123 (46_005_000 as Weight)123 Weight::from_ref_time(46_005_000)124 // Standard Error: 42_000124 // Standard Error: 42_000125 .saturating_add((2_922_000 as Weight).saturating_mul(b as Weight))125 .saturating_add(Weight::from_ref_time(2_922_000).saturating_mul(b as u64))126 .saturating_add(RocksDbWeight::get().reads(6 as Weight))126 .saturating_add(RocksDbWeight::get().reads(6 as u64))127 .saturating_add(RocksDbWeight::get().writes(5 as Weight))127 .saturating_add(RocksDbWeight::get().writes(5 as u64))128 }128 }129 // Storage: Common CollectionProperties (r:1 w:0)129 // Storage: Common CollectionProperties (r:1 w:0)130 // Storage: Common CollectionById (r:1 w:0)130 // Storage: Common CollectionById (r:1 w:0)131 // Storage: RmrkEquip InernalPartId (r:1 w:0)131 // Storage: RmrkEquip InernalPartId (r:1 w:0)132 // Storage: Nonfungible TokenProperties (r:1 w:1)132 // Storage: Nonfungible TokenProperties (r:1 w:1)133 fn equippable() -> Weight {133 fn equippable() -> Weight {134 (32_526_000 as Weight)134 Weight::from_ref_time(32_526_000)135 .saturating_add(RocksDbWeight::get().reads(4 as Weight))135 .saturating_add(RocksDbWeight::get().reads(4 as u64))136 .saturating_add(RocksDbWeight::get().writes(1 as Weight))136 .saturating_add(RocksDbWeight::get().writes(1 as u64))137 }137 }138}138}139139pallets/refungible/Cargo.tomldiffbeforeafterboth11version = '3.1.2'11version = '3.1.2'121213[dependencies]13[dependencies]14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }20evm-coder = { default-features = false, path = '../../crates/evm-coder' }20evm-coder = { default-features = false, path = '../../crates/evm-coder' }21pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }21pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }22pallet-common = { default-features = false, path = '../common' }22pallet-common = { default-features = false, path = '../common' }23pallet-structure = { default-features = false, path = '../structure' }23pallet-structure = { default-features = false, path = '../structure' }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }24frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }252526struct-versioning = { path = "../../crates/struct-versioning" }26struct-versioning = { path = "../../crates/struct-versioning" }27up-data-structs = { default-features = false, path = '../../primitives/data-structs' }27up-data-structs = { default-features = false, path = '../../primitives/data-structs' }pallets/refungible/src/benchmarking.rsdiffbeforeafterboth62 create_collection_raw(62 create_collection_raw(63 owner,63 owner,64 CollectionMode::ReFungible,64 CollectionMode::ReFungible,65 <Pallet<T>>::init_collection,65 |owner: T::CrossAccountId, data| <Pallet<T>>::init_collection(owner.clone(), owner, data),66 RefungibleHandle::cast,66 RefungibleHandle::cast,67 )67 )68}68}pallets/refungible/src/common.rsdiffbeforeafterboth383839macro_rules! max_weight_of {39macro_rules! max_weight_of {40 ($($method:ident ($($args:tt)*)),*) => {40 ($($method:ident ($($args:tt)*)),*) => {41 041 Weight::zero()42 $(42 $(43 .max(<SelfWeightOf<T>>::$method($($args)*))43 .max(<SelfWeightOf<T>>::$method($($args)*))44 )*44 )*45 };45 };46}46}474748fn properties_weight<T: Config>(properties: &CollectionPropertiesVec) -> u64 {48fn properties_weight<T: Config>(properties: &CollectionPropertiesVec) -> Weight {49 if properties.len() > 0 {49 if properties.len() > 0 {50 <CommonWeights<T>>::set_token_properties(properties.len() as u32)50 <CommonWeights<T>>::set_token_properties(properties.len() as u32)51 } else {51 } else {52 052 Weight::zero()53 }53 }54}54}555566 up_data_structs::CreateItemData::ReFungible(rft_data) => {66 up_data_structs::CreateItemData::ReFungible(rft_data) => {67 properties_weight::<T>(&rft_data.properties)67 properties_weight::<T>(&rft_data.properties)68 }68 }69 _ => 0,69 _ => Weight::zero(),70 })70 })71 .fold(0, |a, b| a.saturating_add(b)),71 .fold(Weight::zero(), |a, b| a.saturating_add(b)),72 )72 )73 }73 }747483 .saturating_add(83 .saturating_add(84 i.iter()84 i.iter()85 .map(|d| properties_weight::<T>(&d.properties))85 .map(|d| properties_weight::<T>(&d.properties))86 .fold(0, |a, b| a.saturating_add(b)),86 .fold(Weight::zero(), |a, b| a.saturating_add(b)),87 )87 )88 }88 }89 _ => 0,89 _ => Weight::zero(),90 }90 }91 }91 }9292146 }146 }147 fn burn_recursively_breadth_raw(_amount: u32) -> Weight {147 fn burn_recursively_breadth_raw(_amount: u32) -> Weight {148 // Refungible token can't have children148 // Refungible token can't have children149 0149 Weight::zero()150 }150 }151151152 fn token_owner() -> Weight {152 fn token_owner() -> Weight {pallets/refungible/src/lib.rsdiffbeforeafterboth99use pallet_evm::{account::CrossAccountId, Pallet as PalletEvm};99use pallet_evm::{account::CrossAccountId, Pallet as PalletEvm};100use pallet_evm_coder_substrate::WithRecorder;100use pallet_evm_coder_substrate::WithRecorder;101use pallet_common::{101use pallet_common::{102 CollectionHandle, CommonCollectionOperations,102 CommonCollectionOperations, Error as CommonError, eth::collection_id_to_address,103 dispatch::CollectionDispatch,104 erc::static_property::{key, property_value_from_bytes},105 Error as CommonError,106 eth::collection_id_to_address,107 Event as CommonEvent, Pallet as PalletCommon,103 Event as CommonEvent, Pallet as PalletCommon,112use sp_runtime::{ArithmeticError, DispatchError, DispatchResult, TransactionOutcome};108use sp_runtime::{ArithmeticError, DispatchError, DispatchResult, TransactionOutcome};113use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};109use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};114use up_data_structs::{110use up_data_structs::{115 AccessMode, budget::Budget, CollectionId, CollectionMode, CollectionFlags,111 AccessMode, budget::Budget, CollectionId, CollectionFlags, CollectionPropertiesVec,116 CollectionPropertiesVec, CreateCollectionData, CustomDataLimit, mapping::TokenAddressMapping,112 CreateCollectionData, CustomDataLimit, mapping::TokenAddressMapping, MAX_ITEMS_PER_BATCH,117 MAX_ITEMS_PER_BATCH, MAX_REFUNGIBLE_PIECES, Property, PropertyKey, PropertyKeyPermission,113 MAX_REFUNGIBLE_PIECES, Property, PropertyKey, PropertyKeyPermission, PropertyPermission,118 PropertyPermission, PropertyScope, PropertyValue, TokenId, TrySetProperty,114 PropertyScope, PropertyValue, TokenId, TrySetProperty,287 }283 }288 StorageVersion::new(2).put::<Pallet<T>>();284 StorageVersion::new(2).put::<Pallet<T>>();289285290 0286 Weight::zero()291 }287 }292 }288 }293}289}373 /// - `data`: Contains settings for collection limits and permissions.369 /// - `data`: Contains settings for collection limits and permissions.374 pub fn init_collection(370 pub fn init_collection(375 owner: T::CrossAccountId,371 owner: T::CrossAccountId,372 payer: T::CrossAccountId,376 data: CreateCollectionData<T::AccountId>,373 data: CreateCollectionData<T::AccountId>,377 ) -> Result<CollectionId, DispatchError> {374 ) -> Result<CollectionId, DispatchError> {378 <PalletCommon<T>>::init_collection(owner, data, CollectionFlags::default())375 <PalletCommon<T>>::init_collection(owner, payer, data, CollectionFlags::default())379 }376 }380377381 /// Destroy RFT collection378 /// Destroy RFT collectionpallets/refungible/src/weights.rsdiffbeforeafterboth65 // Storage: Refungible TotalSupply (r:0 w:1)65 // Storage: Refungible TotalSupply (r:0 w:1)66 // Storage: Refungible Owned (r:0 w:1)66 // Storage: Refungible Owned (r:0 w:1)67 fn create_item() -> Weight {67 fn create_item() -> Weight {68 (29_527_000 as Weight)68 Weight::from_ref_time(29_527_000)69 .saturating_add(T::DbWeight::get().reads(2 as Weight))69 .saturating_add(T::DbWeight::get().reads(2 as u64))70 .saturating_add(T::DbWeight::get().writes(5 as Weight))70 .saturating_add(T::DbWeight::get().writes(5 as u64))71 }71 }72 // Storage: Refungible TokensMinted (r:1 w:1)72 // Storage: Refungible TokensMinted (r:1 w:1)73 // Storage: Refungible AccountBalance (r:1 w:1)73 // Storage: Refungible AccountBalance (r:1 w:1)74 // Storage: Refungible Balance (r:0 w:4)74 // Storage: Refungible Balance (r:0 w:4)75 // Storage: Refungible TotalSupply (r:0 w:4)75 // Storage: Refungible TotalSupply (r:0 w:4)76 // Storage: Refungible Owned (r:0 w:4)76 // Storage: Refungible Owned (r:0 w:4)77 fn create_multiple_items(b: u32, ) -> Weight {77 fn create_multiple_items(b: u32, ) -> Weight {78 (28_541_000 as Weight)78 Weight::from_ref_time(28_541_000)79 // Standard Error: 4_00079 // Standard Error: 4_00080 .saturating_add((6_671_000 as Weight).saturating_mul(b as Weight))80 .saturating_add(Weight::from_ref_time(6_671_000).saturating_mul(b as u64))81 .saturating_add(T::DbWeight::get().reads(2 as Weight))81 .saturating_add(T::DbWeight::get().reads(2 as u64))82 .saturating_add(T::DbWeight::get().writes(2 as Weight))82 .saturating_add(T::DbWeight::get().writes(2 as u64))83 .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))83 .saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(b as u64)))84 }84 }85 // Storage: Refungible TokensMinted (r:1 w:1)85 // Storage: Refungible TokensMinted (r:1 w:1)86 // Storage: Refungible AccountBalance (r:4 w:4)86 // Storage: Refungible AccountBalance (r:4 w:4)87 // Storage: Refungible Balance (r:0 w:4)87 // Storage: Refungible Balance (r:0 w:4)88 // Storage: Refungible TotalSupply (r:0 w:4)88 // Storage: Refungible TotalSupply (r:0 w:4)89 // Storage: Refungible Owned (r:0 w:4)89 // Storage: Refungible Owned (r:0 w:4)90 fn create_multiple_items_ex_multiple_items(b: u32, ) -> Weight {90 fn create_multiple_items_ex_multiple_items(b: u32, ) -> Weight {91 (24_366_000 as Weight)91 Weight::from_ref_time(24_366_000)92 // Standard Error: 5_00092 // Standard Error: 5_00093 .saturating_add((9_338_000 as Weight).saturating_mul(b as Weight))93 .saturating_add(Weight::from_ref_time(9_338_000).saturating_mul(b as u64))94 .saturating_add(T::DbWeight::get().reads(1 as Weight))94 .saturating_add(T::DbWeight::get().reads(1 as u64))95 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))95 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))96 .saturating_add(T::DbWeight::get().writes(1 as Weight))96 .saturating_add(T::DbWeight::get().writes(1 as u64))97 .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))97 .saturating_add(T::DbWeight::get().writes((4 as u64).saturating_mul(b as u64)))98 }98 }99 // Storage: Refungible TokensMinted (r:1 w:1)99 // Storage: Refungible TokensMinted (r:1 w:1)100 // Storage: Refungible TotalSupply (r:0 w:1)100 // Storage: Refungible TotalSupply (r:0 w:1)101 // Storage: Refungible AccountBalance (r:4 w:4)101 // Storage: Refungible AccountBalance (r:4 w:4)102 // Storage: Refungible Balance (r:0 w:4)102 // Storage: Refungible Balance (r:0 w:4)103 // Storage: Refungible Owned (r:0 w:4)103 // Storage: Refungible Owned (r:0 w:4)104 fn create_multiple_items_ex_multiple_owners(b: u32, ) -> Weight {104 fn create_multiple_items_ex_multiple_owners(b: u32, ) -> Weight {105 (27_574_000 as Weight)105 Weight::from_ref_time(27_574_000)106 // Standard Error: 4_000106 // Standard Error: 4_000107 .saturating_add((7_193_000 as Weight).saturating_mul(b as Weight))107 .saturating_add(Weight::from_ref_time(7_193_000).saturating_mul(b as u64))108 .saturating_add(T::DbWeight::get().reads(1 as Weight))108 .saturating_add(T::DbWeight::get().reads(1 as u64))109 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))109 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(b as u64)))110 .saturating_add(T::DbWeight::get().writes(2 as Weight))110 .saturating_add(T::DbWeight::get().writes(2 as u64))111 .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))111 .saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(b as u64)))112 }112 }113 // Storage: Refungible TotalSupply (r:1 w:1)113 // Storage: Refungible TotalSupply (r:1 w:1)114 // Storage: Refungible Balance (r:3 w:1)114 // Storage: Refungible Balance (r:3 w:1)115 // Storage: Refungible AccountBalance (r:1 w:1)115 // Storage: Refungible AccountBalance (r:1 w:1)116 // Storage: Refungible Owned (r:0 w:1)116 // Storage: Refungible Owned (r:0 w:1)117 fn burn_item_partial() -> Weight {117 fn burn_item_partial() -> Weight {118 (42_943_000 as Weight)118 Weight::from_ref_time(42_943_000)119 .saturating_add(T::DbWeight::get().reads(5 as Weight))119 .saturating_add(T::DbWeight::get().reads(5 as u64))120 .saturating_add(T::DbWeight::get().writes(4 as Weight))120 .saturating_add(T::DbWeight::get().writes(4 as u64))121 }121 }122 // Storage: Refungible TotalSupply (r:1 w:1)122 // Storage: Refungible TotalSupply (r:1 w:1)123 // Storage: Refungible Balance (r:1 w:1)123 // Storage: Refungible Balance (r:1 w:1)126 // Storage: Refungible Owned (r:0 w:1)126 // Storage: Refungible Owned (r:0 w:1)127 // Storage: Refungible TokenProperties (r:0 w:1)127 // Storage: Refungible TokenProperties (r:0 w:1)128 fn burn_item_fully() -> Weight {128 fn burn_item_fully() -> Weight {129 (36_861_000 as Weight)129 Weight::from_ref_time(36_861_000)130 .saturating_add(T::DbWeight::get().reads(4 as Weight))130 .saturating_add(T::DbWeight::get().reads(4 as u64))131 .saturating_add(T::DbWeight::get().writes(6 as Weight))131 .saturating_add(T::DbWeight::get().writes(6 as u64))132 }132 }133 // Storage: Refungible Balance (r:2 w:2)133 // Storage: Refungible Balance (r:2 w:2)134 // Storage: Refungible TotalSupply (r:1 w:0)134 // Storage: Refungible TotalSupply (r:1 w:0)135 fn transfer_normal() -> Weight {135 fn transfer_normal() -> Weight {136 (27_789_000 as Weight)136 Weight::from_ref_time(27_789_000)137 .saturating_add(T::DbWeight::get().reads(3 as Weight))137 .saturating_add(T::DbWeight::get().reads(3 as u64))138 .saturating_add(T::DbWeight::get().writes(2 as Weight))138 .saturating_add(T::DbWeight::get().writes(2 as u64))139 }139 }140 // Storage: Refungible Balance (r:2 w:2)140 // Storage: Refungible Balance (r:2 w:2)141 // Storage: Refungible AccountBalance (r:1 w:1)141 // Storage: Refungible AccountBalance (r:1 w:1)142 // Storage: Refungible TotalSupply (r:1 w:0)142 // Storage: Refungible TotalSupply (r:1 w:0)143 // Storage: Refungible Owned (r:0 w:1)143 // Storage: Refungible Owned (r:0 w:1)144 fn transfer_creating() -> Weight {144 fn transfer_creating() -> Weight {145 (32_893_000 as Weight)145 Weight::from_ref_time(32_893_000)146 .saturating_add(T::DbWeight::get().reads(4 as Weight))146 .saturating_add(T::DbWeight::get().reads(4 as u64))147 .saturating_add(T::DbWeight::get().writes(4 as Weight))147 .saturating_add(T::DbWeight::get().writes(4 as u64))148 }148 }149 // Storage: Refungible Balance (r:2 w:2)149 // Storage: Refungible Balance (r:2 w:2)150 // Storage: Refungible AccountBalance (r:1 w:1)150 // Storage: Refungible AccountBalance (r:1 w:1)151 // Storage: Refungible TotalSupply (r:1 w:0)151 // Storage: Refungible TotalSupply (r:1 w:0)152 // Storage: Refungible Owned (r:0 w:1)152 // Storage: Refungible Owned (r:0 w:1)153 fn transfer_removing() -> Weight {153 fn transfer_removing() -> Weight {154 (34_703_000 as Weight)154 Weight::from_ref_time(34_703_000)155 .saturating_add(T::DbWeight::get().reads(4 as Weight))155 .saturating_add(T::DbWeight::get().reads(4 as u64))156 .saturating_add(T::DbWeight::get().writes(4 as Weight))156 .saturating_add(T::DbWeight::get().writes(4 as u64))157 }157 }158 // Storage: Refungible Balance (r:2 w:2)158 // Storage: Refungible Balance (r:2 w:2)159 // Storage: Refungible AccountBalance (r:2 w:2)159 // Storage: Refungible AccountBalance (r:2 w:2)160 // Storage: Refungible TotalSupply (r:1 w:0)160 // Storage: Refungible TotalSupply (r:1 w:0)161 // Storage: Refungible Owned (r:0 w:2)161 // Storage: Refungible Owned (r:0 w:2)162 fn transfer_creating_removing() -> Weight {162 fn transfer_creating_removing() -> Weight {163 (37_547_000 as Weight)163 Weight::from_ref_time(37_547_000)164 .saturating_add(T::DbWeight::get().reads(5 as Weight))164 .saturating_add(T::DbWeight::get().reads(5 as u64))165 .saturating_add(T::DbWeight::get().writes(6 as Weight))165 .saturating_add(T::DbWeight::get().writes(6 as u64))166 }166 }167 // Storage: Refungible Balance (r:1 w:0)167 // Storage: Refungible Balance (r:1 w:0)168 // Storage: Refungible Allowance (r:0 w:1)168 // Storage: Refungible Allowance (r:0 w:1)169 fn approve() -> Weight {169 fn approve() -> Weight {170 (20_039_000 as Weight)170 Weight::from_ref_time(20_039_000)171 .saturating_add(T::DbWeight::get().reads(1 as Weight))171 .saturating_add(T::DbWeight::get().reads(1 as u64))172 .saturating_add(T::DbWeight::get().writes(1 as Weight))172 .saturating_add(T::DbWeight::get().writes(1 as u64))173 }173 }174 // Storage: Refungible Allowance (r:1 w:1)174 // Storage: Refungible Allowance (r:1 w:1)175 // Storage: Refungible Balance (r:2 w:2)175 // Storage: Refungible Balance (r:2 w:2)176 // Storage: Refungible TotalSupply (r:1 w:0)176 // Storage: Refungible TotalSupply (r:1 w:0)177 fn transfer_from_normal() -> Weight {177 fn transfer_from_normal() -> Weight {178 (37_628_000 as Weight)178 Weight::from_ref_time(37_628_000)179 .saturating_add(T::DbWeight::get().reads(4 as Weight))179 .saturating_add(T::DbWeight::get().reads(4 as u64))180 .saturating_add(T::DbWeight::get().writes(3 as Weight))180 .saturating_add(T::DbWeight::get().writes(3 as u64))181 }181 }182 // Storage: Refungible Allowance (r:1 w:1)182 // Storage: Refungible Allowance (r:1 w:1)183 // Storage: Refungible Balance (r:2 w:2)183 // Storage: Refungible Balance (r:2 w:2)184 // Storage: Refungible AccountBalance (r:1 w:1)184 // Storage: Refungible AccountBalance (r:1 w:1)185 // Storage: Refungible TotalSupply (r:1 w:0)185 // Storage: Refungible TotalSupply (r:1 w:0)186 // Storage: Refungible Owned (r:0 w:1)186 // Storage: Refungible Owned (r:0 w:1)187 fn transfer_from_creating() -> Weight {187 fn transfer_from_creating() -> Weight {188 (42_072_000 as Weight)188 Weight::from_ref_time(42_072_000)189 .saturating_add(T::DbWeight::get().reads(5 as Weight))189 .saturating_add(T::DbWeight::get().reads(5 as u64))190 .saturating_add(T::DbWeight::get().writes(5 as Weight))190 .saturating_add(T::DbWeight::get().writes(5 as u64))191 }191 }192 // Storage: Refungible Allowance (r:1 w:1)192 // Storage: Refungible Allowance (r:1 w:1)193 // Storage: Refungible Balance (r:2 w:2)193 // Storage: Refungible Balance (r:2 w:2)194 // Storage: Refungible AccountBalance (r:1 w:1)194 // Storage: Refungible AccountBalance (r:1 w:1)195 // Storage: Refungible TotalSupply (r:1 w:0)195 // Storage: Refungible TotalSupply (r:1 w:0)196 // Storage: Refungible Owned (r:0 w:1)196 // Storage: Refungible Owned (r:0 w:1)197 fn transfer_from_removing() -> Weight {197 fn transfer_from_removing() -> Weight {198 (43_024_000 as Weight)198 Weight::from_ref_time(43_024_000)199 .saturating_add(T::DbWeight::get().reads(5 as Weight))199 .saturating_add(T::DbWeight::get().reads(5 as u64))200 .saturating_add(T::DbWeight::get().writes(5 as Weight))200 .saturating_add(T::DbWeight::get().writes(5 as u64))201 }201 }202 // Storage: Refungible Allowance (r:1 w:1)202 // Storage: Refungible Allowance (r:1 w:1)203 // Storage: Refungible Balance (r:2 w:2)203 // Storage: Refungible Balance (r:2 w:2)204 // Storage: Refungible AccountBalance (r:2 w:2)204 // Storage: Refungible AccountBalance (r:2 w:2)205 // Storage: Refungible TotalSupply (r:1 w:0)205 // Storage: Refungible TotalSupply (r:1 w:0)206 // Storage: Refungible Owned (r:0 w:2)206 // Storage: Refungible Owned (r:0 w:2)207 fn transfer_from_creating_removing() -> Weight {207 fn transfer_from_creating_removing() -> Weight {208 (45_910_000 as Weight)208 Weight::from_ref_time(45_910_000)209 .saturating_add(T::DbWeight::get().reads(6 as Weight))209 .saturating_add(T::DbWeight::get().reads(6 as u64))210 .saturating_add(T::DbWeight::get().writes(7 as Weight))210 .saturating_add(T::DbWeight::get().writes(7 as u64))211 }211 }212 // Storage: Refungible Allowance (r:1 w:1)212 // Storage: Refungible Allowance (r:1 w:1)213 // Storage: Refungible TotalSupply (r:1 w:1)213 // Storage: Refungible TotalSupply (r:1 w:1)217 // Storage: Refungible Owned (r:0 w:1)217 // Storage: Refungible Owned (r:0 w:1)218 // Storage: Refungible TokenProperties (r:0 w:1)218 // Storage: Refungible TokenProperties (r:0 w:1)219 fn burn_from() -> Weight {219 fn burn_from() -> Weight {220 (48_584_000 as Weight)220 Weight::from_ref_time(48_584_000)221 .saturating_add(T::DbWeight::get().reads(5 as Weight))221 .saturating_add(T::DbWeight::get().reads(5 as u64))222 .saturating_add(T::DbWeight::get().writes(7 as Weight))222 .saturating_add(T::DbWeight::get().writes(7 as u64))223 }223 }224 // Storage: Common CollectionPropertyPermissions (r:1 w:1)224 // Storage: Common CollectionPropertyPermissions (r:1 w:1)225 fn set_token_property_permissions(b: u32, ) -> Weight {225 fn set_token_property_permissions(b: u32, ) -> Weight {226 (0 as Weight)226 (Weight::from_ref_time(0))227 // Standard Error: 60_000227 // Standard Error: 60_000228 .saturating_add((15_533_000 as Weight).saturating_mul(b as Weight))228 .saturating_add(Weight::from_ref_time(15_533_000).saturating_mul(b as u64))229 .saturating_add(T::DbWeight::get().reads(1 as Weight))229 .saturating_add(T::DbWeight::get().reads(1 as u64))230 .saturating_add(T::DbWeight::get().writes(1 as Weight))230 .saturating_add(T::DbWeight::get().writes(1 as u64))231 }231 }232 // Storage: Common CollectionPropertyPermissions (r:1 w:0)232 // Storage: Common CollectionPropertyPermissions (r:1 w:0)233 // Storage: Refungible TokenProperties (r:1 w:1)233 // Storage: Refungible TokenProperties (r:1 w:1)234 fn set_token_properties(b: u32, ) -> Weight {234 fn set_token_properties(b: u32, ) -> Weight {235 (0 as Weight)235 (Weight::from_ref_time(0))236 // Standard Error: 3_609_000236 // Standard Error: 3_609_000237 .saturating_add((590_204_000 as Weight).saturating_mul(b as Weight))237 .saturating_add(Weight::from_ref_time(590_204_000).saturating_mul(b as u64))238 .saturating_add(T::DbWeight::get().reads(2 as Weight))238 .saturating_add(T::DbWeight::get().reads(2 as u64))239 .saturating_add(T::DbWeight::get().writes(1 as Weight))239 .saturating_add(T::DbWeight::get().writes(1 as u64))240 }240 }241 // Storage: Common CollectionPropertyPermissions (r:1 w:0)241 // Storage: Common CollectionPropertyPermissions (r:1 w:0)242 // Storage: Refungible TokenProperties (r:1 w:1)242 // Storage: Refungible TokenProperties (r:1 w:1)243 fn delete_token_properties(b: u32, ) -> Weight {243 fn delete_token_properties(b: u32, ) -> Weight {244 (0 as Weight)244 (Weight::from_ref_time(0))245 // Standard Error: 3_637_000245 // Standard Error: 3_637_000246 .saturating_add((603_468_000 as Weight).saturating_mul(b as Weight))246 .saturating_add(Weight::from_ref_time(603_468_000).saturating_mul(b as u64))247 .saturating_add(T::DbWeight::get().reads(2 as Weight))247 .saturating_add(T::DbWeight::get().reads(2 as u64))248 .saturating_add(T::DbWeight::get().writes(1 as Weight))248 .saturating_add(T::DbWeight::get().writes(1 as u64))249 }249 }250 // Storage: Refungible TotalSupply (r:1 w:1)250 // Storage: Refungible TotalSupply (r:1 w:1)251 // Storage: Refungible Balance (r:1 w:1)251 // Storage: Refungible Balance (r:1 w:1)252 fn repartition_item() -> Weight {252 fn repartition_item() -> Weight {253 (22_356_000 as Weight)253 Weight::from_ref_time(22_356_000)254 .saturating_add(T::DbWeight::get().reads(2 as Weight))254 .saturating_add(T::DbWeight::get().reads(2 as u64))255 .saturating_add(T::DbWeight::get().writes(2 as Weight))255 .saturating_add(T::DbWeight::get().writes(2 as u64))256 }256 }257 // Storage: Refungible Balance (r:2 w:0)257 // Storage: Refungible Balance (r:2 w:0)258 fn token_owner() -> Weight {258 fn token_owner() -> Weight {259 (9_431_000 as Weight)259 Weight::from_ref_time(9_431_000)260 .saturating_add(T::DbWeight::get().reads(2 as Weight))260 .saturating_add(T::DbWeight::get().reads(2 as u64))261 }261 }262}262}263263269 // Storage: Refungible TotalSupply (r:0 w:1)269 // Storage: Refungible TotalSupply (r:0 w:1)270 // Storage: Refungible Owned (r:0 w:1)270 // Storage: Refungible Owned (r:0 w:1)271 fn create_item() -> Weight {271 fn create_item() -> Weight {272 (29_527_000 as Weight)272 Weight::from_ref_time(29_527_000)273 .saturating_add(RocksDbWeight::get().reads(2 as Weight))273 .saturating_add(RocksDbWeight::get().reads(2 as u64))274 .saturating_add(RocksDbWeight::get().writes(5 as Weight))274 .saturating_add(RocksDbWeight::get().writes(5 as u64))275 }275 }276 // Storage: Refungible TokensMinted (r:1 w:1)276 // Storage: Refungible TokensMinted (r:1 w:1)277 // Storage: Refungible AccountBalance (r:1 w:1)277 // Storage: Refungible AccountBalance (r:1 w:1)278 // Storage: Refungible Balance (r:0 w:4)278 // Storage: Refungible Balance (r:0 w:4)279 // Storage: Refungible TotalSupply (r:0 w:4)279 // Storage: Refungible TotalSupply (r:0 w:4)280 // Storage: Refungible Owned (r:0 w:4)280 // Storage: Refungible Owned (r:0 w:4)281 fn create_multiple_items(b: u32, ) -> Weight {281 fn create_multiple_items(b: u32, ) -> Weight {282 (28_541_000 as Weight)282 Weight::from_ref_time(28_541_000)283 // Standard Error: 4_000283 // Standard Error: 4_000284 .saturating_add((6_671_000 as Weight).saturating_mul(b as Weight))284 .saturating_add(Weight::from_ref_time(6_671_000).saturating_mul(b as u64))285 .saturating_add(RocksDbWeight::get().reads(2 as Weight))285 .saturating_add(RocksDbWeight::get().reads(2 as u64))286 .saturating_add(RocksDbWeight::get().writes(2 as Weight))286 .saturating_add(RocksDbWeight::get().writes(2 as u64))287 .saturating_add(RocksDbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))287 .saturating_add(RocksDbWeight::get().writes((3 as u64).saturating_mul(b as u64)))288 }288 }289 // Storage: Refungible TokensMinted (r:1 w:1)289 // Storage: Refungible TokensMinted (r:1 w:1)290 // Storage: Refungible AccountBalance (r:4 w:4)290 // Storage: Refungible AccountBalance (r:4 w:4)291 // Storage: Refungible Balance (r:0 w:4)291 // Storage: Refungible Balance (r:0 w:4)292 // Storage: Refungible TotalSupply (r:0 w:4)292 // Storage: Refungible TotalSupply (r:0 w:4)293 // Storage: Refungible Owned (r:0 w:4)293 // Storage: Refungible Owned (r:0 w:4)294 fn create_multiple_items_ex_multiple_items(b: u32, ) -> Weight {294 fn create_multiple_items_ex_multiple_items(b: u32, ) -> Weight {295 (24_366_000 as Weight)295 Weight::from_ref_time(24_366_000)296 // Standard Error: 5_000296 // Standard Error: 5_000297 .saturating_add((9_338_000 as Weight).saturating_mul(b as Weight))297 .saturating_add(Weight::from_ref_time(9_338_000).saturating_mul(b as u64))298 .saturating_add(RocksDbWeight::get().reads(1 as Weight))298 .saturating_add(RocksDbWeight::get().reads(1 as u64))299 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))299 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))300 .saturating_add(RocksDbWeight::get().writes(1 as Weight))300 .saturating_add(RocksDbWeight::get().writes(1 as u64))301 .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(b as Weight)))301 .saturating_add(RocksDbWeight::get().writes((4 as u64).saturating_mul(b as u64)))302 }302 }303 // Storage: Refungible TokensMinted (r:1 w:1)303 // Storage: Refungible TokensMinted (r:1 w:1)304 // Storage: Refungible TotalSupply (r:0 w:1)304 // Storage: Refungible TotalSupply (r:0 w:1)305 // Storage: Refungible AccountBalance (r:4 w:4)305 // Storage: Refungible AccountBalance (r:4 w:4)306 // Storage: Refungible Balance (r:0 w:4)306 // Storage: Refungible Balance (r:0 w:4)307 // Storage: Refungible Owned (r:0 w:4)307 // Storage: Refungible Owned (r:0 w:4)308 fn create_multiple_items_ex_multiple_owners(b: u32, ) -> Weight {308 fn create_multiple_items_ex_multiple_owners(b: u32, ) -> Weight {309 (27_574_000 as Weight)309 Weight::from_ref_time(27_574_000)310 // Standard Error: 4_000310 // Standard Error: 4_000311 .saturating_add((7_193_000 as Weight).saturating_mul(b as Weight))311 .saturating_add(Weight::from_ref_time(7_193_000).saturating_mul(b as u64))312 .saturating_add(RocksDbWeight::get().reads(1 as Weight))312 .saturating_add(RocksDbWeight::get().reads(1 as u64))313 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(b as Weight)))313 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(b as u64)))314 .saturating_add(RocksDbWeight::get().writes(2 as Weight))314 .saturating_add(RocksDbWeight::get().writes(2 as u64))315 .saturating_add(RocksDbWeight::get().writes((3 as Weight).saturating_mul(b as Weight)))315 .saturating_add(RocksDbWeight::get().writes((3 as u64).saturating_mul(b as u64)))316 }316 }317 // Storage: Refungible TotalSupply (r:1 w:1)317 // Storage: Refungible TotalSupply (r:1 w:1)318 // Storage: Refungible Balance (r:3 w:1)318 // Storage: Refungible Balance (r:3 w:1)319 // Storage: Refungible AccountBalance (r:1 w:1)319 // Storage: Refungible AccountBalance (r:1 w:1)320 // Storage: Refungible Owned (r:0 w:1)320 // Storage: Refungible Owned (r:0 w:1)321 fn burn_item_partial() -> Weight {321 fn burn_item_partial() -> Weight {322 (42_943_000 as Weight)322 Weight::from_ref_time(42_943_000)323 .saturating_add(RocksDbWeight::get().reads(5 as Weight))323 .saturating_add(RocksDbWeight::get().reads(5 as u64))324 .saturating_add(RocksDbWeight::get().writes(4 as Weight))324 .saturating_add(RocksDbWeight::get().writes(4 as u64))325 }325 }326 // Storage: Refungible TotalSupply (r:1 w:1)326 // Storage: Refungible TotalSupply (r:1 w:1)327 // Storage: Refungible Balance (r:1 w:1)327 // Storage: Refungible Balance (r:1 w:1)330 // Storage: Refungible Owned (r:0 w:1)330 // Storage: Refungible Owned (r:0 w:1)331 // Storage: Refungible TokenProperties (r:0 w:1)331 // Storage: Refungible TokenProperties (r:0 w:1)332 fn burn_item_fully() -> Weight {332 fn burn_item_fully() -> Weight {333 (36_861_000 as Weight)333 Weight::from_ref_time(36_861_000)334 .saturating_add(RocksDbWeight::get().reads(4 as Weight))334 .saturating_add(RocksDbWeight::get().reads(4 as u64))335 .saturating_add(RocksDbWeight::get().writes(6 as Weight))335 .saturating_add(RocksDbWeight::get().writes(6 as u64))336 }336 }337 // Storage: Refungible Balance (r:2 w:2)337 // Storage: Refungible Balance (r:2 w:2)338 // Storage: Refungible TotalSupply (r:1 w:0)338 // Storage: Refungible TotalSupply (r:1 w:0)339 fn transfer_normal() -> Weight {339 fn transfer_normal() -> Weight {340 (27_789_000 as Weight)340 Weight::from_ref_time(27_789_000)341 .saturating_add(RocksDbWeight::get().reads(3 as Weight))341 .saturating_add(RocksDbWeight::get().reads(3 as u64))342 .saturating_add(RocksDbWeight::get().writes(2 as Weight))342 .saturating_add(RocksDbWeight::get().writes(2 as u64))343 }343 }344 // Storage: Refungible Balance (r:2 w:2)344 // Storage: Refungible Balance (r:2 w:2)345 // Storage: Refungible AccountBalance (r:1 w:1)345 // Storage: Refungible AccountBalance (r:1 w:1)346 // Storage: Refungible TotalSupply (r:1 w:0)346 // Storage: Refungible TotalSupply (r:1 w:0)347 // Storage: Refungible Owned (r:0 w:1)347 // Storage: Refungible Owned (r:0 w:1)348 fn transfer_creating() -> Weight {348 fn transfer_creating() -> Weight {349 (32_893_000 as Weight)349 Weight::from_ref_time(32_893_000)350 .saturating_add(RocksDbWeight::get().reads(4 as Weight))350 .saturating_add(RocksDbWeight::get().reads(4 as u64))351 .saturating_add(RocksDbWeight::get().writes(4 as Weight))351 .saturating_add(RocksDbWeight::get().writes(4 as u64))352 }352 }353 // Storage: Refungible Balance (r:2 w:2)353 // Storage: Refungible Balance (r:2 w:2)354 // Storage: Refungible AccountBalance (r:1 w:1)354 // Storage: Refungible AccountBalance (r:1 w:1)355 // Storage: Refungible TotalSupply (r:1 w:0)355 // Storage: Refungible TotalSupply (r:1 w:0)356 // Storage: Refungible Owned (r:0 w:1)356 // Storage: Refungible Owned (r:0 w:1)357 fn transfer_removing() -> Weight {357 fn transfer_removing() -> Weight {358 (34_703_000 as Weight)358 Weight::from_ref_time(34_703_000)359 .saturating_add(RocksDbWeight::get().reads(4 as Weight))359 .saturating_add(RocksDbWeight::get().reads(4 as u64))360 .saturating_add(RocksDbWeight::get().writes(4 as Weight))360 .saturating_add(RocksDbWeight::get().writes(4 as u64))361 }361 }362 // Storage: Refungible Balance (r:2 w:2)362 // Storage: Refungible Balance (r:2 w:2)363 // Storage: Refungible AccountBalance (r:2 w:2)363 // Storage: Refungible AccountBalance (r:2 w:2)364 // Storage: Refungible TotalSupply (r:1 w:0)364 // Storage: Refungible TotalSupply (r:1 w:0)365 // Storage: Refungible Owned (r:0 w:2)365 // Storage: Refungible Owned (r:0 w:2)366 fn transfer_creating_removing() -> Weight {366 fn transfer_creating_removing() -> Weight {367 (37_547_000 as Weight)367 Weight::from_ref_time(37_547_000)368 .saturating_add(RocksDbWeight::get().reads(5 as Weight))368 .saturating_add(RocksDbWeight::get().reads(5 as u64))369 .saturating_add(RocksDbWeight::get().writes(6 as Weight))369 .saturating_add(RocksDbWeight::get().writes(6 as u64))370 }370 }371 // Storage: Refungible Balance (r:1 w:0)371 // Storage: Refungible Balance (r:1 w:0)372 // Storage: Refungible Allowance (r:0 w:1)372 // Storage: Refungible Allowance (r:0 w:1)373 fn approve() -> Weight {373 fn approve() -> Weight {374 (20_039_000 as Weight)374 Weight::from_ref_time(20_039_000)375 .saturating_add(RocksDbWeight::get().reads(1 as Weight))375 .saturating_add(RocksDbWeight::get().reads(1 as u64))376 .saturating_add(RocksDbWeight::get().writes(1 as Weight))376 .saturating_add(RocksDbWeight::get().writes(1 as u64))377 }377 }378 // Storage: Refungible Allowance (r:1 w:1)378 // Storage: Refungible Allowance (r:1 w:1)379 // Storage: Refungible Balance (r:2 w:2)379 // Storage: Refungible Balance (r:2 w:2)380 // Storage: Refungible TotalSupply (r:1 w:0)380 // Storage: Refungible TotalSupply (r:1 w:0)381 fn transfer_from_normal() -> Weight {381 fn transfer_from_normal() -> Weight {382 (37_628_000 as Weight)382 Weight::from_ref_time(37_628_000)383 .saturating_add(RocksDbWeight::get().reads(4 as Weight))383 .saturating_add(RocksDbWeight::get().reads(4 as u64))384 .saturating_add(RocksDbWeight::get().writes(3 as Weight))384 .saturating_add(RocksDbWeight::get().writes(3 as u64))385 }385 }386 // Storage: Refungible Allowance (r:1 w:1)386 // Storage: Refungible Allowance (r:1 w:1)387 // Storage: Refungible Balance (r:2 w:2)387 // Storage: Refungible Balance (r:2 w:2)388 // Storage: Refungible AccountBalance (r:1 w:1)388 // Storage: Refungible AccountBalance (r:1 w:1)389 // Storage: Refungible TotalSupply (r:1 w:0)389 // Storage: Refungible TotalSupply (r:1 w:0)390 // Storage: Refungible Owned (r:0 w:1)390 // Storage: Refungible Owned (r:0 w:1)391 fn transfer_from_creating() -> Weight {391 fn transfer_from_creating() -> Weight {392 (42_072_000 as Weight)392 Weight::from_ref_time(42_072_000)393 .saturating_add(RocksDbWeight::get().reads(5 as Weight))393 .saturating_add(RocksDbWeight::get().reads(5 as u64))394 .saturating_add(RocksDbWeight::get().writes(5 as Weight))394 .saturating_add(RocksDbWeight::get().writes(5 as u64))395 }395 }396 // Storage: Refungible Allowance (r:1 w:1)396 // Storage: Refungible Allowance (r:1 w:1)397 // Storage: Refungible Balance (r:2 w:2)397 // Storage: Refungible Balance (r:2 w:2)398 // Storage: Refungible AccountBalance (r:1 w:1)398 // Storage: Refungible AccountBalance (r:1 w:1)399 // Storage: Refungible TotalSupply (r:1 w:0)399 // Storage: Refungible TotalSupply (r:1 w:0)400 // Storage: Refungible Owned (r:0 w:1)400 // Storage: Refungible Owned (r:0 w:1)401 fn transfer_from_removing() -> Weight {401 fn transfer_from_removing() -> Weight {402 (43_024_000 as Weight)402 Weight::from_ref_time(43_024_000)403 .saturating_add(RocksDbWeight::get().reads(5 as Weight))403 .saturating_add(RocksDbWeight::get().reads(5 as u64))404 .saturating_add(RocksDbWeight::get().writes(5 as Weight))404 .saturating_add(RocksDbWeight::get().writes(5 as u64))405 }405 }406 // Storage: Refungible Allowance (r:1 w:1)406 // Storage: Refungible Allowance (r:1 w:1)407 // Storage: Refungible Balance (r:2 w:2)407 // Storage: Refungible Balance (r:2 w:2)408 // Storage: Refungible AccountBalance (r:2 w:2)408 // Storage: Refungible AccountBalance (r:2 w:2)409 // Storage: Refungible TotalSupply (r:1 w:0)409 // Storage: Refungible TotalSupply (r:1 w:0)410 // Storage: Refungible Owned (r:0 w:2)410 // Storage: Refungible Owned (r:0 w:2)411 fn transfer_from_creating_removing() -> Weight {411 fn transfer_from_creating_removing() -> Weight {412 (45_910_000 as Weight)412 Weight::from_ref_time(45_910_000)413 .saturating_add(RocksDbWeight::get().reads(6 as Weight))413 .saturating_add(RocksDbWeight::get().reads(6 as u64))414 .saturating_add(RocksDbWeight::get().writes(7 as Weight))414 .saturating_add(RocksDbWeight::get().writes(7 as u64))415 }415 }416 // Storage: Refungible Allowance (r:1 w:1)416 // Storage: Refungible Allowance (r:1 w:1)417 // Storage: Refungible TotalSupply (r:1 w:1)417 // Storage: Refungible TotalSupply (r:1 w:1)421 // Storage: Refungible Owned (r:0 w:1)421 // Storage: Refungible Owned (r:0 w:1)422 // Storage: Refungible TokenProperties (r:0 w:1)422 // Storage: Refungible TokenProperties (r:0 w:1)423 fn burn_from() -> Weight {423 fn burn_from() -> Weight {424 (48_584_000 as Weight)424 Weight::from_ref_time(48_584_000)425 .saturating_add(RocksDbWeight::get().reads(5 as Weight))425 .saturating_add(RocksDbWeight::get().reads(5 as u64))426 .saturating_add(RocksDbWeight::get().writes(7 as Weight))426 .saturating_add(RocksDbWeight::get().writes(7 as u64))427 }427 }428 // Storage: Common CollectionPropertyPermissions (r:1 w:1)428 // Storage: Common CollectionPropertyPermissions (r:1 w:1)429 fn set_token_property_permissions(b: u32, ) -> Weight {429 fn set_token_property_permissions(b: u32, ) -> Weight {430 (0 as Weight)430 (Weight::from_ref_time(0))431 // Standard Error: 60_000431 // Standard Error: 60_000432 .saturating_add((15_533_000 as Weight).saturating_mul(b as Weight))432 .saturating_add(Weight::from_ref_time(15_533_000).saturating_mul(b as u64))433 .saturating_add(RocksDbWeight::get().reads(1 as Weight))433 .saturating_add(RocksDbWeight::get().reads(1 as u64))434 .saturating_add(RocksDbWeight::get().writes(1 as Weight))434 .saturating_add(RocksDbWeight::get().writes(1 as u64))435 }435 }436 // Storage: Common CollectionPropertyPermissions (r:1 w:0)436 // Storage: Common CollectionPropertyPermissions (r:1 w:0)437 // Storage: Refungible TokenProperties (r:1 w:1)437 // Storage: Refungible TokenProperties (r:1 w:1)438 fn set_token_properties(b: u32, ) -> Weight {438 fn set_token_properties(b: u32, ) -> Weight {439 (0 as Weight)439 (Weight::from_ref_time(0))440 // Standard Error: 3_609_000440 // Standard Error: 3_609_000441 .saturating_add((590_204_000 as Weight).saturating_mul(b as Weight))441 .saturating_add(Weight::from_ref_time(590_204_000).saturating_mul(b as u64))442 .saturating_add(RocksDbWeight::get().reads(2 as Weight))442 .saturating_add(RocksDbWeight::get().reads(2 as u64))443 .saturating_add(RocksDbWeight::get().writes(1 as Weight))443 .saturating_add(RocksDbWeight::get().writes(1 as u64))444 }444 }445 // Storage: Common CollectionPropertyPermissions (r:1 w:0)445 // Storage: Common CollectionPropertyPermissions (r:1 w:0)446 // Storage: Refungible TokenProperties (r:1 w:1)446 // Storage: Refungible TokenProperties (r:1 w:1)447 fn delete_token_properties(b: u32, ) -> Weight {447 fn delete_token_properties(b: u32, ) -> Weight {448 (0 as Weight)448 (Weight::from_ref_time(0))449 // Standard Error: 3_637_000449 // Standard Error: 3_637_000450 .saturating_add((603_468_000 as Weight).saturating_mul(b as Weight))450 .saturating_add(Weight::from_ref_time(603_468_000).saturating_mul(b as u64))451 .saturating_add(RocksDbWeight::get().reads(2 as Weight))451 .saturating_add(RocksDbWeight::get().reads(2 as u64))452 .saturating_add(RocksDbWeight::get().writes(1 as Weight))452 .saturating_add(RocksDbWeight::get().writes(1 as u64))453 }453 }454 // Storage: Refungible TotalSupply (r:1 w:1)454 // Storage: Refungible TotalSupply (r:1 w:1)455 // Storage: Refungible Balance (r:1 w:1)455 // Storage: Refungible Balance (r:1 w:1)456 fn repartition_item() -> Weight {456 fn repartition_item() -> Weight {457 (22_356_000 as Weight)457 Weight::from_ref_time(22_356_000)458 .saturating_add(RocksDbWeight::get().reads(2 as Weight))458 .saturating_add(RocksDbWeight::get().reads(2 as u64))459 .saturating_add(RocksDbWeight::get().writes(2 as Weight))459 .saturating_add(RocksDbWeight::get().writes(2 as u64))460 }460 }461 // Storage: Refungible Balance (r:2 w:0)461 // Storage: Refungible Balance (r:2 w:0)462 fn token_owner() -> Weight {462 fn token_owner() -> Weight {463 (9_431_000 as Weight)463 Weight::from_ref_time(9_431_000)464 .saturating_add(RocksDbWeight::get().reads(2 as Weight))464 .saturating_add(RocksDbWeight::get().reads(2 as u64))465 }465 }466}466}467467pallets/scheduler/Cargo.tomldiffbeforeafterboth16 "derive",16 "derive",17] }17] }181819frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }19frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }20frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }20frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }21sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }22sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }22sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }23sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }23sp-io = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }24sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.27' }24sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.29' }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }262627up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27" }27up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29" }28log = { version = "0.4.16", default-features = false }28log = { version = "0.4.16", default-features = false }292930[dev-dependencies]30[dev-dependencies]31sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }31sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }32substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }32substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }333334[features]34[features]35default = ["std"]35default = ["std"]pallets/scheduler/src/lib.rsdiffbeforeafterboth497 }497 }498 }498 }499 // Total weight should be 0, because the transaction is already paid for499 // Total weight should be 0, because the transaction is already paid for500 0500 Weight::zero()501 }501 }502 }502 }503503pallets/scheduler/src/weights.rsdiffbeforeafterboth55 // Storage: System BlockWeight (r:1 w:1)55 // Storage: System BlockWeight (r:1 w:1)56 // Storage: Scheduler Lookup (r:0 w:1)56 // Storage: Scheduler Lookup (r:0 w:1)57 fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {57 fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {58 (26_641_000 as Weight)58 Weight::from_ref_time(26_641_000)59 // Standard Error: 9_00059 // Standard Error: 9_00060 .saturating_add((8_547_000 as Weight).saturating_mul(s as Weight))60 .saturating_add(Weight::from_ref_time(8_547_000).saturating_mul(s as u64))61 .saturating_add(T::DbWeight::get().reads(4 as Weight))61 .saturating_add(T::DbWeight::get().reads(4 as u64))62 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))62 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))63 .saturating_add(T::DbWeight::get().writes(4 as Weight))63 .saturating_add(T::DbWeight::get().writes(4 as u64))64 .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))64 .saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(s as u64)))65 }65 }66 // Storage: Scheduler Agenda (r:1 w:1)66 // Storage: Scheduler Agenda (r:1 w:1)67 // Storage: System Account (r:1 w:1)67 // Storage: System Account (r:1 w:1)68 // Storage: System AllExtrinsicsLen (r:1 w:1)68 // Storage: System AllExtrinsicsLen (r:1 w:1)69 // Storage: System BlockWeight (r:1 w:1)69 // Storage: System BlockWeight (r:1 w:1)70 // Storage: Scheduler Lookup (r:0 w:1)70 // Storage: Scheduler Lookup (r:0 w:1)71 fn on_initialize_named_resolved(s: u32, ) -> Weight {71 fn on_initialize_named_resolved(s: u32, ) -> Weight {72 (23_941_000 as Weight)72 Weight::from_ref_time(23_941_000)73 // Standard Error: 17_00073 // Standard Error: 17_00074 .saturating_add((5_282_000 as Weight).saturating_mul(s as Weight))74 .saturating_add(Weight::from_ref_time(5_282_000).saturating_mul(s as u64))75 .saturating_add(T::DbWeight::get().reads(4 as Weight))75 .saturating_add(T::DbWeight::get().reads(4 as u64))76 .saturating_add(T::DbWeight::get().writes(4 as Weight))76 .saturating_add(T::DbWeight::get().writes(4 as u64))77 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))77 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))78 }78 }79 // Storage: Scheduler Agenda (r:2 w:2)79 // Storage: Scheduler Agenda (r:2 w:2)80 // Storage: System Account (r:1 w:1)80 // Storage: System Account (r:1 w:1)81 // Storage: System AllExtrinsicsLen (r:1 w:1)81 // Storage: System AllExtrinsicsLen (r:1 w:1)82 // Storage: System BlockWeight (r:1 w:1)82 // Storage: System BlockWeight (r:1 w:1)83 // Storage: Scheduler Lookup (r:0 w:1)83 // Storage: Scheduler Lookup (r:0 w:1)84 fn on_initialize_periodic(s: u32, ) -> Weight {84 fn on_initialize_periodic(s: u32, ) -> Weight {85 (24_858_000 as Weight)85 Weight::from_ref_time(24_858_000)86 // Standard Error: 7_00086 // Standard Error: 7_00087 .saturating_add((8_657_000 as Weight).saturating_mul(s as Weight))87 .saturating_add(Weight::from_ref_time(8_657_000).saturating_mul(s as u64))88 .saturating_add(T::DbWeight::get().reads(4 as Weight))88 .saturating_add(T::DbWeight::get().reads(4 as u64))89 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))89 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))90 .saturating_add(T::DbWeight::get().writes(4 as Weight))90 .saturating_add(T::DbWeight::get().writes(4 as u64))91 .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))91 .saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(s as u64)))92 }92 }93 // Storage: Scheduler Agenda (r:2 w:2)93 // Storage: Scheduler Agenda (r:2 w:2)94 // Storage: System Account (r:1 w:1)94 // Storage: System Account (r:1 w:1)95 // Storage: System AllExtrinsicsLen (r:1 w:1)95 // Storage: System AllExtrinsicsLen (r:1 w:1)96 // Storage: System BlockWeight (r:1 w:1)96 // Storage: System BlockWeight (r:1 w:1)97 // Storage: Scheduler Lookup (r:0 w:1)97 // Storage: Scheduler Lookup (r:0 w:1)98 fn on_initialize_periodic_resolved(s: u32, ) -> Weight {98 fn on_initialize_periodic_resolved(s: u32, ) -> Weight {99 (25_515_000 as Weight)99 Weight::from_ref_time(25_515_000)100 // Standard Error: 14_000100 // Standard Error: 14_000101 .saturating_add((8_656_000 as Weight).saturating_mul(s as Weight))101 .saturating_add(Weight::from_ref_time(8_656_000).saturating_mul(s as u64))102 .saturating_add(T::DbWeight::get().reads(4 as Weight))102 .saturating_add(T::DbWeight::get().reads(4 as u64))103 .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))103 .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(s as u64)))104 .saturating_add(T::DbWeight::get().writes(4 as Weight))104 .saturating_add(T::DbWeight::get().writes(4 as u64))105 .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))105 .saturating_add(T::DbWeight::get().writes((2 as u64).saturating_mul(s as u64)))106 }106 }107 // Storage: Scheduler Agenda (r:2 w:2)107 // Storage: Scheduler Agenda (r:2 w:2)108 // Storage: Scheduler Lookup (r:0 w:1)108 // Storage: Scheduler Lookup (r:0 w:1)109 fn on_initialize_aborted(s: u32, ) -> Weight {109 fn on_initialize_aborted(s: u32, ) -> Weight {110 (7_584_000 as Weight)110 Weight::from_ref_time(7_584_000)111 // Standard Error: 1_000111 // Standard Error: 1_000112 .saturating_add((2_065_000 as Weight).saturating_mul(s as Weight))112 .saturating_add(Weight::from_ref_time(2_065_000).saturating_mul(s as u64))113 .saturating_add(T::DbWeight::get().reads(2 as Weight))113 .saturating_add(T::DbWeight::get().reads(2 as u64))114 .saturating_add(T::DbWeight::get().writes(2 as Weight))114 .saturating_add(T::DbWeight::get().writes(2 as u64))115 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))115 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))116 }116 }117 // Storage: Scheduler Agenda (r:1 w:1)117 // Storage: Scheduler Agenda (r:1 w:1)118 // Storage: System Account (r:1 w:1)118 // Storage: System Account (r:1 w:1)119 // Storage: System AllExtrinsicsLen (r:1 w:1)119 // Storage: System AllExtrinsicsLen (r:1 w:1)120 // Storage: System BlockWeight (r:1 w:1)120 // Storage: System BlockWeight (r:1 w:1)121 // Storage: Scheduler Lookup (r:0 w:1)121 // Storage: Scheduler Lookup (r:0 w:1)122 fn on_initialize_named_aborted(s: u32, ) -> Weight {122 fn on_initialize_named_aborted(s: u32, ) -> Weight {123 (25_552_000 as Weight)123 Weight::from_ref_time(25_552_000)124 // Standard Error: 4_000124 // Standard Error: 4_000125 .saturating_add((5_187_000 as Weight).saturating_mul(s as Weight))125 .saturating_add(Weight::from_ref_time(5_187_000).saturating_mul(s as u64))126 .saturating_add(T::DbWeight::get().reads(4 as Weight))126 .saturating_add(T::DbWeight::get().reads(4 as u64))127 .saturating_add(T::DbWeight::get().writes(4 as Weight))127 .saturating_add(T::DbWeight::get().writes(4 as u64))128 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))128 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))129 }129 }130 // Storage: Scheduler Agenda (r:2 w:2)130 // Storage: Scheduler Agenda (r:2 w:2)131 // Storage: Scheduler Lookup (r:0 w:1)131 // Storage: Scheduler Lookup (r:0 w:1)132 fn on_initialize_named(s: u32, ) -> Weight {132 fn on_initialize_named(s: u32, ) -> Weight {133 (8_980_000 as Weight)133 Weight::from_ref_time(8_980_000)134 // Standard Error: 12_000134 // Standard Error: 12_000135 .saturating_add((2_050_000 as Weight).saturating_mul(s as Weight))135 .saturating_add(Weight::from_ref_time(2_050_000).saturating_mul(s as u64))136 .saturating_add(T::DbWeight::get().reads(2 as Weight))136 .saturating_add(T::DbWeight::get().reads(2 as u64))137 .saturating_add(T::DbWeight::get().writes(2 as Weight))137 .saturating_add(T::DbWeight::get().writes(2 as u64))138 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))138 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))139 }139 }140 // Storage: Scheduler Agenda (r:1 w:1)140 // Storage: Scheduler Agenda (r:1 w:1)141 // Storage: System Account (r:1 w:1)141 // Storage: System Account (r:1 w:1)142 // Storage: System AllExtrinsicsLen (r:1 w:1)142 // Storage: System AllExtrinsicsLen (r:1 w:1)143 // Storage: System BlockWeight (r:1 w:1)143 // Storage: System BlockWeight (r:1 w:1)144 // Storage: Scheduler Lookup (r:0 w:1)144 // Storage: Scheduler Lookup (r:0 w:1)145 fn on_initialize(s: u32, ) -> Weight {145 fn on_initialize(s: u32, ) -> Weight {146 (24_482_000 as Weight)146 Weight::from_ref_time(24_482_000)147 // Standard Error: 4_000147 // Standard Error: 4_000148 .saturating_add((5_249_000 as Weight).saturating_mul(s as Weight))148 .saturating_add(Weight::from_ref_time(5_249_000).saturating_mul(s as u64))149 .saturating_add(T::DbWeight::get().reads(4 as Weight))149 .saturating_add(T::DbWeight::get().reads(4 as u64))150 .saturating_add(T::DbWeight::get().writes(4 as Weight))150 .saturating_add(T::DbWeight::get().writes(4 as u64))151 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))151 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))152 }152 }153 // Storage: Scheduler Agenda (r:1 w:1)153 // Storage: Scheduler Agenda (r:1 w:1)154 // Storage: System Account (r:1 w:1)154 // Storage: System Account (r:1 w:1)155 // Storage: System AllExtrinsicsLen (r:1 w:1)155 // Storage: System AllExtrinsicsLen (r:1 w:1)156 // Storage: System BlockWeight (r:1 w:1)156 // Storage: System BlockWeight (r:1 w:1)157 // Storage: Scheduler Lookup (r:0 w:1)157 // Storage: Scheduler Lookup (r:0 w:1)158 fn on_initialize_resolved(s: u32, ) -> Weight {158 fn on_initialize_resolved(s: u32, ) -> Weight {159 (25_187_000 as Weight)159 Weight::from_ref_time(25_187_000)160 // Standard Error: 4_000160 // Standard Error: 4_000161 .saturating_add((5_216_000 as Weight).saturating_mul(s as Weight))161 .saturating_add(Weight::from_ref_time(5_216_000).saturating_mul(s as u64))162 .saturating_add(T::DbWeight::get().reads(4 as Weight))162 .saturating_add(T::DbWeight::get().reads(4 as u64))163 .saturating_add(T::DbWeight::get().writes(4 as Weight))163 .saturating_add(T::DbWeight::get().writes(4 as u64))164 .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))164 .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64)))165 }165 }166 // Storage: Scheduler Lookup (r:1 w:1)166 // Storage: Scheduler Lookup (r:1 w:1)167 // Storage: Scheduler Agenda (r:1 w:1)167 // Storage: Scheduler Agenda (r:1 w:1)168 fn schedule_named(s: u32, ) -> Weight {168 fn schedule_named(s: u32, ) -> Weight {169 (17_316_000 as Weight)169 Weight::from_ref_time(17_316_000)170 // Standard Error: 3_000170 // Standard Error: 3_000171 .saturating_add((82_000 as Weight).saturating_mul(s as Weight))171 .saturating_add(Weight::from_ref_time(82_000).saturating_mul(s as u64))172 .saturating_add(T::DbWeight::get().reads(2 as Weight))172 .saturating_add(T::DbWeight::get().reads(2 as u64))173 .saturating_add(T::DbWeight::get().writes(2 as Weight))173 .saturating_add(T::DbWeight::get().writes(2 as u64))174 }174 }175 // Storage: Scheduler Lookup (r:1 w:1)175 // Storage: Scheduler Lookup (r:1 w:1)176 // Storage: Scheduler Agenda (r:1 w:1)176 // Storage: Scheduler Agenda (r:1 w:1)177 fn cancel_named(s: u32, ) -> Weight {177 fn cancel_named(s: u32, ) -> Weight {178 (15_652_000 as Weight)178 Weight::from_ref_time(15_652_000)179 // Standard Error: 1_000179 // Standard Error: 1_000180 .saturating_add((436_000 as Weight).saturating_mul(s as Weight))180 .saturating_add(Weight::from_ref_time(436_000).saturating_mul(s as u64))181 .saturating_add(T::DbWeight::get().reads(2 as Weight))181 .saturating_add(T::DbWeight::get().reads(2 as u64))182 .saturating_add(T::DbWeight::get().writes(2 as Weight))182 .saturating_add(T::DbWeight::get().writes(2 as u64))183 }183 }184}184}185185191 // Storage: System BlockWeight (r:1 w:1)191 // Storage: System BlockWeight (r:1 w:1)192 // Storage: Scheduler Lookup (r:0 w:1)192 // Storage: Scheduler Lookup (r:0 w:1)193 fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {193 fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight {194 (26_641_000 as Weight)194 Weight::from_ref_time(26_641_000)195 // Standard Error: 9_000195 // Standard Error: 9_000196 .saturating_add((8_547_000 as Weight).saturating_mul(s as Weight))196 .saturating_add(Weight::from_ref_time(8_547_000).saturating_mul(s as u64))197 .saturating_add(RocksDbWeight::get().reads(4 as Weight))197 .saturating_add(RocksDbWeight::get().reads(4 as u64))198 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))198 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(s as u64)))199 .saturating_add(RocksDbWeight::get().writes(4 as Weight))199 .saturating_add(RocksDbWeight::get().writes(4 as u64))200 .saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))200 .saturating_add(RocksDbWeight::get().writes((2 as u64).saturating_mul(s as u64)))201 }201 }202 // Storage: Scheduler Agenda (r:1 w:1)202 // Storage: Scheduler Agenda (r:1 w:1)203 // Storage: System Account (r:1 w:1)203 // Storage: System Account (r:1 w:1)204 // Storage: System AllExtrinsicsLen (r:1 w:1)204 // Storage: System AllExtrinsicsLen (r:1 w:1)205 // Storage: System BlockWeight (r:1 w:1)205 // Storage: System BlockWeight (r:1 w:1)206 // Storage: Scheduler Lookup (r:0 w:1)206 // Storage: Scheduler Lookup (r:0 w:1)207 fn on_initialize_named_resolved(s: u32, ) -> Weight {207 fn on_initialize_named_resolved(s: u32, ) -> Weight {208 (23_941_000 as Weight)208 Weight::from_ref_time(23_941_000)209 // Standard Error: 17_000209 // Standard Error: 17_000210 .saturating_add((5_282_000 as Weight).saturating_mul(s as Weight))210 .saturating_add(Weight::from_ref_time(5_282_000).saturating_mul(s as u64))211 .saturating_add(RocksDbWeight::get().reads(4 as Weight))211 .saturating_add(RocksDbWeight::get().reads(4 as u64))212 .saturating_add(RocksDbWeight::get().writes(4 as Weight))212 .saturating_add(RocksDbWeight::get().writes(4 as u64))213 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))213 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))214 }214 }215 // Storage: Scheduler Agenda (r:2 w:2)215 // Storage: Scheduler Agenda (r:2 w:2)216 // Storage: System Account (r:1 w:1)216 // Storage: System Account (r:1 w:1)217 // Storage: System AllExtrinsicsLen (r:1 w:1)217 // Storage: System AllExtrinsicsLen (r:1 w:1)218 // Storage: System BlockWeight (r:1 w:1)218 // Storage: System BlockWeight (r:1 w:1)219 // Storage: Scheduler Lookup (r:0 w:1)219 // Storage: Scheduler Lookup (r:0 w:1)220 fn on_initialize_periodic(s: u32, ) -> Weight {220 fn on_initialize_periodic(s: u32, ) -> Weight {221 (24_858_000 as Weight)221 Weight::from_ref_time(24_858_000)222 // Standard Error: 7_000222 // Standard Error: 7_000223 .saturating_add((8_657_000 as Weight).saturating_mul(s as Weight))223 .saturating_add(Weight::from_ref_time(8_657_000).saturating_mul(s as u64))224 .saturating_add(RocksDbWeight::get().reads(4 as Weight))224 .saturating_add(RocksDbWeight::get().reads(4 as u64))225 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))225 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(s as u64)))226 .saturating_add(RocksDbWeight::get().writes(4 as Weight))226 .saturating_add(RocksDbWeight::get().writes(4 as u64))227 .saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))227 .saturating_add(RocksDbWeight::get().writes((2 as u64).saturating_mul(s as u64)))228 }228 }229 // Storage: Scheduler Agenda (r:2 w:2)229 // Storage: Scheduler Agenda (r:2 w:2)230 // Storage: System Account (r:1 w:1)230 // Storage: System Account (r:1 w:1)231 // Storage: System AllExtrinsicsLen (r:1 w:1)231 // Storage: System AllExtrinsicsLen (r:1 w:1)232 // Storage: System BlockWeight (r:1 w:1)232 // Storage: System BlockWeight (r:1 w:1)233 // Storage: Scheduler Lookup (r:0 w:1)233 // Storage: Scheduler Lookup (r:0 w:1)234 fn on_initialize_periodic_resolved(s: u32, ) -> Weight {234 fn on_initialize_periodic_resolved(s: u32, ) -> Weight {235 (25_515_000 as Weight)235 Weight::from_ref_time(25_515_000)236 // Standard Error: 14_000236 // Standard Error: 14_000237 .saturating_add((8_656_000 as Weight).saturating_mul(s as Weight))237 .saturating_add(Weight::from_ref_time(8_656_000).saturating_mul(s as u64))238 .saturating_add(RocksDbWeight::get().reads(4 as Weight))238 .saturating_add(RocksDbWeight::get().reads(4 as u64))239 .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(s as Weight)))239 .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(s as u64)))240 .saturating_add(RocksDbWeight::get().writes(4 as Weight))240 .saturating_add(RocksDbWeight::get().writes(4 as u64))241 .saturating_add(RocksDbWeight::get().writes((2 as Weight).saturating_mul(s as Weight)))241 .saturating_add(RocksDbWeight::get().writes((2 as u64).saturating_mul(s as u64)))242 }242 }243 // Storage: Scheduler Agenda (r:2 w:2)243 // Storage: Scheduler Agenda (r:2 w:2)244 // Storage: Scheduler Lookup (r:0 w:1)244 // Storage: Scheduler Lookup (r:0 w:1)245 fn on_initialize_aborted(s: u32, ) -> Weight {245 fn on_initialize_aborted(s: u32, ) -> Weight {246 (7_584_000 as Weight)246 Weight::from_ref_time(7_584_000)247 // Standard Error: 1_000247 // Standard Error: 1_000248 .saturating_add((2_065_000 as Weight).saturating_mul(s as Weight))248 .saturating_add(Weight::from_ref_time(2_065_000).saturating_mul(s as u64))249 .saturating_add(RocksDbWeight::get().reads(2 as Weight))249 .saturating_add(RocksDbWeight::get().reads(2 as u64))250 .saturating_add(RocksDbWeight::get().writes(2 as Weight))250 .saturating_add(RocksDbWeight::get().writes(2 as u64))251 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))251 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))252 }252 }253 // Storage: Scheduler Agenda (r:1 w:1)253 // Storage: Scheduler Agenda (r:1 w:1)254 // Storage: System Account (r:1 w:1)254 // Storage: System Account (r:1 w:1)255 // Storage: System AllExtrinsicsLen (r:1 w:1)255 // Storage: System AllExtrinsicsLen (r:1 w:1)256 // Storage: System BlockWeight (r:1 w:1)256 // Storage: System BlockWeight (r:1 w:1)257 // Storage: Scheduler Lookup (r:0 w:1)257 // Storage: Scheduler Lookup (r:0 w:1)258 fn on_initialize_named_aborted(s: u32, ) -> Weight {258 fn on_initialize_named_aborted(s: u32, ) -> Weight {259 (25_552_000 as Weight)259 Weight::from_ref_time(25_552_000)260 // Standard Error: 4_000260 // Standard Error: 4_000261 .saturating_add((5_187_000 as Weight).saturating_mul(s as Weight))261 .saturating_add(Weight::from_ref_time(5_187_000).saturating_mul(s as u64))262 .saturating_add(RocksDbWeight::get().reads(4 as Weight))262 .saturating_add(RocksDbWeight::get().reads(4 as u64))263 .saturating_add(RocksDbWeight::get().writes(4 as Weight))263 .saturating_add(RocksDbWeight::get().writes(4 as u64))264 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))264 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))265 }265 }266 // Storage: Scheduler Agenda (r:2 w:2)266 // Storage: Scheduler Agenda (r:2 w:2)267 // Storage: Scheduler Lookup (r:0 w:1)267 // Storage: Scheduler Lookup (r:0 w:1)268 fn on_initialize_named(s: u32, ) -> Weight {268 fn on_initialize_named(s: u32, ) -> Weight {269 (8_980_000 as Weight)269 Weight::from_ref_time(8_980_000)270 // Standard Error: 12_000270 // Standard Error: 12_000271 .saturating_add((2_050_000 as Weight).saturating_mul(s as Weight))271 .saturating_add(Weight::from_ref_time(2_050_000).saturating_mul(s as u64))272 .saturating_add(RocksDbWeight::get().reads(2 as Weight))272 .saturating_add(RocksDbWeight::get().reads(2 as u64))273 .saturating_add(RocksDbWeight::get().writes(2 as Weight))273 .saturating_add(RocksDbWeight::get().writes(2 as u64))274 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))274 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))275 }275 }276 // Storage: Scheduler Agenda (r:1 w:1)276 // Storage: Scheduler Agenda (r:1 w:1)277 // Storage: System Account (r:1 w:1)277 // Storage: System Account (r:1 w:1)278 // Storage: System AllExtrinsicsLen (r:1 w:1)278 // Storage: System AllExtrinsicsLen (r:1 w:1)279 // Storage: System BlockWeight (r:1 w:1)279 // Storage: System BlockWeight (r:1 w:1)280 // Storage: Scheduler Lookup (r:0 w:1)280 // Storage: Scheduler Lookup (r:0 w:1)281 fn on_initialize(s: u32, ) -> Weight {281 fn on_initialize(s: u32, ) -> Weight {282 (24_482_000 as Weight)282 Weight::from_ref_time(24_482_000)283 // Standard Error: 4_000283 // Standard Error: 4_000284 .saturating_add((5_249_000 as Weight).saturating_mul(s as Weight))284 .saturating_add(Weight::from_ref_time(5_249_000).saturating_mul(s as u64))285 .saturating_add(RocksDbWeight::get().reads(4 as Weight))285 .saturating_add(RocksDbWeight::get().reads(4 as u64))286 .saturating_add(RocksDbWeight::get().writes(4 as Weight))286 .saturating_add(RocksDbWeight::get().writes(4 as u64))287 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))287 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))288 }288 }289 // Storage: Scheduler Agenda (r:1 w:1)289 // Storage: Scheduler Agenda (r:1 w:1)290 // Storage: System Account (r:1 w:1)290 // Storage: System Account (r:1 w:1)291 // Storage: System AllExtrinsicsLen (r:1 w:1)291 // Storage: System AllExtrinsicsLen (r:1 w:1)292 // Storage: System BlockWeight (r:1 w:1)292 // Storage: System BlockWeight (r:1 w:1)293 // Storage: Scheduler Lookup (r:0 w:1)293 // Storage: Scheduler Lookup (r:0 w:1)294 fn on_initialize_resolved(s: u32, ) -> Weight {294 fn on_initialize_resolved(s: u32, ) -> Weight {295 (25_187_000 as Weight)295 Weight::from_ref_time(25_187_000)296 // Standard Error: 4_000296 // Standard Error: 4_000297 .saturating_add((5_216_000 as Weight).saturating_mul(s as Weight))297 .saturating_add(Weight::from_ref_time(5_216_000).saturating_mul(s as u64))298 .saturating_add(RocksDbWeight::get().reads(4 as Weight))298 .saturating_add(RocksDbWeight::get().reads(4 as u64))299 .saturating_add(RocksDbWeight::get().writes(4 as Weight))299 .saturating_add(RocksDbWeight::get().writes(4 as u64))300 .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(s as Weight)))300 .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64)))301 }301 }302 // Storage: Scheduler Lookup (r:1 w:1)302 // Storage: Scheduler Lookup (r:1 w:1)303 // Storage: Scheduler Agenda (r:1 w:1)303 // Storage: Scheduler Agenda (r:1 w:1)304 fn schedule_named(s: u32, ) -> Weight {304 fn schedule_named(s: u32, ) -> Weight {305 (17_316_000 as Weight)305 Weight::from_ref_time(17_316_000)306 // Standard Error: 3_000306 // Standard Error: 3_000307 .saturating_add((82_000 as Weight).saturating_mul(s as Weight))307 .saturating_add(Weight::from_ref_time(82_000).saturating_mul(s as u64))308 .saturating_add(RocksDbWeight::get().reads(2 as Weight))308 .saturating_add(RocksDbWeight::get().reads(2 as u64))309 .saturating_add(RocksDbWeight::get().writes(2 as Weight))309 .saturating_add(RocksDbWeight::get().writes(2 as u64))310 }310 }311 // Storage: Scheduler Lookup (r:1 w:1)311 // Storage: Scheduler Lookup (r:1 w:1)312 // Storage: Scheduler Agenda (r:1 w:1)312 // Storage: Scheduler Agenda (r:1 w:1)313 fn cancel_named(s: u32, ) -> Weight {313 fn cancel_named(s: u32, ) -> Weight {314 (15_652_000 as Weight)314 Weight::from_ref_time(15_652_000)315 // Standard Error: 1_000315 // Standard Error: 1_000316 .saturating_add((436_000 as Weight).saturating_mul(s as Weight))316 .saturating_add(Weight::from_ref_time(436_000).saturating_mul(s as u64))317 .saturating_add(RocksDbWeight::get().reads(2 as Weight))317 .saturating_add(RocksDbWeight::get().reads(2 as u64))318 .saturating_add(RocksDbWeight::get().writes(2 as Weight))318 .saturating_add(RocksDbWeight::get().writes(2 as u64))319 }319 }320}320}321321pallets/structure/Cargo.tomldiffbeforeafterboth4edition = "2021"4edition = "2021"556[dependencies]6[dependencies]7frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }7frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }8frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }8frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }9frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }9frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }10sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }10sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }11pallet-common = { path = "../common", default-features = false }11pallet-common = { path = "../common", default-features = false }12parity-scale-codec = { version = "3.1.2", default-features = false, features = [12parity-scale-codec = { version = "3.1.2", default-features = false, features = [13 "derive",13 "derive",16 "derive",16 "derive",17] }17] }18up-data-structs = { path = "../../primitives/data-structs", default-features = false }18up-data-structs = { path = "../../primitives/data-structs", default-features = false }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }202021[features]21[features]22default = ["std"]22default = ["std"]pallets/structure/src/benchmarking.rsdiffbeforeafterboth32 let caller_cross = T::CrossAccountId::from_sub(caller.clone());32 let caller_cross = T::CrossAccountId::from_sub(caller.clone());333334 <T as CommonConfig>::Currency::deposit_creating(&caller, T::CollectionCreationPrice::get());34 <T as CommonConfig>::Currency::deposit_creating(&caller, T::CollectionCreationPrice::get());35 T::CollectionDispatch::create(caller_cross.clone(), CreateCollectionData {35 T::CollectionDispatch::create(caller_cross.clone(), caller_cross.clone(), CreateCollectionData {36 mode: CollectionMode::NFT,36 mode: CollectionMode::NFT,37 ..Default::default()37 ..Default::default()38 })?;38 })?;pallets/structure/src/weights.rsdiffbeforeafterboth42 // Storage: Common CollectionById (r:1 w:0)42 // Storage: Common CollectionById (r:1 w:0)43 // Storage: Nonfungible TokenData (r:1 w:0)43 // Storage: Nonfungible TokenData (r:1 w:0)44 fn find_parent() -> Weight {44 fn find_parent() -> Weight {45 (7_180_000 as Weight)45 Weight::from_ref_time(7_180_000)46 .saturating_add(T::DbWeight::get().reads(2 as Weight))46 .saturating_add(T::DbWeight::get().reads(2 as u64))47 }47 }48}48}494952 // Storage: Common CollectionById (r:1 w:0)52 // Storage: Common CollectionById (r:1 w:0)53 // Storage: Nonfungible TokenData (r:1 w:0)53 // Storage: Nonfungible TokenData (r:1 w:0)54 fn find_parent() -> Weight {54 fn find_parent() -> Weight {55 (7_180_000 as Weight)55 Weight::from_ref_time(7_180_000)56 .saturating_add(RocksDbWeight::get().reads(2 as Weight))56 .saturating_add(RocksDbWeight::get().reads(2 as u64))57 }57 }58}58}5959pallets/unique/Cargo.tomldiffbeforeafterboth59default-features = false59default-features = false60optional = true60optional = true61git = "https://github.com/paritytech/substrate"61git = "https://github.com/paritytech/substrate"62branch = "polkadot-v0.9.27"62branch = "polkadot-v0.9.29"636364[dependencies.frame-support]64[dependencies.frame-support]65default-features = false65default-features = false66git = "https://github.com/paritytech/substrate"66git = "https://github.com/paritytech/substrate"67branch = "polkadot-v0.9.27"67branch = "polkadot-v0.9.29"686869[dependencies.frame-system]69[dependencies.frame-system]70default-features = false70default-features = false71git = "https://github.com/paritytech/substrate"71git = "https://github.com/paritytech/substrate"72branch = "polkadot-v0.9.27"72branch = "polkadot-v0.9.29"737374[dependencies.sp-std]74[dependencies.sp-std]75default-features = false75default-features = false76git = "https://github.com/paritytech/substrate"76git = "https://github.com/paritytech/substrate"77branch = "polkadot-v0.9.27"77branch = "polkadot-v0.9.29"787879[dependencies.sp-runtime]79[dependencies.sp-runtime]80default-features = false80default-features = false81git = "https://github.com/paritytech/substrate"81git = "https://github.com/paritytech/substrate"82branch = "polkadot-v0.9.27"82branch = "polkadot-v0.9.29"838384[dependencies.sp-core]84[dependencies.sp-core]85default-features = false85default-features = false86git = "https://github.com/paritytech/substrate"86git = "https://github.com/paritytech/substrate"87branch = "polkadot-v0.9.27"87branch = "polkadot-v0.9.29"888889[dependencies.sp-io]89[dependencies.sp-io]90default-features = false90default-features = false91git = "https://github.com/paritytech/substrate"91git = "https://github.com/paritytech/substrate"92branch = "polkadot-v0.9.27"92branch = "polkadot-v0.9.29"939394################################################################################94################################################################################95# Local Dependencies95# Local Dependencies98scale-info = { version = "2.0.1", default-features = false, features = [98scale-info = { version = "2.0.1", default-features = false, features = [99 "derive",99 "derive",100] }100] }101pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }101pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }102pallet-common = { default-features = false, path = "../common" }102pallet-common = { default-features = false, path = "../common" }103evm-coder = { default-features = false, path = '../../crates/evm-coder' }103evm-coder = { default-features = false, path = '../../crates/evm-coder' }104pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }104pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }pallets/unique/src/eth/mod.rsdiffbeforeafterboth28 static_property::{key, value as property_value},28 static_property::{key, value as property_value},29 },29 },30};30};31use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};31use pallet_evm_coder_substrate::{dispatch_to_evm, SubstrateRecorder, WithRecorder};32use pallet_evm::{account::CrossAccountId, OnMethodCall, PrecompileHandle, PrecompileResult};32use pallet_evm::{account::CrossAccountId, OnMethodCall, PrecompileHandle, PrecompileResult};33use up_data_structs::{33use up_data_structs::{34 CollectionName, CollectionDescription, CollectionTokenPrefix, CreateCollectionData,34 CollectionName, CollectionDescription, CollectionTokenPrefix, CreateCollectionData,156 T: Config + pallet_nonfungible::Config + pallet_refungible::Config,156 T: Config + pallet_nonfungible::Config + pallet_refungible::Config,157>(157>(158 caller: caller,158 caller: caller,159 value: value,159 name: string,160 name: string,160 description: string,161 description: string,161 token_prefix: string,162 token_prefix: string,172 base_uri_value,173 base_uri_value,173 add_properties,174 add_properties,174 )?;175 )?;176 check_sent_amount_equals_collection_creation_price::<T>(value)?;177 let collection_helpers_address =178 T::CrossAccountId::from_eth(<T as pallet_common::Config>::ContractAddress::get());175179176 let collection_id = T::CollectionDispatch::create(caller.clone(), data)180 let collection_id =181 T::CollectionDispatch::create(caller.clone(), collection_helpers_address, data)177 .map_err(pallet_evm_coder_substrate::dispatch_to_evm::<T>)?;182 .map_err(pallet_evm_coder_substrate::dispatch_to_evm::<T>)?;178 let address = pallet_common::eth::collection_id_to_address(collection_id);183 let address = pallet_common::eth::collection_id_to_address(collection_id);179 Ok(address)184 Ok(address)180}185}186187fn check_sent_amount_equals_collection_creation_price<T: Config>(value: value) -> Result<()> {188 let value = value.as_u128();189 let creation_price: u128 = T::CollectionCreationPrice::get()190 .try_into()191 .map_err(|_| ()) // workaround for `expect` requiring `Debug` trait192 .expect("Collection creation price should be convertible to u128");193 if value != creation_price {194 return Err(format!(195 "Sent amount not equals to collection creation price ({0})",196 creation_price197 )198 .into());199 }200 Ok(())201}181202182/// @title Contract, which allows users to operate with collections203/// @title Contract, which allows users to operate with collections183#[solidity_interface(name = CollectionHelpers, events(CollectionHelpersEvents))]204#[solidity_interface(name = CollectionHelpers, events(CollectionHelpersEvents))]184impl<T> EvmCollectionHelpers<T>205impl<T> EvmCollectionHelpers<T>185where206where186 T: Config + pallet_nonfungible::Config + pallet_refungible::Config,207 T: Config + pallet_common::Config + pallet_nonfungible::Config + pallet_refungible::Config,187{208{188 /// Create an NFT collection209 /// Create an NFT collection189 /// @param name Name of the collection210 /// @param name Name of the collection194 fn create_nonfungible_collection(215 fn create_nonfungible_collection(195 &mut self,216 &mut self,196 caller: caller,217 caller: caller,218 value: value,197 name: string,219 name: string,198 description: string,220 description: string,199 token_prefix: string,221 token_prefix: string,208 Default::default(),230 Default::default(),209 false,231 false,210 )?;232 )?;233 check_sent_amount_equals_collection_creation_price::<T>(value)?;234 let collection_helpers_address =235 T::CrossAccountId::from_eth(<T as pallet_common::Config>::ContractAddress::get());211 let collection_id = T::CollectionDispatch::create(caller, data)236 let collection_id = T::CollectionDispatch::create(caller, collection_helpers_address, data)212 .map_err(pallet_evm_coder_substrate::dispatch_to_evm::<T>)?;237 .map_err(dispatch_to_evm::<T>)?;213238214 let address = pallet_common::eth::collection_id_to_address(collection_id);239 let address = pallet_common::eth::collection_id_to_address(collection_id);215 Ok(address)240 Ok(address)220 fn create_nonfungible_collection_with_properties(245 fn create_nonfungible_collection_with_properties(221 &mut self,246 &mut self,222 caller: caller,247 caller: caller,248 value: value,223 name: string,249 name: string,224 description: string,250 description: string,225 token_prefix: string,251 token_prefix: string,235 base_uri_value,261 base_uri_value,236 true,262 true,237 )?;263 )?;264 check_sent_amount_equals_collection_creation_price::<T>(value)?;265 let collection_helpers_address =266 T::CrossAccountId::from_eth(<T as pallet_common::Config>::ContractAddress::get());238 let collection_id = T::CollectionDispatch::create(caller, data)267 let collection_id = T::CollectionDispatch::create(caller, collection_helpers_address, data)239 .map_err(pallet_evm_coder_substrate::dispatch_to_evm::<T>)?;268 .map_err(pallet_evm_coder_substrate::dispatch_to_evm::<T>)?;240269241 let address = pallet_common::eth::collection_id_to_address(collection_id);270 let address = pallet_common::eth::collection_id_to_address(collection_id);247 fn create_refungible_collection(276 fn create_refungible_collection(248 &mut self,277 &mut self,249 caller: caller,278 caller: caller,279 value: value,250 name: string,280 name: string,251 description: string,281 description: string,252 token_prefix: string,282 token_prefix: string,253 ) -> Result<address> {283 ) -> Result<address> {254 create_refungible_collection_internal::<T>(284 create_refungible_collection_internal::<T>(255 caller,285 caller,286 value,256 name,287 name,257 description,288 description,258 token_prefix,289 token_prefix,266 fn create_refungible_collection_with_properties(297 fn create_refungible_collection_with_properties(267 &mut self,298 &mut self,268 caller: caller,299 caller: caller,300 value: value,269 name: string,301 name: string,270 description: string,302 description: string,271 token_prefix: string,303 token_prefix: string,272 base_uri: string,304 base_uri: string,273 ) -> Result<address> {305 ) -> Result<address> {274 create_refungible_collection_internal::<T>(306 create_refungible_collection_internal::<T>(275 caller,307 caller,308 value,276 name,309 name,277 description,310 description,278 token_prefix,311 token_prefix,293 Ok(false)326 Ok(false)294 }327 }328329 fn collection_creation_fee(&self) -> Result<value> {330 let price: u128 = T::CollectionCreationPrice::get()331 .try_into()332 .map_err(|_| ()) // workaround for `expect` requiring `Debug` trait333 .expect("Collection creation price should be convertible to u128");334 Ok(price.into())335 }295}336}296337297/// Implements [`OnMethodCall`], which delegates call to [`EvmCollectionHelpers`]338/// Implements [`OnMethodCall`], which delegates call to [`EvmCollectionHelpers`]pallets/unique/src/eth/stubs/CollectionHelpers.rawdiffbeforeafterbothbinary blob — no preview
pallets/unique/src/eth/stubs/CollectionHelpers.soldiffbeforeafterboth23}23}242425/// @title Contract, which allows users to operate with collections25/// @title Contract, which allows users to operate with collections26/// @dev the ERC-165 identifier for this interface is 0x88ee8ef126/// @dev the ERC-165 identifier for this interface is 0x5ad4f44027contract CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {27contract CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {28 /// Create an NFT collection28 /// Create an NFT collection29 /// @param name Name of the collection29 /// @param name Name of the collection36 string memory name,36 string memory name,37 string memory description,37 string memory description,38 string memory tokenPrefix38 string memory tokenPrefix39 ) public returns (address) {39 ) public payable returns (address) {40 require(false, stub_error);40 require(false, stub_error);41 name;41 name;42 description;42 description;52 string memory description,52 string memory description,53 string memory tokenPrefix,53 string memory tokenPrefix,54 string memory baseUri54 string memory baseUri55 ) public returns (address) {55 ) public payable returns (address) {56 require(false, stub_error);56 require(false, stub_error);57 name;57 name;58 description;58 description;68 string memory name,68 string memory name,69 string memory description,69 string memory description,70 string memory tokenPrefix70 string memory tokenPrefix71 ) public returns (address) {71 ) public payable returns (address) {72 require(false, stub_error);72 require(false, stub_error);73 name;73 name;74 description;74 description;84 string memory description,84 string memory description,85 string memory tokenPrefix,85 string memory tokenPrefix,86 string memory baseUri86 string memory baseUri87 ) public returns (address) {87 ) public payable returns (address) {88 require(false, stub_error);88 require(false, stub_error);89 name;89 name;90 description;90 description;106 return false;106 return false;107 }107 }108109 /// @dev EVM selector for this function is: 0xd23a7ab1,110 /// or in textual repr: collectionCreationFee()111 function collectionCreationFee() public view returns (uint256) {112 require(false, stub_error);113 dummy;114 return 0;115 }108}116}109117pallets/unique/src/lib.rsdiffbeforeafterboth83};83};84use scale_info::TypeInfo;84use scale_info::TypeInfo;85use frame_system::{self as system, ensure_signed};85use frame_system::{self as system, ensure_signed};86use sp_runtime::{sp_std::prelude::Vec};86use sp_std::{vec, vec::Vec};87use up_data_structs::{87use up_data_structs::{88 MAX_COLLECTION_NAME_LENGTH, MAX_COLLECTION_DESCRIPTION_LENGTH, MAX_TOKEN_PREFIX_LENGTH,88 MAX_COLLECTION_NAME_LENGTH, MAX_COLLECTION_DESCRIPTION_LENGTH, MAX_TOKEN_PREFIX_LENGTH,89 CreateItemData, CollectionLimits, CollectionPermissions, CollectionId, CollectionMode, TokenId,89 CreateItemData, CollectionLimits, CollectionPermissions, CollectionId, CollectionMode, TokenId,280 pub fn deposit_event() = default;280 pub fn deposit_event() = default;281281282 fn on_initialize(_now: T::BlockNumber) -> Weight {282 fn on_initialize(_now: T::BlockNumber) -> Weight {283 0283 Weight::zero()284 }284 }285285286 fn on_runtime_upgrade() -> Weight {286 fn on_runtime_upgrade() -> Weight {287 0287 Weight::zero()288 }288 }289289290 /// Create a collection of tokens.290 /// Create a collection of tokens.344 let sender = ensure_signed(origin)?;344 let sender = ensure_signed(origin)?;345345346 // =========346 // =========347347 let sender = T::CrossAccountId::from_sub(sender);348 let _id = T::CollectionDispatch::create(T::CrossAccountId::from_sub(sender), data)?;348 let _id = T::CollectionDispatch::create(sender.clone(), sender, data)?;349349350 Ok(())350 Ok(())351 }351 }pallets/unique/src/weights.rsdiffbeforeafterboth57 // Storage: Common CollectionProperties (r:0 w:1)57 // Storage: Common CollectionProperties (r:0 w:1)58 // Storage: Common CollectionById (r:0 w:1)58 // Storage: Common CollectionById (r:0 w:1)59 fn create_collection() -> Weight {59 fn create_collection() -> Weight {60 (43_143_000 as Weight)60 Weight::from_ref_time(43_143_000)61 .saturating_add(T::DbWeight::get().reads(4 as Weight))61 .saturating_add(T::DbWeight::get().reads(4 as u64))62 .saturating_add(T::DbWeight::get().writes(6 as Weight))62 .saturating_add(T::DbWeight::get().writes(6 as u64))63 }63 }64 // Storage: Common CollectionById (r:1 w:1)64 // Storage: Common CollectionById (r:1 w:1)65 // Storage: Nonfungible TokenData (r:1 w:0)65 // Storage: Nonfungible TokenData (r:1 w:0)69 // Storage: Common AdminAmount (r:0 w:1)69 // Storage: Common AdminAmount (r:0 w:1)70 // Storage: Common CollectionProperties (r:0 w:1)70 // Storage: Common CollectionProperties (r:0 w:1)71 fn destroy_collection() -> Weight {71 fn destroy_collection() -> Weight {72 (50_188_000 as Weight)72 Weight::from_ref_time(50_188_000)73 .saturating_add(T::DbWeight::get().reads(3 as Weight))73 .saturating_add(T::DbWeight::get().reads(3 as u64))74 .saturating_add(T::DbWeight::get().writes(6 as Weight))74 .saturating_add(T::DbWeight::get().writes(6 as u64))75 }75 }76 // Storage: Common CollectionById (r:1 w:0)76 // Storage: Common CollectionById (r:1 w:0)77 // Storage: Common Allowlist (r:0 w:1)77 // Storage: Common Allowlist (r:0 w:1)78 fn add_to_allow_list() -> Weight {78 fn add_to_allow_list() -> Weight {79 (18_238_000 as Weight)79 Weight::from_ref_time(18_238_000)80 .saturating_add(T::DbWeight::get().reads(1 as Weight))80 .saturating_add(T::DbWeight::get().reads(1 as u64))81 .saturating_add(T::DbWeight::get().writes(1 as Weight))81 .saturating_add(T::DbWeight::get().writes(1 as u64))82 }82 }83 // Storage: Common CollectionById (r:1 w:0)83 // Storage: Common CollectionById (r:1 w:0)84 // Storage: Common Allowlist (r:0 w:1)84 // Storage: Common Allowlist (r:0 w:1)85 fn remove_from_allow_list() -> Weight {85 fn remove_from_allow_list() -> Weight {86 (18_084_000 as Weight)86 Weight::from_ref_time(18_084_000)87 .saturating_add(T::DbWeight::get().reads(1 as Weight))87 .saturating_add(T::DbWeight::get().reads(1 as u64))88 .saturating_add(T::DbWeight::get().writes(1 as Weight))88 .saturating_add(T::DbWeight::get().writes(1 as u64))89 }89 }90 // Storage: Common CollectionById (r:1 w:1)90 // Storage: Common CollectionById (r:1 w:1)91 fn change_collection_owner() -> Weight {91 fn change_collection_owner() -> Weight {92 (18_265_000 as Weight)92 Weight::from_ref_time(18_265_000)93 .saturating_add(T::DbWeight::get().reads(1 as Weight))93 .saturating_add(T::DbWeight::get().reads(1 as u64))94 .saturating_add(T::DbWeight::get().writes(1 as Weight))94 .saturating_add(T::DbWeight::get().writes(1 as u64))95 }95 }96 // Storage: Common CollectionById (r:1 w:0)96 // Storage: Common CollectionById (r:1 w:0)97 // Storage: Common IsAdmin (r:1 w:1)97 // Storage: Common IsAdmin (r:1 w:1)98 // Storage: Common AdminAmount (r:1 w:1)98 // Storage: Common AdminAmount (r:1 w:1)99 fn add_collection_admin() -> Weight {99 fn add_collection_admin() -> Weight {100 (23_558_000 as Weight)100 Weight::from_ref_time(23_558_000)101 .saturating_add(T::DbWeight::get().reads(3 as Weight))101 .saturating_add(T::DbWeight::get().reads(3 as u64))102 .saturating_add(T::DbWeight::get().writes(2 as Weight))102 .saturating_add(T::DbWeight::get().writes(2 as u64))103 }103 }104 // Storage: Common CollectionById (r:1 w:0)104 // Storage: Common CollectionById (r:1 w:0)105 // Storage: Common IsAdmin (r:1 w:1)105 // Storage: Common IsAdmin (r:1 w:1)106 // Storage: Common AdminAmount (r:1 w:1)106 // Storage: Common AdminAmount (r:1 w:1)107 fn remove_collection_admin() -> Weight {107 fn remove_collection_admin() -> Weight {108 (25_285_000 as Weight)108 Weight::from_ref_time(25_285_000)109 .saturating_add(T::DbWeight::get().reads(3 as Weight))109 .saturating_add(T::DbWeight::get().reads(3 as u64))110 .saturating_add(T::DbWeight::get().writes(2 as Weight))110 .saturating_add(T::DbWeight::get().writes(2 as u64))111 }111 }112 // Storage: Common CollectionById (r:1 w:1)112 // Storage: Common CollectionById (r:1 w:1)113 fn set_collection_sponsor() -> Weight {113 fn set_collection_sponsor() -> Weight {114 (17_885_000 as Weight)114 Weight::from_ref_time(17_885_000)115 .saturating_add(T::DbWeight::get().reads(1 as Weight))115 .saturating_add(T::DbWeight::get().reads(1 as u64))116 .saturating_add(T::DbWeight::get().writes(1 as Weight))116 .saturating_add(T::DbWeight::get().writes(1 as u64))117 }117 }118 // Storage: Common CollectionById (r:1 w:1)118 // Storage: Common CollectionById (r:1 w:1)119 fn confirm_sponsorship() -> Weight {119 fn confirm_sponsorship() -> Weight {120 (17_897_000 as Weight)120 Weight::from_ref_time(17_897_000)121 .saturating_add(T::DbWeight::get().reads(1 as Weight))121 .saturating_add(T::DbWeight::get().reads(1 as u64))122 .saturating_add(T::DbWeight::get().writes(1 as Weight))122 .saturating_add(T::DbWeight::get().writes(1 as u64))123 }123 }124 // Storage: Common CollectionById (r:1 w:1)124 // Storage: Common CollectionById (r:1 w:1)125 fn remove_collection_sponsor() -> Weight {125 fn remove_collection_sponsor() -> Weight {126 (17_836_000 as Weight)126 Weight::from_ref_time(17_836_000)127 .saturating_add(T::DbWeight::get().reads(1 as Weight))127 .saturating_add(T::DbWeight::get().reads(1 as u64))128 .saturating_add(T::DbWeight::get().writes(1 as Weight))128 .saturating_add(T::DbWeight::get().writes(1 as u64))129 }129 }130 // Storage: Common CollectionById (r:1 w:1)130 // Storage: Common CollectionById (r:1 w:1)131 fn set_transfers_enabled_flag() -> Weight {131 fn set_transfers_enabled_flag() -> Weight {132 (9_714_000 as Weight)132 Weight::from_ref_time(9_714_000)133 .saturating_add(T::DbWeight::get().reads(1 as Weight))133 .saturating_add(T::DbWeight::get().reads(1 as u64))134 .saturating_add(T::DbWeight::get().writes(1 as Weight))134 .saturating_add(T::DbWeight::get().writes(1 as u64))135 }135 }136 // Storage: Common CollectionById (r:1 w:1)136 // Storage: Common CollectionById (r:1 w:1)137 fn set_collection_limits() -> Weight {137 fn set_collection_limits() -> Weight {138 (18_166_000 as Weight)138 Weight::from_ref_time(18_166_000)139 .saturating_add(T::DbWeight::get().reads(1 as Weight))139 .saturating_add(T::DbWeight::get().reads(1 as u64))140 .saturating_add(T::DbWeight::get().writes(1 as Weight))140 .saturating_add(T::DbWeight::get().writes(1 as u64))141 }141 }142}142}143143150 // Storage: Common CollectionProperties (r:0 w:1)150 // Storage: Common CollectionProperties (r:0 w:1)151 // Storage: Common CollectionById (r:0 w:1)151 // Storage: Common CollectionById (r:0 w:1)152 fn create_collection() -> Weight {152 fn create_collection() -> Weight {153 (43_143_000 as Weight)153 Weight::from_ref_time(43_143_000)154 .saturating_add(RocksDbWeight::get().reads(4 as Weight))154 .saturating_add(RocksDbWeight::get().reads(4 as u64))155 .saturating_add(RocksDbWeight::get().writes(6 as Weight))155 .saturating_add(RocksDbWeight::get().writes(6 as u64))156 }156 }157 // Storage: Common CollectionById (r:1 w:1)157 // Storage: Common CollectionById (r:1 w:1)158 // Storage: Nonfungible TokenData (r:1 w:0)158 // Storage: Nonfungible TokenData (r:1 w:0)162 // Storage: Common AdminAmount (r:0 w:1)162 // Storage: Common AdminAmount (r:0 w:1)163 // Storage: Common CollectionProperties (r:0 w:1)163 // Storage: Common CollectionProperties (r:0 w:1)164 fn destroy_collection() -> Weight {164 fn destroy_collection() -> Weight {165 (50_188_000 as Weight)165 Weight::from_ref_time(50_188_000)166 .saturating_add(RocksDbWeight::get().reads(3 as Weight))166 .saturating_add(RocksDbWeight::get().reads(3 as u64))167 .saturating_add(RocksDbWeight::get().writes(6 as Weight))167 .saturating_add(RocksDbWeight::get().writes(6 as u64))168 }168 }169 // Storage: Common CollectionById (r:1 w:0)169 // Storage: Common CollectionById (r:1 w:0)170 // Storage: Common Allowlist (r:0 w:1)170 // Storage: Common Allowlist (r:0 w:1)171 fn add_to_allow_list() -> Weight {171 fn add_to_allow_list() -> Weight {172 (18_238_000 as Weight)172 Weight::from_ref_time(18_238_000)173 .saturating_add(RocksDbWeight::get().reads(1 as Weight))173 .saturating_add(RocksDbWeight::get().reads(1 as u64))174 .saturating_add(RocksDbWeight::get().writes(1 as Weight))174 .saturating_add(RocksDbWeight::get().writes(1 as u64))175 }175 }176 // Storage: Common CollectionById (r:1 w:0)176 // Storage: Common CollectionById (r:1 w:0)177 // Storage: Common Allowlist (r:0 w:1)177 // Storage: Common Allowlist (r:0 w:1)178 fn remove_from_allow_list() -> Weight {178 fn remove_from_allow_list() -> Weight {179 (18_084_000 as Weight)179 Weight::from_ref_time(18_084_000)180 .saturating_add(RocksDbWeight::get().reads(1 as Weight))180 .saturating_add(RocksDbWeight::get().reads(1 as u64))181 .saturating_add(RocksDbWeight::get().writes(1 as Weight))181 .saturating_add(RocksDbWeight::get().writes(1 as u64))182 }182 }183 // Storage: Common CollectionById (r:1 w:1)183 // Storage: Common CollectionById (r:1 w:1)184 fn change_collection_owner() -> Weight {184 fn change_collection_owner() -> Weight {185 (18_265_000 as Weight)185 Weight::from_ref_time(18_265_000)186 .saturating_add(RocksDbWeight::get().reads(1 as Weight))186 .saturating_add(RocksDbWeight::get().reads(1 as u64))187 .saturating_add(RocksDbWeight::get().writes(1 as Weight))187 .saturating_add(RocksDbWeight::get().writes(1 as u64))188 }188 }189 // Storage: Common CollectionById (r:1 w:0)189 // Storage: Common CollectionById (r:1 w:0)190 // Storage: Common IsAdmin (r:1 w:1)190 // Storage: Common IsAdmin (r:1 w:1)191 // Storage: Common AdminAmount (r:1 w:1)191 // Storage: Common AdminAmount (r:1 w:1)192 fn add_collection_admin() -> Weight {192 fn add_collection_admin() -> Weight {193 (23_558_000 as Weight)193 Weight::from_ref_time(23_558_000)194 .saturating_add(RocksDbWeight::get().reads(3 as Weight))194 .saturating_add(RocksDbWeight::get().reads(3 as u64))195 .saturating_add(RocksDbWeight::get().writes(2 as Weight))195 .saturating_add(RocksDbWeight::get().writes(2 as u64))196 }196 }197 // Storage: Common CollectionById (r:1 w:0)197 // Storage: Common CollectionById (r:1 w:0)198 // Storage: Common IsAdmin (r:1 w:1)198 // Storage: Common IsAdmin (r:1 w:1)199 // Storage: Common AdminAmount (r:1 w:1)199 // Storage: Common AdminAmount (r:1 w:1)200 fn remove_collection_admin() -> Weight {200 fn remove_collection_admin() -> Weight {201 (25_285_000 as Weight)201 Weight::from_ref_time(25_285_000)202 .saturating_add(RocksDbWeight::get().reads(3 as Weight))202 .saturating_add(RocksDbWeight::get().reads(3 as u64))203 .saturating_add(RocksDbWeight::get().writes(2 as Weight))203 .saturating_add(RocksDbWeight::get().writes(2 as u64))204 }204 }205 // Storage: Common CollectionById (r:1 w:1)205 // Storage: Common CollectionById (r:1 w:1)206 fn set_collection_sponsor() -> Weight {206 fn set_collection_sponsor() -> Weight {207 (17_885_000 as Weight)207 Weight::from_ref_time(17_885_000)208 .saturating_add(RocksDbWeight::get().reads(1 as Weight))208 .saturating_add(RocksDbWeight::get().reads(1 as u64))209 .saturating_add(RocksDbWeight::get().writes(1 as Weight))209 .saturating_add(RocksDbWeight::get().writes(1 as u64))210 }210 }211 // Storage: Common CollectionById (r:1 w:1)211 // Storage: Common CollectionById (r:1 w:1)212 fn confirm_sponsorship() -> Weight {212 fn confirm_sponsorship() -> Weight {213 (17_897_000 as Weight)213 Weight::from_ref_time(17_897_000)214 .saturating_add(RocksDbWeight::get().reads(1 as Weight))214 .saturating_add(RocksDbWeight::get().reads(1 as u64))215 .saturating_add(RocksDbWeight::get().writes(1 as Weight))215 .saturating_add(RocksDbWeight::get().writes(1 as u64))216 }216 }217 // Storage: Common CollectionById (r:1 w:1)217 // Storage: Common CollectionById (r:1 w:1)218 fn remove_collection_sponsor() -> Weight {218 fn remove_collection_sponsor() -> Weight {219 (17_836_000 as Weight)219 Weight::from_ref_time(17_836_000)220 .saturating_add(RocksDbWeight::get().reads(1 as Weight))220 .saturating_add(RocksDbWeight::get().reads(1 as u64))221 .saturating_add(RocksDbWeight::get().writes(1 as Weight))221 .saturating_add(RocksDbWeight::get().writes(1 as u64))222 }222 }223 // Storage: Common CollectionById (r:1 w:1)223 // Storage: Common CollectionById (r:1 w:1)224 fn set_transfers_enabled_flag() -> Weight {224 fn set_transfers_enabled_flag() -> Weight {225 (9_714_000 as Weight)225 Weight::from_ref_time(9_714_000)226 .saturating_add(RocksDbWeight::get().reads(1 as Weight))226 .saturating_add(RocksDbWeight::get().reads(1 as u64))227 .saturating_add(RocksDbWeight::get().writes(1 as Weight))227 .saturating_add(RocksDbWeight::get().writes(1 as u64))228 }228 }229 // Storage: Common CollectionById (r:1 w:1)229 // Storage: Common CollectionById (r:1 w:1)230 fn set_collection_limits() -> Weight {230 fn set_collection_limits() -> Weight {231 (18_166_000 as Weight)231 Weight::from_ref_time(18_166_000)232 .saturating_add(RocksDbWeight::get().reads(1 as Weight))232 .saturating_add(RocksDbWeight::get().reads(1 as u64))233 .saturating_add(RocksDbWeight::get().writes(1 as Weight))233 .saturating_add(RocksDbWeight::get().writes(1 as u64))234 }234 }235}235}236236primitives/app_promotion_rpc/Cargo.tomldiffbeforeafterboth10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [11 "derive",11 "derive",12] }12] }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }181819[features]19[features]20default = ["std"]20default = ["std"]primitives/common/Cargo.tomldiffbeforeafterboth6license = 'All Rights Reserved'6license = 'All Rights Reserved'7name = 'up-common'7name = 'up-common'8repository = 'https://github.com/UniqueNetwork/unique-chain'8repository = 'https://github.com/UniqueNetwork/unique-chain'9version = "0.9.27"9version = "0.9.29"101011[features]11[features]12default = ['std']12default = ['std']23[dependencies.sp-std]23[dependencies.sp-std]24default-features = false24default-features = false25git = "https://github.com/paritytech/substrate"25git = "https://github.com/paritytech/substrate"26branch = "polkadot-v0.9.27"26branch = "polkadot-v0.9.29"272728[dependencies.frame-support]28[dependencies.frame-support]29default-features = false29default-features = false30git = "https://github.com/paritytech/substrate"30git = "https://github.com/paritytech/substrate"31branch = "polkadot-v0.9.27"31branch = "polkadot-v0.9.29"323233[dependencies.sp-runtime]33[dependencies.sp-runtime]34default-features = false34default-features = false35git = "https://github.com/paritytech/substrate"35git = "https://github.com/paritytech/substrate"36branch = "polkadot-v0.9.27"36branch = "polkadot-v0.9.29"373738[dependencies.sp-core]38[dependencies.sp-core]39default-features = false39default-features = false40git = "https://github.com/paritytech/substrate"40git = "https://github.com/paritytech/substrate"41branch = "polkadot-v0.9.27"41branch = "polkadot-v0.9.29"424243[dependencies.sp-consensus-aura]43[dependencies.sp-consensus-aura]44default-features = false44default-features = false45git = "https://github.com/paritytech/substrate"45git = "https://github.com/paritytech/substrate"46branch = "polkadot-v0.9.27"46branch = "polkadot-v0.9.29"474748[dependencies.fp-rpc]48[dependencies.fp-rpc]49default-features = false49default-features = false50git = "https://github.com/uniquenetwork/frontier"50git = "https://github.com/uniquenetwork/frontier"51branch = "unique-polkadot-v0.9.27-fee-limit"51branch = "unique-polkadot-v0.9.29"525253[dependencies.pallet-evm]53[dependencies.pallet-evm]54default-features = false54default-features = false55git = "https://github.com/uniquenetwork/frontier"55git = "https://github.com/uniquenetwork/frontier"56branch = "unique-polkadot-v0.9.27-fee-limit"56branch = "unique-polkadot-v0.9.29"5757primitives/common/src/constants.rsdiffbeforeafterboth54/// by Operational extrinsics.54/// by Operational extrinsics.55pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);55pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);56/// We allow for 2 seconds of compute with a 6 second average block time.56/// We allow for 2 seconds of compute with a 6 second average block time.57pub const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND / 2;57pub const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND.saturating_div(2);585859parameter_types! {59parameter_types! {60 pub const TransactionByteFee: Balance = 501 * MICROUNIQUE;60 pub const TransactionByteFee: Balance = 501 * MICROUNIQUE;primitives/data-structs/Cargo.tomldiffbeforeafterboth18serde = { version = "1.0.130", features = [18serde = { version = "1.0.130", features = [19 'derive',19 'derive',20], default-features = false, optional = true }20], default-features = false, optional = true }21frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }21frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }22frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }22frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }23sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }23sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }24sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }24sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }25sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }26derivative = { version = "2.2.0", features = ["use_core"] }26derivative = { version = "2.2.0", features = ["use_core"] }27struct-versioning = { path = "../../crates/struct-versioning" }27struct-versioning = { path = "../../crates/struct-versioning" }28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }29rmrk-traits = { default-features = false, path = "../rmrk-traits" }29rmrk-traits = { default-features = false, path = "../rmrk-traits" }30bondrewd = { version = "0.1.14", features = ["derive"], default-features = false }30bondrewd = { version = "0.1.14", features = ["derive"], default-features = false }3131primitives/rmrk-rpc/Cargo.tomldiffbeforeafterboth8codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = [8codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = [9 "derive",9 "derive",10] }10] }11sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }11sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }12sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }12sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }13sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15serde = { version = "1.0.130", default-features = false, features = ["derive"] }15serde = { version = "1.0.130", default-features = false, features = ["derive"] }16rmrk-traits = { default-features = false, path = "../rmrk-traits" }16rmrk-traits = { default-features = false, path = "../rmrk-traits" }1717primitives/rpc/Cargo.tomldiffbeforeafterboth10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [10codec = { package = "parity-scale-codec", version = "3.1.2", default-features = false, features = [11 "derive",11 "derive",12] }12] }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }13sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-api = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }17pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }181819[features]19[features]20default = ["std"]20default = ["std"]primitives/rpc/src/lib.rsdiffbeforeafterboth232324use sp_std::vec::Vec;24use sp_std::vec::Vec;25use codec::Decode;25use codec::Decode;26use sp_runtime::{26use sp_runtime::DispatchError;27 DispatchError,28 traits::{AtLeast32BitUnsigned, Member},29};302731type Result<T> = core::result::Result<T, DispatchError>;28type Result<T> = core::result::Result<T, DispatchError>;3229runtime/common/config/ethereum.rsdiffbeforeafterboth27// (contract, which only writes a lot of data),27// (contract, which only writes a lot of data),28// approximating on top of our real store write weight28// approximating on top of our real store write weight29parameter_types! {29parameter_types! {30 pub const WritesPerSecond: u64 = WEIGHT_PER_SECOND / <Runtime as frame_system::Config>::DbWeight::get().write;30 pub const WritesPerSecond: u64 = WEIGHT_PER_SECOND.ref_time() / <Runtime as frame_system::Config>::DbWeight::get().write;31 pub const GasPerSecond: u64 = WritesPerSecond::get() * 20000;31 pub const GasPerSecond: u64 = WritesPerSecond::get() * 20000;32 pub const WeightPerGas: u64 = WEIGHT_PER_SECOND / GasPerSecond::get();32 pub const WeightPerGas: u64 = WEIGHT_PER_SECOND.ref_time() / GasPerSecond::get();33}33}343435/// Limiting EVM execution to 50% of block for substrate users and management tasks35/// Limiting EVM execution to 50% of block for substrate users and management tasks36/// EVM transaction consumes more weight than substrate's, so we can't rely on them being36/// EVM transaction consumes more weight than substrate's, so we can't rely on them being37/// scheduled fairly37/// scheduled fairly38const EVM_DISPATCH_RATIO: Perbill = Perbill::from_percent(50);38const EVM_DISPATCH_RATIO: Perbill = Perbill::from_percent(50);39parameter_types! {39parameter_types! {40 pub BlockGasLimit: U256 = U256::from(NORMAL_DISPATCH_RATIO * EVM_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT / WeightPerGas::get());40 pub BlockGasLimit: U256 = U256::from((NORMAL_DISPATCH_RATIO * EVM_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT / WeightPerGas::get()).ref_time());41}41}424243pub enum FixedGasWeightMapping {}43pub enum FixedGasWeightMapping {}44impl pallet_evm::GasWeightMapping for FixedGasWeightMapping {44impl pallet_evm::GasWeightMapping for FixedGasWeightMapping {45 fn gas_to_weight(gas: u64) -> Weight {45 fn gas_to_weight(gas: u64) -> Weight {46 gas.saturating_mul(WeightPerGas::get())46 Weight::from_ref_time(gas).saturating_mul(WeightPerGas::get())47 }47 }48 fn weight_to_gas(weight: Weight) -> u64 {48 fn weight_to_gas(weight: Weight) -> u64 {49 weight / WeightPerGas::get()49 (weight / WeightPerGas::get()).ref_time()50 }50 }51}51}5252runtime/common/config/orml.rsdiffbeforeafterboth17use frame_support::{17use frame_support::{18 parameter_types,18 parameter_types,19 traits::{Contains, Everything},19 traits::{Contains, Everything},20 weights::Weight,21};20};22use frame_system::EnsureSigned;21use frame_system::EnsureSigned;23use orml_traits::{location::AbsoluteReserveProvider, parameter_type_with_key};22use orml_traits::{location::AbsoluteReserveProvider, parameter_type_with_key};24use sp_runtime::traits::Convert;23use sp_runtime::traits::Convert;25use xcm::v1::{Junction::*, Junctions::*, MultiLocation, NetworkId};24use xcm::v1::{Junction::*, Junctions::*, MultiLocation, NetworkId};25use xcm::latest::Weight;26use xcm_builder::LocationInverter;26use xcm_builder::LocationInverter;27use xcm_executor::XcmExecutor;27use xcm_executor::XcmExecutor;28use sp_std::{vec, vec::Vec};28use sp_std::{vec, vec::Vec};runtime/common/config/parachain.rsdiffbeforeafterboth19use up_common::constants::*;19use up_common::constants::*;202021parameter_types! {21parameter_types! {22 pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT / 4;22 pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4);23 pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT / 4;23 pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4);24}24}252526impl cumulus_pallet_parachain_system::Config for Runtime {26impl cumulus_pallet_parachain_system::Config for Runtime {runtime/common/config/xcm/mod.rsdiffbeforeafterboth161617use frame_support::{17use frame_support::{18 traits::{Everything, Get},18 traits::{Everything, Get},19 weights::Weight,20 parameter_types,19 parameter_types,21};20};22use frame_system::EnsureRoot;21use frame_system::EnsureRoot;23use pallet_xcm::XcmPassthrough;22use pallet_xcm::XcmPassthrough;24use polkadot_parachain::primitives::Sibling;23use polkadot_parachain::primitives::Sibling;25use xcm::v1::{Junction::*, MultiLocation, NetworkId};24use xcm::v1::{Junction::*, MultiLocation, NetworkId};26use xcm::latest::prelude::*;25use xcm::latest::{prelude::*, Weight};27use xcm_builder::{26use xcm_builder::{28 AccountId32Aliases, EnsureXcmOrigin, FixedWeightBounds, LocationInverter, ParentAsSuperuser,27 AccountId32Aliases, EnsureXcmOrigin, FixedWeightBounds, LocationInverter, ParentAsSuperuser,29 RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia,28 RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia,runtime/common/config/xcm/nativeassets.rsdiffbeforeafterboth161617use frame_support::{17use frame_support::{18 traits::{tokens::currency::Currency as CurrencyT, OnUnbalanced as OnUnbalancedT, Get},18 traits::{tokens::currency::Currency as CurrencyT, OnUnbalanced as OnUnbalancedT, Get},19 weights::{Weight, WeightToFeePolynomial},19 weights::WeightToFeePolynomial,20};20};21use sp_runtime::traits::{CheckedConversion, Zero, Convert};21use sp_runtime::traits::{CheckedConversion, Zero, Convert};22use xcm::v1::{Junction::*, MultiLocation, Junctions::*};22use xcm::v1::{Junction::*, MultiLocation, Junctions::*};23use xcm::latest::{23use xcm::latest::{24 AssetId::{Concrete},24 AssetId::{Concrete},25 Fungibility::Fungible as XcmFungible,25 Fungibility::Fungible as XcmFungible,26 MultiAsset, Error as XcmError,26 MultiAsset, Error as XcmError, Weight,27};27};28use xcm_builder::{CurrencyAdapter, NativeAsset};28use xcm_builder::{CurrencyAdapter, NativeAsset};29use xcm_executor::{29use xcm_executor::{runtime/common/dispatch.rsdiffbeforeafterboth55{55{56 fn create(56 fn create(57 sender: T::CrossAccountId,57 sender: T::CrossAccountId,58 payer: T::CrossAccountId,58 data: CreateCollectionData<T::AccountId>,59 data: CreateCollectionData<T::AccountId>,59 ) -> Result<CollectionId, DispatchError> {60 ) -> Result<CollectionId, DispatchError> {60 let id = match data.mode {61 let id = match data.mode {61 CollectionMode::NFT => <PalletNonfungible<T>>::init_collection(sender, data, false)?,62 CollectionMode::NFT => {63 <PalletNonfungible<T>>::init_collection(sender, payer, data, false)?64 }62 CollectionMode::Fungible(decimal_points) => {65 CollectionMode::Fungible(decimal_points) => {63 // check params66 // check params64 ensure!(67 ensure!(65 decimal_points <= MAX_DECIMAL_POINTS,68 decimal_points <= MAX_DECIMAL_POINTS,66 pallet_unique::Error::<T>::CollectionDecimalPointLimitExceeded69 pallet_unique::Error::<T>::CollectionDecimalPointLimitExceeded67 );70 );68 <PalletFungible<T>>::init_collection(sender, data)?71 <PalletFungible<T>>::init_collection(sender, payer, data)?69 }72 }707371 #[cfg(feature = "refungible")]74 #[cfg(feature = "refungible")]72 CollectionMode::ReFungible => <PalletRefungible<T>>::init_collection(sender, data)?,75 CollectionMode::ReFungible => <PalletRefungible<T>>::init_collection(sender, payer, data)?,737674 #[cfg(not(feature = "refungible"))]77 #[cfg(not(feature = "refungible"))]75 CollectionMode::ReFungible => return unsupported!(T),78 CollectionMode::ReFungible => return unsupported!(T),runtime/common/mod.rsdiffbeforeafterboth39#[cfg(feature = "std")]39#[cfg(feature = "std")]40use sp_version::NativeVersion;40use sp_version::NativeVersion;414142use crate::{42use crate::{Runtime, Call, Balances, Treasury, Aura, Signature, AllPalletsWithSystem, InherentDataExt};43 Runtime, Call, Balances, Treasury, Aura, Signature, AllPalletsReversedWithSystemFirst,44 InherentDataExt,45};46use up_common::types::{AccountId, BlockNumber};43use up_common::types::{AccountId, BlockNumber};4744105 Block,102 Block,106 frame_system::ChainContext<Runtime>,103 frame_system::ChainContext<Runtime>,107 Runtime,104 Runtime,108 AllPalletsReversedWithSystemFirst,105 AllPalletsWithSystem,109>;106>;110107111type NegativeImbalance = <Balances as Currency<AccountId>>::NegativeImbalance;108type NegativeImbalance = <Balances as Currency<AccountId>>::NegativeImbalance;runtime/common/runtime_apis.rsdiffbeforeafterboth190 }190 }191191192 impl app_promotion_rpc::AppPromotionApi<Block, BlockNumber, CrossAccountId, AccountId> for Runtime {192 impl app_promotion_rpc::AppPromotionApi<Block, BlockNumber, CrossAccountId, AccountId> for Runtime {193 #[allow(unused_variables)]193 fn total_staked(staker: Option<CrossAccountId>) -> Result<u128, DispatchError> {194 fn total_staked(staker: Option<CrossAccountId>) -> Result<u128, DispatchError> {194 #[cfg(not(feature = "app-promotion"))]195 #[cfg(not(feature = "app-promotion"))]195 return unsupported!();196 return unsupported!();198 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_total_staked(staker).unwrap_or_default());199 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_total_staked(staker).unwrap_or_default());199 }200 }200201202 #[allow(unused_variables)]201 fn total_staked_per_block(staker: CrossAccountId) -> Result<Vec<(BlockNumber, u128)>, DispatchError> {203 fn total_staked_per_block(staker: CrossAccountId) -> Result<Vec<(BlockNumber, u128)>, DispatchError> {202 #[cfg(not(feature = "app-promotion"))]204 #[cfg(not(feature = "app-promotion"))]203 return unsupported!();205 return unsupported!();206 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_total_staked_per_block(staker));208 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_total_staked_per_block(staker));207 }209 }208210211 #[allow(unused_variables)]209 fn pending_unstake(staker: Option<CrossAccountId>) -> Result<u128, DispatchError> {212 fn pending_unstake(staker: Option<CrossAccountId>) -> Result<u128, DispatchError> {210 #[cfg(not(feature = "app-promotion"))]213 #[cfg(not(feature = "app-promotion"))]211 return unsupported!();214 return unsupported!();214 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_pending_unstake(staker));217 return Ok(<pallet_app_promotion::Pallet<Runtime>>::cross_id_pending_unstake(staker));215 }218 }216219220 #[allow(unused_variables)]217 fn pending_unstake_per_block(staker: CrossAccountId) -> Result<Vec<(BlockNumber, u128)>, DispatchError> {221 fn pending_unstake_per_block(staker: CrossAccountId) -> Result<Vec<(BlockNumber, u128)>, DispatchError> {218 #[cfg(not(feature = "app-promotion"))]222 #[cfg(not(feature = "app-promotion"))]219 return unsupported!();223 return unsupported!();runtime/opal/Cargo.tomldiffbeforeafterboth10license = 'GPLv3'10license = 'GPLv3'11name = 'opal-runtime'11name = 'opal-runtime'12repository = 'https://github.com/UniqueNetwork/unique-chain'12repository = 'https://github.com/UniqueNetwork/unique-chain'13version = "0.9.27"13version = "0.9.29"141415[package.metadata.docs.rs]15[package.metadata.docs.rs]16targets = ['x86_64-unknown-linux-gnu']16targets = ['x86_64-unknown-linux-gnu']151default-features = false151default-features = false152git = "https://github.com/paritytech/substrate"152git = "https://github.com/paritytech/substrate"153optional = true153optional = true154branch = "polkadot-v0.9.27"154branch = "polkadot-v0.9.29"155155156[dependencies.frame-try-runtime]156[dependencies.frame-try-runtime]157default-features = false157default-features = false158git = "https://github.com/paritytech/substrate"158git = "https://github.com/paritytech/substrate"159optional = true159optional = true160branch = "polkadot-v0.9.27"160branch = "polkadot-v0.9.29"161161162[dependencies.frame-executive]162[dependencies.frame-executive]163default-features = false163default-features = false164git = "https://github.com/paritytech/substrate"164git = "https://github.com/paritytech/substrate"165branch = "polkadot-v0.9.27"165branch = "polkadot-v0.9.29"166166167[dependencies.frame-support]167[dependencies.frame-support]168default-features = false168default-features = false169git = "https://github.com/paritytech/substrate"169git = "https://github.com/paritytech/substrate"170branch = "polkadot-v0.9.27"170branch = "polkadot-v0.9.29"171171172[dependencies.frame-system]172[dependencies.frame-system]173default-features = false173default-features = false174git = "https://github.com/paritytech/substrate"174git = "https://github.com/paritytech/substrate"175branch = "polkadot-v0.9.27"175branch = "polkadot-v0.9.29"176176177[dependencies.frame-system-benchmarking]177[dependencies.frame-system-benchmarking]178default-features = false178default-features = false179git = "https://github.com/paritytech/substrate"179git = "https://github.com/paritytech/substrate"180optional = true180optional = true181branch = "polkadot-v0.9.27"181branch = "polkadot-v0.9.29"182182183[dependencies.frame-system-rpc-runtime-api]183[dependencies.frame-system-rpc-runtime-api]184default-features = false184default-features = false185git = "https://github.com/paritytech/substrate"185git = "https://github.com/paritytech/substrate"186branch = "polkadot-v0.9.27"186branch = "polkadot-v0.9.29"187187188[dependencies.hex-literal]188[dependencies.hex-literal]189optional = true189optional = true198[dependencies.pallet-aura]198[dependencies.pallet-aura]199default-features = false199default-features = false200git = "https://github.com/paritytech/substrate"200git = "https://github.com/paritytech/substrate"201branch = "polkadot-v0.9.27"201branch = "polkadot-v0.9.29"202202203[dependencies.pallet-balances]203[dependencies.pallet-balances]204default-features = false204default-features = false205git = "https://github.com/paritytech/substrate"205git = "https://github.com/paritytech/substrate"206branch = "polkadot-v0.9.27"206branch = "polkadot-v0.9.29"207207208# Contracts specific packages208# Contracts specific packages209# [dependencies.pallet-contracts]209# [dependencies.pallet-contracts]227[dependencies.pallet-randomness-collective-flip]227[dependencies.pallet-randomness-collective-flip]228default-features = false228default-features = false229git = "https://github.com/paritytech/substrate"229git = "https://github.com/paritytech/substrate"230branch = "polkadot-v0.9.27"230branch = "polkadot-v0.9.29"231231232[dependencies.pallet-sudo]232[dependencies.pallet-sudo]233default-features = false233default-features = false234git = "https://github.com/paritytech/substrate"234git = "https://github.com/paritytech/substrate"235branch = "polkadot-v0.9.27"235branch = "polkadot-v0.9.29"236236237[dependencies.pallet-timestamp]237[dependencies.pallet-timestamp]238default-features = false238default-features = false239git = "https://github.com/paritytech/substrate"239git = "https://github.com/paritytech/substrate"240branch = "polkadot-v0.9.27"240branch = "polkadot-v0.9.29"241241242[dependencies.pallet-transaction-payment]242[dependencies.pallet-transaction-payment]243default-features = false243default-features = false244git = "https://github.com/paritytech/substrate"244git = "https://github.com/paritytech/substrate"245branch = "polkadot-v0.9.27"245branch = "polkadot-v0.9.29"246246247[dependencies.pallet-transaction-payment-rpc-runtime-api]247[dependencies.pallet-transaction-payment-rpc-runtime-api]248default-features = false248default-features = false249git = "https://github.com/paritytech/substrate"249git = "https://github.com/paritytech/substrate"250branch = "polkadot-v0.9.27"250branch = "polkadot-v0.9.29"251251252[dependencies.pallet-treasury]252[dependencies.pallet-treasury]253default-features = false253default-features = false254git = "https://github.com/paritytech/substrate"254git = "https://github.com/paritytech/substrate"255branch = "polkadot-v0.9.27"255branch = "polkadot-v0.9.29"256256257# [dependencies.pallet-vesting]257# [dependencies.pallet-vesting]258# default-features = false258# default-features = false262[dependencies.sp-arithmetic]262[dependencies.sp-arithmetic]263default-features = false263default-features = false264git = "https://github.com/paritytech/substrate"264git = "https://github.com/paritytech/substrate"265branch = "polkadot-v0.9.27"265branch = "polkadot-v0.9.29"266266267[dependencies.sp-api]267[dependencies.sp-api]268default-features = false268default-features = false269git = "https://github.com/paritytech/substrate"269git = "https://github.com/paritytech/substrate"270branch = "polkadot-v0.9.27"270branch = "polkadot-v0.9.29"271271272[dependencies.sp-block-builder]272[dependencies.sp-block-builder]273default-features = false273default-features = false274git = "https://github.com/paritytech/substrate"274git = "https://github.com/paritytech/substrate"275branch = "polkadot-v0.9.27"275branch = "polkadot-v0.9.29"276276277[dependencies.sp-core]277[dependencies.sp-core]278default-features = false278default-features = false279git = "https://github.com/paritytech/substrate"279git = "https://github.com/paritytech/substrate"280branch = "polkadot-v0.9.27"280branch = "polkadot-v0.9.29"281281282[dependencies.sp-consensus-aura]282[dependencies.sp-consensus-aura]283default-features = false283default-features = false284git = "https://github.com/paritytech/substrate"284git = "https://github.com/paritytech/substrate"285branch = "polkadot-v0.9.27"285branch = "polkadot-v0.9.29"286286287[dependencies.sp-inherents]287[dependencies.sp-inherents]288default-features = false288default-features = false289git = "https://github.com/paritytech/substrate"289git = "https://github.com/paritytech/substrate"290branch = "polkadot-v0.9.27"290branch = "polkadot-v0.9.29"291291292[dependencies.sp-io]292[dependencies.sp-io]293default-features = false293default-features = false294git = "https://github.com/paritytech/substrate"294git = "https://github.com/paritytech/substrate"295branch = "polkadot-v0.9.27"295branch = "polkadot-v0.9.29"296296297[dependencies.sp-offchain]297[dependencies.sp-offchain]298default-features = false298default-features = false299git = "https://github.com/paritytech/substrate"299git = "https://github.com/paritytech/substrate"300branch = "polkadot-v0.9.27"300branch = "polkadot-v0.9.29"301301302[dependencies.sp-runtime]302[dependencies.sp-runtime]303default-features = false303default-features = false304git = "https://github.com/paritytech/substrate"304git = "https://github.com/paritytech/substrate"305branch = "polkadot-v0.9.27"305branch = "polkadot-v0.9.29"306306307[dependencies.sp-session]307[dependencies.sp-session]308default-features = false308default-features = false309git = "https://github.com/paritytech/substrate"309git = "https://github.com/paritytech/substrate"310branch = "polkadot-v0.9.27"310branch = "polkadot-v0.9.29"311311312[dependencies.sp-std]312[dependencies.sp-std]313default-features = false313default-features = false314git = "https://github.com/paritytech/substrate"314git = "https://github.com/paritytech/substrate"315branch = "polkadot-v0.9.27"315branch = "polkadot-v0.9.29"316316317[dependencies.sp-transaction-pool]317[dependencies.sp-transaction-pool]318default-features = false318default-features = false319git = "https://github.com/paritytech/substrate"319git = "https://github.com/paritytech/substrate"320branch = "polkadot-v0.9.27"320branch = "polkadot-v0.9.29"321321322[dependencies.sp-version]322[dependencies.sp-version]323default-features = false323default-features = false324git = "https://github.com/paritytech/substrate"324git = "https://github.com/paritytech/substrate"325branch = "polkadot-v0.9.27"325branch = "polkadot-v0.9.29"326326327[dependencies.smallvec]327[dependencies.smallvec]328version = '1.6.1'328version = '1.6.1'333[dependencies.parachain-info]333[dependencies.parachain-info]334default-features = false334default-features = false335git = "https://github.com/paritytech/cumulus"335git = "https://github.com/paritytech/cumulus"336branch = "polkadot-v0.9.27"336branch = "polkadot-v0.9.29"337337338[dependencies.cumulus-pallet-aura-ext]338[dependencies.cumulus-pallet-aura-ext]339git = "https://github.com/paritytech/cumulus"339git = "https://github.com/paritytech/cumulus"340branch = "polkadot-v0.9.27"340branch = "polkadot-v0.9.29"341default-features = false341default-features = false342342343[dependencies.cumulus-pallet-parachain-system]343[dependencies.cumulus-pallet-parachain-system]344git = "https://github.com/paritytech/cumulus"344git = "https://github.com/paritytech/cumulus"345branch = "polkadot-v0.9.27"345branch = "polkadot-v0.9.29"346default-features = false346default-features = false347347348[dependencies.cumulus-primitives-core]348[dependencies.cumulus-primitives-core]349git = "https://github.com/paritytech/cumulus"349git = "https://github.com/paritytech/cumulus"350branch = "polkadot-v0.9.27"350branch = "polkadot-v0.9.29"351default-features = false351default-features = false352352353[dependencies.cumulus-pallet-xcm]353[dependencies.cumulus-pallet-xcm]354git = "https://github.com/paritytech/cumulus"354git = "https://github.com/paritytech/cumulus"355branch = "polkadot-v0.9.27"355branch = "polkadot-v0.9.29"356default-features = false356default-features = false357357358[dependencies.cumulus-pallet-dmp-queue]358[dependencies.cumulus-pallet-dmp-queue]359git = "https://github.com/paritytech/cumulus"359git = "https://github.com/paritytech/cumulus"360branch = "polkadot-v0.9.27"360branch = "polkadot-v0.9.29"361default-features = false361default-features = false362362363[dependencies.cumulus-pallet-xcmp-queue]363[dependencies.cumulus-pallet-xcmp-queue]364git = "https://github.com/paritytech/cumulus"364git = "https://github.com/paritytech/cumulus"365branch = "polkadot-v0.9.27"365branch = "polkadot-v0.9.29"366default-features = false366default-features = false367367368[dependencies.cumulus-primitives-utility]368[dependencies.cumulus-primitives-utility]369git = "https://github.com/paritytech/cumulus"369git = "https://github.com/paritytech/cumulus"370branch = "polkadot-v0.9.27"370branch = "polkadot-v0.9.29"371default-features = false371default-features = false372372373[dependencies.cumulus-primitives-timestamp]373[dependencies.cumulus-primitives-timestamp]374git = "https://github.com/paritytech/cumulus"374git = "https://github.com/paritytech/cumulus"375branch = "polkadot-v0.9.27"375branch = "polkadot-v0.9.29"376default-features = false376default-features = false377377378################################################################################378################################################################################379# Polkadot dependencies379# Polkadot dependencies380380381[dependencies.polkadot-parachain]381[dependencies.polkadot-parachain]382git = "https://github.com/paritytech/polkadot"382git = "https://github.com/paritytech/polkadot"383branch = "release-v0.9.27"383branch = "release-v0.9.29"384default-features = false384default-features = false385385386[dependencies.xcm]386[dependencies.xcm]387git = "https://github.com/paritytech/polkadot"387git = "https://github.com/paritytech/polkadot"388branch = "release-v0.9.27"388branch = "release-v0.9.29"389default-features = false389default-features = false390390391[dependencies.xcm-builder]391[dependencies.xcm-builder]392git = "https://github.com/paritytech/polkadot"392git = "https://github.com/paritytech/polkadot"393branch = "release-v0.9.27"393branch = "release-v0.9.29"394default-features = false394default-features = false395395396[dependencies.xcm-executor]396[dependencies.xcm-executor]397git = "https://github.com/paritytech/polkadot"397git = "https://github.com/paritytech/polkadot"398branch = "release-v0.9.27"398branch = "release-v0.9.29"399default-features = false399default-features = false400400401[dependencies.pallet-xcm]401[dependencies.pallet-xcm]402git = "https://github.com/paritytech/polkadot"402git = "https://github.com/paritytech/polkadot"403branch = "release-v0.9.27"403branch = "release-v0.9.29"404default-features = false404default-features = false405405406[dependencies.orml-vesting]406[dependencies.orml-vesting]407git = "https://github.com/open-web3-stack/open-runtime-module-library"407git = "https://github.com/UniqueNetwork/open-runtime-module-library"408branch = "polkadot-v0.9.27"408branch = "polkadot-v0.9.29"409version = "0.4.1-dev"409version = "0.4.1-dev"410default-features = false410default-features = false411411412[dependencies.orml-xtokens]412[dependencies.orml-xtokens]413git = "https://github.com/open-web3-stack/open-runtime-module-library"413git = "https://github.com/UniqueNetwork/open-runtime-module-library"414branch = "polkadot-v0.9.27"414branch = "polkadot-v0.9.29"415version = "0.4.1-dev"415version = "0.4.1-dev"416default-features = false416default-features = false417417418[dependencies.orml-tokens]418[dependencies.orml-tokens]419git = "https://github.com/open-web3-stack/open-runtime-module-library"419git = "https://github.com/UniqueNetwork/open-runtime-module-library"420branch = "polkadot-v0.9.27"420branch = "polkadot-v0.9.29"421version = "0.4.1-dev"421version = "0.4.1-dev"422default-features = false422default-features = false423423424[dependencies.orml-traits]424[dependencies.orml-traits]425git = "https://github.com/open-web3-stack/open-runtime-module-library"425git = "https://github.com/UniqueNetwork/open-runtime-module-library"426branch = "polkadot-v0.9.27"426branch = "polkadot-v0.9.29"427version = "0.4.1-dev"427version = "0.4.1-dev"428default-features = false428default-features = false429429441up-rpc = { path = "../../primitives/rpc", default-features = false }441up-rpc = { path = "../../primitives/rpc", default-features = false }442app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}442app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}443rmrk-rpc = { path = "../../primitives/rmrk-rpc", default-features = false }443rmrk-rpc = { path = "../../primitives/rmrk-rpc", default-features = false }444fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }444fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }445pallet-inflation = { path = '../../pallets/inflation', default-features = false }445pallet-inflation = { path = '../../pallets/inflation', default-features = false }446pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }446pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }447up-data-structs = { path = '../../primitives/data-structs', default-features = false }447up-data-structs = { path = '../../primitives/data-structs', default-features = false }455pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }455pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }456pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }456pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }457# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }457# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }458pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }458pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }459pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }459pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }460pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }460pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }461pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }461pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }462pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }462pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }463pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }463pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }464pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }464pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }465pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }465pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }466fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }466fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }467fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }467fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }468evm-coder = { default-features = false, path = '../../crates/evm-coder' }468evm-coder = { default-features = false, path = '../../crates/evm-coder' }469up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.27' }469up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.29' }470pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }470pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }471471472################################################################################472################################################################################485485486[build-dependencies.substrate-wasm-builder]486[build-dependencies.substrate-wasm-builder]487git = "https://github.com/paritytech/substrate"487git = "https://github.com/paritytech/substrate"488branch = "polkadot-v0.9.27"488branch = "polkadot-v0.9.29"489489runtime/opal/src/xcm_barrier.rsdiffbeforeafterboth14// You should have received a copy of the GNU General Public License14// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617use frame_support::{weights::Weight, traits::Everything};17use frame_support::traits::Everything;18use xcm::{latest::Xcm, v1::MultiLocation};18use xcm::{19 latest::{Xcm, Weight},20 v1::MultiLocation,21};19use xcm_builder::{AllowTopLevelPaidExecutionFrom, TakeWeightCredit};22use xcm_builder::{AllowTopLevelPaidExecutionFrom, TakeWeightCredit};20use xcm_executor::traits::ShouldExecute;23use xcm_executor::traits::ShouldExecute;runtime/quartz/Cargo.tomldiffbeforeafterboth148default-features = false148default-features = false149git = "https://github.com/paritytech/substrate"149git = "https://github.com/paritytech/substrate"150optional = true150optional = true151branch = "polkadot-v0.9.27"151branch = "polkadot-v0.9.29"152152153[dependencies.frame-try-runtime]153[dependencies.frame-try-runtime]154default-features = false154default-features = false155git = "https://github.com/paritytech/substrate"155git = "https://github.com/paritytech/substrate"156optional = true156optional = true157branch = "polkadot-v0.9.27"157branch = "polkadot-v0.9.29"158158159[dependencies.frame-executive]159[dependencies.frame-executive]160default-features = false160default-features = false161git = "https://github.com/paritytech/substrate"161git = "https://github.com/paritytech/substrate"162branch = "polkadot-v0.9.27"162branch = "polkadot-v0.9.29"163163164[dependencies.frame-support]164[dependencies.frame-support]165default-features = false165default-features = false166git = "https://github.com/paritytech/substrate"166git = "https://github.com/paritytech/substrate"167branch = "polkadot-v0.9.27"167branch = "polkadot-v0.9.29"168168169[dependencies.frame-system]169[dependencies.frame-system]170default-features = false170default-features = false171git = "https://github.com/paritytech/substrate"171git = "https://github.com/paritytech/substrate"172branch = "polkadot-v0.9.27"172branch = "polkadot-v0.9.29"173173174[dependencies.frame-system-benchmarking]174[dependencies.frame-system-benchmarking]175default-features = false175default-features = false176git = "https://github.com/paritytech/substrate"176git = "https://github.com/paritytech/substrate"177optional = true177optional = true178branch = "polkadot-v0.9.27"178branch = "polkadot-v0.9.29"179179180[dependencies.frame-system-rpc-runtime-api]180[dependencies.frame-system-rpc-runtime-api]181default-features = false181default-features = false182git = "https://github.com/paritytech/substrate"182git = "https://github.com/paritytech/substrate"183branch = "polkadot-v0.9.27"183branch = "polkadot-v0.9.29"184184185[dependencies.hex-literal]185[dependencies.hex-literal]186optional = true186optional = true195[dependencies.pallet-aura]195[dependencies.pallet-aura]196default-features = false196default-features = false197git = "https://github.com/paritytech/substrate"197git = "https://github.com/paritytech/substrate"198branch = "polkadot-v0.9.27"198branch = "polkadot-v0.9.29"199199200[dependencies.pallet-balances]200[dependencies.pallet-balances]201default-features = false201default-features = false202git = "https://github.com/paritytech/substrate"202git = "https://github.com/paritytech/substrate"203branch = "polkadot-v0.9.27"203branch = "polkadot-v0.9.29"204204205# Contracts specific packages205# Contracts specific packages206# [dependencies.pallet-contracts]206# [dependencies.pallet-contracts]224[dependencies.pallet-randomness-collective-flip]224[dependencies.pallet-randomness-collective-flip]225default-features = false225default-features = false226git = "https://github.com/paritytech/substrate"226git = "https://github.com/paritytech/substrate"227branch = "polkadot-v0.9.27"227branch = "polkadot-v0.9.29"228228229[dependencies.pallet-sudo]229[dependencies.pallet-sudo]230default-features = false230default-features = false231git = "https://github.com/paritytech/substrate"231git = "https://github.com/paritytech/substrate"232branch = "polkadot-v0.9.27"232branch = "polkadot-v0.9.29"233233234[dependencies.pallet-timestamp]234[dependencies.pallet-timestamp]235default-features = false235default-features = false236git = "https://github.com/paritytech/substrate"236git = "https://github.com/paritytech/substrate"237branch = "polkadot-v0.9.27"237branch = "polkadot-v0.9.29"238238239[dependencies.pallet-transaction-payment]239[dependencies.pallet-transaction-payment]240default-features = false240default-features = false241git = "https://github.com/paritytech/substrate"241git = "https://github.com/paritytech/substrate"242branch = "polkadot-v0.9.27"242branch = "polkadot-v0.9.29"243243244[dependencies.pallet-transaction-payment-rpc-runtime-api]244[dependencies.pallet-transaction-payment-rpc-runtime-api]245default-features = false245default-features = false246git = "https://github.com/paritytech/substrate"246git = "https://github.com/paritytech/substrate"247branch = "polkadot-v0.9.27"247branch = "polkadot-v0.9.29"248248249[dependencies.pallet-treasury]249[dependencies.pallet-treasury]250default-features = false250default-features = false251git = "https://github.com/paritytech/substrate"251git = "https://github.com/paritytech/substrate"252branch = "polkadot-v0.9.27"252branch = "polkadot-v0.9.29"253253254# [dependencies.pallet-vesting]254# [dependencies.pallet-vesting]255# default-features = false255# default-features = false259[dependencies.sp-arithmetic]259[dependencies.sp-arithmetic]260default-features = false260default-features = false261git = "https://github.com/paritytech/substrate"261git = "https://github.com/paritytech/substrate"262branch = "polkadot-v0.9.27"262branch = "polkadot-v0.9.29"263263264[dependencies.sp-api]264[dependencies.sp-api]265default-features = false265default-features = false266git = "https://github.com/paritytech/substrate"266git = "https://github.com/paritytech/substrate"267branch = "polkadot-v0.9.27"267branch = "polkadot-v0.9.29"268268269[dependencies.sp-block-builder]269[dependencies.sp-block-builder]270default-features = false270default-features = false271git = "https://github.com/paritytech/substrate"271git = "https://github.com/paritytech/substrate"272branch = "polkadot-v0.9.27"272branch = "polkadot-v0.9.29"273273274[dependencies.sp-core]274[dependencies.sp-core]275default-features = false275default-features = false276git = "https://github.com/paritytech/substrate"276git = "https://github.com/paritytech/substrate"277branch = "polkadot-v0.9.27"277branch = "polkadot-v0.9.29"278278279[dependencies.sp-consensus-aura]279[dependencies.sp-consensus-aura]280default-features = false280default-features = false281git = "https://github.com/paritytech/substrate"281git = "https://github.com/paritytech/substrate"282branch = "polkadot-v0.9.27"282branch = "polkadot-v0.9.29"283283284[dependencies.sp-inherents]284[dependencies.sp-inherents]285default-features = false285default-features = false286git = "https://github.com/paritytech/substrate"286git = "https://github.com/paritytech/substrate"287branch = "polkadot-v0.9.27"287branch = "polkadot-v0.9.29"288288289[dependencies.sp-io]289[dependencies.sp-io]290default-features = false290default-features = false291git = "https://github.com/paritytech/substrate"291git = "https://github.com/paritytech/substrate"292branch = "polkadot-v0.9.27"292branch = "polkadot-v0.9.29"293293294[dependencies.sp-offchain]294[dependencies.sp-offchain]295default-features = false295default-features = false296git = "https://github.com/paritytech/substrate"296git = "https://github.com/paritytech/substrate"297branch = "polkadot-v0.9.27"297branch = "polkadot-v0.9.29"298298299[dependencies.sp-runtime]299[dependencies.sp-runtime]300default-features = false300default-features = false301git = "https://github.com/paritytech/substrate"301git = "https://github.com/paritytech/substrate"302branch = "polkadot-v0.9.27"302branch = "polkadot-v0.9.29"303303304[dependencies.sp-session]304[dependencies.sp-session]305default-features = false305default-features = false306git = "https://github.com/paritytech/substrate"306git = "https://github.com/paritytech/substrate"307branch = "polkadot-v0.9.27"307branch = "polkadot-v0.9.29"308308309[dependencies.sp-std]309[dependencies.sp-std]310default-features = false310default-features = false311git = "https://github.com/paritytech/substrate"311git = "https://github.com/paritytech/substrate"312branch = "polkadot-v0.9.27"312branch = "polkadot-v0.9.29"313313314[dependencies.sp-transaction-pool]314[dependencies.sp-transaction-pool]315default-features = false315default-features = false316git = "https://github.com/paritytech/substrate"316git = "https://github.com/paritytech/substrate"317branch = "polkadot-v0.9.27"317branch = "polkadot-v0.9.29"318318319[dependencies.sp-version]319[dependencies.sp-version]320default-features = false320default-features = false321git = "https://github.com/paritytech/substrate"321git = "https://github.com/paritytech/substrate"322branch = "polkadot-v0.9.27"322branch = "polkadot-v0.9.29"323323324[dependencies.smallvec]324[dependencies.smallvec]325version = '1.6.1'325version = '1.6.1'330[dependencies.parachain-info]330[dependencies.parachain-info]331default-features = false331default-features = false332git = "https://github.com/paritytech/cumulus"332git = "https://github.com/paritytech/cumulus"333branch = "polkadot-v0.9.27"333branch = "polkadot-v0.9.29"334334335[dependencies.cumulus-pallet-aura-ext]335[dependencies.cumulus-pallet-aura-ext]336git = "https://github.com/paritytech/cumulus"336git = "https://github.com/paritytech/cumulus"337branch = "polkadot-v0.9.27"337branch = "polkadot-v0.9.29"338default-features = false338default-features = false339339340[dependencies.cumulus-pallet-parachain-system]340[dependencies.cumulus-pallet-parachain-system]341git = "https://github.com/paritytech/cumulus"341git = "https://github.com/paritytech/cumulus"342branch = "polkadot-v0.9.27"342branch = "polkadot-v0.9.29"343default-features = false343default-features = false344344345[dependencies.cumulus-primitives-core]345[dependencies.cumulus-primitives-core]346git = "https://github.com/paritytech/cumulus"346git = "https://github.com/paritytech/cumulus"347branch = "polkadot-v0.9.27"347branch = "polkadot-v0.9.29"348default-features = false348default-features = false349349350[dependencies.cumulus-pallet-xcm]350[dependencies.cumulus-pallet-xcm]351git = "https://github.com/paritytech/cumulus"351git = "https://github.com/paritytech/cumulus"352branch = "polkadot-v0.9.27"352branch = "polkadot-v0.9.29"353default-features = false353default-features = false354354355[dependencies.cumulus-pallet-dmp-queue]355[dependencies.cumulus-pallet-dmp-queue]356git = "https://github.com/paritytech/cumulus"356git = "https://github.com/paritytech/cumulus"357branch = "polkadot-v0.9.27"357branch = "polkadot-v0.9.29"358default-features = false358default-features = false359359360[dependencies.cumulus-pallet-xcmp-queue]360[dependencies.cumulus-pallet-xcmp-queue]361git = "https://github.com/paritytech/cumulus"361git = "https://github.com/paritytech/cumulus"362branch = "polkadot-v0.9.27"362branch = "polkadot-v0.9.29"363default-features = false363default-features = false364364365[dependencies.cumulus-primitives-utility]365[dependencies.cumulus-primitives-utility]366git = "https://github.com/paritytech/cumulus"366git = "https://github.com/paritytech/cumulus"367branch = "polkadot-v0.9.27"367branch = "polkadot-v0.9.29"368default-features = false368default-features = false369369370[dependencies.cumulus-primitives-timestamp]370[dependencies.cumulus-primitives-timestamp]371git = "https://github.com/paritytech/cumulus"371git = "https://github.com/paritytech/cumulus"372branch = "polkadot-v0.9.27"372branch = "polkadot-v0.9.29"373default-features = false373default-features = false374374375################################################################################375################################################################################376# Polkadot dependencies376# Polkadot dependencies377377378[dependencies.polkadot-parachain]378[dependencies.polkadot-parachain]379git = "https://github.com/paritytech/polkadot"379git = "https://github.com/paritytech/polkadot"380branch = "release-v0.9.27"380branch = "release-v0.9.29"381default-features = false381default-features = false382382383[dependencies.xcm]383[dependencies.xcm]384git = "https://github.com/paritytech/polkadot"384git = "https://github.com/paritytech/polkadot"385branch = "release-v0.9.27"385branch = "release-v0.9.29"386default-features = false386default-features = false387387388[dependencies.xcm-builder]388[dependencies.xcm-builder]389git = "https://github.com/paritytech/polkadot"389git = "https://github.com/paritytech/polkadot"390branch = "release-v0.9.27"390branch = "release-v0.9.29"391default-features = false391default-features = false392392393[dependencies.xcm-executor]393[dependencies.xcm-executor]394git = "https://github.com/paritytech/polkadot"394git = "https://github.com/paritytech/polkadot"395branch = "release-v0.9.27"395branch = "release-v0.9.29"396default-features = false396default-features = false397397398[dependencies.pallet-xcm]398[dependencies.pallet-xcm]399git = "https://github.com/paritytech/polkadot"399git = "https://github.com/paritytech/polkadot"400branch = "release-v0.9.27"400branch = "release-v0.9.29"401default-features = false401default-features = false402402403[dependencies.orml-vesting]403[dependencies.orml-vesting]404git = "https://github.com/open-web3-stack/open-runtime-module-library"404git = "https://github.com/UniqueNetwork/open-runtime-module-library"405branch = "polkadot-v0.9.27"405branch = "polkadot-v0.9.29"406version = "0.4.1-dev"406version = "0.4.1-dev"407default-features = false407default-features = false408408409[dependencies.orml-xtokens]409[dependencies.orml-xtokens]410git = "https://github.com/open-web3-stack/open-runtime-module-library"410git = "https://github.com/UniqueNetwork/open-runtime-module-library"411branch = "polkadot-v0.9.27"411branch = "polkadot-v0.9.29"412version = "0.4.1-dev"412version = "0.4.1-dev"413default-features = false413default-features = false414414415[dependencies.orml-tokens]415[dependencies.orml-tokens]416git = "https://github.com/open-web3-stack/open-runtime-module-library"416git = "https://github.com/UniqueNetwork/open-runtime-module-library"417branch = "polkadot-v0.9.27"417branch = "polkadot-v0.9.29"418version = "0.4.1-dev"418version = "0.4.1-dev"419default-features = false419default-features = false420420421[dependencies.orml-traits]421[dependencies.orml-traits]422git = "https://github.com/open-web3-stack/open-runtime-module-library"422git = "https://github.com/UniqueNetwork/open-runtime-module-library"423branch = "polkadot-v0.9.27"423branch = "polkadot-v0.9.29"424version = "0.4.1-dev"424version = "0.4.1-dev"425default-features = false425default-features = false426426446pallet-unique = { path = '../../pallets/unique', default-features = false }446pallet-unique = { path = '../../pallets/unique', default-features = false }447up-rpc = { path = "../../primitives/rpc", default-features = false }447up-rpc = { path = "../../primitives/rpc", default-features = false }448app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}448app-promotion-rpc = { path = "../../primitives/app_promotion_rpc", default-features = false}449fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }449fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }450pallet-inflation = { path = '../../pallets/inflation', default-features = false }450pallet-inflation = { path = '../../pallets/inflation', default-features = false }451pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }451pallet-app-promotion = { path = '../../pallets/app-promotion', default-features = false }452up-data-structs = { path = '../../primitives/data-structs', default-features = false }452up-data-structs = { path = '../../primitives/data-structs', default-features = false }460pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }460pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }461pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }461pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }462# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }462# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }463pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }463pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }464pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }464pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }465pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }465pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }466pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }466pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }467pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }467pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }468pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }468pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }469pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }469pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }470pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }470pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }471fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }471fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }472fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }472fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }473evm-coder = { default-features = false, path = '../../crates/evm-coder' }473evm-coder = { default-features = false, path = '../../crates/evm-coder' }474up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.27' }474up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.29' }475pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }475pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }476476477################################################################################477################################################################################490490491[build-dependencies.substrate-wasm-builder]491[build-dependencies.substrate-wasm-builder]492git = "https://github.com/paritytech/substrate"492git = "https://github.com/paritytech/substrate"493branch = "polkadot-v0.9.27"493branch = "polkadot-v0.9.29"494494runtime/tests/Cargo.tomldiffbeforeafterboth11[dependencies]11[dependencies]12up-data-structs = { default-features = false, path = '../../primitives/data-structs' }12up-data-structs = { default-features = false, path = '../../primitives/data-structs' }131314sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }14sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }15sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }15sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }16sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }16sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }17sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }17sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }181819fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }19fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }202021frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }21frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }22frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }22frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }232324pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }24pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }25pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }25pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }26pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.27" }26pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.29" }272728pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }28pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }29pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }29pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }303031pallet-common = { path = '../../pallets/common' }31pallet-common = { path = '../../pallets/common' }32pallet-structure = { path = '../../pallets/structure' }32pallet-structure = { path = '../../pallets/structure' }43scale-info = "*"43scale-info = "*"444445evm-coder = { default-features = false, path = '../../crates/evm-coder' }45evm-coder = { default-features = false, path = '../../crates/evm-coder' }46up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27" }46up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29" }4747runtime/unique/Cargo.tomldiffbeforeafterboth149default-features = false149default-features = false150git = "https://github.com/paritytech/substrate"150git = "https://github.com/paritytech/substrate"151optional = true151optional = true152branch = "polkadot-v0.9.27"152branch = "polkadot-v0.9.29"153153154[dependencies.frame-try-runtime]154[dependencies.frame-try-runtime]155default-features = false155default-features = false156git = "https://github.com/paritytech/substrate"156git = "https://github.com/paritytech/substrate"157optional = true157optional = true158branch = "polkadot-v0.9.27"158branch = "polkadot-v0.9.29"159159160[dependencies.frame-executive]160[dependencies.frame-executive]161default-features = false161default-features = false162git = "https://github.com/paritytech/substrate"162git = "https://github.com/paritytech/substrate"163branch = "polkadot-v0.9.27"163branch = "polkadot-v0.9.29"164164165[dependencies.frame-support]165[dependencies.frame-support]166default-features = false166default-features = false167git = "https://github.com/paritytech/substrate"167git = "https://github.com/paritytech/substrate"168branch = "polkadot-v0.9.27"168branch = "polkadot-v0.9.29"169169170[dependencies.frame-system]170[dependencies.frame-system]171default-features = false171default-features = false172git = "https://github.com/paritytech/substrate"172git = "https://github.com/paritytech/substrate"173branch = "polkadot-v0.9.27"173branch = "polkadot-v0.9.29"174174175[dependencies.frame-system-benchmarking]175[dependencies.frame-system-benchmarking]176default-features = false176default-features = false177git = "https://github.com/paritytech/substrate"177git = "https://github.com/paritytech/substrate"178optional = true178optional = true179branch = "polkadot-v0.9.27"179branch = "polkadot-v0.9.29"180180181[dependencies.frame-system-rpc-runtime-api]181[dependencies.frame-system-rpc-runtime-api]182default-features = false182default-features = false183git = "https://github.com/paritytech/substrate"183git = "https://github.com/paritytech/substrate"184branch = "polkadot-v0.9.27"184branch = "polkadot-v0.9.29"185185186[dependencies.hex-literal]186[dependencies.hex-literal]187optional = true187optional = true196[dependencies.pallet-aura]196[dependencies.pallet-aura]197default-features = false197default-features = false198git = "https://github.com/paritytech/substrate"198git = "https://github.com/paritytech/substrate"199branch = "polkadot-v0.9.27"199branch = "polkadot-v0.9.29"200200201[dependencies.pallet-balances]201[dependencies.pallet-balances]202default-features = false202default-features = false203git = "https://github.com/paritytech/substrate"203git = "https://github.com/paritytech/substrate"204branch = "polkadot-v0.9.27"204branch = "polkadot-v0.9.29"205205206# Contracts specific packages206# Contracts specific packages207# [dependencies.pallet-contracts]207# [dependencies.pallet-contracts]225[dependencies.pallet-randomness-collective-flip]225[dependencies.pallet-randomness-collective-flip]226default-features = false226default-features = false227git = "https://github.com/paritytech/substrate"227git = "https://github.com/paritytech/substrate"228branch = "polkadot-v0.9.27"228branch = "polkadot-v0.9.29"229229230[dependencies.pallet-sudo]230[dependencies.pallet-sudo]231default-features = false231default-features = false232git = "https://github.com/paritytech/substrate"232git = "https://github.com/paritytech/substrate"233branch = "polkadot-v0.9.27"233branch = "polkadot-v0.9.29"234234235[dependencies.pallet-timestamp]235[dependencies.pallet-timestamp]236default-features = false236default-features = false237git = "https://github.com/paritytech/substrate"237git = "https://github.com/paritytech/substrate"238branch = "polkadot-v0.9.27"238branch = "polkadot-v0.9.29"239239240[dependencies.pallet-transaction-payment]240[dependencies.pallet-transaction-payment]241default-features = false241default-features = false242git = "https://github.com/paritytech/substrate"242git = "https://github.com/paritytech/substrate"243branch = "polkadot-v0.9.27"243branch = "polkadot-v0.9.29"244244245[dependencies.pallet-transaction-payment-rpc-runtime-api]245[dependencies.pallet-transaction-payment-rpc-runtime-api]246default-features = false246default-features = false247git = "https://github.com/paritytech/substrate"247git = "https://github.com/paritytech/substrate"248branch = "polkadot-v0.9.27"248branch = "polkadot-v0.9.29"249249250[dependencies.pallet-treasury]250[dependencies.pallet-treasury]251default-features = false251default-features = false252git = "https://github.com/paritytech/substrate"252git = "https://github.com/paritytech/substrate"253branch = "polkadot-v0.9.27"253branch = "polkadot-v0.9.29"254254255# [dependencies.pallet-vesting]255# [dependencies.pallet-vesting]256# default-features = false256# default-features = false260[dependencies.sp-arithmetic]260[dependencies.sp-arithmetic]261default-features = false261default-features = false262git = "https://github.com/paritytech/substrate"262git = "https://github.com/paritytech/substrate"263branch = "polkadot-v0.9.27"263branch = "polkadot-v0.9.29"264264265[dependencies.sp-api]265[dependencies.sp-api]266default-features = false266default-features = false267git = "https://github.com/paritytech/substrate"267git = "https://github.com/paritytech/substrate"268branch = "polkadot-v0.9.27"268branch = "polkadot-v0.9.29"269269270[dependencies.sp-block-builder]270[dependencies.sp-block-builder]271default-features = false271default-features = false272git = "https://github.com/paritytech/substrate"272git = "https://github.com/paritytech/substrate"273branch = "polkadot-v0.9.27"273branch = "polkadot-v0.9.29"274274275[dependencies.sp-core]275[dependencies.sp-core]276default-features = false276default-features = false277git = "https://github.com/paritytech/substrate"277git = "https://github.com/paritytech/substrate"278branch = "polkadot-v0.9.27"278branch = "polkadot-v0.9.29"279279280[dependencies.sp-consensus-aura]280[dependencies.sp-consensus-aura]281default-features = false281default-features = false282git = "https://github.com/paritytech/substrate"282git = "https://github.com/paritytech/substrate"283branch = "polkadot-v0.9.27"283branch = "polkadot-v0.9.29"284284285[dependencies.sp-inherents]285[dependencies.sp-inherents]286default-features = false286default-features = false287git = "https://github.com/paritytech/substrate"287git = "https://github.com/paritytech/substrate"288branch = "polkadot-v0.9.27"288branch = "polkadot-v0.9.29"289289290[dependencies.sp-io]290[dependencies.sp-io]291default-features = false291default-features = false292git = "https://github.com/paritytech/substrate"292git = "https://github.com/paritytech/substrate"293branch = "polkadot-v0.9.27"293branch = "polkadot-v0.9.29"294294295[dependencies.sp-offchain]295[dependencies.sp-offchain]296default-features = false296default-features = false297git = "https://github.com/paritytech/substrate"297git = "https://github.com/paritytech/substrate"298branch = "polkadot-v0.9.27"298branch = "polkadot-v0.9.29"299299300[dependencies.sp-runtime]300[dependencies.sp-runtime]301default-features = false301default-features = false302git = "https://github.com/paritytech/substrate"302git = "https://github.com/paritytech/substrate"303branch = "polkadot-v0.9.27"303branch = "polkadot-v0.9.29"304304305[dependencies.sp-session]305[dependencies.sp-session]306default-features = false306default-features = false307git = "https://github.com/paritytech/substrate"307git = "https://github.com/paritytech/substrate"308branch = "polkadot-v0.9.27"308branch = "polkadot-v0.9.29"309309310[dependencies.sp-std]310[dependencies.sp-std]311default-features = false311default-features = false312git = "https://github.com/paritytech/substrate"312git = "https://github.com/paritytech/substrate"313branch = "polkadot-v0.9.27"313branch = "polkadot-v0.9.29"314314315[dependencies.sp-transaction-pool]315[dependencies.sp-transaction-pool]316default-features = false316default-features = false317git = "https://github.com/paritytech/substrate"317git = "https://github.com/paritytech/substrate"318branch = "polkadot-v0.9.27"318branch = "polkadot-v0.9.29"319319320[dependencies.sp-version]320[dependencies.sp-version]321default-features = false321default-features = false322git = "https://github.com/paritytech/substrate"322git = "https://github.com/paritytech/substrate"323branch = "polkadot-v0.9.27"323branch = "polkadot-v0.9.29"324324325[dependencies.smallvec]325[dependencies.smallvec]326version = '1.6.1'326version = '1.6.1'331[dependencies.parachain-info]331[dependencies.parachain-info]332default-features = false332default-features = false333git = "https://github.com/paritytech/cumulus"333git = "https://github.com/paritytech/cumulus"334branch = "polkadot-v0.9.27"334branch = "polkadot-v0.9.29"335335336[dependencies.cumulus-pallet-aura-ext]336[dependencies.cumulus-pallet-aura-ext]337git = "https://github.com/paritytech/cumulus"337git = "https://github.com/paritytech/cumulus"338branch = "polkadot-v0.9.27"338branch = "polkadot-v0.9.29"339default-features = false339default-features = false340340341[dependencies.cumulus-pallet-parachain-system]341[dependencies.cumulus-pallet-parachain-system]342git = "https://github.com/paritytech/cumulus"342git = "https://github.com/paritytech/cumulus"343branch = "polkadot-v0.9.27"343branch = "polkadot-v0.9.29"344default-features = false344default-features = false345345346[dependencies.cumulus-primitives-core]346[dependencies.cumulus-primitives-core]347git = "https://github.com/paritytech/cumulus"347git = "https://github.com/paritytech/cumulus"348branch = "polkadot-v0.9.27"348branch = "polkadot-v0.9.29"349default-features = false349default-features = false350350351[dependencies.cumulus-pallet-xcm]351[dependencies.cumulus-pallet-xcm]352git = "https://github.com/paritytech/cumulus"352git = "https://github.com/paritytech/cumulus"353branch = "polkadot-v0.9.27"353branch = "polkadot-v0.9.29"354default-features = false354default-features = false355355356[dependencies.cumulus-pallet-dmp-queue]356[dependencies.cumulus-pallet-dmp-queue]357git = "https://github.com/paritytech/cumulus"357git = "https://github.com/paritytech/cumulus"358branch = "polkadot-v0.9.27"358branch = "polkadot-v0.9.29"359default-features = false359default-features = false360360361[dependencies.cumulus-pallet-xcmp-queue]361[dependencies.cumulus-pallet-xcmp-queue]362git = "https://github.com/paritytech/cumulus"362git = "https://github.com/paritytech/cumulus"363branch = "polkadot-v0.9.27"363branch = "polkadot-v0.9.29"364default-features = false364default-features = false365365366[dependencies.cumulus-primitives-utility]366[dependencies.cumulus-primitives-utility]367git = "https://github.com/paritytech/cumulus"367git = "https://github.com/paritytech/cumulus"368branch = "polkadot-v0.9.27"368branch = "polkadot-v0.9.29"369default-features = false369default-features = false370370371[dependencies.cumulus-primitives-timestamp]371[dependencies.cumulus-primitives-timestamp]372git = "https://github.com/paritytech/cumulus"372git = "https://github.com/paritytech/cumulus"373branch = "polkadot-v0.9.27"373branch = "polkadot-v0.9.29"374default-features = false374default-features = false375375376################################################################################376################################################################################377# Polkadot dependencies377# Polkadot dependencies378378379[dependencies.polkadot-parachain]379[dependencies.polkadot-parachain]380git = "https://github.com/paritytech/polkadot"380git = "https://github.com/paritytech/polkadot"381branch = "release-v0.9.27"381branch = "release-v0.9.29"382default-features = false382default-features = false383383384[dependencies.xcm]384[dependencies.xcm]385git = "https://github.com/paritytech/polkadot"385git = "https://github.com/paritytech/polkadot"386branch = "release-v0.9.27"386branch = "release-v0.9.29"387default-features = false387default-features = false388388389[dependencies.xcm-builder]389[dependencies.xcm-builder]390git = "https://github.com/paritytech/polkadot"390git = "https://github.com/paritytech/polkadot"391branch = "release-v0.9.27"391branch = "release-v0.9.29"392default-features = false392default-features = false393393394[dependencies.xcm-executor]394[dependencies.xcm-executor]395git = "https://github.com/paritytech/polkadot"395git = "https://github.com/paritytech/polkadot"396branch = "release-v0.9.27"396branch = "release-v0.9.29"397default-features = false397default-features = false398398399[dependencies.pallet-xcm]399[dependencies.pallet-xcm]400git = "https://github.com/paritytech/polkadot"400git = "https://github.com/paritytech/polkadot"401branch = "release-v0.9.27"401branch = "release-v0.9.29"402default-features = false402default-features = false403403404[dependencies.orml-vesting]404[dependencies.orml-vesting]405git = "https://github.com/open-web3-stack/open-runtime-module-library"405git = "https://github.com/UniqueNetwork/open-runtime-module-library"406branch = "polkadot-v0.9.27"406branch = "polkadot-v0.9.29"407version = "0.4.1-dev"407version = "0.4.1-dev"408default-features = false408default-features = false409409410[dependencies.orml-xtokens]410[dependencies.orml-xtokens]411git = "https://github.com/open-web3-stack/open-runtime-module-library"411git = "https://github.com/UniqueNetwork/open-runtime-module-library"412branch = "polkadot-v0.9.27"412branch = "polkadot-v0.9.29"413version = "0.4.1-dev"413version = "0.4.1-dev"414default-features = false414default-features = false415415416[dependencies.orml-tokens]416[dependencies.orml-tokens]417git = "https://github.com/open-web3-stack/open-runtime-module-library"417git = "https://github.com/UniqueNetwork/open-runtime-module-library"418branch = "polkadot-v0.9.27"418branch = "polkadot-v0.9.29"419version = "0.4.1-dev"419version = "0.4.1-dev"420default-features = false420default-features = false421421422[dependencies.orml-traits]422[dependencies.orml-traits]423git = "https://github.com/open-web3-stack/open-runtime-module-library"423git = "https://github.com/UniqueNetwork/open-runtime-module-library"424branch = "polkadot-v0.9.27"424branch = "polkadot-v0.9.29"425version = "0.4.1-dev"425version = "0.4.1-dev"426default-features = false426default-features = false427################################################################################427################################################################################451pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }451pallet-proxy-rmrk-equip = { default-features = false, path = "../../pallets/proxy-rmrk-equip", package = "pallet-rmrk-equip" }452pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }452pallet-unique-scheduler = { path = '../../pallets/scheduler', default-features = false }453# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }453# pallet-contract-helpers = { path = '../pallets/contract-helpers', default-features = false, version = '0.1.0' }454pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.27", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }454pallet-charge-transaction = { git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = "polkadot-v0.9.29", package = "pallet-template-transaction-payment", default-features = false, version = "3.0.0" }455pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }455pallet-evm-migration = { path = '../../pallets/evm-migration', default-features = false }456pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }456pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }457pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }457pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }458pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }458pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }459pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }459pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }460pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }460pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }461pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }461pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }462fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }462fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }463fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }463fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }464fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.27-fee-limit" }464fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier", branch = "unique-polkadot-v0.9.29" }465evm-coder = { default-features = false, path = '../../crates/evm-coder' }465evm-coder = { default-features = false, path = '../../crates/evm-coder' }466up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.27' }466up-sponsorship = { default-features = false, git = "https://github.com/uniquenetwork/pallet-sponsoring", branch = 'polkadot-v0.9.29' }467pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }467pallet-foreign-assets = { default-features = false, path = "../../pallets/foreign-assets" }468468469################################################################################469################################################################################482482483[build-dependencies.substrate-wasm-builder]483[build-dependencies.substrate-wasm-builder]484git = "https://github.com/paritytech/substrate"484git = "https://github.com/paritytech/substrate"485branch = "polkadot-v0.9.27"485branch = "polkadot-v0.9.29"486486tests/package.jsondiffbeforeafterboth38 "testNesting": "mocha --timeout 9999999 -r ts-node/register ./**/nest.test.ts",38 "testNesting": "mocha --timeout 9999999 -r ts-node/register ./**/nest.test.ts",39 "testUnnesting": "mocha --timeout 9999999 -r ts-node/register ./**/unnest.test.ts",39 "testUnnesting": "mocha --timeout 9999999 -r ts-node/register ./**/unnest.test.ts",40 "testStructure": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/**.test.ts",40 "testStructure": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/**.test.ts",41 "testProperties": "mocha --timeout 9999999 -r ts-node/register ./**/properties.test.ts",41 "testProperties": "mocha --timeout 9999999 -r ts-node/register ./**/properties.test.ts ./**/getPropertiesRpc.test.ts",42 "testMigration": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/migration-check.test.ts",42 "testMigration": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/migration-check.test.ts",43 "testRmrk": "mocha --timeout 9999999 -r ts-node/register ./**/rmrk/**.test.ts",43 "testRmrk": "mocha --timeout 9999999 -r ts-node/register ./**/rmrk/**.test.ts",44 "testAddCollectionAdmin": "mocha --timeout 9999999 -r ts-node/register ./**/addCollectionAdmin.test.ts",44 "testAddCollectionAdmin": "mocha --timeout 9999999 -r ts-node/register ./**/addCollectionAdmin.test.ts",tests/src/eth/api/CollectionHelpers.soldiffbeforeafterboth18}18}191920/// @title Contract, which allows users to operate with collections20/// @title Contract, which allows users to operate with collections21/// @dev the ERC-165 identifier for this interface is 0x88ee8ef121/// @dev the ERC-165 identifier for this interface is 0x5ad4f44022interface CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {22interface CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {23 /// Create an NFT collection23 /// Create an NFT collection24 /// @param name Name of the collection24 /// @param name Name of the collection31 string memory name,31 string memory name,32 string memory description,32 string memory description,33 string memory tokenPrefix33 string memory tokenPrefix34 ) external returns (address);34 ) external payable returns (address);353536 /// @dev EVM selector for this function is: 0xa634a5f9,36 /// @dev EVM selector for this function is: 0xa634a5f9,37 /// or in textual repr: createERC721MetadataCompatibleCollection(string,string,string,string)37 /// or in textual repr: createERC721MetadataCompatibleCollection(string,string,string,string)40 string memory description,40 string memory description,41 string memory tokenPrefix,41 string memory tokenPrefix,42 string memory baseUri42 string memory baseUri43 ) external returns (address);43 ) external payable returns (address);444445 /// @dev EVM selector for this function is: 0xab173450,45 /// @dev EVM selector for this function is: 0xab173450,46 /// or in textual repr: createRFTCollection(string,string,string)46 /// or in textual repr: createRFTCollection(string,string,string)47 function createRFTCollection(47 function createRFTCollection(48 string memory name,48 string memory name,49 string memory description,49 string memory description,50 string memory tokenPrefix50 string memory tokenPrefix51 ) external returns (address);51 ) external payable returns (address);525253 /// @dev EVM selector for this function is: 0xa5596388,53 /// @dev EVM selector for this function is: 0xa5596388,54 /// or in textual repr: createERC721MetadataCompatibleRFTCollection(string,string,string,string)54 /// or in textual repr: createERC721MetadataCompatibleRFTCollection(string,string,string,string)57 string memory description,57 string memory description,58 string memory tokenPrefix,58 string memory tokenPrefix,59 string memory baseUri59 string memory baseUri60 ) external returns (address);60 ) external payable returns (address);616162 /// Check if a collection exists62 /// Check if a collection exists63 /// @param collectionAddress Address of the collection in question63 /// @param collectionAddress Address of the collection in question66 /// or in textual repr: isCollectionExist(address)66 /// or in textual repr: isCollectionExist(address)67 function isCollectionExist(address collectionAddress) external view returns (bool);67 function isCollectionExist(address collectionAddress) external view returns (bool);6869 /// @dev EVM selector for this function is: 0xd23a7ab1,70 /// or in textual repr: collectionCreationFee()71 function collectionCreationFee() external view returns (uint256);68}72}6973tests/src/eth/collectionHelpersAbi.jsondiffbeforeafterboth18 "name": "CollectionCreated",18 "name": "CollectionCreated",19 "type": "event"19 "type": "event"20 },20 },21 {22 "inputs": [],23 "name": "collectionCreationFee",24 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],25 "stateMutability": "view",26 "type": "function"27 },21 {28 {22 "inputs": [29 "inputs": [23 { "internalType": "string", "name": "name", "type": "string" },30 { "internalType": "string", "name": "name", "type": "string" },27 ],34 ],28 "name": "createERC721MetadataCompatibleCollection",35 "name": "createERC721MetadataCompatibleCollection",29 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],36 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],30 "stateMutability": "nonpayable",37 "stateMutability": "payable",31 "type": "function"38 "type": "function"32 },39 },33 {40 {39 ],46 ],40 "name": "createERC721MetadataCompatibleRFTCollection",47 "name": "createERC721MetadataCompatibleRFTCollection",41 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],48 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],42 "stateMutability": "nonpayable",49 "stateMutability": "payable",43 "type": "function"50 "type": "function"44 },51 },45 {52 {50 ],57 ],51 "name": "createNonfungibleCollection",58 "name": "createNonfungibleCollection",52 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],59 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],53 "stateMutability": "nonpayable",60 "stateMutability": "payable",54 "type": "function"61 "type": "function"55 },62 },56 {63 {61 ],68 ],62 "name": "createRFTCollection",69 "name": "createRFTCollection",63 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],70 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],64 "stateMutability": "nonpayable",71 "stateMutability": "payable",65 "type": "function"72 "type": "function"66 },73 },67 {74 {tests/src/eth/collectionSponsoring.test.tsdiffbeforeafterboth1import {addToAllowListExpectSuccess, bigIntToSub, confirmSponsorshipExpectSuccess, createCollectionExpectSuccess, enablePublicMintingExpectSuccess, getDetailedCollectionInfo, setCollectionSponsorExpectSuccess} from '../util/helpers';1import {addToAllowListExpectSuccess, confirmSponsorshipExpectSuccess, createCollectionExpectSuccess, enablePublicMintingExpectSuccess, getDetailedCollectionInfo, setCollectionSponsorExpectSuccess, UNIQUE} from '../util/helpers';2import {itWeb3, createEthAccount, collectionIdToAddress, GAS_ARGS, normalizeEvents, createEthAccountWithBalance, evmCollectionHelpers, getCollectionAddressFromResult, evmCollection, ethBalanceViaSub} from './util/helpers';2import {itWeb3, createEthAccount, collectionIdToAddress, GAS_ARGS, normalizeEvents, createEthAccountWithBalance, evmCollectionHelpers, getCollectionAddressFromResult, evmCollection, ethBalanceViaSub} from './util/helpers';3import nonFungibleAbi from './nonFungibleAbi.json';3import nonFungibleAbi from './nonFungibleAbi.json';4import {expect} from 'chai';4import {expect} from 'chai';5import {evmToAddress} from '@polkadot/util-crypto';5import {evmToAddress} from '@polkadot/util-crypto';6import {submitTransactionAsync} from '../substrate/substrate-api';7import getBalance from '../substrate/get-balance';869describe('evm collection sponsoring', () => {7describe('evm collection sponsoring', () => {10 itWeb3('sponsors mint transactions', async ({web3, privateKeyWrapper}) => {8 itWeb3('sponsors mint transactions', async ({web3, privateKeyWrapper}) => {64 itWeb3('Remove sponsor', async ({api, web3, privateKeyWrapper}) => {62 itWeb3('Remove sponsor', async ({api, web3, privateKeyWrapper}) => {65 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);63 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);66 const collectionHelpers = evmCollectionHelpers(web3, owner);64 const collectionHelpers = evmCollectionHelpers(web3, owner);67 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send();65 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send({value: Number(2n * UNIQUE)});68 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);66 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);69 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);67 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);70 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);68 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);85 itWeb3('Sponsoring collection from evm address via access list', async ({api, web3, privateKeyWrapper}) => {83 itWeb3('Sponsoring collection from evm address via access list', async ({api, web3, privateKeyWrapper}) => {86 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);84 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);87 const collectionHelpers = evmCollectionHelpers(web3, owner);85 const collectionHelpers = evmCollectionHelpers(web3, owner);88 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send();86 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send({value: Number(2n * UNIQUE)});89 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);87 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);90 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);88 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);91 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);89 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);210 itWeb3('Check that transaction via EVM spend money from sponsor address', async ({api, web3, privateKeyWrapper}) => {208 itWeb3('Check that transaction via EVM spend money from sponsor address', async ({api, web3, privateKeyWrapper}) => {211 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);209 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);212 const collectionHelpers = evmCollectionHelpers(web3, owner);210 const collectionHelpers = evmCollectionHelpers(web3, owner);213 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send();211 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send({value: Number(2n * UNIQUE)});214 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);212 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);215 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);213 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);216 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);214 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);tests/src/eth/createNFTCollection.test.tsdiffbeforeafterboth15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617import {evmToAddress} from '@polkadot/util-crypto';17import {evmToAddress} from '@polkadot/util-crypto';18import {expect} from 'chai';18import {IKeyringPair} from '@polkadot/types/types';19import {getCreatedCollectionCount, getDetailedCollectionInfo} from '../util/helpers';19import {expect, itEth, usingEthPlaygrounds} from './util/playgrounds';20import {20import {UNIQUE} from '../util/helpers';21 evmCollectionHelpers,22 collectionIdToAddress,23 createEthAccount,24 createEthAccountWithBalance,25 evmCollection,26 itWeb3,27 getCollectionAddressFromResult,28} from './util/helpers';292130describe('Create NFT collection from EVM', () => {22describe('Create NFT collection from EVM', () => {31 itWeb3('Create collection', async ({api, web3, privateKeyWrapper}) => {23 let donor: IKeyringPair;2425 before(async function() {26 await usingEthPlaygrounds(async (_helper, privateKey) => {32 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);27 donor = privateKey('//Alice');28 });29 });3031 itEth('Create collection', async ({helper}) => {33 const collectionHelper = evmCollectionHelpers(web3, owner);32 const owner = await helper.eth.createAccountWithBalance(donor);3334 const collectionName = 'CollectionEVM';34 const name = 'CollectionEVM';35 const description = 'Some description';35 const description = 'Some description';36 const tokenPrefix = 'token prefix';36 const prefix = 'token prefix';3737 38 // todo:playgrounds this might fail when in async environment.38 const collectionCountBefore = await getCreatedCollectionCount(api);39 const collectionCountBefore = +(await helper.callRpc('api.rpc.unique.collectionStats')).created;39 const result = await collectionHelper.methods40 const {collectionId} = await helper.eth.createNonfungibleCollection(owner, name, description, prefix);40 .createNonfungibleCollection(collectionName, description, tokenPrefix)41 .send();41 const collectionCountAfter = +(await helper.callRpc('api.rpc.unique.collectionStats')).created;4242 const collectionCountAfter = await getCreatedCollectionCount(api);43 const collection = helper.nft.getCollectionObject(collectionId);43 44 const data = (await collection.getData())!;44 const {collectionId, collection} = await getCollectionAddressFromResult(api, result);45 45 expect(collectionCountAfter - collectionCountBefore).to.be.eq(1);46 expect(collectionCountAfter - collectionCountBefore).to.be.eq(1);46 expect(collectionId).to.be.eq(collectionCountAfter);47 expect(collectionId).to.be.eq(collectionCountAfter);47 expect(collection.name.map(v => String.fromCharCode(v.toNumber())).join('')).to.be.eq(collectionName);48 expect(data.name).to.be.eq(name);48 expect(collection.description.map(v => String.fromCharCode(v.toNumber())).join('')).to.be.eq(description);49 expect(data.description).to.be.eq(description);49 expect(collection.tokenPrefix.toHuman()).to.be.eq(tokenPrefix);50 expect(data.raw.tokenPrefix).to.be.eq(prefix);50 expect(collection.mode.isNft).to.be.true;51 expect(data.raw.mode).to.be.eq('NFT');51 });52 });525353 itWeb3('Check collection address exist', async ({api, web3, privateKeyWrapper}) => {54 // todo:playgrounds this test will fail when in async environment.55 itEth('Check collection address exist', async ({helper}) => {54 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);56 const owner = await helper.eth.createAccountWithBalance(donor);5755 const collectionHelpers = evmCollectionHelpers(web3, owner);58 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;56 57 const expectedCollectionId = await getCreatedCollectionCount(api) + 1;59 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);58 const expectedCollectionAddress = collectionIdToAddress(expectedCollectionId);60 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);6159 expect(await collectionHelpers.methods62 expect(await collectionHelpers.methods60 .isCollectionExist(expectedCollectionAddress)63 .isCollectionExist(expectedCollectionAddress)61 .call()).to.be.false;64 .call()).to.be.false;626563 await collectionHelpers.methods66 await collectionHelpers.methods64 .createNonfungibleCollection('A', 'A', 'A')67 .createNonfungibleCollection('A', 'A', 'A')65 .send();68 .send({value: Number(2n * UNIQUE)});66 69 67 expect(await collectionHelpers.methods70 expect(await collectionHelpers.methods68 .isCollectionExist(expectedCollectionAddress)71 .isCollectionExist(expectedCollectionAddress)69 .call()).to.be.true;72 .call()).to.be.true;70 });73 });71 74 72 itWeb3('Set sponsorship', async ({api, web3, privateKeyWrapper}) => {75 itEth('Set sponsorship', async ({helper}) => {73 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);76 const owner = await helper.eth.createAccountWithBalance(donor);74 const collectionHelpers = evmCollectionHelpers(web3, owner);77 const sponsor = await helper.eth.createAccountWithBalance(donor);75 let result = await collectionHelpers.methods.createNonfungibleCollection('Sponsor collection', '1', '1').send();78 const ss58Format = helper.chain.getChainProperties().ss58Format;76 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);79 const {collectionId, collectionAddress} = await helper.eth.createNonfungibleCollection(owner, 'Sponsor', 'absolutely anything', 'ROC');77 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);8078 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);81 const collection = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);79 result = await collectionEvm.methods.setCollectionSponsor(sponsor).send();82 await collection.methods.setCollectionSponsor(sponsor).send();8380 let collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;84 let data = (await helper.nft.getData(collectionId))!;81 expect(collectionSub.sponsorship.isUnconfirmed).to.be.true;82 const ss58Format = (api.registry.getChainProperties())!.toJSON().ss58Format;83 expect(collectionSub.sponsorship.asUnconfirmed.toHuman()).to.be.eq(evmToAddress(sponsor, Number(ss58Format)));85 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));8684 await expect(collectionEvm.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('caller is not set as sponsor');87 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('caller is not set as sponsor');8885 const sponsorCollection = evmCollection(web3, sponsor, collectionIdAddress);89 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);86 await sponsorCollection.methods.confirmCollectionSponsorship().send();90 await sponsorCollection.methods.confirmCollectionSponsorship().send();9187 collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;92 data = (await helper.nft.getData(collectionId))!;88 expect(collectionSub.sponsorship.isConfirmed).to.be.true;93 expect(data.raw.sponsorship.Confirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));89 expect(collectionSub.sponsorship.asConfirmed.toHuman()).to.be.eq(evmToAddress(sponsor, Number(ss58Format)));90 });94 });919592 itWeb3('Set limits', async ({api, web3, privateKeyWrapper}) => {96 itEth('Set limits', async ({helper}) => {93 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);97 const owner = await helper.eth.createAccountWithBalance(donor);94 const collectionHelpers = evmCollectionHelpers(web3, owner);98 const {collectionId, collectionAddress} = await helper.eth.createNonfungibleCollection(owner, 'Limits', 'absolutely anything', 'FLO');95 const result = await collectionHelpers.methods.createNonfungibleCollection('Const collection', '5', '5').send();96 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);97 const limits = {99 const limits = {98 accountTokenOwnershipLimit: 1000,100 accountTokenOwnershipLimit: 1000,99 sponsoredDataSize: 1024,101 sponsoredDataSize: 1024,106 transfersEnabled: false,108 transfersEnabled: false,107 };109 };108110109 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);111 const collection = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);110 await collectionEvm.methods['setCollectionLimit(string,uint32)']('accountTokenOwnershipLimit', limits.accountTokenOwnershipLimit).send();112 await collection.methods['setCollectionLimit(string,uint32)']('accountTokenOwnershipLimit', limits.accountTokenOwnershipLimit).send();111 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsoredDataSize', limits.sponsoredDataSize).send();113 await collection.methods['setCollectionLimit(string,uint32)']('sponsoredDataSize', limits.sponsoredDataSize).send();112 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsoredDataRateLimit', limits.sponsoredDataRateLimit).send();114 await collection.methods['setCollectionLimit(string,uint32)']('sponsoredDataRateLimit', limits.sponsoredDataRateLimit).send();113 await collectionEvm.methods['setCollectionLimit(string,uint32)']('tokenLimit', limits.tokenLimit).send();115 await collection.methods['setCollectionLimit(string,uint32)']('tokenLimit', limits.tokenLimit).send();114 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsorTransferTimeout', limits.sponsorTransferTimeout).send();116 await collection.methods['setCollectionLimit(string,uint32)']('sponsorTransferTimeout', limits.sponsorTransferTimeout).send();115 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsorApproveTimeout', limits.sponsorApproveTimeout).send();117 await collection.methods['setCollectionLimit(string,uint32)']('sponsorApproveTimeout', limits.sponsorApproveTimeout).send();116 await collectionEvm.methods['setCollectionLimit(string,bool)']('ownerCanTransfer', limits.ownerCanTransfer).send();118 await collection.methods['setCollectionLimit(string,bool)']('ownerCanTransfer', limits.ownerCanTransfer).send();117 await collectionEvm.methods['setCollectionLimit(string,bool)']('ownerCanDestroy', limits.ownerCanDestroy).send();119 await collection.methods['setCollectionLimit(string,bool)']('ownerCanDestroy', limits.ownerCanDestroy).send();118 await collectionEvm.methods['setCollectionLimit(string,bool)']('transfersEnabled', limits.transfersEnabled).send();120 await collection.methods['setCollectionLimit(string,bool)']('transfersEnabled', limits.transfersEnabled).send();119 121 120 const collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;122 const data = (await helper.nft.getData(collectionId))!;121 expect(collectionSub.limits.accountTokenOwnershipLimit.unwrap().toNumber()).to.be.eq(limits.accountTokenOwnershipLimit);123 expect(data.raw.limits.accountTokenOwnershipLimit).to.be.eq(limits.accountTokenOwnershipLimit);122 expect(collectionSub.limits.sponsoredDataSize.unwrap().toNumber()).to.be.eq(limits.sponsoredDataSize);124 expect(data.raw.limits.sponsoredDataSize).to.be.eq(limits.sponsoredDataSize);123 expect(collectionSub.limits.sponsoredDataRateLimit.unwrap().asBlocks.toNumber()).to.be.eq(limits.sponsoredDataRateLimit);125 expect(data.raw.limits.sponsoredDataRateLimit.blocks).to.be.eq(limits.sponsoredDataRateLimit);124 expect(collectionSub.limits.tokenLimit.unwrap().toNumber()).to.be.eq(limits.tokenLimit);126 expect(data.raw.limits.tokenLimit).to.be.eq(limits.tokenLimit);125 expect(collectionSub.limits.sponsorTransferTimeout.unwrap().toNumber()).to.be.eq(limits.sponsorTransferTimeout);127 expect(data.raw.limits.sponsorTransferTimeout).to.be.eq(limits.sponsorTransferTimeout);126 expect(collectionSub.limits.sponsorApproveTimeout.unwrap().toNumber()).to.be.eq(limits.sponsorApproveTimeout);128 expect(data.raw.limits.sponsorApproveTimeout).to.be.eq(limits.sponsorApproveTimeout);127 expect(collectionSub.limits.ownerCanTransfer.toHuman()).to.be.eq(limits.ownerCanTransfer);129 expect(data.raw.limits.ownerCanTransfer).to.be.eq(limits.ownerCanTransfer);128 expect(collectionSub.limits.ownerCanDestroy.toHuman()).to.be.eq(limits.ownerCanDestroy);130 expect(data.raw.limits.ownerCanDestroy).to.be.eq(limits.ownerCanDestroy);129 expect(collectionSub.limits.transfersEnabled.toHuman()).to.be.eq(limits.transfersEnabled);131 expect(data.raw.limits.transfersEnabled).to.be.eq(limits.transfersEnabled);130 });132 });131133132 itWeb3('Collection address exist', async ({api, web3, privateKeyWrapper}) => {134 itEth('Collection address exist', async ({helper}) => {133 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);135 const owner = await helper.eth.createAccountWithBalance(donor);134 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';136 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';135 const collectionHelpers = evmCollectionHelpers(web3, owner);137 expect(await helper.ethNativeContract.collectionHelpers(collectionAddressForNonexistentCollection)136 expect(await collectionHelpers.methods137 .isCollectionExist(collectionAddressForNonexistentCollection).call())138 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())138 .to.be.false;139 .to.be.false;139 140 140 const result = await collectionHelpers.methods.createNonfungibleCollection('Collection address exist', '7', '7').send();141 const {collectionAddress} = await helper.eth.createNonfungibleCollection(owner, 'Exister', 'absolutely anything', 'EVC');141 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);142 expect(await helper.ethNativeContract.collectionHelpers(collectionAddress)142 expect(await collectionHelpers.methods143 .isCollectionExist(collectionIdAddress).call())143 .methods.isCollectionExist(collectionAddress).call())144 .to.be.true;144 .to.be.true;145 });145 });146});146});147147148describe('(!negative tests!) Create NFT collection from EVM', () => {148describe('(!negative tests!) Create NFT collection from EVM', () => {149 itWeb3('(!negative test!) Create collection (bad lengths)', async ({api, web3, privateKeyWrapper}) => {149 let donor: IKeyringPair;150151 before(async function() {152 await usingEthPlaygrounds(async (_helper, privateKey) => {153 donor = privateKey('//Alice');154 });155 });156157 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {150 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);158 const owner = await helper.eth.createAccountWithBalance(donor);151 const helper = evmCollectionHelpers(web3, owner);159 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);152 {160 {153 const MAX_NAME_LENGHT = 64;161 const MAX_NAME_LENGTH = 64;154 const collectionName = 'A'.repeat(MAX_NAME_LENGHT + 1);162 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);155 const description = 'A';163 const description = 'A';156 const tokenPrefix = 'A';164 const tokenPrefix = 'A';157 165158 await expect(helper.methods166 await expect(collectionHelper.methods159 .createNonfungibleCollection(collectionName, description, tokenPrefix)167 .createNonfungibleCollection(collectionName, description, tokenPrefix)160 .call()).to.be.rejectedWith('name is too long. Max length is ' + MAX_NAME_LENGHT);168 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('name is too long. Max length is ' + MAX_NAME_LENGTH);161 169 162 }170 }163 { 171 {164 const MAX_DESCRIPTION_LENGHT = 256;172 const MAX_DESCRIPTION_LENGTH = 256;165 const collectionName = 'A';173 const collectionName = 'A';166 const description = 'A'.repeat(MAX_DESCRIPTION_LENGHT + 1);174 const description = 'A'.repeat(MAX_DESCRIPTION_LENGTH + 1);167 const tokenPrefix = 'A';175 const tokenPrefix = 'A';168 await expect(helper.methods176 await expect(collectionHelper.methods169 .createNonfungibleCollection(collectionName, description, tokenPrefix)177 .createNonfungibleCollection(collectionName, description, tokenPrefix)170 .call()).to.be.rejectedWith('description is too long. Max length is ' + MAX_DESCRIPTION_LENGHT);178 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('description is too long. Max length is ' + MAX_DESCRIPTION_LENGTH);171 }179 }172 { 180 {173 const MAX_TOKEN_PREFIX_LENGHT = 16;181 const MAX_TOKEN_PREFIX_LENGTH = 16;174 const collectionName = 'A';182 const collectionName = 'A';175 const description = 'A';183 const description = 'A';176 const tokenPrefix = 'A'.repeat(MAX_TOKEN_PREFIX_LENGHT + 1);184 const tokenPrefix = 'A'.repeat(MAX_TOKEN_PREFIX_LENGTH + 1);177 await expect(helper.methods185 await expect(collectionHelper.methods178 .createNonfungibleCollection(collectionName, description, tokenPrefix)186 .createNonfungibleCollection(collectionName, description, tokenPrefix)179 .call()).to.be.rejectedWith('token_prefix is too long. Max length is ' + MAX_TOKEN_PREFIX_LENGHT);187 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('token_prefix is too long. Max length is ' + MAX_TOKEN_PREFIX_LENGTH);180 }188 }181 });189 });182 190 183 itWeb3('(!negative test!) Create collection (no funds)', async ({web3}) => {191 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {184 const owner = createEthAccount(web3);192 const owner = await helper.eth.createAccountWithBalance(donor);185 const helper = evmCollectionHelpers(web3, owner);193 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);186 const collectionName = 'A';194 await expect(collectionHelper.methods187 const description = 'A';188 const tokenPrefix = 'A';189 190 await expect(helper.methods191 .createNonfungibleCollection(collectionName, description, tokenPrefix)195 .createNonfungibleCollection('Peasantry', 'absolutely anything', 'CVE')192 .call()).to.be.rejectedWith('NotSufficientFounds');196 .call({value: Number(1n * UNIQUE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');193 });197 });194198195 itWeb3('(!negative test!) Check owner', async ({api, web3, privateKeyWrapper}) => {199 itEth('(!negative test!) Check owner', async ({helper}) => {196 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);200 const owner = await helper.eth.createAccountWithBalance(donor);197 const notOwner = createEthAccount(web3);201 const malfeasant = helper.eth.createAccount();198 const collectionHelpers = evmCollectionHelpers(web3, owner);202 const {collectionAddress} = await helper.eth.createNonfungibleCollection(owner, 'Transgressed', 'absolutely anything', 'COR');199 const result = await collectionHelpers.methods.createNonfungibleCollection('A', 'A', 'A').send();200 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);203 const malfeasantCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', malfeasant);201 const contractEvmFromNotOwner = evmCollection(web3, notOwner, collectionIdAddress);202 const EXPECTED_ERROR = 'NoPermission';204 const EXPECTED_ERROR = 'NoPermission';203 {205 {204 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);206 const sponsor = await helper.eth.createAccountWithBalance(donor);205 await expect(contractEvmFromNotOwner.methods207 await expect(malfeasantCollection.methods206 .setCollectionSponsor(sponsor)208 .setCollectionSponsor(sponsor)207 .call()).to.be.rejectedWith(EXPECTED_ERROR);209 .call()).to.be.rejectedWith(EXPECTED_ERROR);208 210 209 const sponsorCollection = evmCollection(web3, sponsor, collectionIdAddress);211 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'nft', sponsor);210 await expect(sponsorCollection.methods212 await expect(sponsorCollection.methods211 .confirmCollectionSponsorship()213 .confirmCollectionSponsorship()212 .call()).to.be.rejectedWith('caller is not set as sponsor');214 .call()).to.be.rejectedWith('caller is not set as sponsor');213 }215 }214 {216 {215 await expect(contractEvmFromNotOwner.methods217 await expect(malfeasantCollection.methods216 .setCollectionLimit('account_token_ownership_limit', '1000')218 .setCollectionLimit('account_token_ownership_limit', '1000')217 .call()).to.be.rejectedWith(EXPECTED_ERROR);219 .call()).to.be.rejectedWith(EXPECTED_ERROR);218 }220 }219 });221 });220222221 itWeb3('(!negative test!) Set limits', async ({api, web3, privateKeyWrapper}) => {223 itEth('(!negative test!) Set limits', async ({helper}) => {222 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);224 const owner = await helper.eth.createAccountWithBalance(donor);223 const collectionHelpers = evmCollectionHelpers(web3, owner);225 const {collectionAddress} = await helper.eth.createNonfungibleCollection(owner, 'Limits', 'absolutely anything', 'OLF');224 const result = await collectionHelpers.methods.createNonfungibleCollection('Schema collection', 'A', 'A').send();225 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);226 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);226 const collectionEvm = evmCollection(web3, owner, collectionIdAddress);227 await expect(collectionEvm.methods227 await expect(collectionEvm.methods228 .setCollectionLimit('badLimit', 'true')228 .setCollectionLimit('badLimit', 'true')229 .call()).to.be.rejectedWith('unknown boolean limit "badLimit"');229 .call()).to.be.rejectedWith('unknown boolean limit "badLimit"');tests/src/eth/createRFTCollection.test.tsdiffbeforeafterboth15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617import {evmToAddress} from '@polkadot/util-crypto';17import {evmToAddress} from '@polkadot/util-crypto';18import {expect} from 'chai';18import {IKeyringPair} from '@polkadot/types/types';19import {getCreatedCollectionCount, getDetailedCollectionInfo, requirePallets, Pallets} from '../util/helpers';19import {Pallets, requirePalletsOrSkip} from '../util/playgrounds';20import {20import {expect, itEth, usingEthPlaygrounds} from './util/playgrounds';21 evmCollectionHelpers,22 collectionIdToAddress,23 createEthAccount,24 createEthAccountWithBalance,25 evmCollection,21import {UNIQUE} from '../util/helpers';26 itWeb3,27 getCollectionAddressFromResult,28} from './util/helpers';292230describe('Create RFT collection from EVM', () => {23describe('Create RFT collection from EVM', () => {24 let donor: IKeyringPair;2531 before(async function() {26 before(async function() {32 await requirePallets(this, [Pallets.ReFungible]);27 await usingEthPlaygrounds(async (helper, privateKey) => {28 requirePalletsOrSkip(this, helper, [Pallets.ReFungible]);29 donor = privateKey('//Alice');30 });33 });31 });343235 itWeb3('Create collection', async ({api, web3, privateKeyWrapper}) => {33 itEth('Create collection', async ({helper}) => {36 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);34 const owner = await helper.eth.createAccountWithBalance(donor);37 const collectionHelper = evmCollectionHelpers(web3, owner);35 38 const collectionName = 'CollectionEVM';36 const name = 'CollectionEVM';39 const description = 'Some description';37 const description = 'Some description';40 const tokenPrefix = 'token prefix';38 const prefix = 'token prefix';41 39 42 const collectionCountBefore = await getCreatedCollectionCount(api);40 // todo:playgrounds this might fail when in async environment.41 const collectionCountBefore = +(await helper.callRpc('api.rpc.unique.collectionStats')).created;43 const result = await collectionHelper.methods42 const {collectionId} = await helper.eth.createRefungibleCollection(owner, name, description, prefix);44 .createRFTCollection(collectionName, description, tokenPrefix)45 .send();46 const collectionCountAfter = await getCreatedCollectionCount(api);43 const collectionCountAfter = +(await helper.callRpc('api.rpc.unique.collectionStats')).created;47 44 48 const {collectionId, collection} = await getCollectionAddressFromResult(api, result);45 const data = (await helper.rft.getData(collectionId))!;4649 expect(collectionCountAfter - collectionCountBefore).to.be.eq(1);47 expect(collectionCountAfter - collectionCountBefore).to.be.eq(1);50 expect(collectionId).to.be.eq(collectionCountAfter);48 expect(collectionId).to.be.eq(collectionCountAfter);51 expect(collection.name.map(v => String.fromCharCode(v.toNumber())).join('')).to.be.eq(collectionName);49 expect(data.name).to.be.eq(name);52 expect(collection.description.map(v => String.fromCharCode(v.toNumber())).join('')).to.be.eq(description);50 expect(data.description).to.be.eq(description);53 expect(collection.tokenPrefix.toHuman()).to.be.eq(tokenPrefix);51 expect(data.raw.tokenPrefix).to.be.eq(prefix);54 expect(collection.mode.isReFungible).to.be.true;52 expect(data.raw.mode).to.be.eq('ReFungible');55 });53 });565457 itWeb3('Check collection address exist', async ({api, web3, privateKeyWrapper}) => {55 // todo:playgrounds this test will fail when in async environment.56 itEth('Check collection address exist', async ({helper}) => {58 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);57 const owner = await helper.eth.createAccountWithBalance(donor);5859 const collectionHelpers = evmCollectionHelpers(web3, owner);59 const expectedCollectionId = +(await helper.callRpc('api.rpc.unique.collectionStats')).created + 1;60 61 const expectedCollectionId = await getCreatedCollectionCount(api) + 1;60 const expectedCollectionAddress = helper.ethAddress.fromCollectionId(expectedCollectionId);62 const expectedCollectionAddress = collectionIdToAddress(expectedCollectionId);61 const collectionHelpers = helper.ethNativeContract.collectionHelpers(owner);6263 expect(await collectionHelpers.methods63 expect(await collectionHelpers.methods64 .isCollectionExist(expectedCollectionAddress)64 .isCollectionExist(expectedCollectionAddress)65 .call()).to.be.false;65 .call()).to.be.false;666667 await collectionHelpers.methods67 await collectionHelpers.methods68 .createRFTCollection('A', 'A', 'A')68 .createRFTCollection('A', 'A', 'A')69 .send();69 .send({value: Number(2n * UNIQUE)});70 70 71 expect(await collectionHelpers.methods71 expect(await collectionHelpers.methods72 .isCollectionExist(expectedCollectionAddress)72 .isCollectionExist(expectedCollectionAddress)73 .call()).to.be.true;73 .call()).to.be.true;74 });74 });75 75 76 itWeb3('Set sponsorship', async ({api, web3, privateKeyWrapper}) => {76 itEth('Set sponsorship', async ({helper}) => {77 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);77 const owner = await helper.eth.createAccountWithBalance(donor);78 const collectionHelpers = evmCollectionHelpers(web3, owner);78 const sponsor = await helper.eth.createAccountWithBalance(donor);79 let result = await collectionHelpers.methods.createRFTCollection('Sponsor collection', '1', '1').send();79 const ss58Format = helper.chain.getChainProperties().ss58Format;80 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);80 const {collectionId, collectionAddress} = await helper.eth.createRefungibleCollection(owner, 'Sponsor', 'absolutely anything', 'ENVY');81 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);8182 const collectionEvm = evmCollection(web3, owner, collectionIdAddress, {type: 'ReFungible'});82 const collection = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);83 result = await collectionEvm.methods.setCollectionSponsor(sponsor).send();83 await collection.methods.setCollectionSponsor(sponsor).send();8484 let collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;85 let data = (await helper.rft.getData(collectionId))!;85 expect(collectionSub.sponsorship.isUnconfirmed).to.be.true;86 const ss58Format = (api.registry.getChainProperties())!.toJSON().ss58Format;87 expect(collectionSub.sponsorship.asUnconfirmed.toHuman()).to.be.eq(evmToAddress(sponsor, Number(ss58Format)));86 expect(data.raw.sponsorship.Unconfirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));8788 await expect(collectionEvm.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('caller is not set as sponsor');88 await expect(collection.methods.confirmCollectionSponsorship().call()).to.be.rejectedWith('caller is not set as sponsor');8989 const sponsorCollection = evmCollection(web3, sponsor, collectionIdAddress);90 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);90 await sponsorCollection.methods.confirmCollectionSponsorship().send();91 await sponsorCollection.methods.confirmCollectionSponsorship().send();9291 collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;93 data = (await helper.rft.getData(collectionId))!;92 expect(collectionSub.sponsorship.isConfirmed).to.be.true;94 expect(data.raw.sponsorship.Confirmed).to.be.equal(evmToAddress(sponsor, Number(ss58Format)));93 expect(collectionSub.sponsorship.asConfirmed.toHuman()).to.be.eq(evmToAddress(sponsor, Number(ss58Format)));94 });95 });959696 itWeb3('Set limits', async ({api, web3, privateKeyWrapper}) => {97 itEth('Set limits', async ({helper}) => {97 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);98 const owner = await helper.eth.createAccountWithBalance(donor);98 const collectionHelpers = evmCollectionHelpers(web3, owner);99 const {collectionId, collectionAddress} = await helper.eth.createRefungibleCollection(owner, 'Limits', 'absolutely anything', 'INSI');99 const result = await collectionHelpers.methods.createRFTCollection('Const collection', '5', '5').send();100 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);101 const limits = {100 const limits = {102 accountTokenOwnershipLimit: 1000,101 accountTokenOwnershipLimit: 1000,103 sponsoredDataSize: 1024,102 sponsoredDataSize: 1024,110 transfersEnabled: false,109 transfersEnabled: false,111 };110 };112111113 const collectionEvm = evmCollection(web3, owner, collectionIdAddress, {type: 'ReFungible'});112 const collection = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);114 await collectionEvm.methods['setCollectionLimit(string,uint32)']('accountTokenOwnershipLimit', limits.accountTokenOwnershipLimit).send();113 await collection.methods['setCollectionLimit(string,uint32)']('accountTokenOwnershipLimit', limits.accountTokenOwnershipLimit).send();115 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsoredDataSize', limits.sponsoredDataSize).send();114 await collection.methods['setCollectionLimit(string,uint32)']('sponsoredDataSize', limits.sponsoredDataSize).send();116 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsoredDataRateLimit', limits.sponsoredDataRateLimit).send();115 await collection.methods['setCollectionLimit(string,uint32)']('sponsoredDataRateLimit', limits.sponsoredDataRateLimit).send();117 await collectionEvm.methods['setCollectionLimit(string,uint32)']('tokenLimit', limits.tokenLimit).send();116 await collection.methods['setCollectionLimit(string,uint32)']('tokenLimit', limits.tokenLimit).send();118 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsorTransferTimeout', limits.sponsorTransferTimeout).send();117 await collection.methods['setCollectionLimit(string,uint32)']('sponsorTransferTimeout', limits.sponsorTransferTimeout).send();119 await collectionEvm.methods['setCollectionLimit(string,uint32)']('sponsorApproveTimeout', limits.sponsorApproveTimeout).send();118 await collection.methods['setCollectionLimit(string,uint32)']('sponsorApproveTimeout', limits.sponsorApproveTimeout).send();120 await collectionEvm.methods['setCollectionLimit(string,bool)']('ownerCanTransfer', limits.ownerCanTransfer).send();119 await collection.methods['setCollectionLimit(string,bool)']('ownerCanTransfer', limits.ownerCanTransfer).send();121 await collectionEvm.methods['setCollectionLimit(string,bool)']('ownerCanDestroy', limits.ownerCanDestroy).send();120 await collection.methods['setCollectionLimit(string,bool)']('ownerCanDestroy', limits.ownerCanDestroy).send();122 await collectionEvm.methods['setCollectionLimit(string,bool)']('transfersEnabled', limits.transfersEnabled).send();121 await collection.methods['setCollectionLimit(string,bool)']('transfersEnabled', limits.transfersEnabled).send();123 122 124 const collectionSub = (await getDetailedCollectionInfo(api, collectionId))!;123 const data = (await helper.rft.getData(collectionId))!;125 expect(collectionSub.limits.accountTokenOwnershipLimit.unwrap().toNumber()).to.be.eq(limits.accountTokenOwnershipLimit);124 expect(data.raw.limits.accountTokenOwnershipLimit).to.be.eq(limits.accountTokenOwnershipLimit);126 expect(collectionSub.limits.sponsoredDataSize.unwrap().toNumber()).to.be.eq(limits.sponsoredDataSize);125 expect(data.raw.limits.sponsoredDataSize).to.be.eq(limits.sponsoredDataSize);127 expect(collectionSub.limits.sponsoredDataRateLimit.unwrap().asBlocks.toNumber()).to.be.eq(limits.sponsoredDataRateLimit);126 expect(data.raw.limits.sponsoredDataRateLimit.blocks).to.be.eq(limits.sponsoredDataRateLimit);128 expect(collectionSub.limits.tokenLimit.unwrap().toNumber()).to.be.eq(limits.tokenLimit);127 expect(data.raw.limits.tokenLimit).to.be.eq(limits.tokenLimit);129 expect(collectionSub.limits.sponsorTransferTimeout.unwrap().toNumber()).to.be.eq(limits.sponsorTransferTimeout);128 expect(data.raw.limits.sponsorTransferTimeout).to.be.eq(limits.sponsorTransferTimeout);130 expect(collectionSub.limits.sponsorApproveTimeout.unwrap().toNumber()).to.be.eq(limits.sponsorApproveTimeout);129 expect(data.raw.limits.sponsorApproveTimeout).to.be.eq(limits.sponsorApproveTimeout);131 expect(collectionSub.limits.ownerCanTransfer.toHuman()).to.be.eq(limits.ownerCanTransfer);130 expect(data.raw.limits.ownerCanTransfer).to.be.eq(limits.ownerCanTransfer);132 expect(collectionSub.limits.ownerCanDestroy.toHuman()).to.be.eq(limits.ownerCanDestroy);131 expect(data.raw.limits.ownerCanDestroy).to.be.eq(limits.ownerCanDestroy);133 expect(collectionSub.limits.transfersEnabled.toHuman()).to.be.eq(limits.transfersEnabled);132 expect(data.raw.limits.transfersEnabled).to.be.eq(limits.transfersEnabled);134 });133 });135134136 itWeb3('Collection address exist', async ({api, web3, privateKeyWrapper}) => {135 itEth('Collection address exist', async ({helper}) => {137 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);136 const owner = await helper.eth.createAccountWithBalance(donor);138 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';137 const collectionAddressForNonexistentCollection = '0x17C4E6453CC49AAAAEACA894E6D9683E00112233';139 const collectionHelpers = evmCollectionHelpers(web3, owner);138 expect(await helper.ethNativeContract.collectionHelpers(collectionAddressForNonexistentCollection)140 expect(await collectionHelpers.methods141 .isCollectionExist(collectionAddressForNonexistentCollection).call())139 .methods.isCollectionExist(collectionAddressForNonexistentCollection).call())142 .to.be.false;140 .to.be.false;143 141 144 const result = await collectionHelpers.methods.createRFTCollection('Collection address exist', '7', '7').send();142 const {collectionAddress} = await helper.eth.createRefungibleCollection(owner, 'Exister', 'absolutely anything', 'WIWT');145 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);143 expect(await helper.ethNativeContract.collectionHelpers(collectionAddress)146 expect(await collectionHelpers.methods147 .isCollectionExist(collectionIdAddress).call())144 .methods.isCollectionExist(collectionAddress).call())148 .to.be.true;145 .to.be.true;149 });146 });150});147});151148152describe('(!negative tests!) Create RFT collection from EVM', () => {149describe('(!negative tests!) Create RFT collection from EVM', () => {150 let donor: IKeyringPair;151153 before(async function() {152 before(async function() {154 await requirePallets(this, [Pallets.ReFungible]);153 await usingEthPlaygrounds(async (helper, privateKey) => {154 requirePalletsOrSkip(this, helper, [Pallets.ReFungible]);155 donor = privateKey('//Alice');156 });155 });157 });156158157 itWeb3('(!negative test!) Create collection (bad lengths)', async ({api, web3, privateKeyWrapper}) => {159 itEth('(!negative test!) Create collection (bad lengths)', async ({helper}) => {158 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);160 const owner = await helper.eth.createAccountWithBalance(donor);159 const helper = evmCollectionHelpers(web3, owner);161 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);160 {162 {161 const MAX_NAME_LENGHT = 64;163 const MAX_NAME_LENGTH = 64;162 const collectionName = 'A'.repeat(MAX_NAME_LENGHT + 1);164 const collectionName = 'A'.repeat(MAX_NAME_LENGTH + 1);163 const description = 'A';165 const description = 'A';164 const tokenPrefix = 'A';166 const tokenPrefix = 'A';165 167166 await expect(helper.methods168 await expect(collectionHelper.methods167 .createRFTCollection(collectionName, description, tokenPrefix)169 .createRFTCollection(collectionName, description, tokenPrefix)168 .call()).to.be.rejectedWith('name is too long. Max length is ' + MAX_NAME_LENGHT);170 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('name is too long. Max length is ' + MAX_NAME_LENGTH);169 170 }171 }171 { 172 {172 const MAX_DESCRIPTION_LENGHT = 256;173 const MAX_DESCRIPTION_LENGTH = 256;173 const collectionName = 'A';174 const collectionName = 'A';174 const description = 'A'.repeat(MAX_DESCRIPTION_LENGHT + 1);175 const description = 'A'.repeat(MAX_DESCRIPTION_LENGTH + 1);175 const tokenPrefix = 'A';176 const tokenPrefix = 'A';176 await expect(helper.methods177 await expect(collectionHelper.methods177 .createRFTCollection(collectionName, description, tokenPrefix)178 .createRFTCollection(collectionName, description, tokenPrefix)178 .call()).to.be.rejectedWith('description is too long. Max length is ' + MAX_DESCRIPTION_LENGHT);179 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('description is too long. Max length is ' + MAX_DESCRIPTION_LENGTH);179 }180 }180 { 181 {181 const MAX_TOKEN_PREFIX_LENGHT = 16;182 const MAX_TOKEN_PREFIX_LENGTH = 16;182 const collectionName = 'A';183 const collectionName = 'A';183 const description = 'A';184 const description = 'A';184 const tokenPrefix = 'A'.repeat(MAX_TOKEN_PREFIX_LENGHT + 1);185 const tokenPrefix = 'A'.repeat(MAX_TOKEN_PREFIX_LENGTH + 1);185 await expect(helper.methods186 await expect(collectionHelper.methods186 .createRFTCollection(collectionName, description, tokenPrefix)187 .createRFTCollection(collectionName, description, tokenPrefix)187 .call()).to.be.rejectedWith('token_prefix is too long. Max length is ' + MAX_TOKEN_PREFIX_LENGHT);188 .call({value: Number(2n * UNIQUE)})).to.be.rejectedWith('token_prefix is too long. Max length is ' + MAX_TOKEN_PREFIX_LENGTH);188 }189 }189 });190 });190 191 191 itWeb3('(!negative test!) Create collection (no funds)', async ({web3}) => {192 itEth('(!negative test!) Create collection (no funds)', async ({helper}) => {192 const owner = createEthAccount(web3);193 const owner = await helper.eth.createAccountWithBalance(donor);193 const helper = evmCollectionHelpers(web3, owner);194 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);194 const collectionName = 'A';195 await expect(collectionHelper.methods195 const description = 'A';196 const tokenPrefix = 'A';197 198 await expect(helper.methods199 .createRFTCollection(collectionName, description, tokenPrefix)196 .createRFTCollection('Peasantry', 'absolutely anything', 'TWIW')200 .call()).to.be.rejectedWith('NotSufficientFounds');197 .call({value: Number(1n * UNIQUE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');201 });198 });202199203 itWeb3('(!negative test!) Check owner', async ({api, web3, privateKeyWrapper}) => {200 itEth('(!negative test!) Check owner', async ({helper}) => {204 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);201 const owner = await helper.eth.createAccountWithBalance(donor);205 const notOwner = createEthAccount(web3);202 const peasant = helper.eth.createAccount();206 const collectionHelpers = evmCollectionHelpers(web3, owner);203 const {collectionAddress} = await helper.eth.createRefungibleCollection(owner, 'Transgressed', 'absolutely anything', 'YVNE');207 const result = await collectionHelpers.methods.createRFTCollection('A', 'A', 'A').send();208 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);204 const peasantCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', peasant);209 const contractEvmFromNotOwner = evmCollection(web3, notOwner, collectionIdAddress, {type: 'ReFungible'});210 const EXPECTED_ERROR = 'NoPermission';205 const EXPECTED_ERROR = 'NoPermission';211 {206 {212 const sponsor = await createEthAccountWithBalance(api, web3, privateKeyWrapper);207 const sponsor = await helper.eth.createAccountWithBalance(donor);213 await expect(contractEvmFromNotOwner.methods208 await expect(peasantCollection.methods214 .setCollectionSponsor(sponsor)209 .setCollectionSponsor(sponsor)215 .call()).to.be.rejectedWith(EXPECTED_ERROR);210 .call()).to.be.rejectedWith(EXPECTED_ERROR);216 211 217 const sponsorCollection = evmCollection(web3, sponsor, collectionIdAddress);212 const sponsorCollection = helper.ethNativeContract.collection(collectionAddress, 'rft', sponsor);218 await expect(sponsorCollection.methods213 await expect(sponsorCollection.methods219 .confirmCollectionSponsorship()214 .confirmCollectionSponsorship()220 .call()).to.be.rejectedWith('caller is not set as sponsor');215 .call()).to.be.rejectedWith('caller is not set as sponsor');221 }216 }222 {217 {223 await expect(contractEvmFromNotOwner.methods218 await expect(peasantCollection.methods224 .setCollectionLimit('account_token_ownership_limit', '1000')219 .setCollectionLimit('account_token_ownership_limit', '1000')225 .call()).to.be.rejectedWith(EXPECTED_ERROR);220 .call()).to.be.rejectedWith(EXPECTED_ERROR);226 }221 }227 });222 });228223229 itWeb3('(!negative test!) Set limits', async ({api, web3, privateKeyWrapper}) => {224 itEth('(!negative test!) Set limits', async ({helper}) => {230 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);225 const owner = await helper.eth.createAccountWithBalance(donor);231 const collectionHelpers = evmCollectionHelpers(web3, owner);226 const {collectionAddress} = await helper.eth.createRefungibleCollection(owner, 'Limits', 'absolutely anything', 'ISNI');232 const result = await collectionHelpers.methods.createRFTCollection('Schema collection', 'A', 'A').send();233 const {collectionIdAddress} = await getCollectionAddressFromResult(api, result);227 const collectionEvm = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);234 const collectionEvm = evmCollection(web3, owner, collectionIdAddress, {type: 'ReFungible'});235 await expect(collectionEvm.methods228 await expect(collectionEvm.methods236 .setCollectionLimit('badLimit', 'true')229 .setCollectionLimit('badLimit', 'true')237 .call()).to.be.rejectedWith('unknown boolean limit "badLimit"');230 .call()).to.be.rejectedWith('unknown boolean limit "badLimit"');tests/src/eth/crossTransfer.test.tsdiffbeforeafterboth14// You should have received a copy of the GNU General Public License14// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617import {createCollectionExpectSuccess,17import {itEth, usingEthPlaygrounds} from './util/playgrounds';18 createFungibleItemExpectSuccess,19 transferExpectSuccess,20 transferFromExpectSuccess,21 setCollectionLimitsExpectSuccess,22 createItemExpectSuccess} from '../util/helpers';23import {collectionIdToAddress,18import {CrossAccountId} from '../util/playgrounds/unique';24 createEthAccountWithBalance,25 subToEth,26 GAS_ARGS, itWeb3} from './util/helpers';27import fungibleAbi from './fungibleAbi.json';19import {IKeyringPair} from '@polkadot/types/types';28import nonFungibleAbi from './nonFungibleAbi.json';292030describe('Token transfer between substrate address and EVM address. Fungible', () => {21describe('Token transfer between substrate address and EVM address. Fungible', () => {22 let donor: IKeyringPair;23 let alice: IKeyringPair;24 let bob: IKeyringPair;25 let charlie: IKeyringPair;2627 before(async function() {28 await usingEthPlaygrounds(async (helper, privateKey) => {29 donor = privateKey('//Alice');30 [alice, bob, charlie] = await helper.arrange.createAccounts([10n, 10n, 10n], donor);31 });32 });33 31 itWeb3('The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate', async ({privateKeyWrapper}) => {34 itEth('The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate', async ({helper}) => { 32 const collection = await createCollectionExpectSuccess({35 const bobCA = CrossAccountId.fromKeyring(bob);33 name: 'token name',34 mode: {type: 'Fungible', decimalPoints: 0},35 });36 const alice = privateKeyWrapper('//Alice');36 const charlieCA = CrossAccountId.fromKeyring(charlie);3737 const bob = privateKeyWrapper('//Bob');38 const collection = await helper.ft.mintCollection(alice);38 const charlie = privateKeyWrapper('//Charlie');39 await setCollectionLimitsExpectSuccess(alice, collection, {ownerCanTransfer: true});39 await collection.setLimits(alice, {ownerCanTransfer: true});4040 await createFungibleItemExpectSuccess(alice, collection, {Value: 200n}, {Substrate: alice.address});41 await collection.mint(alice, 200n);41 await transferExpectSuccess(collection, 0, alice, {Ethereum: subToEth(charlie.address)} , 200, 'Fungible');42 await collection.transfer(alice, charlieCA.toEthereum(), 200n);42 await transferFromExpectSuccess(collection, 0, alice, {Ethereum: subToEth(charlie.address)}, charlie, 50, 'Fungible');43 await collection.transferFrom(alice, charlieCA.toEthereum(), charlieCA, 50n);43 await transferExpectSuccess(collection, 0, charlie, bob, 50, 'Fungible');44 await collection.transfer(charlie, bobCA, 50n);44 });45 });454646 itWeb3('The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM', async ({api, web3, privateKeyWrapper}) => {47 itEth('The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM', async ({helper}) => {47 const collection = await createCollectionExpectSuccess({48 const aliceProxy = await helper.eth.createAccountWithBalance(donor);48 name: 'token name',49 mode: {type: 'Fungible', decimalPoints: 0},50 });51 const alice = privateKeyWrapper('//Alice');49 const bobProxy = await helper.eth.createAccountWithBalance(donor);5052 const bob = privateKeyWrapper('//Bob');51 const collection = await helper.ft.mintCollection(alice);53 await setCollectionLimitsExpectSuccess(alice, collection, {ownerCanTransfer: true});52 await collection.setLimits(alice, {ownerCanTransfer: true});5354 const bobProxy = await createEthAccountWithBalance(api, web3, privateKeyWrapper);54 const address = helper.ethAddress.fromCollectionId(collection.collectionId);55 const aliceProxy = await createEthAccountWithBalance(api, web3, privateKeyWrapper);55 const contract = helper.ethNativeContract.collection(address, 'ft', aliceProxy);565657 await createFungibleItemExpectSuccess(alice, collection, {Value: 200n}, alice.address);58 await transferExpectSuccess(collection, 0, alice, {Ethereum: aliceProxy} , 200, 'Fungible');57 await collection.mint(alice, 200n, {Ethereum: aliceProxy});59 const address = collectionIdToAddress(collection);60 const contract = new web3.eth.Contract(fungibleAbi as any, address, {from: aliceProxy, ...GAS_ARGS});6162 await contract.methods.transfer(bobProxy, 50).send({from: aliceProxy});58 await contract.methods.transfer(bobProxy, 50).send({from: aliceProxy});63 await transferFromExpectSuccess(collection, 0, alice, {Ethereum: bobProxy}, bob, 50, 'Fungible');59 await collection.transferFrom(alice, {Ethereum: bobProxy}, CrossAccountId.fromKeyring(bob), 50n);64 await transferExpectSuccess(collection, 0, bob, alice, 50, 'Fungible');60 await collection.transfer(bob, CrossAccountId.fromKeyring(alice), 50n);65 });61 });66});62});676368describe('Token transfer between substrate address and EVM address. NFT', () => {64describe('Token transfer between substrate address and EVM address. NFT', () => {65 let donor: IKeyringPair;66 let alice: IKeyringPair;67 let bob: IKeyringPair;68 let charlie: IKeyringPair;6970 before(async function() {71 await usingEthPlaygrounds(async (helper, privateKey) => {72 donor = privateKey('//Alice');73 [alice, bob, charlie] = await helper.arrange.createAccounts([10n, 10n, 10n], donor);74 });75 });76 69 itWeb3('The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate', async ({privateKeyWrapper}) => {77 itEth('The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate', async ({helper}) => {70 const collection = await createCollectionExpectSuccess({78 const charlieEth = CrossAccountId.fromKeyring(charlie, 'Ethereum');71 name: 'token name',79 72 mode: {type: 'NFT'},73 });74 const alice = privateKeyWrapper('//Alice');80 const collection = await helper.nft.mintCollection(alice);75 const bob = privateKeyWrapper('//Bob');76 const charlie = privateKeyWrapper('//Charlie');77 await setCollectionLimitsExpectSuccess(alice, collection, {ownerCanTransfer: true});81 await collection.setLimits(alice, {ownerCanTransfer: true});78 const tokenId = await createItemExpectSuccess(alice, collection, 'NFT', {Substrate: alice.address});82 const token = await collection.mintToken(alice);79 await transferExpectSuccess(collection, tokenId, alice, {Ethereum: subToEth(charlie.address)}, 1, 'NFT');83 await token.transfer(alice, charlieEth);80 await transferFromExpectSuccess(collection, tokenId, alice, {Ethereum: subToEth(charlie.address)}, charlie, 1, 'NFT');84 await token.transferFrom(alice, charlieEth, CrossAccountId.fromKeyring(charlie));81 await transferExpectSuccess(collection, tokenId, charlie, bob, 1, 'NFT');85 await token.transfer(charlie, CrossAccountId.fromKeyring(bob));82 });86 });838784 itWeb3('The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM', async ({api, web3, privateKeyWrapper}) => {88 itEth('The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM', async ({helper}) => {85 const collection = await createCollectionExpectSuccess({89 const aliceProxy = await helper.eth.createAccountWithBalance(donor);86 name: 'token name',87 mode: {type: 'NFT'},88 });89 const alice = privateKeyWrapper('//Alice');90 const bobProxy = await helper.eth.createAccountWithBalance(donor);9190 const bob = privateKeyWrapper('//Bob');92 const collection = await helper.nft.mintCollection(alice);91 const charlie = privateKeyWrapper('//Charlie');92 await setCollectionLimitsExpectSuccess(alice, collection, {ownerCanTransfer: true});93 await collection.setLimits(alice, {ownerCanTransfer: true});9493 const bobProxy = await createEthAccountWithBalance(api, web3, privateKeyWrapper);95 const address = helper.ethAddress.fromCollectionId(collection.collectionId);94 const aliceProxy = await createEthAccountWithBalance(api, web3, privateKeyWrapper);96 const contract = helper.ethNativeContract.collection(address, 'nft', aliceProxy);9795 const tokenId = await createItemExpectSuccess(alice, collection, 'NFT', {Substrate: alice.address});98 const token = await collection.mintToken(alice);96 await transferExpectSuccess(collection, tokenId, alice, {Ethereum: aliceProxy} , 1, 'NFT');99 await token.transfer(alice, {Ethereum: aliceProxy});97 const address = collectionIdToAddress(collection);98 const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: aliceProxy, ...GAS_ARGS});99 await contract.methods.transfer(bobProxy, 1).send({from: aliceProxy});100 await contract.methods.transfer(bobProxy, 1).send({from: aliceProxy});100 await transferFromExpectSuccess(collection, tokenId, alice, {Ethereum: bobProxy}, bob, 1, 'NFT');101 await token.transferFrom(alice, {Ethereum: bobProxy}, {Substrate: bob.address});101 await transferExpectSuccess(collection, tokenId, bob, charlie, 1, 'NFT');102 await token.transfer(bob, {Substrate: charlie.address});102 });103 });103});104});104105tests/src/eth/fractionalizer/Fractionalizer.soldiffbeforeafterboth18 mapping(address => bool) nftCollectionAllowList;18 mapping(address => bool) nftCollectionAllowList;19 mapping(address => mapping(uint256 => uint256)) public nft2rftMapping;19 mapping(address => mapping(uint256 => uint256)) public nft2rftMapping;20 mapping(address => Token) public rft2nftMapping;20 mapping(address => Token) public rft2nftMapping;21 //use constant to reduce gas cost21 bytes32 refungibleCollectionType = keccak256(bytes("ReFungible"));22 bytes32 constant refungibleCollectionType = keccak256(bytes("ReFungible"));222323 receive() external payable onlyOwner {}24 receive() external payable onlyOwner {}242551 /// Throws if `msg.sender` is not owner or admin of provided RFT collection.52 /// Throws if `msg.sender` is not owner or admin of provided RFT collection.52 /// Can only be called by contract owner.53 /// Can only be called by contract owner.53 /// @param _collection address of RFT collection.54 /// @param _collection address of RFT collection.54 function setRFTCollection(address _collection) public onlyOwner {55 function setRFTCollection(address _collection) external onlyOwner {55 require(rftCollection == address(0), "RFT collection is already set");56 require(rftCollection == address(0), "RFT collection is already set");56 UniqueRefungible refungibleContract = UniqueRefungible(_collection);57 UniqueRefungible refungibleContract = UniqueRefungible(_collection);57 string memory collectionType = refungibleContract.uniqueCollectionType();58 string memory collectionType = refungibleContract.uniqueCollectionType();585960 // compare hashed to reduce gas cost59 require(61 require(60 keccak256(bytes(collectionType)) == refungibleCollectionType,62 keccak256(bytes(collectionType)) == refungibleCollectionType,61 "Wrong collection type. Collection is not refungible."63 "Wrong collection type. Collection is not refungible."79 string calldata _name,81 string calldata _name,80 string calldata _description,82 string calldata _description,81 string calldata _tokenPrefix83 string calldata _tokenPrefix82 ) public onlyOwner {84 ) external payable onlyOwner {83 require(rftCollection == address(0), "RFT collection is already set");85 require(rftCollection == address(0), "RFT collection is already set");84 address collectionHelpers = 0x6C4E9fE1AE37a41E93CEE429e8E1881aBdcbb54F;86 address collectionHelpers = 0x6C4E9fE1AE37a41E93CEE429e8E1881aBdcbb54F;85 rftCollection = CollectionHelpers(collectionHelpers).createRFTCollection(_name, _description, _tokenPrefix);87 rftCollection = CollectionHelpers(collectionHelpers).createRFTCollection{value: msg.value}(_name, _description, _tokenPrefix);86 emit RFTCollectionSet(rftCollection);88 emit RFTCollectionSet(rftCollection);87 }89 }889089 /// Allow or disallow NFT collection tokens from being fractionalized by this contract.91 /// Allow or disallow NFT collection tokens from being fractionalized by this contract.90 /// @dev Can only be called by contract owner.92 /// @dev Can only be called by contract owner.91 /// @param collection NFT token address.93 /// @param collection NFT token address.92 /// @param status `true` to allow and `false` to disallow NFT token.94 /// @param status `true` to allow and `false` to disallow NFT token.93 function setNftCollectionIsAllowed(address collection, bool status) public onlyOwner {95 function setNftCollectionIsAllowed(address collection, bool status) external onlyOwner {94 nftCollectionAllowList[collection] = status;96 nftCollectionAllowList[collection] = status;95 emit AllowListSet(collection, status);97 emit AllowListSet(collection, status);96 }98 }109 address _collection,111 address _collection,110 uint256 _token,112 uint256 _token,111 uint128 _pieces113 uint128 _pieces112 ) public {114 ) external {113 require(rftCollection != address(0), "RFT collection is not set");115 require(rftCollection != address(0), "RFT collection is not set");114 UniqueRefungible rftCollectionContract = UniqueRefungible(rftCollection);116 UniqueRefungible rftCollectionContract = UniqueRefungible(rftCollection);115 require(117 require(148 /// Throws if `msg.sender` isn't owner of all RFT token pieces.150 /// Throws if `msg.sender` isn't owner of all RFT token pieces.149 /// @param _collection RFT collection address151 /// @param _collection RFT collection address150 /// @param _token id of RFT token152 /// @param _token id of RFT token151 function rft2nft(address _collection, uint256 _token) public {153 function rft2nft(address _collection, uint256 _token) external {152 require(rftCollection != address(0), "RFT collection is not set");154 require(rftCollection != address(0), "RFT collection is not set");153 require(rftCollection == _collection, "Wrong RFT collection");155 require(rftCollection == _collection, "Wrong RFT collection");154 UniqueRefungible rftCollectionContract = UniqueRefungible(rftCollection);156 UniqueRefungible rftCollectionContract = UniqueRefungible(rftCollection);tests/src/eth/fractionalizer/fractionalizer.test.tsdiffbeforeafterboth93 const fractionalizer = await deployFractionalizer(web3, owner);93 const fractionalizer = await deployFractionalizer(web3, owner);94 const amount = 10n * UNIQUE;94 const amount = 10n * UNIQUE;95 await web3.eth.sendTransaction({from: owner, to: fractionalizer.options.address, value: `${amount}`, ...GAS_ARGS});95 await web3.eth.sendTransaction({from: owner, to: fractionalizer.options.address, value: `${amount}`, ...GAS_ARGS});96 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send();96 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send({value: Number(2n * UNIQUE)});97 const rftCollectionAddress = result.events.RFTCollectionSet.returnValues._collection;97 const rftCollectionAddress = result.events.RFTCollectionSet.returnValues._collection;98 return {fractionalizer, rftCollectionAddress};98 return {fractionalizer, rftCollectionAddress};99}99}141 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);141 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);142 const fractionalizer = await deployFractionalizer(web3, owner);142 const fractionalizer = await deployFractionalizer(web3, owner);143 const tx = api.tx.balances.transfer(evmToAddress(fractionalizer.options.address), 10n * UNIQUE);143 const tx = api.tx.balances.transfer(evmToAddress(fractionalizer.options.address), 10n * UNIQUE);144 await submitTransactionAsync(alice, tx);144 await executeTransaction(api, alice, tx);145145146 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send({from: owner});146 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send({from: owner, value: Number(2n * UNIQUE)});147 expect(result.events).to.be.like({147 expect(result.events).to.be.like({148 RFTCollectionSet: {},148 RFTCollectionSet: {},149 });149 });295 const tx = api.tx.balances.transfer(evmToAddress(fractionalizer.options.address), 10n * UNIQUE);295 const tx = api.tx.balances.transfer(evmToAddress(fractionalizer.options.address), 10n * UNIQUE);296 await submitTransactionAsync(alice, tx);296 await submitTransactionAsync(alice, tx);297297298 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send({from: owner});298 const result = await fractionalizer.methods.createAndSetRFTCollection('A', 'B', 'C').send({from: owner, value: Number(2n * UNIQUE)});299 const collectionIdAddress = result.events.RFTCollectionSet.returnValues._collection;299 const collectionIdAddress = result.events.RFTCollectionSet.returnValues._collection;300300301 await expect(fractionalizer.methods.setRFTCollection(collectionIdAddress).call())301 await expect(fractionalizer.methods.setRFTCollection(collectionIdAddress).call())tests/src/eth/helpersSmoke.test.tsdiffbeforeafterboth14// You should have received a copy of the GNU General Public License14// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617import {expect} from 'chai';17import {expect, itEth, usingEthPlaygrounds} from './util/playgrounds';18import {createEthAccountWithBalance, deployFlipper, itWeb3, contractHelpers} from './util/helpers';18import {IKeyringPair} from '@polkadot/types/types';191920describe('Helpers sanity check', () => {20describe('Helpers sanity check', () => {21 let donor: IKeyringPair;2223 before(async function() {24 await usingEthPlaygrounds(async (_helper, privateKey) => {25 donor = privateKey('//Alice');26 });27 });28 21 itWeb3('Contract owner is recorded', async ({api, web3, privateKeyWrapper}) => {29 itEth('Contract owner is recorded', async ({helper}) => {22 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);30 const owner = await helper.eth.createAccountWithBalance(donor);233124 const flipper = await deployFlipper(web3, owner);32 const flipper = await helper.eth.deployFlipper(owner);253326 expect(await contractHelpers(web3, owner).methods.contractOwner(flipper.options.address).call()).to.be.equal(owner);34 expect(await helper.ethNativeContract.contractHelpers(owner).methods.contractOwner(flipper.options.address).call()).to.be.equal(owner);27 });35 });283629 itWeb3('Flipper is working', async ({api, web3, privateKeyWrapper}) => {37 itEth('Flipper is working', async ({helper}) => {30 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);38 const owner = await helper.eth.createAccountWithBalance(donor);3931 const flipper = await deployFlipper(web3, owner);40 const flipper = await helper.eth.deployFlipper(owner);324133 expect(await flipper.methods.getValue().call()).to.be.false;42 expect(await flipper.methods.getValue().call()).to.be.false;34 await flipper.methods.flip().send({from: owner});43 await flipper.methods.flip().send({from: owner});tests/src/eth/migration.test.tsdiffbeforeafterboth14// You should have received a copy of the GNU General Public License14// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.161617import {expect} from 'chai';17import {expect, itEth, usingEthPlaygrounds} from './util/playgrounds';18import {submitTransactionAsync} from '../substrate/substrate-api';19import {createEthAccountWithBalance, GAS_ARGS, itWeb3} from './util/helpers';18import {IKeyringPair} from '@polkadot/types/types';201921describe('EVM Migrations', () => {20describe('EVM Migrations', () => {21 let superuser: IKeyringPair;2223 before(async function() {24 await usingEthPlaygrounds(async (_helper, privateKey) => {25 superuser = privateKey('//Alice');26 });27 });28 29 // todo:playgrounds requires sudo, look into later22 itWeb3('Deploy contract saved state', async ({web3, api, privateKeyWrapper}) => {30 itEth('Deploy contract saved state', async ({helper}) => {23 /*31 /*24 contract StatefulContract {32 contract StatefulContract {25 uint counter;33 uint counter;53 ['0xedc95719e9a3b28dd8e80877cb5880a9be7de1a13fc8b05e7999683b6b567643', '0x0000000000000000000000000000000000000000000000000000000000000004'],61 ['0xedc95719e9a3b28dd8e80877cb5880a9be7de1a13fc8b05e7999683b6b567643', '0x0000000000000000000000000000000000000000000000000000000000000004'],54 ];62 ];6364 const caller = await helper.eth.createAccountWithBalance(superuser);556556 const alice = privateKeyWrapper('//Alice');66 const txBegin = helper.constructApiCall('api.tx.evmMigration.begin', [ADDRESS]);57 const caller = await createEthAccountWithBalance(api, web3, privateKeyWrapper);67 const txSetData = helper.constructApiCall('api.tx.evmMigration.setData', [ADDRESS, DATA]);5868 const txFinish = helper.constructApiCall('api.tx.evmMigration.finish', [ADDRESS, CODE]);59 await submitTransactionAsync(alice, api.tx.sudo.sudo(api.tx.evmMigration.begin(ADDRESS) as any));69 await expect(helper.executeExtrinsic(superuser, 'api.tx.sudo.sudo', [txBegin])).to.be.fulfilled;60 await submitTransactionAsync(alice, api.tx.sudo.sudo(api.tx.evmMigration.setData(ADDRESS, DATA as any) as any));70 await expect(helper.executeExtrinsic(superuser, 'api.tx.sudo.sudo', [txSetData])).to.be.fulfilled;61 await submitTransactionAsync(alice, api.tx.sudo.sudo(api.tx.evmMigration.finish(ADDRESS, CODE) as any));71 await expect(helper.executeExtrinsic(superuser, 'api.tx.sudo.sudo', [txFinish])).to.be.fulfilled;627273 const web3 = helper.getWeb3();63 const contract = new web3.eth.Contract([74 const contract = new web3.eth.Contract([64 {75 {65 inputs: [],76 inputs: [],87 stateMutability: 'view',98 stateMutability: 'view',88 type: 'function',99 type: 'function',89 },100 },90 ], ADDRESS, {from: caller, ...GAS_ARGS});101 ], ADDRESS, {from: caller, gas: helper.eth.DEFAULT_GAS});9110292 expect(await contract.methods.counterValue().call()).to.be.equal('10');103 expect(await contract.methods.counterValue().call()).to.be.equal('10');93 for (let i = 1; i <= 4; i++) {104 for (let i = 1; i <= 4; i++) {tests/src/eth/nonFungible.test.tsdiffbeforeafterboth17import {itEth, usingEthPlaygrounds, expect, EthUniqueHelper} from './util/playgrounds';17import {itEth, usingEthPlaygrounds, expect, EthUniqueHelper} from './util/playgrounds';18import {IKeyringPair} from '@polkadot/types/types';18import {IKeyringPair} from '@polkadot/types/types';19import {Contract} from 'web3-eth-contract';19import {Contract} from 'web3-eth-contract';20import {UNIQUE} from '../util/helpers';202121describe('NFT: Information getting', () => {22describe('NFT: Information getting', () => {22 let donor: IKeyringPair;23 let donor: IKeyringPair;83 const receiver = helper.eth.createAccount();84 const receiver = helper.eth.createAccount();848585 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);86 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);86 let result = await collectionHelper.methods.createERC721MetadataCompatibleCollection('Mint collection', 'a', 'b', tokenPrefix).send();87 let result = await collectionHelper.methods.createERC721MetadataCompatibleCollection('Mint collection', 'a', 'b', tokenPrefix).send({value: Number(2n * UNIQUE)});87 const collectionAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);88 const collectionAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);88 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);89 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', owner);89 90 171 });172 });172173173 //TODO: CORE-302 add eth methods174 //TODO: CORE-302 add eth methods174 /* todo:playgrounds skipped test!175 itEth.skip('Can perform mintBulk()', async ({helper}) => {175 itWeb3.skip('Can perform mintBulk()', async ({helper}) => {176 const caller = await helper.eth.createAccountWithBalance(donor);176 const collection = await createCollectionExpectSuccess({177 const receiver = helper.eth.createAccount();177 mode: {type: 'NFT'},178178 });179 const collection = await helper.nft.mintCollection(alice);179 const alice = privateKeyWrapper('//Alice');180 await collection.addAdmin(alice, {Ethereum: caller});180181181 const caller = await createEthAccountWithBalance(api, web3, privateKeyWrapper);182 const collectionAddress = helper.ethAddress.fromCollectionId(collection.collectionId);182 const changeAdminTx = api.tx.unique.addCollectionAdmin(collection, {Ethereum: caller});183 const contract = helper.ethNativeContract.collection(collectionAddress, 'nft', caller);183 await submitTransactionAsync(alice, changeAdminTx);184 {184 const receiver = createEthAccount(web3);185 const bulkSize = 3;185186 const nextTokenId = await contract.methods.nextTokenId().call();186 const address = collectionIdToAddress(collection);187 expect(nextTokenId).to.be.equal('1');187 const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: caller, ...GAS_ARGS});188 const result = await contract.methods.mintBulkWithTokenURI(188189 receiver,189 {190 Array.from({length: bulkSize}, (_, i) => (190 const nextTokenId = await contract.methods.nextTokenId().call();191 [+nextTokenId + i, `Test URI ${i}`]191 expect(nextTokenId).to.be.equal('1');192 )),192 const result = await contract.methods.mintBulkWithTokenURI(193 ).send({from: caller});193 receiver,194194 [195 const events = result.events.Transfer.sort((a: any, b: any) => +a.returnValues.tokenId - b.returnValues.tokenId);195 [nextTokenId, 'Test URI 0'],196 for (let i = 0; i < bulkSize; i++) {196 [+nextTokenId + 1, 'Test URI 1'],197 const event = events[i];197 [+nextTokenId + 2, 'Test URI 2'],198 expect(event.address).to.equal(collectionAddress);198 ],199 expect(event.returnValues.from).to.equal('0x0000000000000000000000000000000000000000');199 ).send({from: caller});200 expect(event.returnValues.to).to.equal(receiver);200 const events = normalizeEvents(result.events);201 expect(event.returnValues.tokenId).to.equal(`${+nextTokenId + i}`);201202202 expect(events).to.be.deep.equal([203 expect(await contract.methods.tokenURI(+nextTokenId + i).call()).to.be.equal(`Test URI ${i}`);203 {204 }204 address,205 }205 event: 'Transfer',206 });206 args: {207 from: '0x0000000000000000000000000000000000000000',208 to: receiver,209 tokenId: nextTokenId,210 },211 },212 {213 address,214 event: 'Transfer',215 args: {216 from: '0x0000000000000000000000000000000000000000',217 to: receiver,218 tokenId: String(+nextTokenId + 1),219 },220 },221 {222 address,223 event: 'Transfer',224 args: {225 from: '0x0000000000000000000000000000000000000000',226 to: receiver,227 tokenId: String(+nextTokenId + 2),228 },229 },230 ]);231232 expect(await contract.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI 0');233 expect(await contract.methods.tokenURI(+nextTokenId + 1).call()).to.be.equal('Test URI 1');234 expect(await contract.methods.tokenURI(+nextTokenId + 2).call()).to.be.equal('Test URI 2');235 }236 });237 */238207239 itEth('Can perform burn()', async ({helper}) => {208 itEth('Can perform burn()', async ({helper}) => {240 const caller = await helper.eth.createAccountWithBalance(donor);209 const caller = await helper.eth.createAccountWithBalance(donor);tests/src/eth/payable.test.tsdiffbeforeafterboth161617import {IKeyringPair} from '@polkadot/types/types';17import {IKeyringPair} from '@polkadot/types/types';181819import {itEth, expect, usingEthPlaygrounds} from './util/playgrounds';19import {itEth, expect, usingEthPlaygrounds, EthUniqueHelper} from './util/playgrounds';202021describe('EVM payable contracts', () => {21describe('EVM payable contracts', () => {22 let donor: IKeyringPair;22 let donor: IKeyringPair;105 });105 });106});106});107108describe('EVM transaction fees', () => {109 let donor: IKeyringPair;110111 before(async function() {112 await usingEthPlaygrounds(async (_, privateKey) => {113 donor = privateKey('//Alice');114 });115 });116117 itEth('Fee is withdrawn from the user', async({helper}) => {118 const deployer = await helper.eth.createAccountWithBalance(donor);119 const caller = await helper.eth.createAccountWithBalance(donor);120 const contract = await helper.eth.deployFlipper(deployer);121 122 const initialCallerBalance = await helper.balance.getEthereum(caller);123 await contract.methods.flip().send({from: caller});124 const finalCallerBalance = await helper.balance.getEthereum(caller);125 expect(finalCallerBalance < initialCallerBalance).to.be.true;126 });127128 itEth('Fee for nested calls is withdrawn from the user', async({helper}) => {129 const deployer = await helper.eth.createAccountWithBalance(donor);130 const caller = await helper.eth.createAccountWithBalance(donor);131 const contract = await deployProxyContract(helper, deployer);132 133 const initialCallerBalance = await helper.balance.getEthereum(caller);134 const initialContractBalance = await helper.balance.getEthereum(contract.options.address);135 await contract.methods.flip().send({from: caller});136 const finalCallerBalance = await helper.balance.getEthereum(caller);137 const finalContractBalance = await helper.balance.getEthereum(contract.options.address);138 expect(finalCallerBalance < initialCallerBalance).to.be.true;139 expect(finalContractBalance == initialContractBalance).to.be.true;140 });141 142 itEth('Fee for nested calls to native methods is withdrawn from the user', async({helper}) => {143 const CONTRACT_BALANCE = 2n * helper.balance.getOneTokenNominal();144145 const deployer = await helper.eth.createAccountWithBalance(donor);146 const caller = await helper.eth.createAccountWithBalance(donor);147 const contract = await deployProxyContract(helper, deployer);148149 const collectionAddress = (await contract.methods.createNonfungibleCollection().send({from: caller, value: Number(CONTRACT_BALANCE)})).events.CollectionCreated.returnValues.collection;150 const initialCallerBalance = await helper.balance.getEthereum(caller);151 const initialContractBalance = await helper.balance.getEthereum(contract.options.address);152 await contract.methods.mintNftToken(collectionAddress).send({from: caller});153 const finalCallerBalance = await helper.balance.getEthereum(caller);154 const finalContractBalance = await helper.balance.getEthereum(contract.options.address);155 expect(finalCallerBalance < initialCallerBalance).to.be.true;156 expect(finalContractBalance == initialContractBalance).to.be.true;157 });158 159 itEth('Fee for nested calls to create*Collection methods is withdrawn from the user and from the contract', async({helper}) => {160 const CONTRACT_BALANCE = 2n * helper.balance.getOneTokenNominal();161 const deployer = await helper.eth.createAccountWithBalance(donor);162 const caller = await helper.eth.createAccountWithBalance(donor);163 const contract = await deployProxyContract(helper, deployer);164165 const initialCallerBalance = await helper.balance.getEthereum(caller);166 const initialContractBalance = await helper.balance.getEthereum(contract.options.address);167 await contract.methods.createNonfungibleCollection().send({from: caller, value: Number(CONTRACT_BALANCE)});168 const finalCallerBalance = await helper.balance.getEthereum(caller);169 const finalContractBalance = await helper.balance.getEthereum(contract.options.address);170 expect(finalCallerBalance < initialCallerBalance).to.be.true;171 expect(finalContractBalance == initialContractBalance).to.be.true;172 });173174 itEth('Negative test: call createNFTCollection with wrong fee', async({helper}) => {175 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();176 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();177 const caller = await helper.eth.createAccountWithBalance(donor);178 const collectionHelper = helper.ethNativeContract.collectionHelpers(caller);179 180 await expect(collectionHelper.methods.createNonfungibleCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');181 await expect(collectionHelper.methods.createNonfungibleCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');182 });183184 itEth('Negative test: call createRFTCollection with wrong fee', async({helper}) => {185 const SMALL_FEE = 1n * helper.balance.getOneTokenNominal();186 const BIG_FEE = 3n * helper.balance.getOneTokenNominal();187 const caller = await helper.eth.createAccountWithBalance(donor);188 const collectionHelper = helper.ethNativeContract.collectionHelpers(caller);189 190 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(SMALL_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');191 await expect(collectionHelper.methods.createRFTCollection('A', 'B', 'C').call({value: Number(BIG_FEE)})).to.be.rejectedWith('Sent amount not equals to collection creation price (2000000000000000000)');192 });193194 itEth('Get collection creation fee', async({helper}) => {195 const deployer = await helper.eth.createAccountWithBalance(donor);196 expect(await helper.eth.getCollectionCreationFee(deployer)).to.be.equal(String(2n * helper.balance.getOneTokenNominal()));197 });198199 async function deployProxyContract(helper: EthUniqueHelper, deployer: string) {200 return await helper.ethContract.deployByCode(201 deployer,202 'ProxyContract',203 `204 // SPDX-License-Identifier: UNLICENSED205 pragma solidity ^0.8.6;206207 import {CollectionHelpers} from "../api/CollectionHelpers.sol";208 import {UniqueNFT} from "../api/UniqueNFT.sol";209210 error Value(uint256 value);211212 contract ProxyContract {213 bool value = false;214 address innerContract;215216 event CollectionCreated(address collection);217 event TokenMinted(uint256 tokenId);218219 receive() external payable {}220221 constructor() {222 innerContract = address(new InnerContract());223 }224225 function flip() public {226 value = !value;227 InnerContract(innerContract).flip();228 }229230 function createNonfungibleCollection() external payable {231 address collectionHelpers = 0x6C4E9fE1AE37a41E93CEE429e8E1881aBdcbb54F;232 address nftCollection = CollectionHelpers(collectionHelpers).createNonfungibleCollection{value: msg.value}("A", "B", "C");233 emit CollectionCreated(nftCollection);234 }235236 function mintNftToken(address collectionAddress) external {237 UniqueNFT collection = UniqueNFT(collectionAddress);238 uint256 tokenId = collection.nextTokenId();239 collection.mint(msg.sender, tokenId);240 emit TokenMinted(tokenId);241 }242243 function getValue() external view returns (bool) {244 return InnerContract(innerContract).getValue();245 }246 }247248 contract InnerContract {249 bool value = false;250 function flip() external {251 value = !value;252 }253 function getValue() external view returns (bool) {254 return value;255 }256 }257 `,258 [259 {260 solPath: 'api/CollectionHelpers.sol',261 fsPath: `${__dirname}/api/CollectionHelpers.sol`,262 },263 {264 solPath: 'api/UniqueNFT.sol',265 fsPath: `${__dirname}/api/UniqueNFT.sol`,266 },267 ],268 );269 }270});107271tests/src/eth/reFungibleToken.test.tsdiffbeforeafterboth18import {EthUniqueHelper, expect, itEth, usingEthPlaygrounds} from './util/playgrounds';18import {EthUniqueHelper, expect, itEth, usingEthPlaygrounds} from './util/playgrounds';19import {IKeyringPair} from '@polkadot/types/types';19import {IKeyringPair} from '@polkadot/types/types';20import {Contract} from 'web3-eth-contract';20import {Contract} from 'web3-eth-contract';21import {UNIQUE} from '../util/helpers';212222describe('Refungible token: Information getting', () => {23describe('Refungible token: Information getting', () => {23 let donor: IKeyringPair;24 let donor: IKeyringPair;80 const receiver = helper.eth.createAccount();81 const receiver = helper.eth.createAccount();818282 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);83 const collectionHelper = helper.ethNativeContract.collectionHelpers(owner);83 let result = await collectionHelper.methods.createERC721MetadataCompatibleCollection('Mint collection', 'a', 'b', tokenPrefix).send();84 let result = await collectionHelper.methods.createERC721MetadataCompatibleCollection('Mint collection', 'a', 'b', tokenPrefix).send({value: Number(2n * UNIQUE)});84 const collectionAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);85 const collectionAddress = helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);85 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);86 const contract = helper.ethNativeContract.collection(collectionAddress, 'rft', owner);86 87 tests/src/eth/util/helpers.tsdiffbeforeafterboth145 const collectionHelper = evmCollectionHelpers(web3, owner);145 const collectionHelper = evmCollectionHelpers(web3, owner);146 const result = await collectionHelper.methods146 const result = await collectionHelper.methods147 .createRFTCollection('A', 'B', 'C')147 .createRFTCollection('A', 'B', 'C')148 .send();148 .send({value: Number(2n * UNIQUE)});149 return await getCollectionAddressFromResult(api, result);149 return await getCollectionAddressFromResult(api, result);150}150}151151154 const collectionHelper = evmCollectionHelpers(web3, owner);154 const collectionHelper = evmCollectionHelpers(web3, owner);155 const result = await collectionHelper.methods155 const result = await collectionHelper.methods156 .createNonfungibleCollection('A', 'B', 'C')156 .createNonfungibleCollection('A', 'B', 'C')157 .send();157 .send({value: Number(2n * UNIQUE)});158 return await getCollectionAddressFromResult(api, result);158 return await getCollectionAddressFromResult(api, result);159}159}160160tests/src/eth/util/playgrounds/unique.dev.tsdiffbeforeafterboth153 return await this.helper.balance.transferToSubstrate(donor, evmToAddress(recepient), amount * (inTokens ? this.helper.balance.getOneTokenNominal() : 1n));153 return await this.helper.balance.transferToSubstrate(donor, evmToAddress(recepient), amount * (inTokens ? this.helper.balance.getOneTokenNominal() : 1n));154 }154 }155 156 async getCollectionCreationFee(signer: string) {157 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);158 return await collectionHelper.methods.collectionCreationFee().call();159 }155160156 async sendEVM(signer: IKeyringPair, contractAddress: string, abi: string, value: string, gasLimit?: number) {161 async sendEVM(signer: IKeyringPair, contractAddress: string, abi: string, value: string, gasLimit?: number) {157 if(!gasLimit) gasLimit = this.DEFAULT_GAS;162 if(!gasLimit) gasLimit = this.DEFAULT_GAS;170 }175 }171176172 async createNonfungibleCollection(signer: string, name: string, description: string, tokenPrefix: string): Promise<{collectionId: number, collectionAddress: string}> {177 async createNonfungibleCollection(signer: string, name: string, description: string, tokenPrefix: string): Promise<{collectionId: number, collectionAddress: string}> {178 const collectionCreationPrice = this.helper.balance.getCollectionCreationPrice();173 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);179 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);174 180 175 const result = await collectionHelper.methods.createNonfungibleCollection(name, description, tokenPrefix).send();181 const result = await collectionHelper.methods.createNonfungibleCollection(name, description, tokenPrefix).send({value: Number(collectionCreationPrice)});176182177 const collectionAddress = this.helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);183 const collectionAddress = this.helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);178 const collectionId = this.helper.ethAddress.extractCollectionId(collectionAddress);184 const collectionId = this.helper.ethAddress.extractCollectionId(collectionAddress);181 }187 }182188183 async createRefungibleCollection(signer: string, name: string, description: string, tokenPrefix: string): Promise<{collectionId: number, collectionAddress: string}> {189 async createRefungibleCollection(signer: string, name: string, description: string, tokenPrefix: string): Promise<{collectionId: number, collectionAddress: string}> {190 const collectionCreationPrice = this.helper.balance.getCollectionCreationPrice();184 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);191 const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer);185 192 186 const result = await collectionHelper.methods.createRFTCollection(name, description, tokenPrefix).send();193 const result = await collectionHelper.methods.createRFTCollection(name, description, tokenPrefix).send({value: Number(collectionCreationPrice)});187194188 const collectionAddress = this.helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);195 const collectionAddress = this.helper.ethAddress.normalizeAddress(result.events.CollectionCreated.returnValues.collectionId);189 const collectionId = this.helper.ethAddress.extractCollectionId(collectionAddress);196 const collectionId = this.helper.ethAddress.extractCollectionId(collectionAddress);tests/src/getPropertiesRpc.test.tsdiffbeforeafterbothno changes
tests/src/interfaces/augment-api-rpc.tsdiffbeforeafterboth695 /**695 /**696 * Get collection properties, optionally limited to the provided keys696 * Get collection properties, optionally limited to the provided keys697 **/697 **/698 collectionProperties: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, propertyKeys?: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsProperty>>>;698 collectionProperties: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, propertyKeys?: Option<Vec<Text>> | null | Uint8Array | Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsProperty>>>;699 /**699 /**700 * Get chain stats about collections700 * Get chain stats about collections701 **/701 **/723 /**723 /**724 * Get property permissions, optionally limited to the provided keys724 * Get property permissions, optionally limited to the provided keys725 **/725 **/726 propertyPermissions: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, propertyKeys?: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsPropertyKeyPermission>>>;726 propertyPermissions: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, propertyKeys?: Option<Vec<Text>> | null | Uint8Array | Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsPropertyKeyPermission>>>;727 /**727 /**728 * Get tokens nested directly into the token728 * Get tokens nested directly into the token729 **/729 **/730 tokenChildren: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsTokenChild>>>;730 tokenChildren: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsTokenChild>>>;731 /**731 /**732 * Get token data, including properties, optionally limited to the provided keys, and total pieces for an RFT732 * Get token data, including properties, optionally limited to the provided keys, and total pieces for an RFT733 **/733 **/734 tokenData: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys?: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<UpDataStructsTokenData>>;734 tokenData: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys?: Option<Vec<Text>> | null | Uint8Array | Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<UpDataStructsTokenData>>;735 /**735 /**736 * Check if the token exists736 * Check if the token exists737 **/737 **/747 /**747 /**748 * Get token properties, optionally limited to the provided keys748 * Get token properties, optionally limited to the provided keys749 **/749 **/750 tokenProperties: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys?: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsProperty>>>;750 tokenProperties: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys?: Option<Vec<Text>> | null | Uint8Array | Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsProperty>>>;751 /**751 /**752 * Get the topmost token owner in the hierarchy of a possibly nested token752 * Get the topmost token owner in the hierarchy of a possibly nested token753 **/753 **/tests/src/interfaces/augment-types.tsdiffbeforeafterboth5// this is required to allow for ambient/previous definitions5// this is required to allow for ambient/previous definitions6import '@polkadot/types/types/registry';6import '@polkadot/types/types/registry';778import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationCall, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';8import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationCall, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default';9import type { Data, StorageKey } from '@polkadot/types';9import type { Data, StorageKey } from '@polkadot/types';10import type { BitVec, Bool, Bytes, F32, F64, I128, I16, I256, I32, I64, I8, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, f32, f64, i128, i16, i256, i32, i64, i8, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec';10import type { BitVec, Bool, Bytes, F32, F64, I128, I16, I256, I32, I64, I8, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, f32, f64, i128, i16, i256, i32, i64, i8, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec';11import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';11import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';535 FrameSystemExtensionsCheckGenesis: FrameSystemExtensionsCheckGenesis;535 FrameSystemExtensionsCheckGenesis: FrameSystemExtensionsCheckGenesis;536 FrameSystemExtensionsCheckNonce: FrameSystemExtensionsCheckNonce;536 FrameSystemExtensionsCheckNonce: FrameSystemExtensionsCheckNonce;537 FrameSystemExtensionsCheckSpecVersion: FrameSystemExtensionsCheckSpecVersion;537 FrameSystemExtensionsCheckSpecVersion: FrameSystemExtensionsCheckSpecVersion;538 FrameSystemExtensionsCheckTxVersion: FrameSystemExtensionsCheckTxVersion;538 FrameSystemExtensionsCheckWeight: FrameSystemExtensionsCheckWeight;539 FrameSystemExtensionsCheckWeight: FrameSystemExtensionsCheckWeight;539 FrameSystemLastRuntimeUpgradeInfo: FrameSystemLastRuntimeUpgradeInfo;540 FrameSystemLastRuntimeUpgradeInfo: FrameSystemLastRuntimeUpgradeInfo;540 FrameSystemLimitsBlockLength: FrameSystemLimitsBlockLength;541 FrameSystemLimitsBlockLength: FrameSystemLimitsBlockLength;tests/src/interfaces/default/types.tsdiffbeforeafterboth691/** @name FrameSystemExtensionsCheckSpecVersion */691/** @name FrameSystemExtensionsCheckSpecVersion */692export interface FrameSystemExtensionsCheckSpecVersion extends Null {}692export interface FrameSystemExtensionsCheckSpecVersion extends Null {}693694/** @name FrameSystemExtensionsCheckTxVersion */695export interface FrameSystemExtensionsCheckTxVersion extends Null {}693696694/** @name FrameSystemExtensionsCheckWeight */697/** @name FrameSystemExtensionsCheckWeight */695export interface FrameSystemExtensionsCheckWeight extends Null {}698export interface FrameSystemExtensionsCheckWeight extends Null {}tests/src/interfaces/lookup.tsdiffbeforeafterboth3539 * Lookup478: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3539 * Lookup478: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3540 **/3540 **/3541 FrameSystemExtensionsCheckSpecVersion: 'Null',3541 FrameSystemExtensionsCheckSpecVersion: 'Null',3542 /**3543 * Lookup479: frame_system::extensions::check_tx_version::CheckTxVersion<T>3544 **/3545 FrameSystemExtensionsCheckTxVersion: 'Null',3542 /**3546 /**3543 * Lookup479: frame_system::extensions::check_genesis::CheckGenesis<T>3547 * Lookup480: frame_system::extensions::check_genesis::CheckGenesis<T>3544 **/3548 **/3545 FrameSystemExtensionsCheckGenesis: 'Null',3549 FrameSystemExtensionsCheckGenesis: 'Null',3546 /**3550 /**3547 * Lookup482: frame_system::extensions::check_nonce::CheckNonce<T>3551 * Lookup483: frame_system::extensions::check_nonce::CheckNonce<T>3548 **/3552 **/3549 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3553 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3550 /**3554 /**3551 * Lookup483: frame_system::extensions::check_weight::CheckWeight<T>3555 * Lookup484: frame_system::extensions::check_weight::CheckWeight<T>3552 **/3556 **/3553 FrameSystemExtensionsCheckWeight: 'Null',3557 FrameSystemExtensionsCheckWeight: 'Null',3554 /**3558 /**3555 * Lookup484: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3559 * Lookup485: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3556 **/3560 **/3557 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3561 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3558 /**3562 /**3559 * Lookup485: opal_runtime::Runtime3563 * Lookup486: opal_runtime::Runtime3560 **/3564 **/3561 OpalRuntimeRuntime: 'Null',3565 OpalRuntimeRuntime: 'Null',3562 /**3566 /**3563 * Lookup486: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3567 * Lookup487: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3564 **/3568 **/3565 PalletEthereumFakeTransactionFinalizer: 'Null'3569 PalletEthereumFakeTransactionFinalizer: 'Null'3566};3570};35673571tests/src/interfaces/registry.tsdiffbeforeafterboth5// this is required to allow for ambient/previous definitions5// this is required to allow for ambient/previous definitions6import '@polkadot/types/types/registry';6import '@polkadot/types/types/registry';778import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationCall, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';8import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportScheduleLookupError, FrameSupportScheduleMaybeHashed, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeOriginCaller, OpalRuntimeRuntime, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationCall, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEthereumRawOrigin, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletUniqueSchedulerCall, PalletUniqueSchedulerError, PalletUniqueSchedulerEvent, PalletUniqueSchedulerScheduledV3, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';9910declare module '@polkadot/types/types/registry' {10declare module '@polkadot/types/types/registry' {11 interface InterfaceTypes {11 interface InterfaceTypes {71 FrameSystemExtensionsCheckGenesis: FrameSystemExtensionsCheckGenesis;71 FrameSystemExtensionsCheckGenesis: FrameSystemExtensionsCheckGenesis;72 FrameSystemExtensionsCheckNonce: FrameSystemExtensionsCheckNonce;72 FrameSystemExtensionsCheckNonce: FrameSystemExtensionsCheckNonce;73 FrameSystemExtensionsCheckSpecVersion: FrameSystemExtensionsCheckSpecVersion;73 FrameSystemExtensionsCheckSpecVersion: FrameSystemExtensionsCheckSpecVersion;74 FrameSystemExtensionsCheckTxVersion: FrameSystemExtensionsCheckTxVersion;74 FrameSystemExtensionsCheckWeight: FrameSystemExtensionsCheckWeight;75 FrameSystemExtensionsCheckWeight: FrameSystemExtensionsCheckWeight;75 FrameSystemLastRuntimeUpgradeInfo: FrameSystemLastRuntimeUpgradeInfo;76 FrameSystemLastRuntimeUpgradeInfo: FrameSystemLastRuntimeUpgradeInfo;76 FrameSystemLimitsBlockLength: FrameSystemLimitsBlockLength;77 FrameSystemLimitsBlockLength: FrameSystemLimitsBlockLength;tests/src/interfaces/types-lookup.tsdiffbeforeafterboth3784 /** @name FrameSystemExtensionsCheckSpecVersion (478) */3784 /** @name FrameSystemExtensionsCheckSpecVersion (478) */3785 type FrameSystemExtensionsCheckSpecVersion = Null;3785 type FrameSystemExtensionsCheckSpecVersion = Null;37863787 /** @name FrameSystemExtensionsCheckTxVersion (479) */3788 type FrameSystemExtensionsCheckTxVersion = Null;378637893787 /** @name FrameSystemExtensionsCheckGenesis (479) */3790 /** @name FrameSystemExtensionsCheckGenesis (480) */3788 type FrameSystemExtensionsCheckGenesis = Null;3791 type FrameSystemExtensionsCheckGenesis = Null;378937923790 /** @name FrameSystemExtensionsCheckNonce (482) */3793 /** @name FrameSystemExtensionsCheckNonce (483) */3791 interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}3794 interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}379237953793 /** @name FrameSystemExtensionsCheckWeight (483) */3796 /** @name FrameSystemExtensionsCheckWeight (484) */3794 type FrameSystemExtensionsCheckWeight = Null;3797 type FrameSystemExtensionsCheckWeight = Null;379537983796 /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (484) */3799 /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (485) */3797 interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}3800 interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}379838013799 /** @name OpalRuntimeRuntime (485) */3802 /** @name OpalRuntimeRuntime (486) */3800 type OpalRuntimeRuntime = Null;3803 type OpalRuntimeRuntime = Null;380138043802 /** @name PalletEthereumFakeTransactionFinalizer (486) */3805 /** @name PalletEthereumFakeTransactionFinalizer (487) */3803 type PalletEthereumFakeTransactionFinalizer = Null;3806 type PalletEthereumFakeTransactionFinalizer = Null;380438073805} // declare module3808} // declare moduletests/src/interfaces/unique/definitions.tsdiffbeforeafterboth242425const collectionParam = {name: 'collection', type: 'u32'};25const collectionParam = {name: 'collection', type: 'u32'};26const tokenParam = {name: 'tokenId', type: 'u32'};26const tokenParam = {name: 'tokenId', type: 'u32'};27const propertyKeysParam = {name: 'propertyKeys', type: 'Vec<String>', isOptional: true};27const propertyKeysParam = {name: 'propertyKeys', type: 'Option<Vec<String>>', isOptional: true};28const crossAccountParam = (name = 'account') => ({name, type: CROSS_ACCOUNT_ID_TYPE});28const crossAccountParam = (name = 'account') => ({name, type: CROSS_ACCOUNT_ID_TYPE});29const atParam = {name: 'at', type: 'Hash', isOptional: true};29const atParam = {name: 'at', type: 'Hash', isOptional: true};3030tests/src/util/playgrounds/unique.tsdiffbeforeafterboth20 if (account.Ethereum) this.Ethereum = account.Ethereum;20 if (account.Ethereum) this.Ethereum = account.Ethereum;21 }21 }222223 static fromKeyring(account: IKeyringPair) {23 static fromKeyring(account: IKeyringPair, domain: 'Substrate' | 'Ethereum' = 'Substrate') {24 switch (domain) {24 return new CrossAccountId({Substrate: account.address});25 case 'Substrate': return new CrossAccountId({Substrate: account.address});26 case 'Ethereum': return new CrossAccountId({Substrate: account.address}).toEthereum();27 }25 }28 }262927 static fromLowerCaseKeys(address: ICrossAccountIdLower): CrossAccountId {30 static fromLowerCaseKeys(address: ICrossAccountIdLower): CrossAccountId {41 return this;44 return this;42 }45 }43 4647 static translateSubToEth(address: TSubstrateAccount): TEthereumAccount {48 return nesting.toChecksumAddress('0x' + Array.from(addressToEvm(address), i => i.toString(16).padStart(2, '0')).join(''));49 }5051 toEthereum(): CrossAccountId {52 if (this.Substrate) return new CrossAccountId({Ethereum: CrossAccountId.translateSubToEth(this.Substrate)});53 return this;54 }5556 static translateEthToSub(address: TEthereumAccount, ss58Format?: number): TSubstrateAccount {57 return evmToAddress(address, ss58Format);58 }5960 toSubstrate(ss58Format?: number): CrossAccountId {61 if (this.Ethereum) return new CrossAccountId({Substrate: CrossAccountId.translateEthToSub(this.Ethereum, ss58Format)});62 return this;63 }64 44 toLowerCase(): CrossAccountId {65 toLowerCase(): CrossAccountId {45 if (this.Substrate) this.Substrate = this.Substrate.toLowerCase();66 if (this.Substrate) this.Substrate = this.Substrate.toLowerCase();934 * @example getProperties(1219, ['location', 'date', 'time', 'isParadise']);955 * @example getProperties(1219, ['location', 'date', 'time', 'isParadise']);935 * @returns array of key-value pairs956 * @returns array of key-value pairs936 */957 */937 async getProperties(collectionId: number, propertyKeys: string[] | null = null): Promise<IProperty[]> {958 async getProperties(collectionId: number, propertyKeys?: string[] | null): Promise<IProperty[]> {938 return (await this.helper.callRpc('api.rpc.unique.collectionProperties', [collectionId, ...(propertyKeys === null ? [] : [propertyKeys])])).toHuman();959 return (await this.helper.callRpc('api.rpc.unique.collectionProperties', [collectionId, propertyKeys])).toHuman();939 }960 }940961941 /**962 /**1215 * @example getTokenProperties(1219, ['location', 'date', 'time', 'isParadise']);1236 * @example getTokenProperties(1219, ['location', 'date', 'time', 'isParadise']);1216 * @returns array of key-value pairs1237 * @returns array of key-value pairs1217 */1238 */1218 async getTokenProperties(collectionId: number, tokenId: number, propertyKeys: string[] | null = null): Promise<IProperty[]> {1239 async getTokenProperties(collectionId: number, tokenId: number, propertyKeys?: string[] | null): Promise<IProperty[]> {1219 return (await this.helper.callRpc('api.rpc.unique.tokenProperties', [collectionId, tokenId, ...(propertyKeys === null ? [] : [propertyKeys])])).toHuman();1240 return (await this.helper.callRpc('api.rpc.unique.tokenProperties', [collectionId, tokenId, propertyKeys])).toHuman();1220 }1241 }122112421222 /**1243 /**20132034201420352015class BalanceGroup extends HelperGroup {2036class BalanceGroup extends HelperGroup {2037 getCollectionCreationPrice(): bigint {2038 return 2n * this.helper.balance.getOneTokenNominal();2039 }2016 /**2040 /**2017 * Representation of the native token in the smallest unit - one OPAL (OPL), QUARTZ (QTZ), or UNIQUE (UNQ).2041 * Representation of the native token in the smallest unit - one OPAL (OPL), QUARTZ (QTZ), or UNIQUE (UNQ).2018 * @example getOneTokenNominal()2042 * @example getOneTokenNominal()2100 * @example normalizeSubstrateToChainFormat("5GrwvaEF5zXb26Fz...") // returns unjKJQJrRd238pkUZZ... for Unique Network2124 * @example normalizeSubstrateToChainFormat("5GrwvaEF5zXb26Fz...") // returns unjKJQJrRd238pkUZZ... for Unique Network2101 * @returns address in chain format2125 * @returns address in chain format2102 */2126 */2103 async normalizeSubstrateToChainFormat(address: TSubstrateAccount): Promise<TSubstrateAccount> {2127 normalizeSubstrateToChainFormat(address: TSubstrateAccount): TSubstrateAccount {2104 const info = this.helper.chain.getChainProperties();2128 return this.normalizeSubstrate(address, this.helper.chain.getChainProperties().ss58Format);2105 return encodeAddress(decodeAddress(address), info.ss58Format);2106 }2129 }210721302108 /**2131 /**2112 * @example ethToSubstrate('0x9F0583DbB855d...')2135 * @example ethToSubstrate('0x9F0583DbB855d...')2113 * @returns substrate mirror of a provided ethereum address2136 * @returns substrate mirror of a provided ethereum address2114 */2137 */2115 async ethToSubstrate(ethAddress: TEthereumAccount, toChainFormat=false): Promise<TSubstrateAccount> {2138 ethToSubstrate(ethAddress: TEthereumAccount, toChainFormat=false): TSubstrateAccount {2116 if(!toChainFormat) return evmToAddress(ethAddress);2117 const info = this.helper.chain.getChainProperties();2139 return CrossAccountId.translateEthToSub(ethAddress, toChainFormat ? this.helper.chain.getChainProperties().ss58Format : undefined);2118 return evmToAddress(ethAddress, info.ss58Format);2119 }2140 }212021412121 /**2142 /**2125 * @returns ethereum mirror of a provided substrate address2146 * @returns ethereum mirror of a provided substrate address2126 */2147 */2127 substrateToEth(subAddress: TSubstrateAccount): TEthereumAccount {2148 substrateToEth(subAddress: TSubstrateAccount): TEthereumAccount {2128 return nesting.toChecksumAddress('0x' + Array.from(addressToEvm(subAddress), i => i.toString(16).padStart(2, '0')).join(''));2149 return CrossAccountId.translateSubToEth(subAddress);2129 }2150 }2130}2151}213121522272 return await this.helper.collection.getEffectiveLimits(this.collectionId);2293 return await this.helper.collection.getEffectiveLimits(this.collectionId);2273 }2294 }227422952275 async getProperties(propertyKeys: string[] | null = null) {2296 async getProperties(propertyKeys?: string[] | null) {2276 return await this.helper.collection.getProperties(this.collectionId, propertyKeys);2297 return await this.helper.collection.getProperties(this.collectionId, propertyKeys);2277 }2298 }227822992371 return await this.helper.nft.getPropertyPermissions(this.collectionId, propertyKeys);2392 return await this.helper.nft.getPropertyPermissions(this.collectionId, propertyKeys);2372 }2393 }237323942374 async getTokenProperties(tokenId: number, propertyKeys: string[] | null = null) {2395 async getTokenProperties(tokenId: number, propertyKeys?: string[] | null) {2375 return await this.helper.nft.getTokenProperties(this.collectionId, tokenId, propertyKeys);2396 return await this.helper.nft.getTokenProperties(this.collectionId, tokenId, propertyKeys);2376 }2397 }237723982462 return await this.helper.rft.getPropertyPermissions(this.collectionId, propertyKeys);2483 return await this.helper.rft.getPropertyPermissions(this.collectionId, propertyKeys);2463 }2484 }246424852465 async getTokenProperties(tokenId: number, propertyKeys: string[] | null = null) {2486 async getTokenProperties(tokenId: number, propertyKeys?: string[] | null) {2466 return await this.helper.rft.getTokenProperties(this.collectionId, tokenId, propertyKeys);2487 return await this.helper.rft.getTokenProperties(this.collectionId, tokenId, propertyKeys);2467 }2488 }246824892574 return await this.collection.getTokenNextSponsored(this.tokenId, addressObj);2595 return await this.collection.getTokenNextSponsored(this.tokenId, addressObj);2575 }2596 }257625972577 async getProperties(propertyKeys: string[] | null = null) {2598 async getProperties(propertyKeys?: string[] | null) {2578 return await this.collection.getTokenProperties(this.tokenId, propertyKeys);2599 return await this.collection.getTokenProperties(this.tokenId, propertyKeys);2579 }2600 }25802601