difftreelog
Merge branch 'UniqueNetwork:develop' into develop
in: master
45 files changed
Cargo.lockdiffbeforeafterboth292292293[[package]]293[[package]]294name = "async-task"294name = "async-task"295version = "4.2.0"295version = "4.3.0"296source = "registry+https://github.com/rust-lang/crates.io-index"296source = "registry+https://github.com/rust-lang/crates.io-index"297checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"297checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"298298299[[package]]299[[package]]300name = "async-trait"300name = "async-trait"313source = "registry+https://github.com/rust-lang/crates.io-index"313source = "registry+https://github.com/rust-lang/crates.io-index"314checksum = "f0de5164e5edbf51c45fb8c2d9664ae1c095cce1b265ecf7569093c0d66ef690"314checksum = "f0de5164e5edbf51c45fb8c2d9664ae1c095cce1b265ecf7569093c0d66ef690"315dependencies = [315dependencies = [316 "bytes 1.1.0",316 "bytes 1.2.0",317 "futures-sink",317 "futures-sink",318 "futures-util",318 "futures-util",319 "memchr",319 "memchr",366 "instant",366 "instant",367 "pin-project-lite 0.2.9",367 "pin-project-lite 0.2.9",368 "rand 0.8.5",368 "rand 0.8.5",369 "tokio 1.19.2",369 "tokio 1.20.1",370]370]371371372[[package]]372[[package]]373name = "backtrace"373name = "backtrace"374version = "0.3.65"374version = "0.3.66"375source = "registry+https://github.com/rust-lang/crates.io-index"375source = "registry+https://github.com/rust-lang/crates.io-index"376checksum = "11a17d453482a265fd5f8479f2a3f405566e6ca627837aaddb85af8b1ab8ef61"376checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7"377dependencies = [377dependencies = [378 "addr2line",378 "addr2line",379 "cc",379 "cc",380 "cfg-if 1.0.0",380 "cfg-if 1.0.0",381 "libc",381 "libc",382 "miniz_oxide",382 "miniz_oxide",383 "object 0.28.4",383 "object 0.29.0",384 "rustc-demangle",384 "rustc-demangle",385]385]386386387[[package]]387[[package]]388name = "base-x"388name = "base-x"389version = "0.2.10"389version = "0.2.11"390source = "registry+https://github.com/rust-lang/crates.io-index"390source = "registry+https://github.com/rust-lang/crates.io-index"391checksum = "dc19a4937b4fbd3fe3379793130e42060d10627a360f2127802b10b87e7baf74"391checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"392392393[[package]]393[[package]]394name = "base16ct"394name = "base16ct"420[[package]]420[[package]]421name = "beefy-gadget"421name = "beefy-gadget"422version = "4.0.0-dev"422version = "4.0.0-dev"423source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"423source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"424dependencies = [424dependencies = [425 "beefy-primitives",425 "beefy-primitives",426 "fnv",426 "fnv",454[[package]]454[[package]]455name = "beefy-gadget-rpc"455name = "beefy-gadget-rpc"456version = "4.0.0-dev"456version = "4.0.0-dev"457source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"457source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"458dependencies = [458dependencies = [459 "beefy-gadget",459 "beefy-gadget",460 "beefy-primitives",460 "beefy-primitives",474[[package]]474[[package]]475name = "beefy-merkle-tree"475name = "beefy-merkle-tree"476version = "4.0.0-dev"476version = "4.0.0-dev"477source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"477source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"478478479[[package]]479[[package]]480name = "beefy-primitives"480name = "beefy-primitives"481version = "4.0.0-dev"481version = "4.0.0-dev"482source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"482source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"483dependencies = [483dependencies = [484 "parity-scale-codec 3.1.5",484 "parity-scale-codec 3.1.5",485 "scale-info",485 "scale-info",544544545[[package]]545[[package]]546name = "bitvec"546name = "bitvec"547version = "1.0.0"547version = "1.0.1"548source = "registry+https://github.com/rust-lang/crates.io-index"548source = "registry+https://github.com/rust-lang/crates.io-index"549checksum = "1489fcb93a5bb47da0462ca93ad252ad6af2145cce58d10d46a83931ba9f016b"549checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c"550dependencies = [550dependencies = [551 "funty 2.0.0",551 "funty 2.0.0",552 "radium 0.7.0",552 "radium 0.7.0",712version = "0.1.0"712version = "0.1.0"713source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"713source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"714dependencies = [714dependencies = [715 "bitvec 1.0.0",715 "bitvec 1.0.1",716 "bp-runtime",716 "bp-runtime",717 "frame-support",717 "frame-support",718 "frame-system",718 "frame-system",888888889[[package]]889[[package]]890name = "bytes"890name = "bytes"891version = "1.1.0"891version = "1.2.0"892source = "registry+https://github.com/rust-lang/crates.io-index"892source = "registry+https://github.com/rust-lang/crates.io-index"893checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"893checksum = "f0b3de4a0c5e67e16066a0715723abd91edc2f9001d09c46e1dca929351e130e"894894895[[package]]895[[package]]896name = "bzip2-sys"896name = "bzip2-sys"929929930[[package]]930[[package]]931name = "cargo_metadata"931name = "cargo_metadata"932version = "0.14.3"932version = "0.14.2"933source = "registry+https://github.com/rust-lang/crates.io-index"933source = "registry+https://github.com/rust-lang/crates.io-index"934checksum = "cf1007653411165d371d51e7174a6f0e81ec815ecb425c0440c30d5f1ae64e0f"934checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa"935dependencies = [935dependencies = [936 "camino",936 "camino",937 "cargo-platform",937 "cargo-platform",938 "semver 1.0.10",938 "semver 1.0.12",939 "serde",939 "serde",940 "serde_json",940 "serde_json",941]941]978978979[[package]]979[[package]]980name = "chacha20"980name = "chacha20"981version = "0.8.1"981version = "0.8.2"982source = "registry+https://github.com/rust-lang/crates.io-index"982source = "registry+https://github.com/rust-lang/crates.io-index"983checksum = "01b72a433d0cf2aef113ba70f62634c56fddb0f244e6377185c56a7cadbd8f91"983checksum = "5c80e5460aa66fe3b91d40bcbdab953a597b60053e34d684ac6903f863b680a6"984dependencies = [984dependencies = [985 "cfg-if 1.0.0",985 "cfg-if 1.0.0",986 "cipher",986 "cipher",990990991[[package]]991[[package]]992name = "chacha20poly1305"992name = "chacha20poly1305"993version = "0.9.0"993version = "0.9.1"994source = "registry+https://github.com/rust-lang/crates.io-index"994source = "registry+https://github.com/rust-lang/crates.io-index"995checksum = "3b84ed6d1d5f7aa9bdde921a5090e0ca4d934d250ea3b402a5fab3a994e28a2a"995checksum = "a18446b09be63d457bbec447509e85f662f32952b035ce892290396bc0b0cff5"996dependencies = [996dependencies = [997 "aead",997 "aead",998 "chacha20",998 "chacha20",105810581059[[package]]1059[[package]]1060name = "clap"1060name = "clap"1061version = "3.2.6"1061version = "3.2.15"1062source = "registry+https://github.com/rust-lang/crates.io-index"1062source = "registry+https://github.com/rust-lang/crates.io-index"1063checksum = "9f1fe12880bae935d142c8702d500c63a4e8634b6c3c57ad72bf978fc7b6249a"1063checksum = "44bbe24bbd31a185bc2c4f7c2abe80bea13a20d57ee4e55be70ac512bdc76417"1064dependencies = [1064dependencies = [1065 "atty",1065 "atty",1066 "bitflags",1066 "bitflags",107510751076[[package]]1076[[package]]1077name = "clap_derive"1077name = "clap_derive"1078version = "3.2.6"1078version = "3.2.15"1079source = "registry+https://github.com/rust-lang/crates.io-index"1079source = "registry+https://github.com/rust-lang/crates.io-index"1080checksum = "ed6db9e867166a43a53f7199b5e4d1f522a1e5bd626654be263c999ce59df39a"1080checksum = "9ba52acd3b0a5c33aeada5cdaa3267cdc7c594a98731d4268cdc1532f4264cb4"1081dependencies = [1081dependencies = [1082 "heck 0.4.0",1082 "heck 0.4.0",1083 "proc-macro-error",1083 "proc-macro-error",108810881089[[package]]1089[[package]]1090name = "clap_lex"1090name = "clap_lex"1091version = "0.2.3"1091version = "0.2.4"1092source = "registry+https://github.com/rust-lang/crates.io-index"1092source = "registry+https://github.com/rust-lang/crates.io-index"1093checksum = "87eba3c8c7f42ef17f6c659fc7416d0f4758cd3e58861ee63c5fa4a4dde649e4"1093checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"1094dependencies = [1094dependencies = [1095 "os_str_bytes",1095 "os_str_bytes",1096]1096]129712971298[[package]]1298[[package]]1299name = "crossbeam-channel"1299name = "crossbeam-channel"1300version = "0.5.5"1300version = "0.5.6"1301source = "registry+https://github.com/rust-lang/crates.io-index"1301source = "registry+https://github.com/rust-lang/crates.io-index"1302checksum = "4c02a4d71819009c192cf4872265391563fd6a84c81ff2c0f2a7026ca4c1d85c"1302checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"1303dependencies = [1303dependencies = [1304 "cfg-if 1.0.0",1304 "cfg-if 1.0.0",1305 "crossbeam-utils",1305 "crossbeam-utils",1306]1306]130713071308[[package]]1308[[package]]1309name = "crossbeam-deque"1309name = "crossbeam-deque"1310version = "0.8.1"1310version = "0.8.2"1311source = "registry+https://github.com/rust-lang/crates.io-index"1311source = "registry+https://github.com/rust-lang/crates.io-index"1312checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"1312checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc"1313dependencies = [1313dependencies = [1314 "cfg-if 1.0.0",1314 "cfg-if 1.0.0",1315 "crossbeam-epoch",1315 "crossbeam-epoch",131813181319[[package]]1319[[package]]1320name = "crossbeam-epoch"1320name = "crossbeam-epoch"1321version = "0.9.9"1321version = "0.9.10"1322source = "registry+https://github.com/rust-lang/crates.io-index"1322source = "registry+https://github.com/rust-lang/crates.io-index"1323checksum = "07db9d94cbd326813772c968ccd25999e5f8ae22f4f8d1b11effa37ef6ce281d"1323checksum = "045ebe27666471bb549370b4b0b3e51b07f56325befa4284db65fc89c02511b1"1324dependencies = [1324dependencies = [1325 "autocfg",1325 "autocfg",1326 "cfg-if 1.0.0",1326 "cfg-if 1.0.0",133213321333[[package]]1333[[package]]1334name = "crossbeam-queue"1334name = "crossbeam-queue"1335version = "0.3.5"1335version = "0.3.6"1336source = "registry+https://github.com/rust-lang/crates.io-index"1336source = "registry+https://github.com/rust-lang/crates.io-index"1337checksum = "1f25d8400f4a7a5778f0e4e52384a48cbd9b5c495d110786187fc750075277a2"1337checksum = "1cd42583b04998a5363558e5f9291ee5a5ff6b49944332103f251e7479a82aa7"1338dependencies = [1338dependencies = [1339 "cfg-if 1.0.0",1339 "cfg-if 1.0.0",1340 "crossbeam-utils",1340 "crossbeam-utils",1341]1341]134213421343[[package]]1343[[package]]1344name = "crossbeam-utils"1344name = "crossbeam-utils"1345version = "0.8.9"1345version = "0.8.11"1346source = "registry+https://github.com/rust-lang/crates.io-index"1346source = "registry+https://github.com/rust-lang/crates.io-index"1347checksum = "8ff1f980957787286a554052d03c7aee98d99cc32e09f6d45f0a814133c87978"1347checksum = "51887d4adc7b564537b15adcfb307936f8075dfcd5f00dde9a9f1d29383682bc"1348dependencies = [1348dependencies = [1349 "cfg-if 1.0.0",1349 "cfg-if 1.0.0",1350 "once_cell",1350 "once_cell",137013701371[[package]]1371[[package]]1372name = "crypto-common"1372name = "crypto-common"1373version = "0.1.3"1373version = "0.1.6"1374source = "registry+https://github.com/rust-lang/crates.io-index"1374source = "registry+https://github.com/rust-lang/crates.io-index"1375checksum = "57952ca27b5e3606ff4dd79b0020231aaf9d6aa76dc05fd30137538c50bd3ce8"1375checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"1376dependencies = [1376dependencies = [1377 "generic-array 0.14.5",1377 "generic-array 0.14.5",1378 "typenum",1378 "typenum",211521152116[[package]]2116[[package]]2117name = "dyn-clone"2117name = "dyn-clone"2118version = "1.0.6"2118version = "1.0.8"2119source = "registry+https://github.com/rust-lang/crates.io-index"2119source = "registry+https://github.com/rust-lang/crates.io-index"2120checksum = "140206b78fb2bc3edbcfc9b5ccbd0b30699cfe8d348b8b31b330e47df5291a5a"2120checksum = "9d07a982d1fb29db01e5a59b1918e03da4df7297eaeee7686ac45542fd4e59c8"212121212122[[package]]2122[[package]]2123name = "ecdsa"2123name = "ecdsa"215621562157[[package]]2157[[package]]2158name = "either"2158name = "either"2159version = "1.6.1"2159version = "1.7.0"2160source = "registry+https://github.com/rust-lang/crates.io-index"2160source = "registry+https://github.com/rust-lang/crates.io-index"2161checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"2161checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be"216221622163[[package]]2163[[package]]2164name = "elliptic-curve"2164name = "elliptic-curve"2282source = "registry+https://github.com/rust-lang/crates.io-index"2282source = "registry+https://github.com/rust-lang/crates.io-index"2283checksum = "23750149fe8834c0e24bb9adcbacbe06c45b9861f15df53e09f26cb7c4ab91ef"2283checksum = "23750149fe8834c0e24bb9adcbacbe06c45b9861f15df53e09f26cb7c4ab91ef"2284dependencies = [2284dependencies = [2285 "bytes 1.1.0",2285 "bytes 1.2.0",2286 "ethereum-types",2286 "ethereum-types",2287 "hash-db",2287 "hash-db",2288 "hash256-std-hasher",2288 "hash256-std-hasher",244524452446[[package]]2446[[package]]2447name = "fastrand"2447name = "fastrand"2448version = "1.7.0"2448version = "1.8.0"2449source = "registry+https://github.com/rust-lang/crates.io-index"2449source = "registry+https://github.com/rust-lang/crates.io-index"2450checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"2450checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"2451dependencies = [2451dependencies = [2452 "instant",2452 "instant",2453]2453]2546 "jsonrpsee",2546 "jsonrpsee",2547 "libsecp256k1",2547 "libsecp256k1",2548 "log",2548 "log",2549 "lru 0.7.7",2549 "lru 0.7.8",2550 "parity-scale-codec 3.1.5",2550 "parity-scale-codec 3.1.5",2551 "prometheus",2551 "prometheus",2552 "rand 0.8.5",2552 "rand 0.8.5",2566 "sp-runtime",2566 "sp-runtime",2567 "sp-storage",2567 "sp-storage",2568 "substrate-prometheus-endpoint",2568 "substrate-prometheus-endpoint",2569 "tokio 1.19.2",2569 "tokio 1.20.1",2570]2570]257125712572[[package]]2572[[package]]264226422643[[package]]2643[[package]]2644name = "fixedbitset"2644name = "fixedbitset"2645version = "0.4.1"2645version = "0.4.2"2646source = "registry+https://github.com/rust-lang/crates.io-index"2646source = "registry+https://github.com/rust-lang/crates.io-index"2647checksum = "279fb028e20b3c4c320317955b77c5e0c9701f05a1d309905d6fc702cdc5053e"2647checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"264826482649[[package]]2649[[package]]2650name = "flate2"2650name = "flate2"2682[[package]]2682[[package]]2683name = "fork-tree"2683name = "fork-tree"2684version = "3.0.0"2684version = "3.0.0"2685source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2685source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2686dependencies = [2686dependencies = [2687 "parity-scale-codec 3.1.5",2687 "parity-scale-codec 3.1.5",2688]2688]2776[[package]]2776[[package]]2777name = "frame-benchmarking"2777name = "frame-benchmarking"2778version = "4.0.0-dev"2778version = "4.0.0-dev"2779source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2779source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2780dependencies = [2780dependencies = [2781 "frame-support",2781 "frame-support",2782 "frame-system",2782 "frame-system",2798[[package]]2798[[package]]2799name = "frame-benchmarking-cli"2799name = "frame-benchmarking-cli"2800version = "4.0.0-dev"2800version = "4.0.0-dev"2801source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2801source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2802dependencies = [2802dependencies = [2803 "Inflector",2803 "Inflector",2804 "chrono",2804 "chrono",2848[[package]]2848[[package]]2849name = "frame-election-provider-solution-type"2849name = "frame-election-provider-solution-type"2850version = "4.0.0-dev"2850version = "4.0.0-dev"2851source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2851source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2852dependencies = [2852dependencies = [2853 "proc-macro-crate",2853 "proc-macro-crate",2854 "proc-macro2",2854 "proc-macro2",2859[[package]]2859[[package]]2860name = "frame-election-provider-support"2860name = "frame-election-provider-support"2861version = "4.0.0-dev"2861version = "4.0.0-dev"2862source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2862source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2863dependencies = [2863dependencies = [2864 "frame-election-provider-solution-type",2864 "frame-election-provider-solution-type",2865 "frame-support",2865 "frame-support",2875[[package]]2875[[package]]2876name = "frame-executive"2876name = "frame-executive"2877version = "4.0.0-dev"2877version = "4.0.0-dev"2878source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2878source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2879dependencies = [2879dependencies = [2880 "frame-support",2880 "frame-support",2881 "frame-system",2881 "frame-system",2903[[package]]2903[[package]]2904name = "frame-support"2904name = "frame-support"2905version = "4.0.0-dev"2905version = "4.0.0-dev"2906source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2906source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2907dependencies = [2907dependencies = [2908 "bitflags",2908 "bitflags",2909 "frame-metadata",2909 "frame-metadata",2933[[package]]2933[[package]]2934name = "frame-support-procedural"2934name = "frame-support-procedural"2935version = "4.0.0-dev"2935version = "4.0.0-dev"2936source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2936source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2937dependencies = [2937dependencies = [2938 "Inflector",2938 "Inflector",2939 "frame-support-procedural-tools",2939 "frame-support-procedural-tools",2945[[package]]2945[[package]]2946name = "frame-support-procedural-tools"2946name = "frame-support-procedural-tools"2947version = "4.0.0-dev"2947version = "4.0.0-dev"2948source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2948source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2949dependencies = [2949dependencies = [2950 "frame-support-procedural-tools-derive",2950 "frame-support-procedural-tools-derive",2951 "proc-macro-crate",2951 "proc-macro-crate",2957[[package]]2957[[package]]2958name = "frame-support-procedural-tools-derive"2958name = "frame-support-procedural-tools-derive"2959version = "3.0.0"2959version = "3.0.0"2960source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2960source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2961dependencies = [2961dependencies = [2962 "proc-macro2",2962 "proc-macro2",2963 "quote",2963 "quote",2967[[package]]2967[[package]]2968name = "frame-system"2968name = "frame-system"2969version = "4.0.0-dev"2969version = "4.0.0-dev"2970source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2970source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2971dependencies = [2971dependencies = [2972 "frame-support",2972 "frame-support",2973 "log",2973 "log",2984[[package]]2984[[package]]2985name = "frame-system-benchmarking"2985name = "frame-system-benchmarking"2986version = "4.0.0-dev"2986version = "4.0.0-dev"2987source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"2987source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"2988dependencies = [2988dependencies = [2989 "frame-benchmarking",2989 "frame-benchmarking",2990 "frame-support",2990 "frame-support",2999[[package]]2999[[package]]3000name = "frame-system-rpc-runtime-api"3000name = "frame-system-rpc-runtime-api"3001version = "4.0.0-dev"3001version = "4.0.0-dev"3002source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"3002source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"3003dependencies = [3003dependencies = [3004 "parity-scale-codec 3.1.5",3004 "parity-scale-codec 3.1.5",3005 "sp-api",3005 "sp-api",3008[[package]]3008[[package]]3009name = "frame-try-runtime"3009name = "frame-try-runtime"3010version = "0.10.0-dev"3010version = "0.10.0-dev"3011source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"3011source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"3012dependencies = [3012dependencies = [3013 "frame-support",3013 "frame-support",3014 "sp-api",3014 "sp-api",324632463247[[package]]3247[[package]]3248name = "gimli"3248name = "gimli"3249version = "0.26.1"3249version = "0.26.2"3250source = "registry+https://github.com/rust-lang/crates.io-index"3250source = "registry+https://github.com/rust-lang/crates.io-index"3251checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4"3251checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d"3252dependencies = [3252dependencies = [3253 "fallible-iterator",3253 "fallible-iterator",3254 "indexmap",3254 "indexmap",3303source = "registry+https://github.com/rust-lang/crates.io-index"3303source = "registry+https://github.com/rust-lang/crates.io-index"3304checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"3304checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"3305dependencies = [3305dependencies = [3306 "bytes 1.1.0",3306 "bytes 1.2.0",3307 "fnv",3307 "fnv",3308 "futures-core",3308 "futures-core",3309 "futures-sink",3309 "futures-sink",3310 "futures-util",3310 "futures-util",3311 "http",3311 "http",3312 "indexmap",3312 "indexmap",3313 "slab",3313 "slab",3314 "tokio 1.19.2",3314 "tokio 1.20.1",3315 "tokio-util",3315 "tokio-util",3316 "tracing",3316 "tracing",3317]3317]331833183319[[package]]3319[[package]]3320name = "handlebars"3320name = "handlebars"3321version = "4.3.1"3321version = "4.3.3"3322source = "registry+https://github.com/rust-lang/crates.io-index"3322source = "registry+https://github.com/rust-lang/crates.io-index"3323checksum = "b66d0c1b6e3abfd1e72818798925e16e02ed77e1b47f6c25a95a23b377ee4299"3323checksum = "360d9740069b2f6cbb63ce2dbaa71a20d3185350cbb990d7bebeb9318415eb17"3324dependencies = [3324dependencies = [3325 "log",3325 "log",3326 "pest",3326 "pest",335633563357[[package]]3357[[package]]3358name = "hashbrown"3358name = "hashbrown"3359version = "0.12.1"3359version = "0.12.3"3360source = "registry+https://github.com/rust-lang/crates.io-index"3360source = "registry+https://github.com/rust-lang/crates.io-index"3361checksum = "db0d4cf898abf0081f964436dc980e96670a0f36863e4b83aaacdb65c9d7ccc3"3361checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"3362dependencies = [3362dependencies = [3363 "ahash",3363 "ahash",3364]3364]3453source = "registry+https://github.com/rust-lang/crates.io-index"3453source = "registry+https://github.com/rust-lang/crates.io-index"3454checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399"3454checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399"3455dependencies = [3455dependencies = [3456 "bytes 1.1.0",3456 "bytes 1.2.0",3457 "fnv",3457 "fnv",3458 "itoa 1.0.2",3458 "itoa 1.0.2",3459]3459]3464source = "registry+https://github.com/rust-lang/crates.io-index"3464source = "registry+https://github.com/rust-lang/crates.io-index"3465checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"3465checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"3466dependencies = [3466dependencies = [3467 "bytes 1.1.0",3467 "bytes 1.2.0",3468 "http",3468 "http",3469 "pin-project-lite 0.2.9",3469 "pin-project-lite 0.2.9",3470]3470]348934893490[[package]]3490[[package]]3491name = "hyper"3491name = "hyper"3492version = "0.14.19"3492version = "0.14.20"3493source = "registry+https://github.com/rust-lang/crates.io-index"3493source = "registry+https://github.com/rust-lang/crates.io-index"3494checksum = "42dc3c131584288d375f2d07f822b0cb012d8c6fb899a5b9fdb3cb7eb9b6004f"3494checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac"3495dependencies = [3495dependencies = [3496 "bytes 1.1.0",3496 "bytes 1.2.0",3497 "futures-channel",3497 "futures-channel",3498 "futures-core",3498 "futures-core",3499 "futures-util",3499 "futures-util",3505 "itoa 1.0.2",3505 "itoa 1.0.2",3506 "pin-project-lite 0.2.9",3506 "pin-project-lite 0.2.9",3507 "socket2",3507 "socket2",3508 "tokio 1.19.2",3508 "tokio 1.20.1",3509 "tower-service",3509 "tower-service",3510 "tracing",3510 "tracing",3511 "want",3511 "want",3522 "log",3522 "log",3523 "rustls",3523 "rustls",3524 "rustls-native-certs",3524 "rustls-native-certs",3525 "tokio 1.19.2",3525 "tokio 1.20.1",3526 "tokio-rustls",3526 "tokio-rustls",3527]3527]35283528355535553556[[package]]3556[[package]]3557name = "if-watch"3557name = "if-watch"3558version = "1.1.0"3558version = "1.1.1"3559source = "registry+https://github.com/rust-lang/crates.io-index"3559source = "registry+https://github.com/rust-lang/crates.io-index"3560checksum = "774d59367a3d26965d21ac70a86fcb697d83405d1c4312d1d8a6855296af0cf7"3560checksum = "015a7df1eb6dda30df37f34b63ada9b7b352984b0e84de2a20ed526345000791"3561dependencies = [3561dependencies = [3562 "async-io",3562 "async-io",3563 "core-foundation",3563 "core-foundation",3616checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"3616checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"3617dependencies = [3617dependencies = [3618 "autocfg",3618 "autocfg",3619 "hashbrown 0.12.1",3619 "hashbrown 0.12.3",3620 "serde",3620 "serde",3621]3621]36223622363136313632[[package]]3632[[package]]3633name = "integer-encoding"3633name = "integer-encoding"3634version = "3.0.3"3634version = "3.0.4"3635source = "registry+https://github.com/rust-lang/crates.io-index"3635source = "registry+https://github.com/rust-lang/crates.io-index"3636checksum = "0e85a1509a128c855368e135cffcde7eac17d8e1083f41e2b98c58bc1a5074be"3636checksum = "8bb03732005da905c88227371639bf1ad885cc712789c011c31c5fb3ab3ccf02"363736373638[[package]]3638[[package]]3639name = "integer-sqrt"3639name = "integer-sqrt"370637063707[[package]]3707[[package]]3708name = "js-sys"3708name = "js-sys"3709version = "0.3.58"3709version = "0.3.59"3710source = "registry+https://github.com/rust-lang/crates.io-index"3710source = "registry+https://github.com/rust-lang/crates.io-index"3711checksum = "c3fac17f7123a73ca62df411b1bf727ccc805daa070338fda671c86dac1bdc27"3711checksum = "258451ab10b34f8af53416d1fdab72c22e805f0c92a1136d59470ec0b11138b2"3712dependencies = [3712dependencies = [3713 "wasm-bindgen",3713 "wasm-bindgen",3714]3714]371537153716[[package]]3716[[package]]3717name = "jsonrpsee"3717name = "jsonrpsee"3718version = "0.13.1"3718version = "0.13.1"3719source = "registry+https://github.com/rust-lang/crates.io-index"3719source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3720checksum = "a1f2ab5a60e558e74ea93bcf5164ebc47939a7fff8938fa9b5233bbc63e16061"3721dependencies = [3720dependencies = [3722 "jsonrpsee-core",3721 "jsonrpsee-core",3723 "jsonrpsee-http-server",3722 "jsonrpsee-http-server",3731[[package]]3730[[package]]3732name = "jsonrpsee-client-transport"3731name = "jsonrpsee-client-transport"3733version = "0.13.1"3732version = "0.13.1"3734source = "registry+https://github.com/rust-lang/crates.io-index"3733source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3735checksum = "26d682f4a55081a2be3e639280c640523070e4aeb8ee2fd8dd9168fdae57a9db"3736dependencies = [3734dependencies = [3737 "futures-util",3735 "futures-util",3738 "http",3736 "http",3739 "jsonrpsee-core",3737 "jsonrpsee-core",3740 "jsonrpsee-types",3738 "jsonrpsee-types",3741 "pin-project 1.0.10",3739 "pin-project 1.0.11",3742 "rustls-native-certs",3740 "rustls-native-certs",3743 "soketto",3741 "soketto",3744 "thiserror",3742 "thiserror",3745 "tokio 1.19.2",3743 "tokio 1.20.1",3746 "tokio-rustls",3744 "tokio-rustls",3747 "tokio-util",3745 "tokio-util",3748 "tracing",3746 "tracing",3752[[package]]3750[[package]]3753name = "jsonrpsee-core"3751name = "jsonrpsee-core"3754version = "0.13.1"3752version = "0.13.1"3755source = "registry+https://github.com/rust-lang/crates.io-index"3753source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3756checksum = "6e27462b21279edf9a6a91f46ffbe125e9cdc58b901d2e08bf59b31a47d7d0ab"3757dependencies = [3754dependencies = [3758 "anyhow",3755 "anyhow",3759 "arrayvec 0.7.2",3756 "arrayvec 0.7.2",3772 "serde_json",3769 "serde_json",3773 "soketto",3770 "soketto",3774 "thiserror",3771 "thiserror",3775 "tokio 1.19.2",3772 "tokio 1.20.1",3776 "tracing",3773 "tracing",3777]3774]377837753779[[package]]3776[[package]]3780name = "jsonrpsee-http-server"3777name = "jsonrpsee-http-server"3781version = "0.13.1"3778version = "0.13.1"3782source = "registry+https://github.com/rust-lang/crates.io-index"3779source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3783checksum = "7178f16eabd7154c094e24d295b9ee355ec1e5f24c328759c56255ff7bbd4548"3784dependencies = [3780dependencies = [3785 "futures-channel",3781 "futures-channel",3786 "futures-util",3782 "futures-util",3790 "jsonrpsee-types",3786 "jsonrpsee-types",3791 "lazy_static",3787 "lazy_static",3792 "serde_json",3788 "serde_json",3793 "tokio 1.19.2",3789 "tokio 1.20.1",3794 "tracing",3790 "tracing",3795 "unicase",3791 "unicase",3796]3792]379737933798[[package]]3794[[package]]3799name = "jsonrpsee-proc-macros"3795name = "jsonrpsee-proc-macros"3800version = "0.13.1"3796version = "0.13.1"3801source = "registry+https://github.com/rust-lang/crates.io-index"3797source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3802checksum = "8b8d7f449cab3b747f12c3efc27f5cad537f3b597c6a3838b0fac628f4bf730a"3803dependencies = [3798dependencies = [3804 "proc-macro-crate",3799 "proc-macro-crate",3805 "proc-macro2",3800 "proc-macro2",3810[[package]]3805[[package]]3811name = "jsonrpsee-types"3806name = "jsonrpsee-types"3812version = "0.13.1"3807version = "0.13.1"3813source = "registry+https://github.com/rust-lang/crates.io-index"3808source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3814checksum = "8fd11763134104122ddeb0f97e4bbe393058017dfb077db63fbf44b4dd0dd86e"3815dependencies = [3809dependencies = [3816 "anyhow",3810 "anyhow",3817 "beef",3811 "beef",3824[[package]]3818[[package]]3825name = "jsonrpsee-ws-client"3819name = "jsonrpsee-ws-client"3826version = "0.13.1"3820version = "0.13.1"3827source = "registry+https://github.com/rust-lang/crates.io-index"3821source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3828checksum = "76f15180afb3761c7a3a32c0a8b680788176dcfdfe725b24c1758c90b1d1595b"3829dependencies = [3822dependencies = [3830 "jsonrpsee-client-transport",3823 "jsonrpsee-client-transport",3831 "jsonrpsee-core",3824 "jsonrpsee-core",3835[[package]]3828[[package]]3836name = "jsonrpsee-ws-server"3829name = "jsonrpsee-ws-server"3837version = "0.13.1"3830version = "0.13.1"3838source = "registry+https://github.com/rust-lang/crates.io-index"3831source = "git+https://github.com/uniquenetwork/jsonrpsee?branch=unique-v0.13.1-fix-unknown-fields#ffcb6ffda701192cdb6ca66594345e6e454cac16"3839checksum = "dfb6c21556c551582b56e4e8e6e6249b0bbdb69bb7fa39efe9b9a6b54af9f206"3840dependencies = [3832dependencies = [3841 "futures-channel",3833 "futures-channel",3842 "futures-util",3834 "futures-util",3843 "jsonrpsee-core",3835 "jsonrpsee-core",3844 "jsonrpsee-types",3836 "jsonrpsee-types",3845 "serde_json",3837 "serde_json",3846 "soketto",3838 "soketto",3847 "tokio 1.19.2",3839 "tokio 1.20.1",3848 "tokio-util",3840 "tokio-util",3849 "tracing",3841 "tracing",3850]3842]3873source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"3865source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"3874dependencies = [3866dependencies = [3875 "beefy-primitives",3867 "beefy-primitives",3876 "bitvec 1.0.0",3868 "bitvec 1.0.1",3877 "frame-benchmarking",3869 "frame-benchmarking",3878 "frame-election-provider-support",3870 "frame-election-provider-support",3879 "frame-executive",3871 "frame-executive",4070source = "registry+https://github.com/rust-lang/crates.io-index"4062source = "registry+https://github.com/rust-lang/crates.io-index"4071checksum = "41726ee8f662563fafba2d2d484b14037cc8ecb8c953fbfc8439d4ce3a0a9029"4063checksum = "41726ee8f662563fafba2d2d484b14037cc8ecb8c953fbfc8439d4ce3a0a9029"4072dependencies = [4064dependencies = [4073 "bytes 1.1.0",4065 "bytes 1.2.0",4074 "futures 0.3.21",4066 "futures 0.3.21",4075 "futures-timer",4067 "futures-timer",4076 "getrandom 0.2.7",4068 "getrandom 0.2.7",4103 "libp2p-yamux",4095 "libp2p-yamux",4104 "multiaddr",4096 "multiaddr",4105 "parking_lot 0.12.1",4097 "parking_lot 0.12.1",4106 "pin-project 1.0.10",4098 "pin-project 1.0.11",4107 "rand 0.7.3",4099 "rand 0.7.3",4108 "smallvec",4100 "smallvec",4109]4101]4147 "multihash",4139 "multihash",4148 "multistream-select",4140 "multistream-select",4149 "parking_lot 0.12.1",4141 "parking_lot 0.12.1",4150 "pin-project 1.0.10",4142 "pin-project 1.0.11",4151 "prost 0.9.0",4143 "prost 0.9.0",4152 "prost-build 0.9.0",4144 "prost-build 0.9.0",4153 "rand 0.8.5",4145 "rand 0.8.5",4182 "multihash",4174 "multihash",4183 "multistream-select",4175 "multistream-select",4184 "parking_lot 0.12.1",4176 "parking_lot 0.12.1",4185 "pin-project 1.0.10",4177 "pin-project 1.0.11",4186 "prost 0.10.4",4178 "prost 0.10.4",4187 "prost-build 0.10.4",4179 "prost-build 0.10.4",4188 "rand 0.8.5",4180 "rand 0.8.5",4249 "asynchronous-codec",4241 "asynchronous-codec",4250 "base64",4242 "base64",4251 "byteorder",4243 "byteorder",4252 "bytes 1.1.0",4244 "bytes 1.2.0",4253 "fnv",4245 "fnv",4254 "futures 0.3.21",4246 "futures 0.3.21",4255 "hex_fmt",4247 "hex_fmt",4280 "libp2p-core 0.33.0",4272 "libp2p-core 0.33.0",4281 "libp2p-swarm",4273 "libp2p-swarm",4282 "log",4274 "log",4283 "lru 0.7.7",4275 "lru 0.7.8",4284 "prost 0.10.4",4276 "prost 0.10.4",4285 "prost-build 0.10.4",4277 "prost-build 0.10.4",4286 "prost-codec",4278 "prost-codec",4297dependencies = [4289dependencies = [4298 "arrayvec 0.7.2",4290 "arrayvec 0.7.2",4299 "asynchronous-codec",4291 "asynchronous-codec",4300 "bytes 1.1.0",4292 "bytes 1.2.0",4301 "either",4293 "either",4302 "fnv",4294 "fnv",4303 "futures 0.3.21",4295 "futures 0.3.21",4361checksum = "5ff9c893f2367631a711301d703c47432af898c9bb8253bea0e2c051a13f7640"4353checksum = "5ff9c893f2367631a711301d703c47432af898c9bb8253bea0e2c051a13f7640"4362dependencies = [4354dependencies = [4363 "asynchronous-codec",4355 "asynchronous-codec",4364 "bytes 1.1.0",4356 "bytes 1.2.0",4365 "futures 0.3.21",4357 "futures 0.3.21",4366 "libp2p-core 0.33.0",4358 "libp2p-core 0.33.0",4367 "log",4359 "log",4378source = "registry+https://github.com/rust-lang/crates.io-index"4370source = "registry+https://github.com/rust-lang/crates.io-index"4379checksum = "cf2cee1dad1c83325bbd182a8e94555778699cec8a9da00086efb7522c4c15ad"4371checksum = "cf2cee1dad1c83325bbd182a8e94555778699cec8a9da00086efb7522c4c15ad"4380dependencies = [4372dependencies = [4381 "bytes 1.1.0",4373 "bytes 1.2.0",4382 "curve25519-dalek 3.2.0",4374 "curve25519-dalek 3.2.0",4383 "futures 0.3.21",4375 "futures 0.3.21",4384 "lazy_static",4376 "lazy_static",4417checksum = "db007e737adc5d28b2e03223b0210164928ad742591127130796a72aa8eaf54f"4409checksum = "db007e737adc5d28b2e03223b0210164928ad742591127130796a72aa8eaf54f"4418dependencies = [4410dependencies = [4419 "asynchronous-codec",4411 "asynchronous-codec",4420 "bytes 1.1.0",4412 "bytes 1.2.0",4421 "futures 0.3.21",4413 "futures 0.3.21",4422 "libp2p-core 0.33.0",4414 "libp2p-core 0.33.0",4423 "log",4415 "log",4435dependencies = [4427dependencies = [4436 "futures 0.3.21",4428 "futures 0.3.21",4437 "log",4429 "log",4438 "pin-project 1.0.10",4430 "pin-project 1.0.11",4439 "rand 0.7.3",4431 "rand 0.7.3",4440 "salsa20",4432 "salsa20",4441 "sha3 0.9.1",4433 "sha3 0.9.1",4448checksum = "624ead3406f64437a0d4567c31bd128a9a0b8226d5f16c074038f5d0fc32f650"4440checksum = "624ead3406f64437a0d4567c31bd128a9a0b8226d5f16c074038f5d0fc32f650"4449dependencies = [4441dependencies = [4450 "asynchronous-codec",4442 "asynchronous-codec",4451 "bytes 1.1.0",4443 "bytes 1.2.0",4452 "either",4444 "either",4453 "futures 0.3.21",4445 "futures 0.3.21",4454 "futures-timer",4446 "futures-timer",4455 "instant",4447 "instant",4456 "libp2p-core 0.33.0",4448 "libp2p-core 0.33.0",4457 "libp2p-swarm",4449 "libp2p-swarm",4458 "log",4450 "log",4459 "pin-project 1.0.10",4451 "pin-project 1.0.11",4460 "prost 0.10.4",4452 "prost 0.10.4",4461 "prost-build 0.10.4",4453 "prost-build 0.10.4",4462 "prost-codec",4454 "prost-codec",4497checksum = "b02e0acb725e5a757d77c96b95298fd73a7394fe82ba7b8bbeea510719cbe441"4489checksum = "b02e0acb725e5a757d77c96b95298fd73a7394fe82ba7b8bbeea510719cbe441"4498dependencies = [4490dependencies = [4499 "async-trait",4491 "async-trait",4500 "bytes 1.1.0",4492 "bytes 1.2.0",4501 "futures 0.3.21",4493 "futures 0.3.21",4502 "instant",4494 "instant",4503 "libp2p-core 0.33.0",4495 "libp2p-core 0.33.0",4521 "instant",4513 "instant",4522 "libp2p-core 0.33.0",4514 "libp2p-core 0.33.0",4523 "log",4515 "log",4524 "pin-project 1.0.10",4516 "pin-project 1.0.11",4525 "rand 0.7.3",4517 "rand 0.7.3",4526 "smallvec",4518 "smallvec",4527 "thiserror",4519 "thiserror",463046224631[[package]]4623[[package]]4632name = "libsecp256k1"4624name = "libsecp256k1"4633version = "0.7.0"4625version = "0.7.1"4634source = "registry+https://github.com/rust-lang/crates.io-index"4626source = "registry+https://github.com/rust-lang/crates.io-index"4635checksum = "b0452aac8bab02242429380e9b2f94ea20cea2b37e2c1777a1358799bbe97f37"4627checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1"4636dependencies = [4628dependencies = [4637 "arrayref",4629 "arrayref",4638 "base64",4630 "base64",468946814690[[package]]4682[[package]]4691name = "linked-hash-map"4683name = "linked-hash-map"4692version = "0.5.4"4684version = "0.5.6"4693source = "registry+https://github.com/rust-lang/crates.io-index"4685source = "registry+https://github.com/rust-lang/crates.io-index"4694checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"4686checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"469546874696[[package]]4688[[package]]4697name = "linked_hash_set"4689name = "linked_hash_set"474947414750[[package]]4742[[package]]4751name = "lru"4743name = "lru"4752version = "0.7.7"4744version = "0.7.8"4753source = "registry+https://github.com/rust-lang/crates.io-index"4745source = "registry+https://github.com/rust-lang/crates.io-index"4754checksum = "c84e6fe5655adc6ce00787cf7dcaf8dc4f998a0565d23eafc207a8b08ca3349a"4746checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a"4755dependencies = [4747dependencies = [4756 "hashbrown 0.11.2",4748 "hashbrown 0.12.3",4757]4749]475847504759[[package]]4751[[package]]485648484857[[package]]4849[[package]]4858name = "memmap2"4850name = "memmap2"4859version = "0.5.4"4851version = "0.5.5"4860source = "registry+https://github.com/rust-lang/crates.io-index"4852source = "registry+https://github.com/rust-lang/crates.io-index"4861checksum = "d5172b50c23043ff43dd53e51392f36519d9b35a8f3a410d30ece5d1aedd58ae"4853checksum = "3a79b39c93a7a5a27eeaf9a23b5ff43f1b9e0ad6b1cdd441140ae53c35613fc7"4862dependencies = [4854dependencies = [4863 "libc",4855 "libc",4864]4856]4879checksum = "6566c70c1016f525ced45d7b7f97730a2bafb037c788211d0c186ef5b2189f0a"4871checksum = "6566c70c1016f525ced45d7b7f97730a2bafb037c788211d0c186ef5b2189f0a"4880dependencies = [4872dependencies = [4881 "hash-db",4873 "hash-db",4882 "hashbrown 0.12.1",4874 "hashbrown 0.12.3",4883 "parity-util-mem",4875 "parity-util-mem",4884]4876]488548775026source = "registry+https://github.com/rust-lang/crates.io-index"5018source = "registry+https://github.com/rust-lang/crates.io-index"5027checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b"5019checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b"5028dependencies = [5020dependencies = [5029 "bytes 1.1.0",5021 "bytes 1.2.0",5030 "futures 0.3.21",5022 "futures 0.3.21",5031 "log",5023 "log",5032 "pin-project 1.0.10",5024 "pin-project 1.0.11",5033 "smallvec",5025 "smallvec",5034 "unsigned-varint",5026 "unsigned-varint",5035]5027]5044 "matrixmultiply",5036 "matrixmultiply",5045 "nalgebra-macros",5037 "nalgebra-macros",5046 "num-complex",5038 "num-complex",5047 "num-rational 0.4.0",5039 "num-rational 0.4.1",5048 "num-traits",5040 "num-traits",5049 "rand 0.8.5",5041 "rand 0.8.5",5050 "rand_distr",5042 "rand_distr",509250845093[[package]]5085[[package]]5094name = "netlink-packet-route"5086name = "netlink-packet-route"5095version = "0.11.0"5087version = "0.12.0"5096source = "registry+https://github.com/rust-lang/crates.io-index"5088source = "registry+https://github.com/rust-lang/crates.io-index"5097checksum = "733ea73609acfd7fa7ddadfb7bf709b0471668c456ad9513685af543a06342b2"5089checksum = "d9ea4302b9759a7a88242299225ea3688e63c85ea136371bb6cf94fd674efaab"5098dependencies = [5090dependencies = [5099 "anyhow",5091 "anyhow",5100 "bitflags",5092 "bitflags",511851105119[[package]]5111[[package]]5120name = "netlink-proto"5112name = "netlink-proto"5121version = "0.9.2"5113version = "0.10.0"5122source = "registry+https://github.com/rust-lang/crates.io-index"5114source = "registry+https://github.com/rust-lang/crates.io-index"5123checksum = "ef8785b8141e8432aa45fceb922a7e876d7da3fad37fa7e7ec702ace3aa0826b"5115checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6"5124dependencies = [5116dependencies = [5125 "bytes 1.1.0",5117 "bytes 1.2.0",5126 "futures 0.3.21",5118 "futures 0.3.21",5127 "log",5119 "log",5128 "netlink-packet-core",5120 "netlink-packet-core",5129 "netlink-sys",5121 "netlink-sys",5122 "thiserror",5130 "tokio 1.19.2",5123 "tokio 1.20.1",5131]5124]513251255133[[package]]5126[[package]]5134name = "netlink-sys"5127name = "netlink-sys"5135version = "0.8.2"5128version = "0.8.3"5136source = "registry+https://github.com/rust-lang/crates.io-index"5129source = "registry+https://github.com/rust-lang/crates.io-index"5137checksum = "3e4c9f9547a08241bee7b6558b9b98e1f290d187de8b7cfca2bbb4937bcaa8f8"5130checksum = "92b654097027250401127914afb37cb1f311df6610a9891ff07a757e94199027"5138dependencies = [5131dependencies = [5139 "async-io",5132 "async-io",5140 "bytes 1.1.0",5133 "bytes 1.2.0",5141 "futures 0.3.21",5134 "futures 0.3.21",5142 "libc",5135 "libc",5143 "log",5136 "log",5144]5137]514551385146[[package]]5139[[package]]5147name = "nix"5140name = "nix"5148version = "0.22.3"5141version = "0.24.2"5149source = "registry+https://github.com/rust-lang/crates.io-index"5142source = "registry+https://github.com/rust-lang/crates.io-index"5150checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf"5143checksum = "195cdbc1741b8134346d515b3a56a1c94b0912758009cfd53f99ea0f57b065fc"5151dependencies = [5144dependencies = [5152 "bitflags",5145 "bitflags",5153 "cc",5154 "cfg-if 1.0.0",5146 "cfg-if 1.0.0",5155 "libc",5147 "libc",5156 "memoffset",5157]5148]515851495159[[package]]5150[[package]]523252235233[[package]]5224[[package]]5234name = "num-rational"5225name = "num-rational"5235version = "0.4.0"5226version = "0.4.1"5236source = "registry+https://github.com/rust-lang/crates.io-index"5227source = "registry+https://github.com/rust-lang/crates.io-index"5237checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a"5228checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"5238dependencies = [5229dependencies = [5239 "autocfg",5230 "autocfg",5240 "num-integer",5231 "num-integer",527452655275[[package]]5266[[package]]5276name = "object"5267name = "object"5277version = "0.28.4"5268version = "0.29.0"5278source = "registry+https://github.com/rust-lang/crates.io-index"5269source = "registry+https://github.com/rust-lang/crates.io-index"5279checksum = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424"5270checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53"5280dependencies = [5271dependencies = [5281 "memchr",5272 "memchr",5282]5273]528352745284[[package]]5275[[package]]5285name = "once_cell"5276name = "once_cell"5286version = "1.12.0"5277version = "1.13.0"5287source = "registry+https://github.com/rust-lang/crates.io-index"5278source = "registry+https://github.com/rust-lang/crates.io-index"5288checksum = "7709cef83f0c1f58f666e746a08b21e0085f7440fa6a29cc194d68aac97a4225"5279checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"528952805290[[package]]5281[[package]]5291name = "opal-runtime"5282name = "opal-runtime"5397 "futures 0.3.21",5388 "futures 0.3.21",5398 "futures-timer",5389 "futures-timer",5399 "orchestra-proc-macro",5390 "orchestra-proc-macro",5400 "pin-project 1.0.10",5391 "pin-project 1.0.11",5401 "prioritized-metered-channel",5392 "prioritized-metered-channel",5402 "thiserror",5393 "thiserror",5403 "tracing",5394 "tracing",544254335443[[package]]5434[[package]]5444name = "os_str_bytes"5435name = "os_str_bytes"5445version = "6.1.0"5436version = "6.2.0"5446source = "registry+https://github.com/rust-lang/crates.io-index"5437source = "registry+https://github.com/rust-lang/crates.io-index"5447checksum = "21326818e99cfe6ce1e524c2a805c189a99b5ae555a35d19f9a284b427d86afa"5438checksum = "648001efe5d5c0102d8cea768e348da85d90af8ba91f0bea908f157951493cd4"544854395449[[package]]5440[[package]]5450name = "owning_ref"5441name = "owning_ref"5458[[package]]5449[[package]]5459name = "pallet-aura"5450name = "pallet-aura"5460version = "4.0.0-dev"5451version = "4.0.0-dev"5461source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5452source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5462dependencies = [5453dependencies = [5463 "frame-support",5454 "frame-support",5464 "frame-system",5455 "frame-system",5474[[package]]5465[[package]]5475name = "pallet-authority-discovery"5466name = "pallet-authority-discovery"5476version = "4.0.0-dev"5467version = "4.0.0-dev"5477source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5468source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5478dependencies = [5469dependencies = [5479 "frame-support",5470 "frame-support",5480 "frame-system",5471 "frame-system",5490[[package]]5481[[package]]5491name = "pallet-authorship"5482name = "pallet-authorship"5492version = "4.0.0-dev"5483version = "4.0.0-dev"5493source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5484source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5494dependencies = [5485dependencies = [5495 "frame-support",5486 "frame-support",5496 "frame-system",5487 "frame-system",5505[[package]]5496[[package]]5506name = "pallet-babe"5497name = "pallet-babe"5507version = "4.0.0-dev"5498version = "4.0.0-dev"5508source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5499source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5509dependencies = [5500dependencies = [5510 "frame-benchmarking",5501 "frame-benchmarking",5511 "frame-support",5502 "frame-support",5529[[package]]5520[[package]]5530name = "pallet-bags-list"5521name = "pallet-bags-list"5531version = "4.0.0-dev"5522version = "4.0.0-dev"5532source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5523source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5533dependencies = [5524dependencies = [5534 "frame-benchmarking",5525 "frame-benchmarking",5535 "frame-election-provider-support",5526 "frame-election-provider-support",5549[[package]]5540[[package]]5550name = "pallet-balances"5541name = "pallet-balances"5551version = "4.0.0-dev"5542version = "4.0.0-dev"5552source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5543source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5553dependencies = [5544dependencies = [5554 "frame-benchmarking",5545 "frame-benchmarking",5555 "frame-support",5546 "frame-support",5579[[package]]5570[[package]]5580name = "pallet-beefy"5571name = "pallet-beefy"5581version = "4.0.0-dev"5572version = "4.0.0-dev"5582source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5573source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5583dependencies = [5574dependencies = [5584 "beefy-primitives",5575 "beefy-primitives",5585 "frame-support",5576 "frame-support",5595[[package]]5586[[package]]5596name = "pallet-beefy-mmr"5587name = "pallet-beefy-mmr"5597version = "4.0.0-dev"5588version = "4.0.0-dev"5598source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5589source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5599dependencies = [5590dependencies = [5600 "beefy-merkle-tree",5591 "beefy-merkle-tree",5601 "beefy-primitives",5592 "beefy-primitives",5618[[package]]5609[[package]]5619name = "pallet-bounties"5610name = "pallet-bounties"5620version = "4.0.0-dev"5611version = "4.0.0-dev"5621source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5612source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5622dependencies = [5613dependencies = [5623 "frame-benchmarking",5614 "frame-benchmarking",5624 "frame-support",5615 "frame-support",5677version = "0.1.0"5668version = "0.1.0"5678source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"5669source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"5679dependencies = [5670dependencies = [5680 "bitvec 1.0.0",5671 "bitvec 1.0.1",5681 "bp-message-dispatch",5672 "bp-message-dispatch",5682 "bp-messages",5673 "bp-messages",5683 "bp-runtime",5674 "bp-runtime",5696[[package]]5687[[package]]5697name = "pallet-child-bounties"5688name = "pallet-child-bounties"5698version = "4.0.0-dev"5689version = "4.0.0-dev"5699source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5690source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5700dependencies = [5691dependencies = [5701 "frame-benchmarking",5692 "frame-benchmarking",5702 "frame-support",5693 "frame-support",5715[[package]]5706[[package]]5716name = "pallet-collective"5707name = "pallet-collective"5717version = "4.0.0-dev"5708version = "4.0.0-dev"5718source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5709source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5719dependencies = [5710dependencies = [5720 "frame-benchmarking",5711 "frame-benchmarking",5721 "frame-support",5712 "frame-support",5753[[package]]5744[[package]]5754name = "pallet-democracy"5745name = "pallet-democracy"5755version = "4.0.0-dev"5746version = "4.0.0-dev"5756source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5747source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5757dependencies = [5748dependencies = [5758 "frame-benchmarking",5749 "frame-benchmarking",5759 "frame-support",5750 "frame-support",5769[[package]]5760[[package]]5770name = "pallet-election-provider-multi-phase"5761name = "pallet-election-provider-multi-phase"5771version = "4.0.0-dev"5762version = "4.0.0-dev"5772source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5763source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5773dependencies = [5764dependencies = [5774 "frame-benchmarking",5765 "frame-benchmarking",5775 "frame-election-provider-support",5766 "frame-election-provider-support",5792[[package]]5783[[package]]5793name = "pallet-election-provider-support-benchmarking"5784name = "pallet-election-provider-support-benchmarking"5794version = "4.0.0-dev"5785version = "4.0.0-dev"5795source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5786source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5796dependencies = [5787dependencies = [5797 "frame-benchmarking",5788 "frame-benchmarking",5798 "frame-election-provider-support",5789 "frame-election-provider-support",5805[[package]]5796[[package]]5806name = "pallet-elections-phragmen"5797name = "pallet-elections-phragmen"5807version = "5.0.0-dev"5798version = "5.0.0-dev"5808source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5799source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5809dependencies = [5800dependencies = [5810 "frame-benchmarking",5801 "frame-benchmarking",5811 "frame-support",5802 "frame-support",5975[[package]]5966[[package]]5976name = "pallet-gilt"5967name = "pallet-gilt"5977version = "4.0.0-dev"5968version = "4.0.0-dev"5978source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5969source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5979dependencies = [5970dependencies = [5980 "frame-benchmarking",5971 "frame-benchmarking",5981 "frame-support",5972 "frame-support",5990[[package]]5981[[package]]5991name = "pallet-grandpa"5982name = "pallet-grandpa"5992version = "4.0.0-dev"5983version = "4.0.0-dev"5993source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"5984source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"5994dependencies = [5985dependencies = [5995 "frame-benchmarking",5986 "frame-benchmarking",5996 "frame-support",5987 "frame-support",6013[[package]]6004[[package]]6014name = "pallet-identity"6005name = "pallet-identity"6015version = "4.0.0-dev"6006version = "4.0.0-dev"6016source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6007source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6017dependencies = [6008dependencies = [6018 "enumflags2",6009 "enumflags2",6019 "frame-benchmarking",6010 "frame-benchmarking",6029[[package]]6020[[package]]6030name = "pallet-im-online"6021name = "pallet-im-online"6031version = "4.0.0-dev"6022version = "4.0.0-dev"6032source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6023source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6033dependencies = [6024dependencies = [6034 "frame-benchmarking",6025 "frame-benchmarking",6035 "frame-support",6026 "frame-support",6049[[package]]6040[[package]]6050name = "pallet-indices"6041name = "pallet-indices"6051version = "4.0.0-dev"6042version = "4.0.0-dev"6052source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6043source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6053dependencies = [6044dependencies = [6054 "frame-benchmarking",6045 "frame-benchmarking",6055 "frame-support",6046 "frame-support",6085[[package]]6076[[package]]6086name = "pallet-membership"6077name = "pallet-membership"6087version = "4.0.0-dev"6078version = "4.0.0-dev"6088source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6079source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6089dependencies = [6080dependencies = [6090 "frame-benchmarking",6081 "frame-benchmarking",6091 "frame-support",6082 "frame-support",6102[[package]]6093[[package]]6103name = "pallet-mmr"6094name = "pallet-mmr"6104version = "4.0.0-dev"6095version = "4.0.0-dev"6105source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6096source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6106dependencies = [6097dependencies = [6107 "ckb-merkle-mountain-range",6098 "ckb-merkle-mountain-range",6108 "frame-benchmarking",6099 "frame-benchmarking",6120[[package]]6111[[package]]6121name = "pallet-mmr-rpc"6112name = "pallet-mmr-rpc"6122version = "3.0.0"6113version = "3.0.0"6123source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6114source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6124dependencies = [6115dependencies = [6125 "jsonrpsee",6116 "jsonrpsee",6126 "parity-scale-codec 3.1.5",6117 "parity-scale-codec 3.1.5",6135[[package]]6126[[package]]6136name = "pallet-multisig"6127name = "pallet-multisig"6137version = "4.0.0-dev"6128version = "4.0.0-dev"6138source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6129source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6139dependencies = [6130dependencies = [6140 "frame-benchmarking",6131 "frame-benchmarking",6141 "frame-support",6132 "frame-support",6150[[package]]6141[[package]]6151name = "pallet-nicks"6142name = "pallet-nicks"6152version = "4.0.0-dev"6143version = "4.0.0-dev"6153source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6144source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6154dependencies = [6145dependencies = [6155 "frame-support",6146 "frame-support",6156 "frame-system",6147 "frame-system",6164[[package]]6155[[package]]6165name = "pallet-nomination-pools"6156name = "pallet-nomination-pools"6166version = "1.0.0"6157version = "1.0.0"6167source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6158source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6168dependencies = [6159dependencies = [6169 "frame-support",6160 "frame-support",6170 "frame-system",6161 "frame-system",6180[[package]]6171[[package]]6181name = "pallet-nomination-pools-benchmarking"6172name = "pallet-nomination-pools-benchmarking"6182version = "1.0.0"6173version = "1.0.0"6183source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6174source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6184dependencies = [6175dependencies = [6185 "frame-benchmarking",6176 "frame-benchmarking",6186 "frame-election-provider-support",6177 "frame-election-provider-support",6221[[package]]6212[[package]]6222name = "pallet-offences"6213name = "pallet-offences"6223version = "4.0.0-dev"6214version = "4.0.0-dev"6224source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6215source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6225dependencies = [6216dependencies = [6226 "frame-support",6217 "frame-support",6227 "frame-system",6218 "frame-system",6238[[package]]6229[[package]]6239name = "pallet-offences-benchmarking"6230name = "pallet-offences-benchmarking"6240version = "4.0.0-dev"6231version = "4.0.0-dev"6241source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6232source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6242dependencies = [6233dependencies = [6243 "frame-benchmarking",6234 "frame-benchmarking",6244 "frame-election-provider-support",6235 "frame-election-provider-support",6261[[package]]6252[[package]]6262name = "pallet-preimage"6253name = "pallet-preimage"6263version = "4.0.0-dev"6254version = "4.0.0-dev"6264source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6255source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6265dependencies = [6256dependencies = [6266 "frame-benchmarking",6257 "frame-benchmarking",6267 "frame-support",6258 "frame-support",6277[[package]]6268[[package]]6278name = "pallet-proxy"6269name = "pallet-proxy"6279version = "4.0.0-dev"6270version = "4.0.0-dev"6280source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6271source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6281dependencies = [6272dependencies = [6282 "frame-benchmarking",6273 "frame-benchmarking",6283 "frame-support",6274 "frame-support",6292[[package]]6283[[package]]6293name = "pallet-randomness-collective-flip"6284name = "pallet-randomness-collective-flip"6294version = "4.0.0-dev"6285version = "4.0.0-dev"6295source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6286source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6296dependencies = [6287dependencies = [6297 "frame-support",6288 "frame-support",6298 "frame-system",6289 "frame-system",6306[[package]]6297[[package]]6307name = "pallet-recovery"6298name = "pallet-recovery"6308version = "4.0.0-dev"6299version = "4.0.0-dev"6309source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6300source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6310dependencies = [6301dependencies = [6311 "frame-benchmarking",6302 "frame-benchmarking",6312 "frame-support",6303 "frame-support",632063116321[[package]]6312[[package]]6322name = "pallet-refungible"6313name = "pallet-refungible"6323version = "0.1.2"6314version = "0.2.1"6324dependencies = [6315dependencies = [6325 "ethereum",6316 "ethereum",6326 "evm-coder",6317 "evm-coder",6384[[package]]6375[[package]]6385name = "pallet-scheduler"6376name = "pallet-scheduler"6386version = "4.0.0-dev"6377version = "4.0.0-dev"6387source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6378source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6388dependencies = [6379dependencies = [6389 "frame-benchmarking",6380 "frame-benchmarking",6390 "frame-support",6381 "frame-support",6400[[package]]6391[[package]]6401name = "pallet-session"6392name = "pallet-session"6402version = "4.0.0-dev"6393version = "4.0.0-dev"6403source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6394source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6404dependencies = [6395dependencies = [6405 "frame-support",6396 "frame-support",6406 "frame-system",6397 "frame-system",6421[[package]]6412[[package]]6422name = "pallet-session-benchmarking"6413name = "pallet-session-benchmarking"6423version = "4.0.0-dev"6414version = "4.0.0-dev"6424source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6415source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6425dependencies = [6416dependencies = [6426 "frame-benchmarking",6417 "frame-benchmarking",6427 "frame-support",6418 "frame-support",6437[[package]]6428[[package]]6438name = "pallet-society"6429name = "pallet-society"6439version = "4.0.0-dev"6430version = "4.0.0-dev"6440source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6431source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6441dependencies = [6432dependencies = [6442 "frame-support",6433 "frame-support",6443 "frame-system",6434 "frame-system",6451[[package]]6442[[package]]6452name = "pallet-staking"6443name = "pallet-staking"6453version = "4.0.0-dev"6444version = "4.0.0-dev"6454source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6445source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6455dependencies = [6446dependencies = [6456 "frame-benchmarking",6447 "frame-benchmarking",6457 "frame-election-provider-support",6448 "frame-election-provider-support",6474[[package]]6465[[package]]6475name = "pallet-staking-reward-curve"6466name = "pallet-staking-reward-curve"6476version = "4.0.0-dev"6467version = "4.0.0-dev"6477source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6468source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6478dependencies = [6469dependencies = [6479 "proc-macro-crate",6470 "proc-macro-crate",6480 "proc-macro2",6471 "proc-macro2",6485[[package]]6476[[package]]6486name = "pallet-staking-reward-fn"6477name = "pallet-staking-reward-fn"6487version = "4.0.0-dev"6478version = "4.0.0-dev"6488source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6479source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6489dependencies = [6480dependencies = [6490 "log",6481 "log",6491 "sp-arithmetic",6482 "sp-arithmetic",6509[[package]]6500[[package]]6510name = "pallet-sudo"6501name = "pallet-sudo"6511version = "4.0.0-dev"6502version = "4.0.0-dev"6512source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6503source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6513dependencies = [6504dependencies = [6514 "frame-support",6505 "frame-support",6515 "frame-system",6506 "frame-system",6543[[package]]6534[[package]]6544name = "pallet-timestamp"6535name = "pallet-timestamp"6545version = "4.0.0-dev"6536version = "4.0.0-dev"6546source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6537source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6547dependencies = [6538dependencies = [6548 "frame-benchmarking",6539 "frame-benchmarking",6549 "frame-support",6540 "frame-support",6561[[package]]6552[[package]]6562name = "pallet-tips"6553name = "pallet-tips"6563version = "4.0.0-dev"6554version = "4.0.0-dev"6564source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6555source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6565dependencies = [6556dependencies = [6566 "frame-benchmarking",6557 "frame-benchmarking",6567 "frame-support",6558 "frame-support",6580[[package]]6571[[package]]6581name = "pallet-transaction-payment"6572name = "pallet-transaction-payment"6582version = "4.0.0-dev"6573version = "4.0.0-dev"6583source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6574source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6584dependencies = [6575dependencies = [6585 "frame-support",6576 "frame-support",6586 "frame-system",6577 "frame-system",6596[[package]]6587[[package]]6597name = "pallet-transaction-payment-rpc"6588name = "pallet-transaction-payment-rpc"6598version = "4.0.0-dev"6589version = "4.0.0-dev"6599source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6590source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6600dependencies = [6591dependencies = [6601 "jsonrpsee",6592 "jsonrpsee",6602 "pallet-transaction-payment-rpc-runtime-api",6593 "pallet-transaction-payment-rpc-runtime-api",6611[[package]]6602[[package]]6612name = "pallet-transaction-payment-rpc-runtime-api"6603name = "pallet-transaction-payment-rpc-runtime-api"6613version = "4.0.0-dev"6604version = "4.0.0-dev"6614source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6605source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6615dependencies = [6606dependencies = [6616 "pallet-transaction-payment",6607 "pallet-transaction-payment",6617 "parity-scale-codec 3.1.5",6608 "parity-scale-codec 3.1.5",6622[[package]]6613[[package]]6623name = "pallet-treasury"6614name = "pallet-treasury"6624version = "4.0.0-dev"6615version = "4.0.0-dev"6625source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6616source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6626dependencies = [6617dependencies = [6627 "frame-benchmarking",6618 "frame-benchmarking",6628 "frame-support",6619 "frame-support",6682[[package]]6673[[package]]6683name = "pallet-utility"6674name = "pallet-utility"6684version = "4.0.0-dev"6675version = "4.0.0-dev"6685source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6676source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6686dependencies = [6677dependencies = [6687 "frame-benchmarking",6678 "frame-benchmarking",6688 "frame-support",6679 "frame-support",6698[[package]]6689[[package]]6699name = "pallet-vesting"6690name = "pallet-vesting"6700version = "4.0.0-dev"6691version = "4.0.0-dev"6701source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"6692source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"6702dependencies = [6693dependencies = [6703 "frame-benchmarking",6694 "frame-benchmarking",6704 "frame-support",6695 "frame-support",676067516761[[package]]6752[[package]]6762name = "parity-db"6753name = "parity-db"6763version = "0.3.14"6754version = "0.3.16"6764source = "registry+https://github.com/rust-lang/crates.io-index"6755source = "registry+https://github.com/rust-lang/crates.io-index"6765checksum = "966eb23bd3a09758b8dac09f82b9d417c00f14e5d46171bf04cffdd9cb2e1eb1"6756checksum = "2bb474d0ed0836e185cb998a6b140ed1073d1fbf27d690ecf9ede8030289382c"6766dependencies = [6757dependencies = [6767 "blake2-rfc",6758 "blake2-rfc",6768 "crc32fast",6759 "crc32fast",6798checksum = "9182e4a71cae089267ab03e67c99368db7cd877baf50f931e5d6d4b71e195ac0"6789checksum = "9182e4a71cae089267ab03e67c99368db7cd877baf50f931e5d6d4b71e195ac0"6799dependencies = [6790dependencies = [6800 "arrayvec 0.7.2",6791 "arrayvec 0.7.2",6801 "bitvec 1.0.0",6792 "bitvec 1.0.1",6802 "byte-slice-cast",6793 "byte-slice-cast",6803 "impl-trait-for-tuples",6794 "impl-trait-for-tuples",6804 "parity-scale-codec-derive 3.1.3",6795 "parity-scale-codec-derive 3.1.3",6843dependencies = [6834dependencies = [6844 "cfg-if 1.0.0",6835 "cfg-if 1.0.0",6845 "ethereum-types",6836 "ethereum-types",6846 "hashbrown 0.12.1",6837 "hashbrown 0.12.3",6847 "impl-trait-for-tuples",6838 "impl-trait-for-tuples",6848 "lru 0.7.7",6839 "lru 0.7.8",6849 "parity-util-mem-derive",6840 "parity-util-mem-derive",6850 "parking_lot 0.12.1",6841 "parking_lot 0.12.1",6851 "primitive-types",6842 "primitive-types",702470157025[[package]]7016[[package]]7026name = "pin-project"7017name = "pin-project"7027version = "0.4.29"7018version = "0.4.30"7028source = "registry+https://github.com/rust-lang/crates.io-index"7019source = "registry+https://github.com/rust-lang/crates.io-index"7029checksum = "9615c18d31137579e9ff063499264ddc1278e7b1982757ebc111028c4d1dc909"7020checksum = "3ef0f924a5ee7ea9cbcea77529dba45f8a9ba9f622419fe3386ca581a3ae9d5a"7030dependencies = [7021dependencies = [7031 "pin-project-internal 0.4.29",7022 "pin-project-internal 0.4.30",7032]7023]703370247034[[package]]7025[[package]]7035name = "pin-project"7026name = "pin-project"7036version = "1.0.10"7027version = "1.0.11"7037source = "registry+https://github.com/rust-lang/crates.io-index"7028source = "registry+https://github.com/rust-lang/crates.io-index"7038checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e"7029checksum = "78203e83c48cffbe01e4a2d35d566ca4de445d79a85372fc64e378bfc812a260"7039dependencies = [7030dependencies = [7040 "pin-project-internal 1.0.10",7031 "pin-project-internal 1.0.11",7041]7032]704270337043[[package]]7034[[package]]7044name = "pin-project-internal"7035name = "pin-project-internal"7045version = "0.4.29"7036version = "0.4.30"7046source = "registry+https://github.com/rust-lang/crates.io-index"7037source = "registry+https://github.com/rust-lang/crates.io-index"7047checksum = "044964427019eed9d49d9d5bbce6047ef18f37100ea400912a9fa4a3523ab12a"7038checksum = "851c8d0ce9bebe43790dedfc86614c23494ac9f423dd618d3a61fc693eafe61e"7048dependencies = [7039dependencies = [7049 "proc-macro2",7040 "proc-macro2",7050 "quote",7041 "quote",705370447054[[package]]7045[[package]]7055name = "pin-project-internal"7046name = "pin-project-internal"7056version = "1.0.10"7047version = "1.0.11"7057source = "registry+https://github.com/rust-lang/crates.io-index"7048source = "registry+https://github.com/rust-lang/crates.io-index"7058checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb"7049checksum = "710faf75e1b33345361201d36d04e98ac1ed8909151a017ed384700836104c74"7059dependencies = [7050dependencies = [7060 "proc-macro2",7051 "proc-macro2",7061 "quote",7052 "quote",7129 "derive_more",7120 "derive_more",7130 "fatality",7121 "fatality",7131 "futures 0.3.21",7122 "futures 0.3.21",7132 "lru 0.7.7",7123 "lru 0.7.8",7133 "parity-scale-codec 3.1.5",7124 "parity-scale-codec 3.1.5",7134 "polkadot-erasure-coding",7125 "polkadot-erasure-coding",7135 "polkadot-node-network-protocol",7126 "polkadot-node-network-protocol",7151dependencies = [7142dependencies = [7152 "fatality",7143 "fatality",7153 "futures 0.3.21",7144 "futures 0.3.21",7154 "lru 0.7.7",7145 "lru 0.7.8",7155 "parity-scale-codec 3.1.5",7146 "parity-scale-codec 3.1.5",7156 "polkadot-erasure-coding",7147 "polkadot-erasure-coding",7157 "polkadot-node-network-protocol",7148 "polkadot-node-network-protocol",7272 "derive_more",7263 "derive_more",7273 "fatality",7264 "fatality",7274 "futures 0.3.21",7265 "futures 0.3.21",7275 "lru 0.7.7",7266 "lru 0.7.8",7276 "parity-scale-codec 3.1.5",7267 "parity-scale-codec 3.1.5",7277 "polkadot-erasure-coding",7268 "polkadot-erasure-coding",7278 "polkadot-node-network-protocol",7269 "polkadot-node-network-protocol",7328dependencies = [7319dependencies = [7329 "always-assert",7320 "always-assert",7330 "async-trait",7321 "async-trait",7331 "bytes 1.1.0",7322 "bytes 1.2.0",7332 "futures 0.3.21",7323 "futures 0.3.21",7333 "parity-scale-codec 3.1.5",7324 "parity-scale-codec 3.1.5",7334 "parking_lot 0.12.1",7325 "parking_lot 0.12.1",7365version = "0.9.24"7356version = "0.9.24"7366source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7357source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7367dependencies = [7358dependencies = [7368 "bitvec 1.0.0",7359 "bitvec 1.0.1",7369 "derive_more",7360 "derive_more",7370 "futures 0.3.21",7361 "futures 0.3.21",7371 "futures-timer",7362 "futures-timer",7372 "kvdb",7363 "kvdb",7373 "lru 0.7.7",7364 "lru 0.7.8",7374 "merlin",7365 "merlin",7375 "parity-scale-codec 3.1.5",7366 "parity-scale-codec 3.1.5",7376 "polkadot-node-jaeger",7367 "polkadot-node-jaeger",7394version = "0.9.24"7385version = "0.9.24"7395source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7386source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7396dependencies = [7387dependencies = [7397 "bitvec 1.0.0",7388 "bitvec 1.0.1",7398 "futures 0.3.21",7389 "futures 0.3.21",7399 "futures-timer",7390 "futures-timer",7400 "kvdb",7391 "kvdb",7414version = "0.9.24"7405version = "0.9.24"7415source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7406source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7416dependencies = [7407dependencies = [7417 "bitvec 1.0.0",7408 "bitvec 1.0.1",7418 "fatality",7409 "fatality",7419 "futures 0.3.21",7410 "futures 0.3.21",7420 "polkadot-erasure-coding",7411 "polkadot-erasure-coding",7501 "fatality",7492 "fatality",7502 "futures 0.3.21",7493 "futures 0.3.21",7503 "kvdb",7494 "kvdb",7504 "lru 0.7.7",7495 "lru 0.7.8",7505 "parity-scale-codec 3.1.5",7496 "parity-scale-codec 3.1.5",7506 "polkadot-node-primitives",7497 "polkadot-node-primitives",7507 "polkadot-node-subsystem",7498 "polkadot-node-subsystem",7534version = "0.9.24"7525version = "0.9.24"7535source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7526source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7536dependencies = [7527dependencies = [7537 "bitvec 1.0.0",7528 "bitvec 1.0.1",7538 "fatality",7529 "fatality",7539 "futures 0.3.21",7530 "futures 0.3.21",7540 "futures-timer",7531 "futures-timer",7559 "futures 0.3.21",7550 "futures 0.3.21",7560 "futures-timer",7551 "futures-timer",7561 "parity-scale-codec 3.1.5",7552 "parity-scale-codec 3.1.5",7562 "pin-project 1.0.10",7553 "pin-project 1.0.11",7563 "polkadot-core-primitives",7554 "polkadot-core-primitives",7564 "polkadot-node-subsystem-util",7555 "polkadot-node-subsystem-util",7565 "polkadot-parachain",7556 "polkadot-parachain",7731 "futures 0.3.21",7722 "futures 0.3.21",7732 "itertools",7723 "itertools",7733 "kvdb",7724 "kvdb",7734 "lru 0.7.7",7725 "lru 0.7.8",7735 "parity-db",7726 "parity-db",7736 "parity-scale-codec 3.1.5",7727 "parity-scale-codec 3.1.5",7737 "parity-util-mem",7728 "parity-util-mem",7738 "parking_lot 0.11.2",7729 "parking_lot 0.11.2",7739 "pin-project 1.0.10",7730 "pin-project 1.0.11",7740 "polkadot-node-jaeger",7731 "polkadot-node-jaeger",7741 "polkadot-node-metrics",7732 "polkadot-node-metrics",7742 "polkadot-node-network-protocol",7733 "polkadot-node-network-protocol",7760dependencies = [7751dependencies = [7761 "futures 0.3.21",7752 "futures 0.3.21",7762 "futures-timer",7753 "futures-timer",7763 "lru 0.7.7",7754 "lru 0.7.8",7764 "orchestra",7755 "orchestra",7765 "parity-util-mem",7756 "parity-util-mem",7766 "parking_lot 0.12.1",7757 "parking_lot 0.12.1",7812version = "0.9.24"7803version = "0.9.24"7813source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7804source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7814dependencies = [7805dependencies = [7815 "bitvec 1.0.0",7806 "bitvec 1.0.1",7816 "frame-system",7807 "frame-system",7817 "hex-literal",7808 "hex-literal",7818 "parity-scale-codec 3.1.5",7809 "parity-scale-codec 3.1.5",7875source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7866source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7876dependencies = [7867dependencies = [7877 "beefy-primitives",7868 "beefy-primitives",7878 "bitvec 1.0.0",7869 "bitvec 1.0.1",7879 "frame-benchmarking",7870 "frame-benchmarking",7880 "frame-election-provider-support",7871 "frame-election-provider-support",7881 "frame-executive",7872 "frame-executive",7961source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7952source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"7962dependencies = [7953dependencies = [7963 "beefy-primitives",7954 "beefy-primitives",7964 "bitvec 1.0.0",7955 "bitvec 1.0.1",7965 "frame-benchmarking",7956 "frame-benchmarking",7966 "frame-election-provider-support",7957 "frame-election-provider-support",7967 "frame-support",7958 "frame-support",8032source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"8023source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"8033dependencies = [8024dependencies = [8034 "bitflags",8025 "bitflags",8035 "bitvec 1.0.0",8026 "bitvec 1.0.1",8036 "derive_more",8027 "derive_more",8037 "frame-benchmarking",8028 "frame-benchmarking",8038 "frame-support",8029 "frame-support",8083 "kusama-runtime",8074 "kusama-runtime",8084 "kvdb",8075 "kvdb",8085 "kvdb-rocksdb",8076 "kvdb-rocksdb",8086 "lru 0.7.7",8077 "lru 0.7.8",8087 "pallet-babe",8078 "pallet-babe",8088 "pallet-im-online",8079 "pallet-im-online",8089 "pallet-staking",8080 "pallet-staking",8209source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"8200source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"8210dependencies = [8201dependencies = [8211 "beefy-primitives",8202 "beefy-primitives",8212 "bitvec 1.0.0",8203 "bitvec 1.0.1",8213 "frame-election-provider-support",8204 "frame-election-provider-support",8214 "frame-executive",8205 "frame-executive",8215 "frame-support",8206 "frame-support",8315 "substrate-test-client",8306 "substrate-test-client",8316 "tempfile",8307 "tempfile",8317 "test-runtime-constants",8308 "test-runtime-constants",8318 "tokio 1.19.2",8309 "tokio 1.20.1",8319 "tracing-gum",8310 "tracing-gum",8320]8311]83218312842684178427[[package]]8418[[package]]8428name = "proc-macro2"8419name = "proc-macro2"8429version = "1.0.40"8420version = "1.0.42"8430source = "registry+https://github.com/rust-lang/crates.io-index"8421source = "registry+https://github.com/rust-lang/crates.io-index"8431checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7"8422checksum = "c278e965f1d8cf32d6e0e96de3d3e79712178ae67986d9cf9151f51e95aac89b"8432dependencies = [8423dependencies = [8433 "unicode-ident",8424 "unicode-ident",8434]8425]8476source = "registry+https://github.com/rust-lang/crates.io-index"8467source = "registry+https://github.com/rust-lang/crates.io-index"8477checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"8468checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"8478dependencies = [8469dependencies = [8479 "bytes 1.1.0",8470 "bytes 1.2.0",8480 "prost-derive 0.9.0",8471 "prost-derive 0.9.0",8481]8472]848284738486source = "registry+https://github.com/rust-lang/crates.io-index"8477source = "registry+https://github.com/rust-lang/crates.io-index"8487checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e"8478checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e"8488dependencies = [8479dependencies = [8489 "bytes 1.1.0",8480 "bytes 1.2.0",8490 "prost-derive 0.10.1",8481 "prost-derive 0.10.1",8491]8482]849284838496source = "registry+https://github.com/rust-lang/crates.io-index"8487source = "registry+https://github.com/rust-lang/crates.io-index"8497checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5"8488checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5"8498dependencies = [8489dependencies = [8499 "bytes 1.1.0",8490 "bytes 1.2.0",8500 "heck 0.3.3",8491 "heck 0.3.3",8501 "itertools",8492 "itertools",8502 "lazy_static",8493 "lazy_static",8516source = "registry+https://github.com/rust-lang/crates.io-index"8507source = "registry+https://github.com/rust-lang/crates.io-index"8517checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab"8508checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab"8518dependencies = [8509dependencies = [8519 "bytes 1.1.0",8510 "bytes 1.2.0",8520 "cfg-if 1.0.0",8511 "cfg-if 1.0.0",8521 "cmake",8512 "cmake",8522 "heck 0.4.0",8513 "heck 0.4.0",8539checksum = "00af1e92c33b4813cc79fda3f2dbf56af5169709be0202df730e9ebc3e4cd007"8530checksum = "00af1e92c33b4813cc79fda3f2dbf56af5169709be0202df730e9ebc3e4cd007"8540dependencies = [8531dependencies = [8541 "asynchronous-codec",8532 "asynchronous-codec",8542 "bytes 1.1.0",8533 "bytes 1.2.0",8543 "prost 0.10.4",8534 "prost 0.10.4",8544 "thiserror",8535 "thiserror",8545 "unsigned-varint",8536 "unsigned-varint",8577source = "registry+https://github.com/rust-lang/crates.io-index"8568source = "registry+https://github.com/rust-lang/crates.io-index"8578checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a"8569checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a"8579dependencies = [8570dependencies = [8580 "bytes 1.1.0",8571 "bytes 1.2.0",8581 "prost 0.9.0",8572 "prost 0.9.0",8582]8573]858385748587source = "registry+https://github.com/rust-lang/crates.io-index"8578source = "registry+https://github.com/rust-lang/crates.io-index"8588checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68"8579checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68"8589dependencies = [8580dependencies = [8590 "bytes 1.1.0",8581 "bytes 1.2.0",8591 "prost 0.10.4",8582 "prost 0.10.4",8592]8583]859385848594[[package]]8585[[package]]8595name = "psm"8586name = "psm"8596version = "0.1.18"8587version = "0.1.20"8597source = "registry+https://github.com/rust-lang/crates.io-index"8588source = "registry+https://github.com/rust-lang/crates.io-index"8598checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a"8589checksum = "f446d0a6efba22928558c4fb4ce0b3fd6c89b0061343e390bf01a703742b8125"8599dependencies = [8590dependencies = [8600 "cc",8591 "cc",8601]8592]885288438853[[package]]8844[[package]]8854name = "redox_syscall"8845name = "redox_syscall"8855version = "0.2.13"8846version = "0.2.15"8856source = "registry+https://github.com/rust-lang/crates.io-index"8847source = "registry+https://github.com/rust-lang/crates.io-index"8857checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"8848checksum = "534cfe58d6a18cc17120fbf4635d53d14691c1fe4d951064df9bd326178d7d5a"8858dependencies = [8849dependencies = [8859 "bitflags",8850 "bitflags",8860]8851]888588768886[[package]]8877[[package]]8887name = "ref-cast"8878name = "ref-cast"8888version = "1.0.7"8879version = "1.0.8"8889source = "registry+https://github.com/rust-lang/crates.io-index"8880source = "registry+https://github.com/rust-lang/crates.io-index"8890checksum = "685d58625b6c2b83e4cc88a27c4bf65adb7b6b16dbdc413e515c9405b47432ab"8881checksum = "776c8940430cf563f66a93f9111d1cd39306dc6c68149ecc6b934742a44a828a"8891dependencies = [8882dependencies = [8892 "ref-cast-impl",8883 "ref-cast-impl",8893]8884]889488858895[[package]]8886[[package]]8896name = "ref-cast-impl"8887name = "ref-cast-impl"8897version = "1.0.7"8888version = "1.0.8"8898source = "registry+https://github.com/rust-lang/crates.io-index"8889source = "registry+https://github.com/rust-lang/crates.io-index"8899checksum = "a043824e29c94169374ac5183ac0ed43f5724dc4556b19568007486bd840fa1f"8890checksum = "5f26c4704460286103bff62ea1fb78d137febc86aaf76952e6c5a2249af01f54"8900dependencies = [8891dependencies = [8901 "proc-macro2",8892 "proc-macro2",8902 "quote",8893 "quote",891689078917[[package]]8908[[package]]8918name = "regex"8909name = "regex"8919version = "1.5.6"8910version = "1.6.0"8920source = "registry+https://github.com/rust-lang/crates.io-index"8911source = "registry+https://github.com/rust-lang/crates.io-index"8921checksum = "d83f127d94bdbcda4c8cc2e50f6f84f4b611f69c902699ca385a39c3a75f9ff1"8912checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"8922dependencies = [8913dependencies = [8923 "aho-corasick",8914 "aho-corasick",8924 "memchr",8915 "memchr",893689278937[[package]]8928[[package]]8938name = "regex-syntax"8929name = "regex-syntax"8939version = "0.6.26"8930version = "0.6.27"8940source = "registry+https://github.com/rust-lang/crates.io-index"8931source = "registry+https://github.com/rust-lang/crates.io-index"8941checksum = "49b3de9ec5dc0a3417da371aab17d729997c15010e7fd24ff707773a33bddb64"8932checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"894289338943[[package]]8934[[package]]8944name = "region"8935name = "region"8955[[package]]8946[[package]]8956name = "remote-externalities"8947name = "remote-externalities"8957version = "0.10.0-dev"8948version = "0.10.0-dev"8958source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"8949source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"8959dependencies = [8950dependencies = [8960 "env_logger",8951 "env_logger",8961 "jsonrpsee",8952 "jsonrpsee",9026source = "registry+https://github.com/rust-lang/crates.io-index"9017source = "registry+https://github.com/rust-lang/crates.io-index"9027checksum = "999508abb0ae792aabed2460c45b89106d97fe4adac593bdaef433c2605847b5"9018checksum = "999508abb0ae792aabed2460c45b89106d97fe4adac593bdaef433c2605847b5"9028dependencies = [9019dependencies = [9029 "bytes 1.1.0",9020 "bytes 1.2.0",9030 "rustc-hex",9021 "rustc-hex",9031]9022]90329023917491659175[[package]]9166[[package]]9176name = "rtnetlink"9167name = "rtnetlink"9177version = "0.9.1"9168version = "0.10.1"9178source = "registry+https://github.com/rust-lang/crates.io-index"9169source = "registry+https://github.com/rust-lang/crates.io-index"9179checksum = "6f54290e54521dac3de4149d83ddf9f62a359b3cc93bcb494a794a41e6f4744b"9170checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0"9180dependencies = [9171dependencies = [9181 "async-global-executor",9172 "async-global-executor",9182 "futures 0.3.21",9173 "futures 0.3.21",9220source = "registry+https://github.com/rust-lang/crates.io-index"9211source = "registry+https://github.com/rust-lang/crates.io-index"9221checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"9212checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"9222dependencies = [9213dependencies = [9223 "semver 1.0.10",9214 "semver 1.0.12",9224]9215]922592169226[[package]]9217[[package]]927292639273[[package]]9264[[package]]9274name = "rustversion"9265name = "rustversion"9275version = "1.0.7"9266version = "1.0.8"9276source = "registry+https://github.com/rust-lang/crates.io-index"9267source = "registry+https://github.com/rust-lang/crates.io-index"9277checksum = "a0a5f7c728f5d284929a1cccb5bc19884422bfe6ef4d6c409da2c41838983fcf"9268checksum = "24c8ad4f0c00e1eb5bc7614d236a7f1300e3dbd76b68cac8e06fb00b015ad8d8"927892699279[[package]]9270[[package]]9280name = "rw-stream-sink"9271name = "rw-stream-sink"9283checksum = "4da5fcb054c46f5a5dff833b129285a93d3f0179531735e6c866e8cc307d2020"9274checksum = "4da5fcb054c46f5a5dff833b129285a93d3f0179531735e6c866e8cc307d2020"9284dependencies = [9275dependencies = [9285 "futures 0.3.21",9276 "futures 0.3.21",9286 "pin-project 0.4.29",9277 "pin-project 0.4.30",9287 "static_assertions",9278 "static_assertions",9288]9279]928992809294checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04"9285checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04"9295dependencies = [9286dependencies = [9296 "futures 0.3.21",9287 "futures 0.3.21",9297 "pin-project 1.0.10",9288 "pin-project 1.0.11",9298 "static_assertions",9289 "static_assertions",9299]9290]930092919334[[package]]9325[[package]]9335name = "sc-allocator"9326name = "sc-allocator"9336version = "4.1.0-dev"9327version = "4.1.0-dev"9337source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9328source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9338dependencies = [9329dependencies = [9339 "log",9330 "log",9340 "sp-core",9331 "sp-core",9345[[package]]9336[[package]]9346name = "sc-authority-discovery"9337name = "sc-authority-discovery"9347version = "0.10.0-dev"9338version = "0.10.0-dev"9348source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9339source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9349dependencies = [9340dependencies = [9350 "async-trait",9341 "async-trait",9351 "futures 0.3.21",9342 "futures 0.3.21",9372[[package]]9363[[package]]9373name = "sc-basic-authorship"9364name = "sc-basic-authorship"9374version = "0.10.0-dev"9365version = "0.10.0-dev"9375source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9366source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9376dependencies = [9367dependencies = [9377 "futures 0.3.21",9368 "futures 0.3.21",9378 "futures-timer",9369 "futures-timer",9395[[package]]9386[[package]]9396name = "sc-block-builder"9387name = "sc-block-builder"9397version = "0.10.0-dev"9388version = "0.10.0-dev"9398source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9389source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9399dependencies = [9390dependencies = [9400 "parity-scale-codec 3.1.5",9391 "parity-scale-codec 3.1.5",9401 "sc-client-api",9392 "sc-client-api",9411[[package]]9402[[package]]9412name = "sc-chain-spec"9403name = "sc-chain-spec"9413version = "4.0.0-dev"9404version = "4.0.0-dev"9414source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9405source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9415dependencies = [9406dependencies = [9416 "impl-trait-for-tuples",9407 "impl-trait-for-tuples",9417 "memmap2 0.5.4",9408 "memmap2 0.5.5",9418 "parity-scale-codec 3.1.5",9409 "parity-scale-codec 3.1.5",9419 "sc-chain-spec-derive",9410 "sc-chain-spec-derive",9420 "sc-network",9411 "sc-network",9428[[package]]9419[[package]]9429name = "sc-chain-spec-derive"9420name = "sc-chain-spec-derive"9430version = "4.0.0-dev"9421version = "4.0.0-dev"9431source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9422source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9432dependencies = [9423dependencies = [9433 "proc-macro-crate",9424 "proc-macro-crate",9434 "proc-macro2",9425 "proc-macro2",9439[[package]]9430[[package]]9440name = "sc-cli"9431name = "sc-cli"9441version = "0.10.0-dev"9432version = "0.10.0-dev"9442source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9433source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9443dependencies = [9434dependencies = [9444 "chrono",9435 "chrono",9445 "clap",9436 "clap",9472 "sp-version",9463 "sp-version",9473 "thiserror",9464 "thiserror",9474 "tiny-bip39",9465 "tiny-bip39",9475 "tokio 1.19.2",9466 "tokio 1.20.1",9476]9467]947794689478[[package]]9469[[package]]9479name = "sc-client-api"9470name = "sc-client-api"9480version = "4.0.0-dev"9471version = "4.0.0-dev"9481source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9472source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9482dependencies = [9473dependencies = [9483 "fnv",9474 "fnv",9484 "futures 0.3.21",9475 "futures 0.3.21",9506[[package]]9497[[package]]9507name = "sc-client-db"9498name = "sc-client-db"9508version = "0.10.0-dev"9499version = "0.10.0-dev"9509source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9500source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9510dependencies = [9501dependencies = [9511 "hash-db",9502 "hash-db",9512 "kvdb",9503 "kvdb",9531[[package]]9522[[package]]9532name = "sc-consensus"9523name = "sc-consensus"9533version = "0.10.0-dev"9524version = "0.10.0-dev"9534source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9525source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9535dependencies = [9526dependencies = [9536 "async-trait",9527 "async-trait",9537 "futures 0.3.21",9528 "futures 0.3.21",9555[[package]]9546[[package]]9556name = "sc-consensus-aura"9547name = "sc-consensus-aura"9557version = "0.10.0-dev"9548version = "0.10.0-dev"9558source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9549source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9559dependencies = [9550dependencies = [9560 "async-trait",9551 "async-trait",9561 "futures 0.3.21",9552 "futures 0.3.21",9584[[package]]9575[[package]]9585name = "sc-consensus-babe"9576name = "sc-consensus-babe"9586version = "0.10.0-dev"9577version = "0.10.0-dev"9587source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9578source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9588dependencies = [9579dependencies = [9589 "async-trait",9580 "async-trait",9590 "fork-tree",9581 "fork-tree",9627[[package]]9618[[package]]9628name = "sc-consensus-babe-rpc"9619name = "sc-consensus-babe-rpc"9629version = "0.10.0-dev"9620version = "0.10.0-dev"9630source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9621source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9631dependencies = [9622dependencies = [9632 "futures 0.3.21",9623 "futures 0.3.21",9633 "jsonrpsee",9624 "jsonrpsee",9649[[package]]9640[[package]]9650name = "sc-consensus-epochs"9641name = "sc-consensus-epochs"9651version = "0.10.0-dev"9642version = "0.10.0-dev"9652source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9643source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9653dependencies = [9644dependencies = [9654 "fork-tree",9645 "fork-tree",9655 "parity-scale-codec 3.1.5",9646 "parity-scale-codec 3.1.5",9662[[package]]9653[[package]]9663name = "sc-consensus-manual-seal"9654name = "sc-consensus-manual-seal"9664version = "0.10.0-dev"9655version = "0.10.0-dev"9665source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9656source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9666dependencies = [9657dependencies = [9667 "assert_matches",9658 "assert_matches",9668 "async-trait",9659 "async-trait",9696[[package]]9687[[package]]9697name = "sc-consensus-slots"9688name = "sc-consensus-slots"9698version = "0.10.0-dev"9689version = "0.10.0-dev"9699source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9690source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9700dependencies = [9691dependencies = [9701 "async-trait",9692 "async-trait",9702 "futures 0.3.21",9693 "futures 0.3.21",9721[[package]]9712[[package]]9722name = "sc-consensus-uncles"9713name = "sc-consensus-uncles"9723version = "0.10.0-dev"9714version = "0.10.0-dev"9724source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9715source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9725dependencies = [9716dependencies = [9726 "sc-client-api",9717 "sc-client-api",9727 "sp-authorship",9718 "sp-authorship",9732[[package]]9723[[package]]9733name = "sc-executor"9724name = "sc-executor"9734version = "0.10.0-dev"9725version = "0.10.0-dev"9735source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9726source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9736dependencies = [9727dependencies = [9737 "lazy_static",9728 "lazy_static",9738 "lru 0.7.7",9729 "lru 0.7.8",9739 "parity-scale-codec 3.1.5",9730 "parity-scale-codec 3.1.5",9740 "parking_lot 0.12.1",9731 "parking_lot 0.12.1",9741 "sc-executor-common",9732 "sc-executor-common",9759[[package]]9750[[package]]9760name = "sc-executor-common"9751name = "sc-executor-common"9761version = "0.10.0-dev"9752version = "0.10.0-dev"9762source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9753source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9763dependencies = [9754dependencies = [9764 "environmental",9755 "environmental",9765 "parity-scale-codec 3.1.5",9756 "parity-scale-codec 3.1.5",9776[[package]]9767[[package]]9777name = "sc-executor-wasmi"9768name = "sc-executor-wasmi"9778version = "0.10.0-dev"9769version = "0.10.0-dev"9779source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9770source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9780dependencies = [9771dependencies = [9781 "log",9772 "log",9782 "parity-scale-codec 3.1.5",9773 "parity-scale-codec 3.1.5",9791[[package]]9782[[package]]9792name = "sc-executor-wasmtime"9783name = "sc-executor-wasmtime"9793version = "0.10.0-dev"9784version = "0.10.0-dev"9794source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9785source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9795dependencies = [9786dependencies = [9796 "cfg-if 1.0.0",9787 "cfg-if 1.0.0",9797 "libc",9788 "libc",9809[[package]]9800[[package]]9810name = "sc-finality-grandpa"9801name = "sc-finality-grandpa"9811version = "0.10.0-dev"9802version = "0.10.0-dev"9812source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9803source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9813dependencies = [9804dependencies = [9814 "ahash",9805 "ahash",9815 "async-trait",9806 "async-trait",9849[[package]]9840[[package]]9850name = "sc-finality-grandpa-rpc"9841name = "sc-finality-grandpa-rpc"9851version = "0.10.0-dev"9842version = "0.10.0-dev"9852source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9843source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9853dependencies = [9844dependencies = [9854 "finality-grandpa",9845 "finality-grandpa",9855 "futures 0.3.21",9846 "futures 0.3.21",9870[[package]]9861[[package]]9871name = "sc-informant"9862name = "sc-informant"9872version = "0.10.0-dev"9863version = "0.10.0-dev"9873source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9864source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9874dependencies = [9865dependencies = [9875 "ansi_term",9866 "ansi_term",9876 "futures 0.3.21",9867 "futures 0.3.21",9887[[package]]9878[[package]]9888name = "sc-keystore"9879name = "sc-keystore"9889version = "4.0.0-dev"9880version = "4.0.0-dev"9890source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9881source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9891dependencies = [9882dependencies = [9892 "async-trait",9883 "async-trait",9893 "hex",9884 "hex",9902[[package]]9893[[package]]9903name = "sc-network"9894name = "sc-network"9904version = "0.10.0-dev"9895version = "0.10.0-dev"9905source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9896source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9906dependencies = [9897dependencies = [9907 "async-trait",9898 "async-trait",9908 "asynchronous-codec",9899 "asynchronous-codec",9909 "bitflags",9900 "bitflags",9910 "bytes 1.1.0",9901 "bytes 1.2.0",9911 "cid",9902 "cid",9912 "either",9903 "either",9913 "fnv",9904 "fnv",9920 "linked-hash-map",9911 "linked-hash-map",9921 "linked_hash_set",9912 "linked_hash_set",9922 "log",9913 "log",9923 "lru 0.7.7",9914 "lru 0.7.8",9924 "parity-scale-codec 3.1.5",9915 "parity-scale-codec 3.1.5",9925 "parking_lot 0.12.1",9916 "parking_lot 0.12.1",9926 "pin-project 1.0.10",9917 "pin-project 1.0.11",9927 "prost 0.10.4",9918 "prost 0.10.4",9928 "prost-build 0.9.0",9919 "prost-build 0.9.0",9929 "rand 0.7.3",9920 "rand 0.7.3",9954[[package]]9945[[package]]9955name = "sc-network-common"9946name = "sc-network-common"9956version = "0.10.0-dev"9947version = "0.10.0-dev"9957source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9948source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9958dependencies = [9949dependencies = [9959 "futures 0.3.21",9950 "futures 0.3.21",9960 "libp2p",9951 "libp2p",9967[[package]]9958[[package]]9968name = "sc-network-gossip"9959name = "sc-network-gossip"9969version = "0.10.0-dev"9960version = "0.10.0-dev"9970source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9961source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9971dependencies = [9962dependencies = [9972 "ahash",9963 "ahash",9973 "futures 0.3.21",9964 "futures 0.3.21",9974 "futures-timer",9965 "futures-timer",9975 "libp2p",9966 "libp2p",9976 "log",9967 "log",9977 "lru 0.7.7",9968 "lru 0.7.8",9978 "sc-network",9969 "sc-network",9979 "sp-runtime",9970 "sp-runtime",9980 "substrate-prometheus-endpoint",9971 "substrate-prometheus-endpoint",9984[[package]]9975[[package]]9985name = "sc-network-light"9976name = "sc-network-light"9986version = "0.10.0-dev"9977version = "0.10.0-dev"9987source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9978source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"9988dependencies = [9979dependencies = [9989 "futures 0.3.21",9980 "futures 0.3.21",9990 "libp2p",9981 "libp2p",10004[[package]]9995[[package]]10005name = "sc-network-sync"9996name = "sc-network-sync"10006version = "0.10.0-dev"9997version = "0.10.0-dev"10007source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"9998source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10008dependencies = [9999dependencies = [10009 "bitflags",10000 "bitflags",10010 "either",10001 "either",10011 "fork-tree",10002 "fork-tree",10012 "futures 0.3.21",10003 "futures 0.3.21",10013 "libp2p",10004 "libp2p",10014 "log",10005 "log",10015 "lru 0.7.7",10006 "lru 0.7.8",10016 "parity-scale-codec 3.1.5",10007 "parity-scale-codec 3.1.5",10017 "prost 0.10.4",10008 "prost 0.10.4",10018 "prost-build 0.9.0",10009 "prost-build 0.9.0",10033[[package]]10024[[package]]10034name = "sc-offchain"10025name = "sc-offchain"10035version = "4.0.0-dev"10026version = "4.0.0-dev"10036source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10027source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10037dependencies = [10028dependencies = [10038 "bytes 1.1.0",10029 "bytes 1.2.0",10039 "fnv",10030 "fnv",10040 "futures 0.3.21",10031 "futures 0.3.21",10041 "futures-timer",10032 "futures-timer",10061[[package]]10052[[package]]10062name = "sc-peerset"10053name = "sc-peerset"10063version = "4.0.0-dev"10054version = "4.0.0-dev"10064source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10055source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10065dependencies = [10056dependencies = [10066 "futures 0.3.21",10057 "futures 0.3.21",10067 "libp2p",10058 "libp2p",10074[[package]]10065[[package]]10075name = "sc-proposer-metrics"10066name = "sc-proposer-metrics"10076version = "0.10.0-dev"10067version = "0.10.0-dev"10077source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10068source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10078dependencies = [10069dependencies = [10079 "log",10070 "log",10080 "substrate-prometheus-endpoint",10071 "substrate-prometheus-endpoint",10083[[package]]10074[[package]]10084name = "sc-rpc"10075name = "sc-rpc"10085version = "4.0.0-dev"10076version = "4.0.0-dev"10086source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10077source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10087dependencies = [10078dependencies = [10088 "futures 0.3.21",10079 "futures 0.3.21",10089 "hash-db",10080 "hash-db",10113[[package]]10104[[package]]10114name = "sc-rpc-api"10105name = "sc-rpc-api"10115version = "0.10.0-dev"10106version = "0.10.0-dev"10116source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10107source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10117dependencies = [10108dependencies = [10118 "futures 0.3.21",10109 "futures 0.3.21",10119 "jsonrpsee",10110 "jsonrpsee",10136[[package]]10127[[package]]10137name = "sc-rpc-server"10128name = "sc-rpc-server"10138version = "4.0.0-dev"10129version = "4.0.0-dev"10139source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10130source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10140dependencies = [10131dependencies = [10141 "futures 0.3.21",10132 "futures 0.3.21",10142 "jsonrpsee",10133 "jsonrpsee",10143 "log",10134 "log",10144 "serde_json",10135 "serde_json",10145 "substrate-prometheus-endpoint",10136 "substrate-prometheus-endpoint",10146 "tokio 1.19.2",10137 "tokio 1.20.1",10147]10138]101481013910149[[package]]10140[[package]]10150name = "sc-service"10141name = "sc-service"10151version = "0.10.0-dev"10142version = "0.10.0-dev"10152source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10143source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10153dependencies = [10144dependencies = [10154 "async-trait",10145 "async-trait",10155 "directories",10146 "directories",10162 "parity-scale-codec 3.1.5",10153 "parity-scale-codec 3.1.5",10163 "parity-util-mem",10154 "parity-util-mem",10164 "parking_lot 0.12.1",10155 "parking_lot 0.12.1",10165 "pin-project 1.0.10",10156 "pin-project 1.0.11",10166 "rand 0.7.3",10157 "rand 0.7.3",10167 "sc-block-builder",10158 "sc-block-builder",10168 "sc-chain-spec",10159 "sc-chain-spec",10206 "substrate-prometheus-endpoint",10197 "substrate-prometheus-endpoint",10207 "tempfile",10198 "tempfile",10208 "thiserror",10199 "thiserror",10209 "tokio 1.19.2",10200 "tokio 1.20.1",10210 "tracing",10201 "tracing",10211 "tracing-futures",10202 "tracing-futures",10212]10203]102131020410214[[package]]10205[[package]]10215name = "sc-state-db"10206name = "sc-state-db"10216version = "0.10.0-dev"10207version = "0.10.0-dev"10217source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10208source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10218dependencies = [10209dependencies = [10219 "log",10210 "log",10220 "parity-scale-codec 3.1.5",10211 "parity-scale-codec 3.1.5",10228[[package]]10219[[package]]10229name = "sc-sync-state-rpc"10220name = "sc-sync-state-rpc"10230version = "0.10.0-dev"10221version = "0.10.0-dev"10231source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10222source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10232dependencies = [10223dependencies = [10233 "jsonrpsee",10224 "jsonrpsee",10234 "parity-scale-codec 3.1.5",10225 "parity-scale-codec 3.1.5",10247[[package]]10238[[package]]10248name = "sc-sysinfo"10239name = "sc-sysinfo"10249version = "6.0.0-dev"10240version = "6.0.0-dev"10250source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10241source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10251dependencies = [10242dependencies = [10252 "futures 0.3.21",10243 "futures 0.3.21",10253 "libc",10244 "libc",10266[[package]]10257[[package]]10267name = "sc-telemetry"10258name = "sc-telemetry"10268version = "4.0.0-dev"10259version = "4.0.0-dev"10269source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10260source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10270dependencies = [10261dependencies = [10271 "chrono",10262 "chrono",10272 "futures 0.3.21",10263 "futures 0.3.21",10273 "libp2p",10264 "libp2p",10274 "log",10265 "log",10275 "parking_lot 0.12.1",10266 "parking_lot 0.12.1",10276 "pin-project 1.0.10",10267 "pin-project 1.0.11",10277 "rand 0.7.3",10268 "rand 0.7.3",10278 "serde",10269 "serde",10279 "serde_json",10270 "serde_json",10284[[package]]10275[[package]]10285name = "sc-tracing"10276name = "sc-tracing"10286version = "4.0.0-dev"10277version = "4.0.0-dev"10287source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10278source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10288dependencies = [10279dependencies = [10289 "ansi_term",10280 "ansi_term",10290 "atty",10281 "atty",10315[[package]]10306[[package]]10316name = "sc-tracing-proc-macro"10307name = "sc-tracing-proc-macro"10317version = "4.0.0-dev"10308version = "4.0.0-dev"10318source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10309source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10319dependencies = [10310dependencies = [10320 "proc-macro-crate",10311 "proc-macro-crate",10321 "proc-macro2",10312 "proc-macro2",10326[[package]]10317[[package]]10327name = "sc-transaction-pool"10318name = "sc-transaction-pool"10328version = "4.0.0-dev"10319version = "4.0.0-dev"10329source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10320source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10330dependencies = [10321dependencies = [10331 "futures 0.3.21",10322 "futures 0.3.21",10332 "futures-timer",10323 "futures-timer",10353[[package]]10344[[package]]10354name = "sc-transaction-pool-api"10345name = "sc-transaction-pool-api"10355version = "4.0.0-dev"10346version = "4.0.0-dev"10356source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10347source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10357dependencies = [10348dependencies = [10358 "futures 0.3.21",10349 "futures 0.3.21",10359 "log",10350 "log",10366[[package]]10357[[package]]10367name = "sc-utils"10358name = "sc-utils"10368version = "4.0.0-dev"10359version = "4.0.0-dev"10369source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10360source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10370dependencies = [10361dependencies = [10371 "futures 0.3.21",10362 "futures 0.3.21",10372 "futures-timer",10363 "futures-timer",10382source = "registry+https://github.com/rust-lang/crates.io-index"10373source = "registry+https://github.com/rust-lang/crates.io-index"10383checksum = "c46be926081c9f4dd5dd9b6f1d3e3229f2360bc6502dd8836f84a93b7c75e99a"10374checksum = "c46be926081c9f4dd5dd9b6f1d3e3229f2360bc6502dd8836f84a93b7c75e99a"10384dependencies = [10375dependencies = [10385 "bitvec 1.0.0",10376 "bitvec 1.0.1",10386 "cfg-if 1.0.0",10377 "cfg-if 1.0.0",10387 "derive_more",10378 "derive_more",10388 "parity-scale-codec 3.1.5",10379 "parity-scale-codec 3.1.5",105281051910529[[package]]10520[[package]]10530name = "semver"10521name = "semver"10531version = "1.0.10"10522version = "1.0.12"10532source = "registry+https://github.com/rust-lang/crates.io-index"10523source = "registry+https://github.com/rust-lang/crates.io-index"10533checksum = "a41d061efea015927ac527063765e73601444cdc344ba855bc7bd44578b25e1c"10524checksum = "a2333e6df6d6598f2b1974829f853c2b4c5f4a6e503c10af918081aa6f8564e1"10534dependencies = [10525dependencies = [10535 "serde",10526 "serde",10536]10527]105431053410544[[package]]10535[[package]]10545name = "serde"10536name = "serde"10546version = "1.0.137"10537version = "1.0.140"10547source = "registry+https://github.com/rust-lang/crates.io-index"10538source = "registry+https://github.com/rust-lang/crates.io-index"10548checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"10539checksum = "fc855a42c7967b7c369eb5860f7164ef1f6f81c20c7cc1141f2a604e18723b03"10549dependencies = [10540dependencies = [10550 "serde_derive",10541 "serde_derive",10551]10542]105521054310553[[package]]10544[[package]]10554name = "serde_derive"10545name = "serde_derive"10555version = "1.0.137"10546version = "1.0.140"10556source = "registry+https://github.com/rust-lang/crates.io-index"10547source = "registry+https://github.com/rust-lang/crates.io-index"10557checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"10548checksum = "6f2122636b9fe3b81f1cb25099fcf2d3f542cdb1d45940d56c713158884a05da"10558dependencies = [10549dependencies = [10559 "proc-macro2",10550 "proc-macro2",10560 "quote",10551 "quote",105631055410564[[package]]10555[[package]]10565name = "serde_json"10556name = "serde_json"10566version = "1.0.81"10557version = "1.0.82"10567source = "registry+https://github.com/rust-lang/crates.io-index"10558source = "registry+https://github.com/rust-lang/crates.io-index"10568checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c"10559checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7"10569dependencies = [10560dependencies = [10570 "itoa 1.0.2",10561 "itoa 1.0.2",10571 "ryu",10562 "ryu",107221071310723[[package]]10714[[package]]10724name = "slab"10715name = "slab"10725version = "0.4.6"10716version = "0.4.7"10726source = "registry+https://github.com/rust-lang/crates.io-index"10717source = "registry+https://github.com/rust-lang/crates.io-index"10727checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"10718checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"10719dependencies = [10720 "autocfg",10721]107281072210729[[package]]10723[[package]]10730name = "slot-range-helper"10724name = "slot-range-helper"107491074310750[[package]]10744[[package]]10751name = "smallvec"10745name = "smallvec"10752version = "1.8.0"10746version = "1.9.0"10753source = "registry+https://github.com/rust-lang/crates.io-index"10747source = "registry+https://github.com/rust-lang/crates.io-index"10754checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"10748checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1"107551074910756[[package]]10750[[package]]10757name = "snap"10751name = "snap"10793checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2"10787checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2"10794dependencies = [10788dependencies = [10795 "base64",10789 "base64",10796 "bytes 1.1.0",10790 "bytes 1.2.0",10797 "flate2",10791 "flate2",10798 "futures 0.3.21",10792 "futures 0.3.21",10799 "httparse",10793 "httparse",10805[[package]]10799[[package]]10806name = "sp-api"10800name = "sp-api"10807version = "4.0.0-dev"10801version = "4.0.0-dev"10808source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10802source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10809dependencies = [10803dependencies = [10810 "hash-db",10804 "hash-db",10811 "log",10805 "log",10822[[package]]10816[[package]]10823name = "sp-api-proc-macro"10817name = "sp-api-proc-macro"10824version = "4.0.0-dev"10818version = "4.0.0-dev"10825source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10819source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10826dependencies = [10820dependencies = [10827 "blake2",10821 "blake2",10828 "proc-macro-crate",10822 "proc-macro-crate",10834[[package]]10828[[package]]10835name = "sp-application-crypto"10829name = "sp-application-crypto"10836version = "6.0.0"10830version = "6.0.0"10837source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10831source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10838dependencies = [10832dependencies = [10839 "parity-scale-codec 3.1.5",10833 "parity-scale-codec 3.1.5",10840 "scale-info",10834 "scale-info",10847[[package]]10841[[package]]10848name = "sp-arithmetic"10842name = "sp-arithmetic"10849version = "5.0.0"10843version = "5.0.0"10850source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10844source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10851dependencies = [10845dependencies = [10852 "integer-sqrt",10846 "integer-sqrt",10853 "num-traits",10847 "num-traits",10862[[package]]10856[[package]]10863name = "sp-authority-discovery"10857name = "sp-authority-discovery"10864version = "4.0.0-dev"10858version = "4.0.0-dev"10865source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10859source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10866dependencies = [10860dependencies = [10867 "parity-scale-codec 3.1.5",10861 "parity-scale-codec 3.1.5",10868 "scale-info",10862 "scale-info",10875[[package]]10869[[package]]10876name = "sp-authorship"10870name = "sp-authorship"10877version = "4.0.0-dev"10871version = "4.0.0-dev"10878source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10872source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10879dependencies = [10873dependencies = [10880 "async-trait",10874 "async-trait",10881 "parity-scale-codec 3.1.5",10875 "parity-scale-codec 3.1.5",10887[[package]]10881[[package]]10888name = "sp-block-builder"10882name = "sp-block-builder"10889version = "4.0.0-dev"10883version = "4.0.0-dev"10890source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10884source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10891dependencies = [10885dependencies = [10892 "parity-scale-codec 3.1.5",10886 "parity-scale-codec 3.1.5",10893 "sp-api",10887 "sp-api",10899[[package]]10893[[package]]10900name = "sp-blockchain"10894name = "sp-blockchain"10901version = "4.0.0-dev"10895version = "4.0.0-dev"10902source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10896source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10903dependencies = [10897dependencies = [10904 "futures 0.3.21",10898 "futures 0.3.21",10905 "log",10899 "log",10906 "lru 0.7.7",10900 "lru 0.7.8",10907 "parity-scale-codec 3.1.5",10901 "parity-scale-codec 3.1.5",10908 "parking_lot 0.12.1",10902 "parking_lot 0.12.1",10909 "sp-api",10903 "sp-api",10917[[package]]10911[[package]]10918name = "sp-consensus"10912name = "sp-consensus"10919version = "0.10.0-dev"10913version = "0.10.0-dev"10920source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10914source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10921dependencies = [10915dependencies = [10922 "async-trait",10916 "async-trait",10923 "futures 0.3.21",10917 "futures 0.3.21",10936[[package]]10930[[package]]10937name = "sp-consensus-aura"10931name = "sp-consensus-aura"10938version = "0.10.0-dev"10932version = "0.10.0-dev"10939source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10933source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10940dependencies = [10934dependencies = [10941 "async-trait",10935 "async-trait",10942 "parity-scale-codec 3.1.5",10936 "parity-scale-codec 3.1.5",10954[[package]]10948[[package]]10955name = "sp-consensus-babe"10949name = "sp-consensus-babe"10956version = "0.10.0-dev"10950version = "0.10.0-dev"10957source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10951source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10958dependencies = [10952dependencies = [10959 "async-trait",10953 "async-trait",10960 "merlin",10954 "merlin",10977[[package]]10971[[package]]10978name = "sp-consensus-slots"10972name = "sp-consensus-slots"10979version = "0.10.0-dev"10973version = "0.10.0-dev"10980source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10974source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10981dependencies = [10975dependencies = [10982 "parity-scale-codec 3.1.5",10976 "parity-scale-codec 3.1.5",10983 "scale-info",10977 "scale-info",10991[[package]]10985[[package]]10992name = "sp-consensus-vrf"10986name = "sp-consensus-vrf"10993version = "0.10.0-dev"10987version = "0.10.0-dev"10994source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"10988source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"10995dependencies = [10989dependencies = [10996 "parity-scale-codec 3.1.5",10990 "parity-scale-codec 3.1.5",10997 "scale-info",10991 "scale-info",11004[[package]]10998[[package]]11005name = "sp-core"10999name = "sp-core"11006version = "6.0.0"11000version = "6.0.0"11007source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11001source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11008dependencies = [11002dependencies = [11009 "base58",11003 "base58",11010 "bitflags",11004 "bitflags",11050[[package]]11044[[package]]11051name = "sp-core-hashing"11045name = "sp-core-hashing"11052version = "4.0.0"11046version = "4.0.0"11053source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11047source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11054dependencies = [11048dependencies = [11055 "blake2",11049 "blake2",11056 "byteorder",11050 "byteorder",11064[[package]]11058[[package]]11065name = "sp-core-hashing-proc-macro"11059name = "sp-core-hashing-proc-macro"11066version = "5.0.0"11060version = "5.0.0"11067source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11061source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11068dependencies = [11062dependencies = [11069 "proc-macro2",11063 "proc-macro2",11070 "quote",11064 "quote",11075[[package]]11069[[package]]11076name = "sp-database"11070name = "sp-database"11077version = "4.0.0-dev"11071version = "4.0.0-dev"11078source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11072source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11079dependencies = [11073dependencies = [11080 "kvdb",11074 "kvdb",11081 "parking_lot 0.12.1",11075 "parking_lot 0.12.1",11084[[package]]11078[[package]]11085name = "sp-debug-derive"11079name = "sp-debug-derive"11086version = "4.0.0"11080version = "4.0.0"11087source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11081source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11088dependencies = [11082dependencies = [11089 "proc-macro2",11083 "proc-macro2",11090 "quote",11084 "quote",11094[[package]]11088[[package]]11095name = "sp-externalities"11089name = "sp-externalities"11096version = "0.12.0"11090version = "0.12.0"11097source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11091source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11098dependencies = [11092dependencies = [11099 "environmental",11093 "environmental",11100 "parity-scale-codec 3.1.5",11094 "parity-scale-codec 3.1.5",11105[[package]]11099[[package]]11106name = "sp-finality-grandpa"11100name = "sp-finality-grandpa"11107version = "4.0.0-dev"11101version = "4.0.0-dev"11108source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11102source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11109dependencies = [11103dependencies = [11110 "finality-grandpa",11104 "finality-grandpa",11111 "log",11105 "log",11123[[package]]11117[[package]]11124name = "sp-inherents"11118name = "sp-inherents"11125version = "4.0.0-dev"11119version = "4.0.0-dev"11126source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11120source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11127dependencies = [11121dependencies = [11128 "async-trait",11122 "async-trait",11129 "impl-trait-for-tuples",11123 "impl-trait-for-tuples",11137[[package]]11131[[package]]11138name = "sp-io"11132name = "sp-io"11139version = "6.0.0"11133version = "6.0.0"11140source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11134source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11141dependencies = [11135dependencies = [11142 "futures 0.3.21",11136 "futures 0.3.21",11143 "hash-db",11137 "hash-db",11162[[package]]11156[[package]]11163name = "sp-keyring"11157name = "sp-keyring"11164version = "6.0.0"11158version = "6.0.0"11165source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11159source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11166dependencies = [11160dependencies = [11167 "lazy_static",11161 "lazy_static",11168 "sp-core",11162 "sp-core",11173[[package]]11167[[package]]11174name = "sp-keystore"11168name = "sp-keystore"11175version = "0.12.0"11169version = "0.12.0"11176source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11170source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11177dependencies = [11171dependencies = [11178 "async-trait",11172 "async-trait",11179 "futures 0.3.21",11173 "futures 0.3.21",11190[[package]]11184[[package]]11191name = "sp-maybe-compressed-blob"11185name = "sp-maybe-compressed-blob"11192version = "4.1.0-dev"11186version = "4.1.0-dev"11193source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11187source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11194dependencies = [11188dependencies = [11195 "thiserror",11189 "thiserror",11196 "zstd",11190 "zstd",11199[[package]]11193[[package]]11200name = "sp-mmr-primitives"11194name = "sp-mmr-primitives"11201version = "4.0.0-dev"11195version = "4.0.0-dev"11202source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11196source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11203dependencies = [11197dependencies = [11204 "log",11198 "log",11205 "parity-scale-codec 3.1.5",11199 "parity-scale-codec 3.1.5",11214[[package]]11208[[package]]11215name = "sp-npos-elections"11209name = "sp-npos-elections"11216version = "4.0.0-dev"11210version = "4.0.0-dev"11217source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11211source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11218dependencies = [11212dependencies = [11219 "parity-scale-codec 3.1.5",11213 "parity-scale-codec 3.1.5",11220 "scale-info",11214 "scale-info",11228[[package]]11222[[package]]11229name = "sp-offchain"11223name = "sp-offchain"11230version = "4.0.0-dev"11224version = "4.0.0-dev"11231source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11225source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11232dependencies = [11226dependencies = [11233 "sp-api",11227 "sp-api",11234 "sp-core",11228 "sp-core",11238[[package]]11232[[package]]11239name = "sp-panic-handler"11233name = "sp-panic-handler"11240version = "4.0.0"11234version = "4.0.0"11241source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11235source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11242dependencies = [11236dependencies = [11243 "backtrace",11237 "backtrace",11244 "lazy_static",11238 "lazy_static",11248[[package]]11242[[package]]11249name = "sp-rpc"11243name = "sp-rpc"11250version = "6.0.0"11244version = "6.0.0"11251source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11245source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11252dependencies = [11246dependencies = [11253 "rustc-hash",11247 "rustc-hash",11254 "serde",11248 "serde",11258[[package]]11252[[package]]11259name = "sp-runtime"11253name = "sp-runtime"11260version = "6.0.0"11254version = "6.0.0"11261source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11255source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11262dependencies = [11256dependencies = [11263 "either",11257 "either",11264 "hash256-std-hasher",11258 "hash256-std-hasher",11280[[package]]11274[[package]]11281name = "sp-runtime-interface"11275name = "sp-runtime-interface"11282version = "6.0.0"11276version = "6.0.0"11283source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11277source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11284dependencies = [11278dependencies = [11285 "impl-trait-for-tuples",11279 "impl-trait-for-tuples",11286 "parity-scale-codec 3.1.5",11280 "parity-scale-codec 3.1.5",11297[[package]]11291[[package]]11298name = "sp-runtime-interface-proc-macro"11292name = "sp-runtime-interface-proc-macro"11299version = "5.0.0"11293version = "5.0.0"11300source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11294source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11301dependencies = [11295dependencies = [11302 "Inflector",11296 "Inflector",11303 "proc-macro-crate",11297 "proc-macro-crate",11309[[package]]11303[[package]]11310name = "sp-sandbox"11304name = "sp-sandbox"11311version = "0.10.0-dev"11305version = "0.10.0-dev"11312source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11306source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11313dependencies = [11307dependencies = [11314 "log",11308 "log",11315 "parity-scale-codec 3.1.5",11309 "parity-scale-codec 3.1.5",11323[[package]]11317[[package]]11324name = "sp-serializer"11318name = "sp-serializer"11325version = "4.0.0-dev"11319version = "4.0.0-dev"11326source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11320source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11327dependencies = [11321dependencies = [11328 "serde",11322 "serde",11329 "serde_json",11323 "serde_json",11332[[package]]11326[[package]]11333name = "sp-session"11327name = "sp-session"11334version = "4.0.0-dev"11328version = "4.0.0-dev"11335source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11329source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11336dependencies = [11330dependencies = [11337 "parity-scale-codec 3.1.5",11331 "parity-scale-codec 3.1.5",11338 "scale-info",11332 "scale-info",11346[[package]]11340[[package]]11347name = "sp-staking"11341name = "sp-staking"11348version = "4.0.0-dev"11342version = "4.0.0-dev"11349source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11343source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11350dependencies = [11344dependencies = [11351 "parity-scale-codec 3.1.5",11345 "parity-scale-codec 3.1.5",11352 "scale-info",11346 "scale-info",11357[[package]]11351[[package]]11358name = "sp-state-machine"11352name = "sp-state-machine"11359version = "0.12.0"11353version = "0.12.0"11360source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11354source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11361dependencies = [11355dependencies = [11362 "hash-db",11356 "hash-db",11363 "log",11357 "log",11379[[package]]11373[[package]]11380name = "sp-std"11374name = "sp-std"11381version = "4.0.0"11375version = "4.0.0"11382source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11376source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"113831137711384[[package]]11378[[package]]11385name = "sp-storage"11379name = "sp-storage"11386version = "6.0.0"11380version = "6.0.0"11387source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11381source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11388dependencies = [11382dependencies = [11389 "impl-serde",11383 "impl-serde",11390 "parity-scale-codec 3.1.5",11384 "parity-scale-codec 3.1.5",11397[[package]]11391[[package]]11398name = "sp-tasks"11392name = "sp-tasks"11399version = "4.0.0-dev"11393version = "4.0.0-dev"11400source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11394source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11401dependencies = [11395dependencies = [11402 "log",11396 "log",11403 "sp-core",11397 "sp-core",11410[[package]]11404[[package]]11411name = "sp-timestamp"11405name = "sp-timestamp"11412version = "4.0.0-dev"11406version = "4.0.0-dev"11413source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11407source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11414dependencies = [11408dependencies = [11415 "async-trait",11409 "async-trait",11416 "futures-timer",11410 "futures-timer",11426[[package]]11420[[package]]11427name = "sp-tracing"11421name = "sp-tracing"11428version = "5.0.0"11422version = "5.0.0"11429source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11423source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11430dependencies = [11424dependencies = [11431 "parity-scale-codec 3.1.5",11425 "parity-scale-codec 3.1.5",11432 "sp-std",11426 "sp-std",11438[[package]]11432[[package]]11439name = "sp-transaction-pool"11433name = "sp-transaction-pool"11440version = "4.0.0-dev"11434version = "4.0.0-dev"11441source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11435source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11442dependencies = [11436dependencies = [11443 "sp-api",11437 "sp-api",11444 "sp-runtime",11438 "sp-runtime",11447[[package]]11441[[package]]11448name = "sp-transaction-storage-proof"11442name = "sp-transaction-storage-proof"11449version = "4.0.0-dev"11443version = "4.0.0-dev"11450source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11444source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11451dependencies = [11445dependencies = [11452 "async-trait",11446 "async-trait",11453 "log",11447 "log",11463[[package]]11457[[package]]11464name = "sp-trie"11458name = "sp-trie"11465version = "6.0.0"11459version = "6.0.0"11466source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11460source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11467dependencies = [11461dependencies = [11468 "hash-db",11462 "hash-db",11469 "memory-db",11463 "memory-db",11479[[package]]11473[[package]]11480name = "sp-version"11474name = "sp-version"11481version = "5.0.0"11475version = "5.0.0"11482source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11476source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11483dependencies = [11477dependencies = [11484 "impl-serde",11478 "impl-serde",11485 "parity-scale-codec 3.1.5",11479 "parity-scale-codec 3.1.5",11496[[package]]11490[[package]]11497name = "sp-version-proc-macro"11491name = "sp-version-proc-macro"11498version = "4.0.0-dev"11492version = "4.0.0-dev"11499source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11493source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11500dependencies = [11494dependencies = [11501 "parity-scale-codec 3.1.5",11495 "parity-scale-codec 3.1.5",11502 "proc-macro2",11496 "proc-macro2",11507[[package]]11501[[package]]11508name = "sp-wasm-interface"11502name = "sp-wasm-interface"11509version = "6.0.0"11503version = "6.0.0"11510source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11504source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11511dependencies = [11505dependencies = [11512 "impl-trait-for-tuples",11506 "impl-trait-for-tuples",11513 "log",11507 "log",115251151911526[[package]]11520[[package]]11527name = "ss58-registry"11521name = "ss58-registry"11528version = "1.22.0"11522version = "1.25.0"11529source = "registry+https://github.com/rust-lang/crates.io-index"11523source = "registry+https://github.com/rust-lang/crates.io-index"11530checksum = "5d804c8d48aeab838be31570866fce1130d275b563d49af08b4927a0bd561e7c"11524checksum = "a039906277e0d8db996cd9d1ef19278c10209d994ecfc1025ced16342873a17c"11531dependencies = [11525dependencies = [11532 "Inflector",11526 "Inflector",11533 "num-format",11527 "num-format",11617source = "registry+https://github.com/rust-lang/crates.io-index"11611source = "registry+https://github.com/rust-lang/crates.io-index"11618checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"11612checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"11619dependencies = [11613dependencies = [11620 "strum_macros 0.24.0",11614 "strum_macros 0.24.2",11621]11615]116221161611623[[package]]11617[[package]]116351162911636[[package]]11630[[package]]11637name = "strum_macros"11631name = "strum_macros"11638version = "0.24.0"11632version = "0.24.2"11639source = "registry+https://github.com/rust-lang/crates.io-index"11633source = "registry+https://github.com/rust-lang/crates.io-index"11640checksum = "6878079b17446e4d3eba6192bb0a2950d5b14f0ed8424b852310e5a94345d0ef"11634checksum = "4faebde00e8ff94316c01800f9054fd2ba77d30d9e922541913051d1d978918b"11641dependencies = [11635dependencies = [11642 "heck 0.4.0",11636 "heck 0.4.0",11643 "proc-macro2",11637 "proc-macro2",11662[[package]]11656[[package]]11663name = "substrate-build-script-utils"11657name = "substrate-build-script-utils"11664version = "3.0.0"11658version = "3.0.0"11665source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11659source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11666dependencies = [11660dependencies = [11667 "platforms",11661 "platforms",11668]11662]116691166311670[[package]]11664[[package]]11671name = "substrate-frame-rpc-system"11665name = "substrate-frame-rpc-system"11672version = "4.0.0-dev"11666version = "4.0.0-dev"11673source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11667source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11674dependencies = [11668dependencies = [11675 "frame-system-rpc-runtime-api",11669 "frame-system-rpc-runtime-api",11676 "futures 0.3.21",11670 "futures 0.3.21",11691[[package]]11685[[package]]11692name = "substrate-prometheus-endpoint"11686name = "substrate-prometheus-endpoint"11693version = "0.10.0-dev"11687version = "0.10.0-dev"11694source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11688source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11695dependencies = [11689dependencies = [11696 "futures-util",11690 "futures-util",11697 "hyper",11691 "hyper",11698 "log",11692 "log",11699 "prometheus",11693 "prometheus",11700 "thiserror",11694 "thiserror",11701 "tokio 1.19.2",11695 "tokio 1.20.1",11702]11696]117031169711704[[package]]11698[[package]]11705name = "substrate-state-trie-migration-rpc"11699name = "substrate-state-trie-migration-rpc"11706version = "4.0.0-dev"11700version = "4.0.0-dev"11707source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11701source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11708dependencies = [11702dependencies = [11709 "jsonrpsee",11703 "jsonrpsee",11710 "log",11704 "log",11725[[package]]11719[[package]]11726name = "substrate-test-client"11720name = "substrate-test-client"11727version = "2.0.1"11721version = "2.0.1"11728source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11722source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11729dependencies = [11723dependencies = [11730 "async-trait",11724 "async-trait",11731 "futures 0.3.21",11725 "futures 0.3.21",11751[[package]]11745[[package]]11752name = "substrate-test-utils"11746name = "substrate-test-utils"11753version = "4.0.0-dev"11747version = "4.0.0-dev"11754source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11748source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11755dependencies = [11749dependencies = [11756 "futures 0.3.21",11750 "futures 0.3.21",11757 "substrate-test-utils-derive",11751 "substrate-test-utils-derive",11758 "tokio 1.19.2",11752 "tokio 1.20.1",11759]11753]117601175411761[[package]]11755[[package]]11762name = "substrate-test-utils-derive"11756name = "substrate-test-utils-derive"11763version = "0.10.0-dev"11757version = "0.10.0-dev"11764source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11758source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11765dependencies = [11759dependencies = [11766 "proc-macro-crate",11760 "proc-macro-crate",11767 "proc-macro2",11761 "proc-macro2",11772[[package]]11766[[package]]11773name = "substrate-wasm-builder"11767name = "substrate-wasm-builder"11774version = "5.0.0-dev"11768version = "5.0.0-dev"11775source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"11769source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"11776dependencies = [11770dependencies = [11777 "ansi_term",11771 "ansi_term",11778 "build-helper",11772 "build-helper",120531204712054[[package]]12048[[package]]12055name = "tokio"12049name = "tokio"12056version = "1.19.2"12050version = "1.20.1"12057source = "registry+https://github.com/rust-lang/crates.io-index"12051source = "registry+https://github.com/rust-lang/crates.io-index"12058checksum = "c51a52ed6686dd62c320f9b89299e9dfb46f730c7a48e635c19f21d116cb1439"12052checksum = "7a8325f63a7d4774dd041e363b2409ed1c5cbbd0f867795e661df066b2b0a581"12059dependencies = [12053dependencies = [12054 "autocfg",12060 "bytes 1.1.0",12055 "bytes 1.2.0",12061 "libc",12056 "libc",12062 "memchr",12057 "memchr",12063 "mio",12058 "mio",12100checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59"12095checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59"12101dependencies = [12096dependencies = [12102 "rustls",12097 "rustls",12103 "tokio 1.19.2",12098 "tokio 1.20.1",12104 "webpki",12099 "webpki",12105]12100]121061210112110source = "registry+https://github.com/rust-lang/crates.io-index"12105source = "registry+https://github.com/rust-lang/crates.io-index"12111checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45"12106checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45"12112dependencies = [12107dependencies = [12113 "bytes 1.1.0",12108 "bytes 1.2.0",12114 "futures-core",12109 "futures-core",12115 "futures-io",12110 "futures-io",12116 "futures-sink",12111 "futures-sink",12117 "pin-project-lite 0.2.9",12112 "pin-project-lite 0.2.9",12118 "tokio 1.19.2",12113 "tokio 1.20.1",12119 "tracing",12114 "tracing",12120]12115]1212112116121481214312149[[package]]12144[[package]]12150name = "tracing-attributes"12145name = "tracing-attributes"12151version = "0.1.21"12146version = "0.1.22"12152source = "registry+https://github.com/rust-lang/crates.io-index"12147source = "registry+https://github.com/rust-lang/crates.io-index"12153checksum = "cc6b8ad3567499f98a1db7a752b07a7c8c7c7c34c332ec00effb2b0027974b7c"12148checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2"12154dependencies = [12149dependencies = [12155 "proc-macro2",12150 "proc-macro2",12156 "quote",12151 "quote",121591215412160[[package]]12155[[package]]12161name = "tracing-core"12156name = "tracing-core"12162version = "0.1.27"12157version = "0.1.28"12163source = "registry+https://github.com/rust-lang/crates.io-index"12158source = "registry+https://github.com/rust-lang/crates.io-index"12164checksum = "7709595b8878a4965ce5e87ebf880a7d39c9afc6837721b21a5a816a8117d921"12159checksum = "7b7358be39f2f274f322d2aaed611acc57f382e8eb1e5b48cb9ae30933495ce7"12165dependencies = [12160dependencies = [12166 "once_cell",12161 "once_cell",12167 "valuable",12162 "valuable",12173source = "registry+https://github.com/rust-lang/crates.io-index"12168source = "registry+https://github.com/rust-lang/crates.io-index"12174checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"12169checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"12175dependencies = [12170dependencies = [12176 "pin-project 1.0.10",12171 "pin-project 1.0.11",12177 "tracing",12172 "tracing",12178]12173]121791217412209 "ahash",12204 "ahash",12210 "lazy_static",12205 "lazy_static",12211 "log",12206 "log",12212 "lru 0.7.7",12207 "lru 0.7.8",12213 "tracing-core",12208 "tracing-core",12214]12209]122151221012253checksum = "d32d034c0d3db64b43c31de38e945f15b40cd4ca6d2dcfc26d4798ce8de4ab83"12248checksum = "d32d034c0d3db64b43c31de38e945f15b40cd4ca6d2dcfc26d4798ce8de4ab83"12254dependencies = [12249dependencies = [12255 "hash-db",12250 "hash-db",12256 "hashbrown 0.12.1",12251 "hashbrown 0.12.3",12257 "log",12252 "log",12258 "rustc-hex",12253 "rustc-hex",12259 "smallvec",12254 "smallvec",12330[[package]]12325[[package]]12331name = "try-runtime-cli"12326name = "try-runtime-cli"12332version = "0.10.0-dev"12327version = "0.10.0-dev"12333source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28"12328source = "git+https://github.com/uniquenetwork/substrate?branch=polkadot-v0.9.24-hack-substitute#1fa76b0665d32b1e28c36da67e54da1816db3fa2"12334dependencies = [12329dependencies = [12335 "clap",12330 "clap",12336 "jsonrpsee",12331 "jsonrpsee",123981239312399[[package]]12394[[package]]12400name = "ucd-trie"12395name = "ucd-trie"12401version = "0.1.3"12396version = "0.1.4"12402source = "registry+https://github.com/rust-lang/crates.io-index"12397source = "registry+https://github.com/rust-lang/crates.io-index"12403checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"12398checksum = "89570599c4fe5585de2b388aab47e99f7fa4e9238a1399f707a02e356058141c"124041239912405[[package]]12400[[package]]12406name = "uint"12401name = "uint"124311242612432[[package]]12427[[package]]12433name = "unicode-ident"12428name = "unicode-ident"12434version = "1.0.1"12429version = "1.0.2"12435source = "registry+https://github.com/rust-lang/crates.io-index"12430source = "registry+https://github.com/rust-lang/crates.io-index"12436checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c"12431checksum = "15c61ba63f9235225a22310255a29b806b907c9b8c964bcbd0a2c70f3f2deea7"124371243212438[[package]]12433[[package]]12439name = "unicode-normalization"12434name = "unicode-normalization"12440version = "0.1.19"12435version = "0.1.21"12441source = "registry+https://github.com/rust-lang/crates.io-index"12436source = "registry+https://github.com/rust-lang/crates.io-index"12442checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"12437checksum = "854cbdc4f7bc6ae19c820d44abdc3277ac3e1b2b93db20a636825d9322fb60e6"12443dependencies = [12438dependencies = [12444 "tinyvec",12439 "tinyvec",12445]12440]12541 "substrate-build-script-utils",12536 "substrate-build-script-utils",12542 "substrate-frame-rpc-system",12537 "substrate-frame-rpc-system",12543 "substrate-prometheus-endpoint",12538 "substrate-prometheus-endpoint",12544 "tokio 1.19.2",12539 "tokio 1.20.1",12545 "try-runtime-cli",12540 "try-runtime-cli",12546 "unique-rpc",12541 "unique-rpc",12547 "unique-runtime",12542 "unique-runtime",12724checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836"12719checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836"12725dependencies = [12720dependencies = [12726 "asynchronous-codec",12721 "asynchronous-codec",12727 "bytes 1.1.0",12722 "bytes 1.2.0",12728 "futures-io",12723 "futures-io",12729 "futures-util",12724 "futures-util",12730]12725]127371273212738[[package]]12733[[package]]12739name = "up-data-structs"12734name = "up-data-structs"12740version = "0.1.2"12735version = "0.2.0"12741dependencies = [12736dependencies = [12742 "derivative",12737 "derivative",12743 "frame-support",12738 "frame-support",128681286312869[[package]]12864[[package]]12870name = "wasm-bindgen"12865name = "wasm-bindgen"12871version = "0.2.81"12866version = "0.2.82"12872source = "registry+https://github.com/rust-lang/crates.io-index"12867source = "registry+https://github.com/rust-lang/crates.io-index"12873checksum = "7c53b543413a17a202f4be280a7e5c62a1c69345f5de525ee64f8cfdbc954994"12868checksum = "fc7652e3f6c4706c8d9cd54832c4a4ccb9b5336e2c3bd154d5cccfbf1c1f5f7d"12874dependencies = [12869dependencies = [12875 "cfg-if 1.0.0",12870 "cfg-if 1.0.0",12876 "wasm-bindgen-macro",12871 "wasm-bindgen-macro",12877]12872]128781287312879[[package]]12874[[package]]12880name = "wasm-bindgen-backend"12875name = "wasm-bindgen-backend"12881version = "0.2.81"12876version = "0.2.82"12882source = "registry+https://github.com/rust-lang/crates.io-index"12877source = "registry+https://github.com/rust-lang/crates.io-index"12883checksum = "5491a68ab4500fa6b4d726bd67408630c3dbe9c4fe7bda16d5c82a1fd8c7340a"12878checksum = "662cd44805586bd52971b9586b1df85cdbbd9112e4ef4d8f41559c334dc6ac3f"12884dependencies = [12879dependencies = [12885 "bumpalo",12880 "bumpalo",12886 "lazy_static",12887 "log",12881 "log",12882 "once_cell",12888 "proc-macro2",12883 "proc-macro2",12889 "quote",12884 "quote",12890 "syn",12885 "syn",128931288812894[[package]]12889[[package]]12895name = "wasm-bindgen-futures"12890name = "wasm-bindgen-futures"12896version = "0.4.31"12891version = "0.4.32"12897source = "registry+https://github.com/rust-lang/crates.io-index"12892source = "registry+https://github.com/rust-lang/crates.io-index"12898checksum = "de9a9cec1733468a8c657e57fa2413d2ae2c0129b95e87c5b72b8ace4d13f31f"12893checksum = "fa76fb221a1f8acddf5b54ace85912606980ad661ac7a503b4570ffd3a624dad"12899dependencies = [12894dependencies = [12900 "cfg-if 1.0.0",12895 "cfg-if 1.0.0",12901 "js-sys",12896 "js-sys",129051290012906[[package]]12901[[package]]12907name = "wasm-bindgen-macro"12902name = "wasm-bindgen-macro"12908version = "0.2.81"12903version = "0.2.82"12909source = "registry+https://github.com/rust-lang/crates.io-index"12904source = "registry+https://github.com/rust-lang/crates.io-index"12910checksum = "c441e177922bc58f1e12c022624b6216378e5febc2f0533e41ba443d505b80aa"12905checksum = "b260f13d3012071dfb1512849c033b1925038373aea48ced3012c09df952c602"12911dependencies = [12906dependencies = [12912 "quote",12907 "quote",12913 "wasm-bindgen-macro-support",12908 "wasm-bindgen-macro-support",12914]12909]129151291012916[[package]]12911[[package]]12917name = "wasm-bindgen-macro-support"12912name = "wasm-bindgen-macro-support"12918version = "0.2.81"12913version = "0.2.82"12919source = "registry+https://github.com/rust-lang/crates.io-index"12914source = "registry+https://github.com/rust-lang/crates.io-index"12920checksum = "7d94ac45fcf608c1f45ef53e748d35660f168490c10b23704c7779ab8f5c3048"12915checksum = "5be8e654bdd9b79216c2929ab90721aa82faf65c48cdf08bdc4e7f51357b80da"12921dependencies = [12916dependencies = [12922 "proc-macro2",12917 "proc-macro2",12923 "quote",12918 "quote",129281292312929[[package]]12924[[package]]12930name = "wasm-bindgen-shared"12925name = "wasm-bindgen-shared"12931version = "0.2.81"12926version = "0.2.82"12932source = "registry+https://github.com/rust-lang/crates.io-index"12927source = "registry+https://github.com/rust-lang/crates.io-index"12933checksum = "6a89911bd99e5f3659ec4acf9c4d93b0a90fe4a2a11f15328472058edc5261be"12928checksum = "6598dd0bd3c7d51095ff6531a5b23e02acdc81804e30d8f07afb77b7215a140a"129341292912935[[package]]12930[[package]]12936name = "wasm-gc-api"12931name = "wasm-gc-api"131681316313169[[package]]13164[[package]]13170name = "web-sys"13165name = "web-sys"13171version = "0.3.58"13166version = "0.3.59"13172source = "registry+https://github.com/rust-lang/crates.io-index"13167source = "registry+https://github.com/rust-lang/crates.io-index"13173checksum = "2fed94beee57daf8dd7d51f2b15dc2bcde92d7a72304cdf662a4371008b71b90"13168checksum = "ed055ab27f941423197eb86b2035720b1a3ce40504df082cac2ecc6ed73335a1"13174dependencies = [13169dependencies = [13175 "js-sys",13170 "js-sys",13176 "wasm-bindgen",13171 "wasm-bindgen",131881318313189[[package]]13184[[package]]13190name = "webpki-roots"13185name = "webpki-roots"13191version = "0.22.3"13186version = "0.22.4"13192source = "registry+https://github.com/rust-lang/crates.io-index"13187source = "registry+https://github.com/rust-lang/crates.io-index"13193checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf"13188checksum = "f1c760f0d366a6c24a02ed7816e23e691f5d92291f94d15e836006fd11b04daf"13194dependencies = [13189dependencies = [13195 "webpki",13190 "webpki",13196]13191]13210source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"13205source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe"13211dependencies = [13206dependencies = [13212 "beefy-primitives",13207 "beefy-primitives",13213 "bitvec 1.0.0",13208 "bitvec 1.0.1",13214 "frame-benchmarking",13209 "frame-benchmarking",13215 "frame-election-provider-support",13210 "frame-election-provider-support",13216 "frame-executive",13211 "frame-executive",135581355313559[[package]]13554[[package]]13560name = "zeroize"13555name = "zeroize"13561version = "1.4.3"13556version = "1.5.7"13562source = "registry+https://github.com/rust-lang/crates.io-index"13557source = "registry+https://github.com/rust-lang/crates.io-index"13563checksum = "d68d9dcec5f9b43a30d38c49f91dfedfaac384cb8f085faca366c26207dd1619"13558checksum = "c394b5bd0c6f669e7275d9c20aa90ae064cb22e75a1cad54e1b34088034b149f"13564dependencies = [13559dependencies = [13565 "zeroize_derive",13560 "zeroize_derive",13566]13561]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.13.1-fix-unknown-fields"}20jsonrpsee-types = {git = "https://github.com/uniquenetwork/jsonrpsee", branch = "unique-v0.13.1-fix-unknown-fields"}21jsonrpsee-core = {git = "https://github.com/uniquenetwork/jsonrpsee", branch = "unique-v0.13.1-fix-unknown-fields"}2223[patch."https://github.com/paritytech/substrate"]24beefy-gadget = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}25beefy-gadget-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}26beefy-merkle-tree = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}27beefy-primitives = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}28fork-tree = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}29frame-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}30frame-benchmarking-cli = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}31frame-election-provider-solution-type = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}32frame-election-provider-support = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}33frame-executive = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}34frame-support = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}35frame-support-procedural = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}36frame-support-procedural-tools = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}37frame-support-procedural-tools-derive = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}38frame-system = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}39frame-system-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}40frame-system-rpc-runtime-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}41frame-try-runtime = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}42pallet-aura = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}43pallet-authority-discovery = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}44pallet-authorship = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}45pallet-babe = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}46pallet-bags-list = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}47pallet-balances = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}48pallet-beefy = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}49pallet-beefy-mmr = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}50pallet-bounties = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}51pallet-child-bounties = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}52pallet-collective = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}53pallet-democracy = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}54pallet-election-provider-multi-phase = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}55pallet-election-provider-support-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}56pallet-elections-phragmen = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}57pallet-gilt = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}58pallet-grandpa = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}59pallet-identity = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}60pallet-im-online = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}61pallet-indices = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}62pallet-membership = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}63pallet-mmr = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}64pallet-mmr-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}65pallet-multisig = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}66pallet-nicks = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}67pallet-nomination-pools = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}68pallet-nomination-pools-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}69pallet-offences = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}70pallet-offences-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}71pallet-preimage = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}72pallet-proxy = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}73pallet-randomness-collective-flip = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}74pallet-recovery = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}75pallet-scheduler = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}76pallet-session = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}77pallet-session-benchmarking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}78pallet-society = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}79pallet-staking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}80pallet-staking-reward-curve = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}81pallet-staking-reward-fn = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}82pallet-sudo = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}83pallet-timestamp = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}84pallet-tips = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}85pallet-transaction-payment = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}86pallet-transaction-payment-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}87pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}88pallet-treasury = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}89pallet-utility = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}90pallet-vesting = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}91remote-externalities = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}92sc-allocator = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}93sc-authority-discovery = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}94sc-basic-authorship = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}95sc-block-builder = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}96sc-chain-spec = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}97sc-chain-spec-derive = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}98sc-cli = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}99sc-client-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}100sc-client-db = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}101sc-consensus = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}102sc-consensus-aura = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}103sc-consensus-babe = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}104sc-consensus-babe-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}105sc-consensus-epochs = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}106sc-consensus-manual-seal = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}107sc-consensus-slots = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}108sc-consensus-uncles = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}109sc-executor = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}110sc-executor-common = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}111sc-executor-wasmi = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}112sc-executor-wasmtime = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}113sc-finality-grandpa = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}114sc-finality-grandpa-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}115sc-informant = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}116sc-keystore = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}117sc-network = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}118sc-network-common = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}119sc-network-gossip = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}120sc-network-light = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}121sc-network-sync = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}122sc-offchain = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}123sc-peerset = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}124sc-proposer-metrics = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}125sc-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}126sc-rpc-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}127sc-rpc-server = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}128sc-service = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}129sc-state-db = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}130sc-sync-state-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}131sc-sysinfo = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}132sc-telemetry = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}133sc-tracing = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}134sc-tracing-proc-macro = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}135sc-transaction-pool = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}136sc-transaction-pool-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}137sc-utils = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}138sp-api = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}139sp-api-proc-macro = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}140sp-application-crypto = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}141sp-arithmetic = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}142sp-authority-discovery = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}143sp-authorship = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}144sp-block-builder = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}145sp-blockchain = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}146sp-consensus = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}147sp-consensus-aura = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}148sp-consensus-babe = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}149sp-consensus-slots = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}150sp-consensus-vrf = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}151sp-core = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}152sp-core-hashing = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}153sp-core-hashing-proc-macro = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}154sp-database = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}155sp-debug-derive = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}156sp-externalities = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}157sp-finality-grandpa = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}158sp-inherents = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}159sp-io = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}160sp-keyring = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}161sp-keystore = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}162sp-maybe-compressed-blob = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}163sp-mmr-primitives = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}164sp-npos-elections = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}165sp-offchain = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}166sp-panic-handler = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}167sp-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}168sp-runtime = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}169sp-runtime-interface = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}170sp-runtime-interface-proc-macro = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}171sp-sandbox = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}172sp-serializer = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}173sp-session = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}174sp-staking = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}175sp-state-machine = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}176sp-std = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}177sp-storage = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}178sp-tasks = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}179sp-timestamp = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}180sp-tracing = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}181sp-transaction-pool = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}182sp-transaction-storage-proof = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}183sp-trie = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}184sp-version = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}185sp-version-proc-macro = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}186sp-wasm-interface = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}187substrate-build-script-utils = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}188substrate-frame-rpc-system = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}189substrate-prometheus-endpoint = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}190substrate-state-trie-migration-rpc = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}191substrate-test-client = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}192substrate-test-utils = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}193substrate-test-utils-derive = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}194substrate-wasm-builder = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}195try-runtime-cli = {git = "https://github.com/uniquenetwork/substrate", branch = "polkadot-v0.9.24-hack-substitute"}17196197Makefilediffbeforeafterboth15NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs15NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs16NONFUNGIBLE_EVM_ABI=./tests/src/eth/nonFungibleAbi.json16NONFUNGIBLE_EVM_ABI=./tests/src/eth/nonFungibleAbi.json171718REFUNGIBLE_EVM_STUBS=./pallets/refungible/src/stubs18RENFUNGIBLE_EVM_ABI=./tests/src/eth/reFungibleAbi.json19REFUNGIBLE_EVM_ABI=./tests/src/eth/reFungibleAbi.json19RENFUNGIBLE_TOKEN_EVM_ABI=./tests/src/eth/reFungibleTokenAbi.json20REFUNGIBLE_TOKEN_EVM_ABI=./tests/src/eth/reFungibleTokenAbi.json202121CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/22CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/22CONTRACT_HELPERS_ABI=./tests/src/eth/util/contractHelpersAbi.json23CONTRACT_HELPERS_ABI=./tests/src/eth/util/contractHelpersAbi.json36UniqueNFT.sol:37UniqueNFT.sol:37 PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh38 PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh38 PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh39 PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh39 4040UniqueRefungible.sol:41UniqueRefungible.sol:41 PACKAGE=pallet-refungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh42 PACKAGE=pallet-refungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh42 PACKAGE=pallet-refungible NAME=erc::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh43 PACKAGE=pallet-refungible NAME=erc::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh61 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw ./.maintain/scripts/compile_stub.sh62 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw ./.maintain/scripts/compile_stub.sh62 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh63 INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh636464UniqueRefungibleToken: UniqueRefungibleToken.sol65UniqueRefungible: UniqueRefungible.sol65 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungibleToken.raw ./.maintain/scripts/compile_stub.sh66 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungible.raw ./.maintain/scripts/compile_stub.sh66 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(RENFUNGIBLE_TOKEN_EVM_ABI) ./.maintain/scripts/generate_abi.sh67 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh676868UniqueRefungible: UniqueRefungible.sol69UniqueRefungibleToken: UniqueRefungibleToken.sol69 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungible.raw ./.maintain/scripts/compile_stub.sh70 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungibleToken.raw ./.maintain/scripts/compile_stub.sh70 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh71 INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_TOKEN_EVM_ABI) ./.maintain/scripts/generate_abi.sh717272ContractHelpers: ContractHelpers.sol73ContractHelpers: ContractHelpers.sol73 INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw ./.maintain/scripts/compile_stub.sh74 INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw ./.maintain/scripts/compile_stub.shREADME.mddiffbeforeafterboth4848492. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.492. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.5050513. Install install nightly 2021-11-11 and make it default:513. Install toolchain nightly-2022-05-11 and make it default:525253```bash53```bash54rustup toolchain install nightly-2022-05-1154rustup toolchain install nightly-2022-05-11chain-specs/kusama.jsondiffbeforeafterbothno changes
chain-specs/quartz.jsondiffbeforeafterbothno changes
chain-specs/unique.jsondiffbeforeafterboth5 "bootNodes": [5 "bootNodes": [6 "/dns/p2p-asia-gateway.unique.network/tcp/30333/ws/p2p/12D3KooWLwR4WUEj1AUaqSZcDanpiikS9F8JYZLFotGuVvxkHAvx",6 "/dns/p2p-asia-gateway.unique.network/tcp/30333/ws/p2p/12D3KooWLwR4WUEj1AUaqSZcDanpiikS9F8JYZLFotGuVvxkHAvx",7 "/dns/p2p-us-gateway.unique.network/tcp/30333/ws/p2p/12D3KooWPK3CLeaKp5cdxXZts55H2P3jPHnxHaT4KFXwY4hWZ4rq",7 "/dns/p2p-us-gateway.unique.network/tcp/30333/ws/p2p/12D3KooWPK3CLeaKp5cdxXZts55H2P3jPHnxHaT4KFXwY4hWZ4rq",8 "/dns/p2p-eu-gateway.unique.network/tcp/30333/p2p/12D3KooWDc1pBNFa4Sc3xeivC9TojdkBRKkSkMFW1VtLCmutq812"8 "/dns/p2p-eu-gateway.unique.network/tcp/30333/ws/p2p/12D3KooWDc1pBNFa4Sc3xeivC9TojdkBRKkSkMFW1VtLCmutq812"9 ],9 ],10 "telemetryEndpoints": null,10 "telemetryEndpoints": null,11 "protocolId": "unq",11 "protocolId": "unq",77 "childrenDefault": {}77 "childrenDefault": {}78 }78 }79 }79 }80}80}81crates/evm-coder/src/abi.rsdiffbeforeafterboth184pub struct AbiWriter {184pub struct AbiWriter {185 static_part: Vec<u8>,185 static_part: Vec<u8>,186 dynamic_part: Vec<(usize, AbiWriter)>,186 dynamic_part: Vec<(usize, AbiWriter)>,187 had_call: bool,187}188}188impl AbiWriter {189impl AbiWriter {189 pub fn new() -> Self {190 pub fn new() -> Self {192 pub fn new_call(method_id: u32) -> Self {193 pub fn new_call(method_id: u32) -> Self {193 let mut val = Self::new();194 let mut val = Self::new();194 val.static_part.extend(&method_id.to_be_bytes());195 val.static_part.extend(&method_id.to_be_bytes());196 val.had_call = true;195 val197 val196 }198 }197199264266265 pub fn finish(mut self) -> Vec<u8> {267 pub fn finish(mut self) -> Vec<u8> {266 for (static_offset, part) in self.dynamic_part {268 for (static_offset, part) in self.dynamic_part {267 let part_offset = self.static_part.len();269 let part_offset = self.static_part.len() - self.had_call.then(|| 4).unwrap_or(0);268270269 let encoded_dynamic_offset = usize::to_be_bytes(part_offset);271 let encoded_dynamic_offset = usize::to_be_bytes(part_offset);270 self.static_part[static_offset + ABI_ALIGNMENT - encoded_dynamic_offset.len()272 self.static_part[static_offset + ABI_ALIGNMENT - encoded_dynamic_offset.len()pallets/common/src/lib.rsdiffbeforeafterboth669 #[pallet::hooks]669 #[pallet::hooks]670 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {670 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {671 fn on_runtime_upgrade() -> Weight {671 fn on_runtime_upgrade() -> Weight {672 if StorageVersion::get::<Pallet<T>>() < StorageVersion::new(1) {672 StorageVersion::new(1).put::<Pallet<T>>();673 use up_data_structs::{CollectionVersion1, CollectionVersion2};674 <CollectionById<T>>::translate::<CollectionVersion1<T::AccountId>, _>(|id, v| {675 let mut props = Vec::new();676 if !v.offchain_schema.is_empty() {677 props.push(Property {678 key: b"_old_offchainSchema".to_vec().try_into().unwrap(),679 value: v680 .offchain_schema681 .clone()682 .into_inner()683 .try_into()684 .expect("offchain schema too big"),685 });686 }687 if !v.variable_on_chain_schema.is_empty() {688 props.push(Property {689 key: b"_old_variableOnChainSchema".to_vec().try_into().unwrap(),690 value: v691 .variable_on_chain_schema692 .clone()693 .into_inner()694 .try_into()695 .expect("offchain schema too big"),696 });697 }698 if !v.const_on_chain_schema.is_empty() {699 props.push(Property {700 key: b"_old_constOnChainSchema".to_vec().try_into().unwrap(),701 value: v702 .const_on_chain_schema703 .clone()704 .into_inner()705 .try_into()706 .expect("offchain schema too big"),707 });708 }709 props.push(Property {710 key: b"_old_schemaVersion".to_vec().try_into().unwrap(),711 value: match v.schema_version {712 SchemaVersion::ImageURL => b"ImageUrl".as_slice(),713 SchemaVersion::Unique => b"Unique".as_slice(),714 }715 .to_vec()716 .try_into()717 .unwrap(),718 });719 Self::set_scoped_collection_properties(720 id,721 PropertyScope::None,722 props.into_iter(),723 )724 .expect("existing data larger than properties");725 let mut new = CollectionVersion2::from(v.clone());726 new.permissions.access = Some(v.access);727 new.permissions.mint_mode = Some(v.mint_mode);728 Some(new)729 });730 }731673732 0674 0733 }675 }pallets/nonfungible/src/lib.rsdiffbeforeafterboth276 #[pallet::hooks]276 #[pallet::hooks]277 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {277 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {278 fn on_runtime_upgrade() -> Weight {278 fn on_runtime_upgrade() -> Weight {279 if StorageVersion::get::<Pallet<T>>() < StorageVersion::new(1) {279 StorageVersion::new(1).put::<Pallet<T>>();280 let mut had_consts = BTreeSet::new();281 <TokenData<T>>::translate::<ItemDataVersion1<T::CrossAccountId>, _>(282 |(collection, token), v| {283 let mut props = vec![];284 if !v.const_data.is_empty() {285 props.push(Property {286 key: b"_old_constData".to_vec().try_into().unwrap(),287 value: v288 .const_data289 .clone()290 .into_inner()291 .try_into()292 .expect("const too long"),293 });294 had_consts.insert(collection);295 }296 if !v.variable_data.is_empty() {297 props.push(Property {298 key: b"_old_variableData".to_vec().try_into().unwrap(),299 value: v300 .variable_data301 .clone()302 .into_inner()303 .try_into()304 .expect("variable too long"),305 })306 }307 if !props.is_empty() {308 Self::set_scoped_token_properties(309 collection,310 token,311 PropertyScope::None,312 props.into_iter(),313 )314 .expect("existing token data exceeds property storage");315 }316 Some(<ItemDataVersion2<T::CrossAccountId>>::from(v))317 },318 );319 for collection in had_consts {320 <PalletCommon<T>>::set_property_permission_unchecked(321 collection,322 PropertyKeyPermission {323 key: b"_old_constData".to_vec().try_into().unwrap(),324 permission: PropertyPermission {325 mutable: false,326 collection_admin: true,327 token_owner: false,328 },329 },330 )331 .expect("failed to configure permission");332 }333 }334280335 0281 0336 }282 }pallets/nonfungible/src/stubs/UniqueNFT.rawdiffbeforeafterbothbinary blob — no preview
pallets/nonfungible/src/stubs/UniqueNFT.soldiffbeforeafterboth300 }300 }301301302 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.302 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.303 // @dev Throws if `tokenId` is not a valid NFT. URIs are defined in RFC303 //304 // 3986. The URI may point to a JSON file that conforms to the "ERC721304 // @dev If the token has a `url` property and it is not empty, it is returned.305 // Metadata JSON Schema".305 // Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.306 // If the collection property `baseURI` is empty or absent, return "" (empty string)307 // otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix308 // otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).309 //306 // @return token's const_metadata310 // @return token's const_metadata307 //311 //308 // Selector: tokenURI(uint256) c87b56dd312 // Selector: tokenURI(uint256) c87b56ddpallets/refungible/CHANGELOG.mddiffbeforeafterboth223All notable changes to this project will be documented in this file.3All notable changes to this project will be documented in this file.445## [v0.2.1] - 2022-07-2767### New features89Implementation of ERC-721 EVM API ([#452](https://github.com/UniqueNetwork/unique-chain/pull/452))1011## [v0.2.0] - 2022-08-011213### Deprecated1415`const_data` field is removed1617- `ItemData`18- `TokenData`195## [v0.1.2] - 2022-07-1420## [v0.1.2] - 2022-07-146217### Other changes22### Other changes10test(refungible-pallet): add tests for ERC-20 EVM API for RFT token pieces ([#413](https://github.com/UniqueNetwork/unique-chain/pull/413))25test(refungible-pallet): add tests for ERC-20 EVM API for RFT token pieces ([#413](https://github.com/UniqueNetwork/unique-chain/pull/413))112612## [v0.1.1] - 2022-07-1427## [v0.1.1] - 2022-07-142813### Added29### Added features3014- Support for properties for RFT collections and tokens.31- Support for properties for RFT collections and tokens.153216### Other changes33### Other changes173418- feat: RPC method `token_owners` returning 10 owners in no particular order.35- feat: RPC method `token_owners` returning 10 owners in no particular order.193620This was an internal request to improve the web interface and support fractionalization event. 37This was an internal request to improve the web interface and support fractionalization event.2138pallets/refungible/Cargo.tomldiffbeforeafterboth1[package]1[package]2name = "pallet-refungible"2name = "pallet-refungible"3version = "0.1.2"3version = "0.2.1"4license = "GPLv3"4license = "GPLv3"5edition = "2021"5edition = "2021"66pallets/refungible/src/common.rsdiffbeforeafterboth323233use crate::{33use crate::{34 AccountBalance, Allowance, Balance, Config, Error, Owned, Pallet, RefungibleHandle,34 AccountBalance, Allowance, Balance, Config, Error, Owned, Pallet, RefungibleHandle,35 SelfWeightOf, TokenData, weights::WeightInfo, TokensMinted,35 SelfWeightOf, TokenData, weights::WeightInfo, TokensMinted, TotalSupply,36};36};373738macro_rules! max_weight_of {38macro_rules! max_weight_of {155) -> Result<CreateRefungibleExData<T::CrossAccountId>, DispatchError> {155) -> Result<CreateRefungibleExData<T::CrossAccountId>, DispatchError> {156 match data {156 match data {157 up_data_structs::CreateItemData::ReFungible(data) => Ok(CreateRefungibleExData {157 up_data_structs::CreateItemData::ReFungible(data) => Ok(CreateRefungibleExData {158 const_data: data.const_data,159 users: {158 users: {160 let mut out = BTreeMap::new();159 let mut out = BTreeMap::new();161 out.insert(to.clone(), data.pieces);160 out.insert(to.clone(), data.pieces);421 }420 }422421423 fn collection_tokens(&self) -> Vec<TokenId> {422 fn collection_tokens(&self) -> Vec<TokenId> {424 <TokenData<T>>::iter_prefix((self.id,))423 <TotalSupply<T>>::iter_prefix((self.id,))425 .map(|(id, _)| id)424 .map(|(id, _)| id)426 .collect()425 .collect()427 }426 }pallets/refungible/src/erc.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/>.1617//! # Refungible Pallet EVM API for tokens18//!19//! Provides ERC-721 standart support implementation and EVM API for unique extensions for Refungible Pallet.20//! Method implementations are mostly doing parameter conversion and calling Refungible Pallet methods.162117extern crate alloc;22extern crate alloc;2324use alloc::string::ToString;25use core::{26 char::{REPLACEMENT_CHARACTER, decode_utf16},27 convert::TryInto,28};18use evm_coder::{generate_stubgen, solidity_interface, types::*};29use evm_coder::{ToLog, execution::*, generate_stubgen, solidity, solidity_interface, types::*, weight};1930use frame_support::{BoundedBTreeMap, BoundedVec};20use pallet_common::{CollectionHandle, erc::CollectionCall, erc::CommonEvmHandler};31use pallet_common::{2132 CollectionHandle, CollectionPropertyPermissions,33 erc::{34 CommonEvmHandler, CollectionCall,35 static_property::{key, value as property_value},36 },37};22use pallet_evm::PrecompileHandle;38use pallet_evm::{account::CrossAccountId, PrecompileHandle};23use pallet_evm_coder_substrate::call;39use pallet_evm_coder_substrate::{call, dispatch_to_evm};40use pallet_structure::{SelfWeightOf as StructureWeight, weights::WeightInfo as _};41use sp_core::H160;42use sp_std::{collections::btree_map::BTreeMap, vec::Vec, vec};43use up_data_structs::{44 CollectionId, CollectionPropertiesVec, Property, PropertyKey, PropertyKeyPermission,45 PropertyPermission, TokenId,46};244725use crate::{Config, RefungibleHandle};48use crate::{49 AccountBalance, Balance, Config, CreateItemData, Pallet, RefungibleHandle, SelfWeightOf,50 TokenProperties, TokensMinted, TotalSupply, weights::WeightInfo,51};5253pub const ADDRESS_FOR_PARTIALLY_OWNED_TOKENS: H160 = H160::repeat_byte(0xff);5455/// @title A contract that allows to set and delete token properties and change token property permissions.56#[solidity_interface(name = "TokenProperties")]57impl<T: Config> RefungibleHandle<T> {58 /// @notice Set permissions for token property.59 /// @dev Throws error if `msg.sender` is not admin or owner of the collection.60 /// @param key Property key.61 /// @param is_mutable Permission to mutate property.62 /// @param collection_admin Permission to mutate property by collection admin if property is mutable.63 /// @param token_owner Permission to mutate property by token owner if property is mutable.64 fn set_token_property_permission(65 &mut self,66 caller: caller,67 key: string,68 is_mutable: bool,69 collection_admin: bool,70 token_owner: bool,71 ) -> Result<()> {72 let caller = T::CrossAccountId::from_eth(caller);73 <Pallet<T>>::set_token_property_permissions(74 self,75 &caller,76 vec![PropertyKeyPermission {77 key: <Vec<u8>>::from(key)78 .try_into()79 .map_err(|_| "too long key")?,80 permission: PropertyPermission {81 mutable: is_mutable,82 collection_admin,83 token_owner,84 },85 }],86 )87 .map_err(dispatch_to_evm::<T>)88 }8990 /// @notice Set token property value.91 /// @dev Throws error if `msg.sender` has no permission to edit the property.92 /// @param tokenId ID of the token.93 /// @param key Property key.94 /// @param value Property value.95 fn set_property(96 &mut self,97 caller: caller,98 token_id: uint256,99 key: string,100 value: bytes,101 ) -> Result<()> {102 let caller = T::CrossAccountId::from_eth(caller);103 let token_id: u32 = token_id.try_into().map_err(|_| "token id overflow")?;104 let key = <Vec<u8>>::from(key)105 .try_into()106 .map_err(|_| "key too long")?;107 let value = value.try_into().map_err(|_| "value too long")?;108109 let nesting_budget = self110 .recorder111 .weight_calls_budget(<StructureWeight<T>>::find_parent());112113 <Pallet<T>>::set_token_property(114 self,115 &caller,116 TokenId(token_id),117 Property { key, value },118 &nesting_budget,119 )120 .map_err(dispatch_to_evm::<T>)121 }122123 /// @notice Delete token property value.124 /// @dev Throws error if `msg.sender` has no permission to edit the property.125 /// @param tokenId ID of the token.126 /// @param key Property key.127 fn delete_property(&mut self, token_id: uint256, caller: caller, key: string) -> Result<()> {128 let caller = T::CrossAccountId::from_eth(caller);129 let token_id: u32 = token_id.try_into().map_err(|_| "token id overflow")?;130 let key = <Vec<u8>>::from(key)131 .try_into()132 .map_err(|_| "key too long")?;133134 let nesting_budget = self135 .recorder136 .weight_calls_budget(<StructureWeight<T>>::find_parent());137138 <Pallet<T>>::delete_token_property(self, &caller, TokenId(token_id), key, &nesting_budget)139 .map_err(dispatch_to_evm::<T>)140 }141142 /// @notice Get token property value.143 /// @dev Throws error if key not found144 /// @param tokenId ID of the token.145 /// @param key Property key.146 /// @return Property value bytes147 fn property(&self, token_id: uint256, key: string) -> Result<bytes> {148 let token_id: u32 = token_id.try_into().map_err(|_| "token id overflow")?;149 let key = <Vec<u8>>::from(key)150 .try_into()151 .map_err(|_| "key too long")?;152153 let props = <TokenProperties<T>>::get((self.id, token_id));154 let prop = props.get(&key).ok_or("key not found")?;155156 Ok(prop.to_vec())157 }158}159160#[derive(ToLog)]161pub enum ERC721Events {162 /// @dev This event emits when NFTs are created (`from` == 0) and destroyed163 /// (`to` == 0). Exception: during contract creation, any number of RFTs164 /// may be created and assigned without emitting Transfer.165 Transfer {166 #[indexed]167 from: address,168 #[indexed]169 to: address,170 #[indexed]171 token_id: uint256,172 },173 /// @dev Not supported174 Approval {175 #[indexed]176 owner: address,177 #[indexed]178 approved: address,179 #[indexed]180 token_id: uint256,181 },182 /// @dev Not supported183 #[allow(dead_code)]184 ApprovalForAll {185 #[indexed]186 owner: address,187 #[indexed]188 operator: address,189 approved: bool,190 },191}192193#[derive(ToLog)]194pub enum ERC721MintableEvents {195 /// @dev Not supported196 #[allow(dead_code)]197 MintingFinished {},198}199200#[solidity_interface(name = "ERC721Metadata")]201impl<T: Config> RefungibleHandle<T> {202 /// @notice A descriptive name for a collection of RFTs in this contract203 fn name(&self) -> Result<string> {204 Ok(decode_utf16(self.name.iter().copied())205 .map(|r| r.unwrap_or(REPLACEMENT_CHARACTER))206 .collect::<string>())207 }208209 /// @notice An abbreviated name for RFTs in this contract210 fn symbol(&self) -> Result<string> {211 Ok(string::from_utf8_lossy(&self.token_prefix).into())212 }213214 /// @notice A distinct Uniform Resource Identifier (URI) for a given asset.215 ///216 /// @dev If the token has a `url` property and it is not empty, it is returned.217 /// Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.218 /// If the collection property `baseURI` is empty or absent, return "" (empty string)219 /// otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix220 /// otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).221 ///222 /// @return token's const_metadata223 #[solidity(rename_selector = "tokenURI")]224 fn token_uri(&self, token_id: uint256) -> Result<string> {225 let token_id_u32: u32 = token_id.try_into().map_err(|_| "token id overflow")?;226227 if let Ok(url) = get_token_property(self, token_id_u32, &key::url()) {228 if !url.is_empty() {229 return Ok(url);230 }231 } else if !is_erc721_metadata_compatible::<T>(self.id) {232 return Err("tokenURI not set".into());233 }234235 if let Some(base_uri) =236 pallet_common::Pallet::<T>::get_collection_property(self.id, &key::base_uri())237 {238 if !base_uri.is_empty() {239 let base_uri = string::from_utf8(base_uri.into_inner()).map_err(|e| {240 Error::Revert(alloc::format!(241 "Can not convert value \"baseURI\" to string with error \"{}\"",242 e243 ))244 })?;245 if let Ok(suffix) = get_token_property(self, token_id_u32, &key::suffix()) {246 if !suffix.is_empty() {247 return Ok(base_uri + suffix.as_str());248 }249 }250251 return Ok(base_uri + token_id.to_string().as_str());252 }253 }254255 Ok("".into())256 }257}258259/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension260/// @dev See https://eips.ethereum.org/EIPS/eip-721261#[solidity_interface(name = "ERC721Enumerable")]262impl<T: Config> RefungibleHandle<T> {263 /// @notice Enumerate valid RFTs264 /// @param index A counter less than `totalSupply()`265 /// @return The token identifier for the `index`th NFT,266 /// (sort order not specified)267 fn token_by_index(&self, index: uint256) -> Result<uint256> {268 Ok(index)269 }270271 /// Not implemented272 fn token_of_owner_by_index(&self, _owner: address, _index: uint256) -> Result<uint256> {273 // TODO: Not implemetable274 Err("not implemented".into())275 }276277 /// @notice Count RFTs tracked by this contract278 /// @return A count of valid RFTs tracked by this contract, where each one of279 /// them has an assigned and queryable owner not equal to the zero address280 fn total_supply(&self) -> Result<uint256> {281 self.consume_store_reads(1)?;282 Ok(<Pallet<T>>::total_supply(self).into())283 }284}285286/// @title ERC-721 Non-Fungible Token Standard287/// @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md288#[solidity_interface(name = "ERC721", events(ERC721Events))]289impl<T: Config> RefungibleHandle<T> {290 /// @notice Count all RFTs assigned to an owner291 /// @dev RFTs assigned to the zero address are considered invalid, and this292 /// function throws for queries about the zero address.293 /// @param owner An address for whom to query the balance294 /// @return The number of RFTs owned by `owner`, possibly zero295 fn balance_of(&self, owner: address) -> Result<uint256> {296 self.consume_store_reads(1)?;297 let owner = T::CrossAccountId::from_eth(owner);298 let balance = <AccountBalance<T>>::get((self.id, owner));299 Ok(balance.into())300 }301302 /// @notice Find the owner of an RFT303 /// @dev RFTs assigned to zero address are considered invalid, and queries304 /// about them do throw.305 /// Returns special 0xffffffffffffffffffffffffffffffffffffffff address for306 /// the tokens that are partially owned.307 /// @param tokenId The identifier for an RFT308 /// @return The address of the owner of the RFT309 fn owner_of(&self, token_id: uint256) -> Result<address> {310 self.consume_store_reads(2)?;311 let token = token_id.try_into()?;312 let owner = <Pallet<T>>::token_owner(self.id, token);313 Ok(owner314 .map(|address| *address.as_eth())315 .unwrap_or_else(|| ADDRESS_FOR_PARTIALLY_OWNED_TOKENS))316 }317318 /// @dev Not implemented319 fn safe_transfer_from_with_data(320 &mut self,321 _from: address,322 _to: address,323 _token_id: uint256,324 _data: bytes,325 _value: value,326 ) -> Result<void> {327 // TODO: Not implemetable328 Err("not implemented".into())329 }330331 /// @dev Not implemented332 fn safe_transfer_from(333 &mut self,334 _from: address,335 _to: address,336 _token_id: uint256,337 _value: value,338 ) -> Result<void> {339 // TODO: Not implemetable340 Err("not implemented".into())341 }342343 /// @notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE344 /// TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE345 /// THEY MAY BE PERMANENTLY LOST346 /// @dev Throws unless `msg.sender` is the current owner or an authorized347 /// operator for this RFT. Throws if `from` is not the current owner. Throws348 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.349 /// Throws if RFT pieces have multiple owners.350 /// @param from The current owner of the NFT351 /// @param to The new owner352 /// @param tokenId The NFT to transfer353 /// @param _value Not used for an NFT354 #[weight(<SelfWeightOf<T>>::transfer_from_creating_removing())]355 fn transfer_from(356 &mut self,357 caller: caller,358 from: address,359 to: address,360 token_id: uint256,361 _value: value,362 ) -> Result<void> {363 let caller = T::CrossAccountId::from_eth(caller);364 let from = T::CrossAccountId::from_eth(from);365 let to = T::CrossAccountId::from_eth(to);366 let token = token_id.try_into()?;367 let budget = self368 .recorder369 .weight_calls_budget(<StructureWeight<T>>::find_parent());370371 let balance = balance(&self, token, &from)?;372 ensure_single_owner(&self, token, balance)?;373374 <Pallet<T>>::transfer_from(self, &caller, &from, &to, token, balance, &budget)375 .map_err(dispatch_to_evm::<T>)?;376377 Ok(())378 }379380 /// @dev Not implemented381 fn approve(382 &mut self,383 _caller: caller,384 _approved: address,385 _token_id: uint256,386 _value: value,387 ) -> Result<void> {388 Err("not implemented".into())389 }390391 /// @dev Not implemented392 fn set_approval_for_all(393 &mut self,394 _caller: caller,395 _operator: address,396 _approved: bool,397 ) -> Result<void> {398 // TODO: Not implemetable399 Err("not implemented".into())400 }401402 /// @dev Not implemented403 fn get_approved(&self, _token_id: uint256) -> Result<address> {404 // TODO: Not implemetable405 Err("not implemented".into())406 }407408 /// @dev Not implemented409 fn is_approved_for_all(&self, _owner: address, _operator: address) -> Result<address> {410 // TODO: Not implemetable411 Err("not implemented".into())412 }413}414415/// Returns amount of pieces of `token` that `owner` have416fn balance<T: Config>(417 collection: &RefungibleHandle<T>,418 token: TokenId,419 owner: &T::CrossAccountId,420) -> Result<u128> {421 collection.consume_store_reads(1)?;422 let balance = <Balance<T>>::get((collection.id, token, &owner));423 Ok(balance)424}425426/// Throws if `owner_balance` is lower than total amount of `token` pieces427fn ensure_single_owner<T: Config>(428 collection: &RefungibleHandle<T>,429 token: TokenId,430 owner_balance: u128,431) -> Result<()> {432 collection.consume_store_reads(1)?;433 let total_supply = <TotalSupply<T>>::get((collection.id, token));434 if total_supply != owner_balance {435 return Err("token has multiple owners".into());436 }437 Ok(())438}439440/// @title ERC721 Token that can be irreversibly burned (destroyed).441#[solidity_interface(name = "ERC721Burnable")]442impl<T: Config> RefungibleHandle<T> {443 /// @notice Burns a specific ERC721 token.444 /// @dev Throws unless `msg.sender` is the current RFT owner, or an authorized445 /// operator of the current owner.446 /// @param tokenId The RFT to approve447 #[weight(<SelfWeightOf<T>>::burn_item_fully())]448 fn burn(&mut self, caller: caller, token_id: uint256) -> Result<void> {449 let caller = T::CrossAccountId::from_eth(caller);450 let token = token_id.try_into()?;451452 let balance = balance(&self, token, &caller)?;453 ensure_single_owner(&self, token, balance)?;454455 <Pallet<T>>::burn(self, &caller, token, balance).map_err(dispatch_to_evm::<T>)?;456 Ok(())457 }458}459460/// @title ERC721 minting logic.461#[solidity_interface(name = "ERC721Mintable", events(ERC721MintableEvents))]462impl<T: Config> RefungibleHandle<T> {463 fn minting_finished(&self) -> Result<bool> {464 Ok(false)465 }466467 /// @notice Function to mint token.468 /// @dev `tokenId` should be obtained with `nextTokenId` method,469 /// unlike standard, you can't specify it manually470 /// @param to The new owner471 /// @param tokenId ID of the minted RFT472 #[weight(<SelfWeightOf<T>>::create_item())]473 fn mint(&mut self, caller: caller, to: address, token_id: uint256) -> Result<bool> {474 let caller = T::CrossAccountId::from_eth(caller);475 let to = T::CrossAccountId::from_eth(to);476 let token_id: u32 = token_id.try_into()?;477 let budget = self478 .recorder479 .weight_calls_budget(<StructureWeight<T>>::find_parent());480481 if <TokensMinted<T>>::get(self.id)482 .checked_add(1)483 .ok_or("item id overflow")?484 != token_id485 {486 return Err("item id should be next".into());487 }488489 let users = [(to.clone(), 1)]490 .into_iter()491 .collect::<BTreeMap<_, _>>()492 .try_into()493 .unwrap();494 <Pallet<T>>::create_item(495 self,496 &caller,497 CreateItemData::<T> {498 users,499 properties: CollectionPropertiesVec::default(),500 },501 &budget,502 )503 .map_err(dispatch_to_evm::<T>)?;504505 Ok(true)506 }507508 /// @notice Function to mint token with the given tokenUri.509 /// @dev `tokenId` should be obtained with `nextTokenId` method,510 /// unlike standard, you can't specify it manually511 /// @param to The new owner512 /// @param tokenId ID of the minted RFT513 /// @param tokenUri Token URI that would be stored in the RFT properties514 #[solidity(rename_selector = "mintWithTokenURI")]515 #[weight(<SelfWeightOf<T>>::create_item())]516 fn mint_with_token_uri(517 &mut self,518 caller: caller,519 to: address,520 token_id: uint256,521 token_uri: string,522 ) -> Result<bool> {523 let key = key::url();524 let permission = get_token_permission::<T>(self.id, &key)?;525 if !permission.collection_admin {526 return Err("Operation is not allowed".into());527 }528529 let caller = T::CrossAccountId::from_eth(caller);530 let to = T::CrossAccountId::from_eth(to);531 let token_id: u32 = token_id.try_into().map_err(|_| "amount overflow")?;532 let budget = self533 .recorder534 .weight_calls_budget(<StructureWeight<T>>::find_parent());535536 if <TokensMinted<T>>::get(self.id)537 .checked_add(1)538 .ok_or("item id overflow")?539 != token_id540 {541 return Err("item id should be next".into());542 }543544 let mut properties = CollectionPropertiesVec::default();545 properties546 .try_push(Property {547 key,548 value: token_uri549 .into_bytes()550 .try_into()551 .map_err(|_| "token uri is too long")?,552 })553 .map_err(|e| Error::Revert(alloc::format!("Can't add property: {:?}", e)))?;554555 let users = [(to.clone(), 1)]556 .into_iter()557 .collect::<BTreeMap<_, _>>()558 .try_into()559 .unwrap();560 <Pallet<T>>::create_item(561 self,562 &caller,563 CreateItemData::<T> { users, properties },564 &budget,565 )566 .map_err(dispatch_to_evm::<T>)?;567 Ok(true)568 }569570 /// @dev Not implemented571 fn finish_minting(&mut self, _caller: caller) -> Result<bool> {572 Err("not implementable".into())573 }574}575576fn get_token_property<T: Config>(577 collection: &CollectionHandle<T>,578 token_id: u32,579 key: &up_data_structs::PropertyKey,580) -> Result<string> {581 collection.consume_store_reads(1)?;582 let properties = <TokenProperties<T>>::try_get((collection.id, token_id))583 .map_err(|_| Error::Revert("Token properties not found".into()))?;584 if let Some(property) = properties.get(key) {585 return Ok(string::from_utf8_lossy(property).into());586 }587588 Err("Property tokenURI not found".into())589}590591fn is_erc721_metadata_compatible<T: Config>(collection_id: CollectionId) -> bool {592 if let Some(shema_name) =593 pallet_common::Pallet::<T>::get_collection_property(collection_id, &key::schema_name())594 {595 let shema_name = shema_name.into_inner();596 shema_name == property_value::ERC721_METADATA597 } else {598 false599 }600}601602fn get_token_permission<T: Config>(603 collection_id: CollectionId,604 key: &PropertyKey,605) -> Result<PropertyPermission> {606 let token_property_permissions = CollectionPropertyPermissions::<T>::try_get(collection_id)607 .map_err(|_| Error::Revert("No permissions for collection".into()))?;608 let a = token_property_permissions609 .get(key)610 .map(Clone::clone)611 .ok_or_else(|| {612 let key = string::from_utf8(key.clone().into_inner()).unwrap_or_default();613 Error::Revert(alloc::format!("No permission for key {}", key))614 })?;615 Ok(a)616}617618/// @title Unique extensions for ERC721.619#[solidity_interface(name = "ERC721UniqueExtensions")]620impl<T: Config> RefungibleHandle<T> {621 /// @notice Transfer ownership of an RFT622 /// @dev Throws unless `msg.sender` is the current owner. Throws if `to`623 /// is the zero address. Throws if `tokenId` is not a valid RFT.624 /// Throws if RFT pieces have multiple owners.625 /// @param to The new owner626 /// @param tokenId The RFT to transfer627 /// @param _value Not used for an RFT628 #[weight(<SelfWeightOf<T>>::transfer_creating_removing())]629 fn transfer(630 &mut self,631 caller: caller,632 to: address,633 token_id: uint256,634 _value: value,635 ) -> Result<void> {636 let caller = T::CrossAccountId::from_eth(caller);637 let to = T::CrossAccountId::from_eth(to);638 let token = token_id.try_into()?;639 let budget = self640 .recorder641 .weight_calls_budget(<StructureWeight<T>>::find_parent());642643 let balance = balance(&self, token, &caller)?;644 ensure_single_owner(&self, token, balance)?;645646 <Pallet<T>>::transfer(self, &caller, &to, token, balance, &budget)647 .map_err(dispatch_to_evm::<T>)?;648 Ok(())649 }650651 /// @notice Burns a specific ERC721 token.652 /// @dev Throws unless `msg.sender` is the current owner or an authorized653 /// operator for this RFT. Throws if `from` is not the current owner. Throws654 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.655 /// Throws if RFT pieces have multiple owners.656 /// @param from The current owner of the RFT657 /// @param tokenId The RFT to transfer658 /// @param _value Not used for an RFT659 #[weight(<SelfWeightOf<T>>::burn_from())]660 fn burn_from(661 &mut self,662 caller: caller,663 from: address,664 token_id: uint256,665 _value: value,666 ) -> Result<void> {667 let caller = T::CrossAccountId::from_eth(caller);668 let from = T::CrossAccountId::from_eth(from);669 let token = token_id.try_into()?;670 let budget = self671 .recorder672 .weight_calls_budget(<StructureWeight<T>>::find_parent());673674 let balance = balance(&self, token, &caller)?;675 ensure_single_owner(&self, token, balance)?;676677 <Pallet<T>>::burn_from(self, &caller, &from, token, balance, &budget)678 .map_err(dispatch_to_evm::<T>)?;679 Ok(())680 }681682 /// @notice Returns next free RFT ID.683 fn next_token_id(&self) -> Result<uint256> {684 self.consume_store_reads(1)?;685 Ok(<TokensMinted<T>>::get(self.id)686 .checked_add(1)687 .ok_or("item id overflow")?688 .into())689 }690691 /// @notice Function to mint multiple tokens.692 /// @dev `tokenIds` should be an array of consecutive numbers and first number693 /// should be obtained with `nextTokenId` method694 /// @param to The new owner695 /// @param tokenIds IDs of the minted RFTs696 #[weight(<SelfWeightOf<T>>::create_multiple_items(token_ids.len() as u32))]697 fn mint_bulk(&mut self, caller: caller, to: address, token_ids: Vec<uint256>) -> Result<bool> {698 let caller = T::CrossAccountId::from_eth(caller);699 let to = T::CrossAccountId::from_eth(to);700 let mut expected_index = <TokensMinted<T>>::get(self.id)701 .checked_add(1)702 .ok_or("item id overflow")?;703 let budget = self704 .recorder705 .weight_calls_budget(<StructureWeight<T>>::find_parent());706707 let total_tokens = token_ids.len();708 for id in token_ids.into_iter() {709 let id: u32 = id.try_into().map_err(|_| "token id overflow")?;710 if id != expected_index {711 return Err("item id should be next".into());712 }713 expected_index = expected_index.checked_add(1).ok_or("item id overflow")?;714 }715 let users = [(to.clone(), 1)]716 .into_iter()717 .collect::<BTreeMap<_, _>>()718 .try_into()719 .unwrap();720 let create_item_data = CreateItemData::<T> {721 users,722 properties: CollectionPropertiesVec::default(),723 };724 let data = (0..total_tokens)725 .map(|_| create_item_data.clone())726 .collect();727728 <Pallet<T>>::create_multiple_items(self, &caller, data, &budget)729 .map_err(dispatch_to_evm::<T>)?;730 Ok(true)731 }732733 /// @notice Function to mint multiple tokens with the given tokenUris.734 /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive735 /// numbers and first number should be obtained with `nextTokenId` method736 /// @param to The new owner737 /// @param tokens array of pairs of token ID and token URI for minted tokens738 #[solidity(rename_selector = "mintBulkWithTokenURI")]739 #[weight(<SelfWeightOf<T>>::create_multiple_items(tokens.len() as u32))]740 fn mint_bulk_with_token_uri(741 &mut self,742 caller: caller,743 to: address,744 tokens: Vec<(uint256, string)>,745 ) -> Result<bool> {746 let key = key::url();747 let caller = T::CrossAccountId::from_eth(caller);748 let to = T::CrossAccountId::from_eth(to);749 let mut expected_index = <TokensMinted<T>>::get(self.id)750 .checked_add(1)751 .ok_or("item id overflow")?;752 let budget = self753 .recorder754 .weight_calls_budget(<StructureWeight<T>>::find_parent());755756 let mut data = Vec::with_capacity(tokens.len());757 let users: BoundedBTreeMap<_, _, _> = [(to.clone(), 1)]758 .into_iter()759 .collect::<BTreeMap<_, _>>()760 .try_into()761 .unwrap();762 for (id, token_uri) in tokens {763 let id: u32 = id.try_into().map_err(|_| "token id overflow")?;764 if id != expected_index {765 return Err("item id should be next".into());766 }767 expected_index = expected_index.checked_add(1).ok_or("item id overflow")?;768769 let mut properties = CollectionPropertiesVec::default();770 properties771 .try_push(Property {772 key: key.clone(),773 value: token_uri774 .into_bytes()775 .try_into()776 .map_err(|_| "token uri is too long")?,777 })778 .map_err(|e| Error::Revert(alloc::format!("Can't add property: {:?}", e)))?;779780 let create_item_data = CreateItemData::<T> {781 users: users.clone(),782 properties,783 };784 data.push(create_item_data);785 }786787 <Pallet<T>>::create_multiple_items(self, &caller, data, &budget)788 .map_err(dispatch_to_evm::<T>)?;789 Ok(true)790 }791}2679227#[solidity_interface(793#[solidity_interface(28 name = "UniqueRefungible",794 name = "UniqueRefungible",29 is(via("CollectionHandle<T>", common_mut, Collection),)795 is(796 ERC721,797 ERC721Metadata,798 ERC721Enumerable,799 ERC721UniqueExtensions,800 ERC721Mintable,801 ERC721Burnable,802 via("CollectionHandle<T>", common_mut, Collection),803 TokenProperties,804 )30)]805)]31impl<T: Config> RefungibleHandle<T> where T::AccountId: From<[u8; 32]> {}806impl<T: Config> RefungibleHandle<T> where T::AccountId: From<[u8; 32]> {}pallets/refungible/src/lib.rsdiffbeforeafterboth88#![cfg_attr(not(feature = "std"), no_std)]88#![cfg_attr(not(feature = "std"), no_std)]898990use crate::erc_token::ERC20Events;90use crate::erc_token::ERC20Events;91use crate::erc::ERC721Events;919292use codec::{Encode, Decode, MaxEncodedLen};93use codec::{Encode, Decode, MaxEncodedLen};93use core::ops::Deref;94use core::ops::Deref;97use pallet_evm_coder_substrate::WithRecorder;98use pallet_evm_coder_substrate::WithRecorder;98use pallet_common::{99use pallet_common::{99 CommonCollectionOperations, Error as CommonError, Event as CommonEvent, Pallet as PalletCommon,100 CommonCollectionOperations, Error as CommonError, Event as CommonEvent,101 eth::collection_id_to_address, Pallet as PalletCommon,100};102};101use pallet_structure::Pallet as PalletStructure;103use pallet_structure::Pallet as PalletStructure;102use scale_info::TypeInfo;104use scale_info::TypeInfo;118pub mod erc_token;120pub mod erc_token;119pub mod weights;121pub mod weights;122123pub type CreateItemData<T> =124 CreateRefungibleExData<<T as pallet_evm::account::Config>::CrossAccountId>;120pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;125pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;121126122/// Token data, stored independently from other data used to describe it127/// Token data, stored independently from other data used to describe it123/// for the convenience of database access. Notably contains the token metadata.128/// for the convenience of database access. Notably contains the token metadata.124#[struct_versioning::versioned(version = 2, upper)]129#[struct_versioning::versioned(version = 2, upper)]125#[derive(Encode, Decode, Default, TypeInfo, MaxEncodedLen)]130#[derive(Encode, Decode, Default, TypeInfo, MaxEncodedLen)]131#[deprecated(since = "0.2.0", note = "ItemData is no more contains usefull data")]126pub struct ItemData {132pub struct ItemData {127 pub const_data: BoundedVec<u8, CustomDataLimit>,133 pub const_data: BoundedVec<u8, CustomDataLimit>,128134162 type WeightInfo: WeightInfo;168 type WeightInfo: WeightInfo;163 }169 }164170165 const STORAGE_VERSION: StorageVersion = StorageVersion::new(1);171 const STORAGE_VERSION: StorageVersion = StorageVersion::new(2);166172167 #[pallet::pallet]173 #[pallet::pallet]168 #[pallet::storage_version(STORAGE_VERSION)]174 #[pallet::storage_version(STORAGE_VERSION)]180 StorageMap<Hasher = Twox64Concat, Key = CollectionId, Value = u32, QueryKind = ValueQuery>;186 StorageMap<Hasher = Twox64Concat, Key = CollectionId, Value = u32, QueryKind = ValueQuery>;181187182 /// Token data, used to partially describe a token.188 /// Token data, used to partially describe a token.189 // TODO: remove183 #[pallet::storage]190 #[pallet::storage]191 #[deprecated(since = "0.2.0", note = "ItemData is no more contains usefull data")]184 pub type TokenData<T: Config> = StorageNMap<192 pub type TokenData<T: Config> = StorageNMap<185 Key = (Key<Twox64Concat, CollectionId>, Key<Twox64Concat, TokenId>),193 Key = (Key<Twox64Concat, CollectionId>, Key<Twox64Concat, TokenId>),186 Value = ItemData,194 Value = ItemData,260 #[pallet::hooks]268 #[pallet::hooks]261 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {269 impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {262 fn on_runtime_upgrade() -> Weight {270 fn on_runtime_upgrade() -> Weight {263 if StorageVersion::get::<Pallet<T>>() < StorageVersion::new(1) {271 let storage_version = StorageVersion::get::<Pallet<T>>();264 <TokenData<T>>::translate_values::<ItemDataVersion1, _>(|v| {272 if storage_version < StorageVersion::new(2) {265 Some(<ItemDataVersion2>::from(v))273 <TokenData<T>>::remove_all(None);266 })274 }267 }275 StorageVersion::new(2).put::<Pallet<T>>();268276269 0277 0270 }278 }377385378 <TokensMinted<T>>::remove(id);386 <TokensMinted<T>>::remove(id);379 <TokensBurnt<T>>::remove(id);387 <TokensBurnt<T>>::remove(id);380 <TokenData<T>>::remove_prefix((id,), None);381 <TotalSupply<T>>::remove_prefix((id,), None);388 <TotalSupply<T>>::remove_prefix((id,), None);382 <Balance<T>>::remove_prefix((id,), None);389 <Balance<T>>::remove_prefix((id,), None);383 <Allowance<T>>::remove_prefix((id,), None);390 <Allowance<T>>::remove_prefix((id,), None);387 }394 }388395389 fn collection_has_tokens(collection_id: CollectionId) -> bool {396 fn collection_has_tokens(collection_id: CollectionId) -> bool {390 <TokenData<T>>::iter_prefix((collection_id,))397 <TotalSupply<T>>::iter_prefix((collection_id,))391 .next()398 .next()392 .is_some()399 .is_some()393 }400 }394401395 pub fn burn_token_unchecked(402 pub fn burn_token_unchecked(396 collection: &RefungibleHandle<T>,403 collection: &RefungibleHandle<T>,404 owner: &T::CrossAccountId,397 token_id: TokenId,405 token_id: TokenId,398 ) -> DispatchResult {406 ) -> DispatchResult {399 let burnt = <TokensBurnt<T>>::get(collection.id)407 let burnt = <TokensBurnt<T>>::get(collection.id)400 .checked_add(1)408 .checked_add(1)401 .ok_or(ArithmeticError::Overflow)?;409 .ok_or(ArithmeticError::Overflow)?;402410403 <TokensBurnt<T>>::insert(collection.id, burnt);411 <TokensBurnt<T>>::insert(collection.id, burnt);404 <TokenData<T>>::remove((collection.id, token_id));412 <TokenProperties<T>>::remove((collection.id, token_id));405 <TokenProperties<T>>::remove((collection.id, token_id));413 <TotalSupply<T>>::remove((collection.id, token_id));406 <TotalSupply<T>>::remove((collection.id, token_id));414 <Balance<T>>::remove_prefix((collection.id, token_id), None);407 <Balance<T>>::remove_prefix((collection.id, token_id), None);415 <Allowance<T>>::remove_prefix((collection.id, token_id), None);416408 <Allowance<T>>::remove_prefix((collection.id, token_id), None);417 <PalletEvm<T>>::deposit_log(409 // TODO: ERC721 transfer event418 ERC721Events::Transfer {419 from: *owner.as_eth(),420 to: H160::default(),421 token_id: token_id.into(),422 }423 .to_log(collection_id_to_address(collection.id)),424 );410 Ok(())425 Ok(())411 }426 }448 <Owned<T>>::remove((collection.id, owner, token));463 <Owned<T>>::remove((collection.id, owner, token));449 <PalletStructure<T>>::unnest_if_nested(owner, collection.id, token);464 <PalletStructure<T>>::unnest_if_nested(owner, collection.id, token);450 <AccountBalance<T>>::insert((collection.id, owner), account_balance);465 <AccountBalance<T>>::insert((collection.id, owner), account_balance);451 Self::burn_token_unchecked(collection, token)?;466 Self::burn_token_unchecked(collection, owner, token)?;467 <PalletEvm<T>>::deposit_log(468 ERC20Events::Transfer {469 from: *owner.as_eth(),470 to: H160::default(),471 value: amount.into(),472 }473 .to_log(collection_id_to_address(collection.id)),474 );452 <PalletCommon<T>>::deposit_event(CommonEvent::ItemDestroyed(475 <PalletCommon<T>>::deposit_event(CommonEvent::ItemDestroyed(453 collection.id,476 collection.id,454 token,477 token,478 <Balance<T>>::remove((collection.id, token, owner));501 <Balance<T>>::remove((collection.id, token, owner));479 <AccountBalance<T>>::insert((collection.id, owner), account_balance);502 <AccountBalance<T>>::insert((collection.id, owner), account_balance);503504 if let Some(user) = Self::token_owner(collection.id, token) {505 <PalletEvm<T>>::deposit_log(506 ERC721Events::Transfer {507 from: erc::ADDRESS_FOR_PARTIALLY_OWNED_TOKENS,508 to: *user.as_eth(),509 token_id: token.into(),510 }511 .to_log(collection_id_to_address(collection.id)),512 );513 }480 } else {514 } else {481 <Balance<T>>::insert((collection.id, token, owner), balance);515 <Balance<T>>::insert((collection.id, token, owner), balance);482 }516 }694 }728 }695 <PalletCommon<T>>::ensure_correct_receiver(to)?;729 <PalletCommon<T>>::ensure_correct_receiver(to)?;696730697 let balance_from = <Balance<T>>::get((collection.id, token, from))731 let initial_balance_from = <Balance<T>>::get((collection.id, token, from));732 let updated_balance_from = initial_balance_from698 .checked_sub(amount)733 .checked_sub(amount)699 .ok_or(<CommonError<T>>::TokenValueTooLow)?;734 .ok_or(<CommonError<T>>::TokenValueTooLow)?;700 let mut create_target = false;735 let mut create_target = false;701 let from_to_differ = from != to;736 let from_to_differ = from != to;702 let balance_to = if from != to {737 let updated_balance_to = if from != to {703 let old_balance = <Balance<T>>::get((collection.id, token, to));738 let old_balance = <Balance<T>>::get((collection.id, token, to));704 if old_balance == 0 {739 if old_balance == 0 {705 create_target = true;740 create_target = true;713 None748 None714 };749 };715750716 let account_balance_from = if balance_from == 0 {751 let account_balance_from = if updated_balance_from == 0 {717 Some(752 Some(718 <AccountBalance<T>>::get((collection.id, from))753 <AccountBalance<T>>::get((collection.id, from))719 .checked_sub(1)754 .checked_sub(1)749 nesting_budget,784 nesting_budget,750 )?;785 )?;751786752 if let Some(balance_to) = balance_to {787 if let Some(updated_balance_to) = updated_balance_to {753 // from != to788 // from != to754 if balance_from == 0 {789 if updated_balance_from == 0 {755 <Balance<T>>::remove((collection.id, token, from));790 <Balance<T>>::remove((collection.id, token, from));756 <PalletStructure<T>>::unnest_if_nested(from, collection.id, token);791 <PalletStructure<T>>::unnest_if_nested(from, collection.id, token);757 } else {792 } else {758 <Balance<T>>::insert((collection.id, token, from), balance_from);793 <Balance<T>>::insert((collection.id, token, from), updated_balance_from);759 }794 }760 <Balance<T>>::insert((collection.id, token, to), balance_to);795 <Balance<T>>::insert((collection.id, token, to), updated_balance_to);761 if let Some(account_balance_from) = account_balance_from {796 if let Some(account_balance_from) = account_balance_from {762 <AccountBalance<T>>::insert((collection.id, from), account_balance_from);797 <AccountBalance<T>>::insert((collection.id, from), account_balance_from);763 <Owned<T>>::remove((collection.id, from, token));798 <Owned<T>>::remove((collection.id, from, token));787 amount,823 amount,788 ));824 ));825826 let total_supply = <TotalSupply<T>>::get((collection.id, token));827828 if amount == total_supply {829 // if token was fully owned by `from` and will be fully owned by `to` after transfer830 <PalletEvm<T>>::deposit_log(831 ERC721Events::Transfer {832 from: *from.as_eth(),833 to: *to.as_eth(),834 token_id: token.into(),835 }836 .to_log(collection_id_to_address(collection.id)),837 );838 } else if let Some(updated_balance_to) = updated_balance_to {839 // if `from` not equals `to`. This condition is needed to avoid sending event840 // when `from` fully owns token and sends part of token pieces to itself.841 if initial_balance_from == total_supply {842 // if token was fully owned by `from` and will be only partially owned by `to`843 // and `from` after transfer844 <PalletEvm<T>>::deposit_log(845 ERC721Events::Transfer {846 from: *from.as_eth(),847 to: erc::ADDRESS_FOR_PARTIALLY_OWNED_TOKENS,848 token_id: token.into(),849 }850 .to_log(collection_id_to_address(collection.id)),851 );852 } else if updated_balance_to == total_supply {853 // if token was partially owned by `from` and will be fully owned by `to` after transfer854 <PalletEvm<T>>::deposit_log(855 ERC721Events::Transfer {856 from: erc::ADDRESS_FOR_PARTIALLY_OWNED_TOKENS,857 to: *to.as_eth(),858 token_id: token.into(),859 }860 .to_log(collection_id_to_address(collection.id)),861 );862 }863 }864789 Ok(())865 Ok(())790 }866 }797 pub fn create_multiple_items(873 pub fn create_multiple_items(798 collection: &RefungibleHandle<T>,874 collection: &RefungibleHandle<T>,799 sender: &T::CrossAccountId,875 sender: &T::CrossAccountId,800 data: Vec<CreateRefungibleExData<T::CrossAccountId>>,876 data: Vec<CreateItemData<T>>,801 nesting_budget: &dyn Budget,877 nesting_budget: &dyn Budget,802 ) -> DispatchResult {878 ) -> DispatchResult {803 if !collection.is_owner_or_admin(sender) {879 if !collection.is_owner_or_admin(sender) {883 let token_id = first_token_id + i as u32 + 1;959 let token_id = first_token_id + i as u32 + 1;884 <TotalSupply<T>>::insert((collection.id, token_id), totals[i]);960 <TotalSupply<T>>::insert((collection.id, token_id), totals[i]);885886 <TokenData<T>>::insert(887 (collection.id, token_id),888 ItemData {889 const_data: data.const_data.clone(),890 },891 );892961893 for (user, amount) in data.users.iter() {962 for (user, amount) in data.users.iter() {894 if *amount == 0 {963 if *amount == 0 {926 for (i, token) in data.into_iter().enumerate() {995 for (i, token) in data.into_iter().enumerate() {927 let token_id = first_token_id + i as u32 + 1;996 let token_id = first_token_id + i as u32 + 1;997998 let receivers = token999 .users1000 .into_iter()1001 .filter(|(_, amount)| *amount > 0)1002 .collect::<Vec<_>>();10031004 if let [(user, _)] = receivers.as_slice() {1005 // if there is exactly one receiver1006 <PalletEvm<T>>::deposit_log(1007 ERC721Events::Transfer {1008 from: H160::default(),1009 to: *user.as_eth(),1010 token_id: token_id.into(),1011 }1012 .to_log(collection_id_to_address(collection.id)),1013 );1014 } else if let [_, ..] = receivers.as_slice() {1015 // if there is more than one receiver1016 <PalletEvm<T>>::deposit_log(1017 ERC721Events::Transfer {1018 from: H160::default(),1019 to: erc::ADDRESS_FOR_PARTIALLY_OWNED_TOKENS,1020 token_id: token_id.into(),1021 }1022 .to_log(collection_id_to_address(collection.id)),1023 );1024 }9281025929 for (user, amount) in token.users.into_iter() {1026 for (user, amount) in receivers.into_iter() {930 if amount == 0 {931 continue;932 }933934 <PalletEvm<T>>::deposit_log(1027 <PalletEvm<T>>::deposit_log(935 ERC20Events::Transfer {1028 ERC20Events::Transfer {1120 pub fn create_item(1213 pub fn create_item(1121 collection: &RefungibleHandle<T>,1214 collection: &RefungibleHandle<T>,1122 sender: &T::CrossAccountId,1215 sender: &T::CrossAccountId,1123 data: CreateRefungibleExData<T::CrossAccountId>,1216 data: CreateItemData<T>,1124 nesting_budget: &dyn Budget,1217 nesting_budget: &dyn Budget,1125 ) -> DispatchResult {1218 ) -> DispatchResult {1126 Self::create_multiple_items(collection, sender, vec![data], nesting_budget)1219 Self::create_multiple_items(collection, sender, vec![data], nesting_budget)pallets/refungible/src/stubs/UniqueRefungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth334pragma solidity >=0.8.0 <0.9.0;4pragma solidity >=0.8.0 <0.9.0;56// Anonymous struct7struct Tuple0 {8 uint256 field_0;9 string field_1;10}5116// Common stubs holder12// Common stubs holder7contract Dummy {13contract Dummy {21 }27 }22}28}2930// Inline31contract ERC721Events {32 event Transfer(33 address indexed from,34 address indexed to,35 uint256 indexed tokenId36 );37 event Approval(38 address indexed owner,39 address indexed approved,40 uint256 indexed tokenId41 );42 event ApprovalForAll(43 address indexed owner,44 address indexed operator,45 bool approved46 );47}4849// Inline50contract ERC721MintableEvents {51 event MintingFinished();52}5354// Selector: 4136937755contract TokenProperties is Dummy, ERC165 {56 // @notice Set permissions for token property.57 // @dev Throws error if `msg.sender` is not admin or owner of the collection.58 // @param key Property key.59 // @param is_mutable Permission to mutate property.60 // @param collection_admin Permission to mutate property by collection admin if property is mutable.61 // @param token_owner Permission to mutate property by token owner if property is mutable.62 //63 // Selector: setTokenPropertyPermission(string,bool,bool,bool) 222d97fa64 function setTokenPropertyPermission(65 string memory key,66 bool isMutable,67 bool collectionAdmin,68 bool tokenOwner69 ) public {70 require(false, stub_error);71 key;72 isMutable;73 collectionAdmin;74 tokenOwner;75 dummy = 0;76 }7778 // @notice Set token property value.79 // @dev Throws error if `msg.sender` has no permission to edit the property.80 // @param tokenId ID of the token.81 // @param key Property key.82 // @param value Property value.83 //84 // Selector: setProperty(uint256,string,bytes) 1752d67b85 function setProperty(86 uint256 tokenId,87 string memory key,88 bytes memory value89 ) public {90 require(false, stub_error);91 tokenId;92 key;93 value;94 dummy = 0;95 }9697 // @notice Delete token property value.98 // @dev Throws error if `msg.sender` has no permission to edit the property.99 // @param tokenId ID of the token.100 // @param key Property key.101 //102 // Selector: deleteProperty(uint256,string) 066111d1103 function deleteProperty(uint256 tokenId, string memory key) public {104 require(false, stub_error);105 tokenId;106 key;107 dummy = 0;108 }109110 // @notice Get token property value.111 // @dev Throws error if key not found112 // @param tokenId ID of the token.113 // @param key Property key.114 // @return Property value bytes115 //116 // Selector: property(uint256,string) 7228c327117 function property(uint256 tokenId, string memory key)118 public119 view120 returns (bytes memory)121 {122 require(false, stub_error);123 tokenId;124 key;125 dummy;126 return hex"";127 }128}129130// Selector: 42966c68131contract ERC721Burnable is Dummy, ERC165 {132 // @notice Burns a specific ERC721 token.133 // @dev Throws unless `msg.sender` is the current RFT owner, or an authorized134 // operator of the current owner.135 // @param tokenId The RFT to approve136 //137 // Selector: burn(uint256) 42966c68138 function burn(uint256 tokenId) public {139 require(false, stub_error);140 tokenId;141 dummy = 0;142 }143}144145// Selector: 58800161146contract ERC721 is Dummy, ERC165, ERC721Events {147 // @notice Count all RFTs assigned to an owner148 // @dev RFTs assigned to the zero address are considered invalid, and this149 // function throws for queries about the zero address.150 // @param owner An address for whom to query the balance151 // @return The number of RFTs owned by `owner`, possibly zero152 //153 // Selector: balanceOf(address) 70a08231154 function balanceOf(address owner) public view returns (uint256) {155 require(false, stub_error);156 owner;157 dummy;158 return 0;159 }160161 // @notice Find the owner of an RFT162 // @dev RFTs assigned to zero address are considered invalid, and queries163 // about them do throw.164 // Returns special 0xffffffffffffffffffffffffffffffffffffffff address for165 // the tokens that are partially owned.166 // @param tokenId The identifier for an RFT167 // @return The address of the owner of the RFT168 //169 // Selector: ownerOf(uint256) 6352211e170 function ownerOf(uint256 tokenId) public view returns (address) {171 require(false, stub_error);172 tokenId;173 dummy;174 return 0x0000000000000000000000000000000000000000;175 }176177 // @dev Not implemented178 //179 // Selector: safeTransferFromWithData(address,address,uint256,bytes) 60a11672180 function safeTransferFromWithData(181 address from,182 address to,183 uint256 tokenId,184 bytes memory data185 ) public {186 require(false, stub_error);187 from;188 to;189 tokenId;190 data;191 dummy = 0;192 }193194 // @dev Not implemented195 //196 // Selector: safeTransferFrom(address,address,uint256) 42842e0e197 function safeTransferFrom(198 address from,199 address to,200 uint256 tokenId201 ) public {202 require(false, stub_error);203 from;204 to;205 tokenId;206 dummy = 0;207 }208209 // @notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE210 // TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE211 // THEY MAY BE PERMANENTLY LOST212 // @dev Throws unless `msg.sender` is the current owner or an authorized213 // operator for this RFT. Throws if `from` is not the current owner. Throws214 // if `to` is the zero address. Throws if `tokenId` is not a valid RFT.215 // Throws if RFT pieces have multiple owners.216 // @param from The current owner of the NFT217 // @param to The new owner218 // @param tokenId The NFT to transfer219 // @param _value Not used for an NFT220 //221 // Selector: transferFrom(address,address,uint256) 23b872dd222 function transferFrom(223 address from,224 address to,225 uint256 tokenId226 ) public {227 require(false, stub_error);228 from;229 to;230 tokenId;231 dummy = 0;232 }233234 // @dev Not implemented235 //236 // Selector: approve(address,uint256) 095ea7b3237 function approve(address approved, uint256 tokenId) public {238 require(false, stub_error);239 approved;240 tokenId;241 dummy = 0;242 }243244 // @dev Not implemented245 //246 // Selector: setApprovalForAll(address,bool) a22cb465247 function setApprovalForAll(address operator, bool approved) public {248 require(false, stub_error);249 operator;250 approved;251 dummy = 0;252 }253254 // @dev Not implemented255 //256 // Selector: getApproved(uint256) 081812fc257 function getApproved(uint256 tokenId) public view returns (address) {258 require(false, stub_error);259 tokenId;260 dummy;261 return 0x0000000000000000000000000000000000000000;262 }263264 // @dev Not implemented265 //266 // Selector: isApprovedForAll(address,address) e985e9c5267 function isApprovedForAll(address owner, address operator)268 public269 view270 returns (address)271 {272 require(false, stub_error);273 owner;274 operator;275 dummy;276 return 0x0000000000000000000000000000000000000000;277 }278}279280// Selector: 5b5e139f281contract ERC721Metadata is Dummy, ERC165 {282 // @notice A descriptive name for a collection of RFTs in this contract283 //284 // Selector: name() 06fdde03285 function name() public view returns (string memory) {286 require(false, stub_error);287 dummy;288 return "";289 }290291 // @notice An abbreviated name for RFTs in this contract292 //293 // Selector: symbol() 95d89b41294 function symbol() public view returns (string memory) {295 require(false, stub_error);296 dummy;297 return "";298 }299300 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.301 //302 // @dev If the token has a `url` property and it is not empty, it is returned.303 // Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.304 // If the collection property `baseURI` is empty or absent, return "" (empty string)305 // otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix306 // otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).307 //308 // @return token's const_metadata309 //310 // Selector: tokenURI(uint256) c87b56dd311 function tokenURI(uint256 tokenId) public view returns (string memory) {312 require(false, stub_error);313 tokenId;314 dummy;315 return "";316 }317}318319// Selector: 68ccfe89320contract ERC721Mintable is Dummy, ERC165, ERC721MintableEvents {321 // Selector: mintingFinished() 05d2035b322 function mintingFinished() public view returns (bool) {323 require(false, stub_error);324 dummy;325 return false;326 }327328 // @notice Function to mint token.329 // @dev `tokenId` should be obtained with `nextTokenId` method,330 // unlike standard, you can't specify it manually331 // @param to The new owner332 // @param tokenId ID of the minted RFT333 //334 // Selector: mint(address,uint256) 40c10f19335 function mint(address to, uint256 tokenId) public returns (bool) {336 require(false, stub_error);337 to;338 tokenId;339 dummy = 0;340 return false;341 }342343 // @notice Function to mint token with the given tokenUri.344 // @dev `tokenId` should be obtained with `nextTokenId` method,345 // unlike standard, you can't specify it manually346 // @param to The new owner347 // @param tokenId ID of the minted RFT348 // @param tokenUri Token URI that would be stored in the RFT properties349 //350 // Selector: mintWithTokenURI(address,uint256,string) 50bb4e7f351 function mintWithTokenURI(352 address to,353 uint256 tokenId,354 string memory tokenUri355 ) public returns (bool) {356 require(false, stub_error);357 to;358 tokenId;359 tokenUri;360 dummy = 0;361 return false;362 }363364 // @dev Not implemented365 //366 // Selector: finishMinting() 7d64bcb4367 function finishMinting() public returns (bool) {368 require(false, stub_error);369 dummy = 0;370 return false;371 }372}373374// Selector: 780e9d63375contract ERC721Enumerable is Dummy, ERC165 {376 // @notice Enumerate valid RFTs377 // @param index A counter less than `totalSupply()`378 // @return The token identifier for the `index`th NFT,379 // (sort order not specified)380 //381 // Selector: tokenByIndex(uint256) 4f6ccce7382 function tokenByIndex(uint256 index) public view returns (uint256) {383 require(false, stub_error);384 index;385 dummy;386 return 0;387 }388389 // Not implemented390 //391 // Selector: tokenOfOwnerByIndex(address,uint256) 2f745c59392 function tokenOfOwnerByIndex(address owner, uint256 index)393 public394 view395 returns (uint256)396 {397 require(false, stub_error);398 owner;399 index;400 dummy;401 return 0;402 }403404 // @notice Count RFTs tracked by this contract405 // @return A count of valid RFTs tracked by this contract, where each one of406 // them has an assigned and queryable owner not equal to the zero address407 //408 // Selector: totalSupply() 18160ddd409 function totalSupply() public view returns (uint256) {410 require(false, stub_error);411 dummy;412 return 0;413 }414}2341524// Selector: 7d9262e6416// Selector: 7d9262e625contract Collection is Dummy, ERC165 {417contract Collection is Dummy, ERC165 {248 }640 }249}641}642643// Selector: d74d154f644contract ERC721UniqueExtensions is Dummy, ERC165 {645 // @notice Transfer ownership of an RFT646 // @dev Throws unless `msg.sender` is the current owner. Throws if `to`647 // is the zero address. Throws if `tokenId` is not a valid RFT.648 // Throws if RFT pieces have multiple owners.649 // @param to The new owner650 // @param tokenId The RFT to transfer651 // @param _value Not used for an RFT652 //653 // Selector: transfer(address,uint256) a9059cbb654 function transfer(address to, uint256 tokenId) public {655 require(false, stub_error);656 to;657 tokenId;658 dummy = 0;659 }660661 // @notice Burns a specific ERC721 token.662 // @dev Throws unless `msg.sender` is the current owner or an authorized663 // operator for this RFT. Throws if `from` is not the current owner. Throws664 // if `to` is the zero address. Throws if `tokenId` is not a valid RFT.665 // Throws if RFT pieces have multiple owners.666 // @param from The current owner of the RFT667 // @param tokenId The RFT to transfer668 // @param _value Not used for an RFT669 //670 // Selector: burnFrom(address,uint256) 79cc6790671 function burnFrom(address from, uint256 tokenId) public {672 require(false, stub_error);673 from;674 tokenId;675 dummy = 0;676 }677678 // @notice Returns next free RFT ID.679 //680 // Selector: nextTokenId() 75794a3c681 function nextTokenId() public view returns (uint256) {682 require(false, stub_error);683 dummy;684 return 0;685 }686687 // @notice Function to mint multiple tokens.688 // @dev `tokenIds` should be an array of consecutive numbers and first number689 // should be obtained with `nextTokenId` method690 // @param to The new owner691 // @param tokenIds IDs of the minted RFTs692 //693 // Selector: mintBulk(address,uint256[]) 44a9945e694 function mintBulk(address to, uint256[] memory tokenIds)695 public696 returns (bool)697 {698 require(false, stub_error);699 to;700 tokenIds;701 dummy = 0;702 return false;703 }704705 // @notice Function to mint multiple tokens with the given tokenUris.706 // @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive707 // numbers and first number should be obtained with `nextTokenId` method708 // @param to The new owner709 // @param tokens array of pairs of token ID and token URI for minted tokens710 //711 // Selector: mintBulkWithTokenURI(address,(uint256,string)[]) 36543006712 function mintBulkWithTokenURI(address to, Tuple0[] memory tokens)713 public714 returns (bool)715 {716 require(false, stub_error);717 to;718 tokens;719 dummy = 0;720 return false;721 }722}250723251contract UniqueRefungible is Dummy, ERC165, Collection {}724contract UniqueRefungible is725 Dummy,726 ERC165,727 ERC721,728 ERC721Metadata,729 ERC721Enumerable,730 ERC721UniqueExtensions,731 ERC721Mintable,732 ERC721Burnable,733 Collection,734 TokenProperties735{}252736pallets/refungible/src/stubs/UniqueRefungibleToken.rawdiffbeforeafterbothbinary blob — no preview
pallets/unique/src/eth/stubs/CollectionHelpers.rawdiffbeforeafterbothbinary blob — no preview
pallets/unique/src/eth/stubs/CollectionHelpers.soldiffbeforeafterboth29 );29 );30}30}313132// Selector: c20653fc32// Selector: 675f307433contract CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {33contract CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {34 // Create an NFT collection35 // @param name Name of the collection36 // @param description Informative description of the collection37 // @param token_prefix Token prefix to represent the collection tokens in UI and user applications38 // @return address Address of the newly created collection39 //34 // Selector: createNonfungibleCollection(string,string,string) e34a684440 // Selector: createNonfungibleCollection(string,string,string) e34a684435 function createNonfungibleCollection(41 function createNonfungibleCollection(36 string memory name,42 string memory name,75 return 0x0000000000000000000000000000000000000000;81 return 0x0000000000000000000000000000000000000000;76 }82 }778384 // Selector: createERC721MetadataCompatibleRFTCollection(string,string,string,string) a559638885 function createERC721MetadataCompatibleRFTCollection(86 string memory name,87 string memory description,88 string memory tokenPrefix,89 string memory baseUri90 ) public returns (address) {91 require(false, stub_error);92 name;93 description;94 tokenPrefix;95 baseUri;96 dummy = 0;97 return 0x0000000000000000000000000000000000000000;98 }99100 // Check if a collection exists101 // @param collection_address Address of the collection in question102 // @return bool Does the collection exist?103 //78 // Selector: isCollectionExist(address) c3de1494104 // Selector: isCollectionExist(address) c3de149479 function isCollectionExist(address collectionAddress)105 function isCollectionExist(address collectionAddress)80 public106 publicpallets/unique/src/lib.rsdiffbeforeafterboth285 }285 }286286287 fn on_runtime_upgrade() -> Weight {287 fn on_runtime_upgrade() -> Weight {288 let limit = None;289290 <VariableMetaDataBasket<T>>::remove_all(limit);291292 0288 0293 }289 }primitives/data-structs/CHANGELOG.mddiffbeforeafterboth223All notable changes to this project will be documented in this file.3All notable changes to this project will be documented in this file.445## [v0.2.0] - 2022-08-016### Deprecated7- `CreateReFungibleData::const_data`586## [v0.1.2] - 2022-07-259## [v0.1.2] - 2022-07-257### Added10### Addedprimitives/data-structs/Cargo.tomldiffbeforeafterboth6license = 'GPLv3'6license = 'GPLv3'7homepage = "https://unique.network"7homepage = "https://unique.network"8repository = 'https://github.com/UniqueNetwork/unique-chain'8repository = 'https://github.com/UniqueNetwork/unique-chain'9version = '0.1.2'9version = '0.2.0'101011[dependencies]11[dependencies]12scale-info = { version = "2.0.1", default-features = false, features = [12scale-info = { version = "2.0.1", default-features = false, features = [primitives/data-structs/src/lib.rsdiffbeforeafterboth780#[cfg_attr(feature = "serde1", derive(Serialize, Deserialize))]780#[cfg_attr(feature = "serde1", derive(Serialize, Deserialize))]781#[derivative(Debug)]781#[derivative(Debug)]782pub struct CreateReFungibleData {782pub struct CreateReFungibleData {783 /// Immutable metadata of the token783 /// Number of pieces the RFT is split into784 #[cfg_attr(feature = "serde1", serde(with = "bounded::vec_serde"))]785 #[derivative(Debug(format_with = "bounded::vec_debug"))]786 pub const_data: BoundedVec<u8, CustomDataLimit>,787788 /// Pieces of created token.789 pub pieces: u128,784 pub pieces: u128,790785791 /// Key-value pairs used to describe the token as metadata786 /// Key-value pairs used to describe the token as metadata832#[derive(Encode, Decode, MaxEncodedLen, PartialEq, Clone, TypeInfo, Derivative)]827#[derive(Encode, Decode, MaxEncodedLen, PartialEq, Clone, TypeInfo, Derivative)]833#[derivative(Debug(bound = "CrossAccountId: fmt::Debug + Ord"))]828#[derivative(Debug(bound = "CrossAccountId: fmt::Debug + Ord"))]834pub struct CreateRefungibleExData<CrossAccountId> {829pub struct CreateRefungibleExData<CrossAccountId> {835 /// Custom data stored in token.836 #[derivative(Debug(format_with = "bounded::vec_debug"))]837 pub const_data: BoundedVec<u8, CustomDataLimit>,838839 /// Users who will be assigned the specified number of token parts.840 #[derivative(Debug(format_with = "bounded::map_debug"))]830 #[derivative(Debug(format_with = "bounded::map_debug"))]841 pub users: BoundedBTreeMap<CrossAccountId, u128, ConstU32<MAX_ITEMS_PER_BATCH>>,831 pub users: BoundedBTreeMap<CrossAccountId, u128, ConstU32<MAX_ITEMS_PER_BATCH>>,842 #[derivative(Debug(format_with = "bounded::vec_debug"))]832 #[derivative(Debug(format_with = "bounded::vec_debug"))]871 RefungibleMultipleOwners(CreateRefungibleExData<CrossAccountId>),861 RefungibleMultipleOwners(CreateRefungibleExData<CrossAccountId>),872}862}873874impl CreateItemData {875 /// Get size of custom data.876 pub fn data_size(&self) -> usize {877 match self {878 CreateItemData::ReFungible(data) => data.const_data.len(),879 _ => 0,880 }881 }882}883863884impl From<CreateNftData> for CreateItemData {864impl From<CreateNftData> for CreateItemData {885 fn from(item: CreateNftData) -> Self {865 fn from(item: CreateNftData) -> Self {runtime/common/src/sponsoring.rsdiffbeforeafterboth156pub fn withdraw_create_item<T: Config>(156pub fn withdraw_create_item<T: Config>(157 collection: &CollectionHandle<T>,157 collection: &CollectionHandle<T>,158 who: &T::CrossAccountId,158 who: &T::CrossAccountId,159 _properties: &CreateItemData,159 properties: &CreateItemData,160) -> Option<()> {160) -> Option<()> {161 if _properties.data_size() as u32 > collection.limits.sponsored_data_size() {162 return None;163 }164165 // sponsor timeout161 // sponsor timeout166 let block_number = <frame_system::Pallet<T>>::block_number() as T::BlockNumber;162 let block_number = <frame_system::Pallet<T>>::block_number() as T::BlockNumber;167 let limit = collection163 let limit = collection168 .limits164 .limits169 .sponsor_transfer_timeout(match _properties {165 .sponsor_transfer_timeout(match properties {170 CreateItemData::NFT(_) => NFT_SPONSOR_TRANSFER_TIMEOUT,166 CreateItemData::NFT(_) => NFT_SPONSOR_TRANSFER_TIMEOUT,171 CreateItemData::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,167 CreateItemData::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,172 CreateItemData::ReFungible(_) => REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,168 CreateItemData::ReFungible(_) => REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,runtime/opal/src/lib.rsdiffbeforeafterboth192 spec_name: create_runtime_str!(RUNTIME_NAME),192 spec_name: create_runtime_str!(RUNTIME_NAME),193 impl_name: create_runtime_str!(RUNTIME_NAME),193 impl_name: create_runtime_str!(RUNTIME_NAME),194 authoring_version: 1,194 authoring_version: 1,195 spec_version: 924010,195 spec_version: 924012,196 impl_version: 0,196 impl_version: 0,197 apis: RUNTIME_API_VERSIONS,197 apis: RUNTIME_API_VERSIONS,198 transaction_version: 1,198 transaction_version: 1,runtime/quartz/src/lib.rsdiffbeforeafterboth191 spec_name: create_runtime_str!(RUNTIME_NAME),191 spec_name: create_runtime_str!(RUNTIME_NAME),192 impl_name: create_runtime_str!(RUNTIME_NAME),192 impl_name: create_runtime_str!(RUNTIME_NAME),193 authoring_version: 1,193 authoring_version: 1,194 spec_version: 924010,194 spec_version: 924012,195 impl_version: 0,195 impl_version: 0,196 apis: RUNTIME_API_VERSIONS,196 apis: RUNTIME_API_VERSIONS,197 transaction_version: 1,197 transaction_version: 1,runtime/tests/src/tests.rsdiffbeforeafterboth626263fn default_re_fungible_data() -> CreateReFungibleData {63fn default_re_fungible_data() -> CreateReFungibleData {64 CreateReFungibleData {64 CreateReFungibleData {65 const_data: vec![1, 2, 3].try_into().unwrap(),66 pieces: 1023,65 pieces: 1023,67 properties: vec![Property {66 properties: vec![Property {68 key: b"test-prop".to_vec().try_into().unwrap(),67 key: b"test-prop".to_vec().try_into().unwrap(),298 let item = <pallet_refungible::TokenData<Test>>::get((collection_id, TokenId(1)));297 let item = <pallet_refungible::TokenData<Test>>::get((collection_id, TokenId(1)));299 let balance =298 let balance =300 <pallet_refungible::Balance<Test>>::get((collection_id, TokenId(1), account(1)));299 <pallet_refungible::Balance<Test>>::get((collection_id, TokenId(1), account(1)));301 assert_eq!(item.const_data, data.const_data.into_inner());302 assert_eq!(balance, 1023);300 assert_eq!(balance, 1023);303 });301 });304}302}333 ));331 ));334 let balance =332 let balance =335 <pallet_refungible::Balance<Test>>::get((CollectionId(1), TokenId(1), account(1)));333 <pallet_refungible::Balance<Test>>::get((CollectionId(1), TokenId(1), account(1)));336 assert_eq!(item.const_data.to_vec(), data.const_data.into_inner());337 assert_eq!(balance, 1023);334 assert_eq!(balance, 1023);338 }335 }339 });336 });446 let data = default_re_fungible_data();443 let data = default_re_fungible_data();447 create_test_item(collection_id, &data.clone().into());444 create_test_item(collection_id, &data.clone().into());448 let item = <pallet_refungible::TokenData<Test>>::get((collection_id, TokenId(1)));445 let item = <pallet_refungible::TokenData<Test>>::get((collection_id, TokenId(1)));449 assert_eq!(item.const_data, data.const_data.into_inner());450 assert_eq!(446 assert_eq!(451 <pallet_refungible::AccountBalance<Test>>::get((collection_id, account(1))),447 <pallet_refungible::AccountBalance<Test>>::get((collection_id, account(1))),452 1448 1runtime/unique/src/lib.rsdiffbeforeafterboth190 spec_name: create_runtime_str!(RUNTIME_NAME),190 spec_name: create_runtime_str!(RUNTIME_NAME),191 impl_name: create_runtime_str!(RUNTIME_NAME),191 impl_name: create_runtime_str!(RUNTIME_NAME),192 authoring_version: 1,192 authoring_version: 1,193 spec_version: 924010,193 spec_version: 924012,194 impl_version: 0,194 impl_version: 0,195 apis: RUNTIME_API_VERSIONS,195 apis: RUNTIME_API_VERSIONS,196 transaction_version: 1,196 transaction_version: 1,tests/src/eth/api/CollectionHelpers.soldiffbeforeafterboth20 );20 );21}21}222223// Selector: c20653fc23// Selector: 675f307424interface CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {24interface CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {25 // Create an NFT collection26 // @param name Name of the collection27 // @param description Informative description of the collection28 // @param token_prefix Token prefix to represent the collection tokens in UI and user applications29 // @return address Address of the newly created collection30 //25 // Selector: createNonfungibleCollection(string,string,string) e34a684431 // Selector: createNonfungibleCollection(string,string,string) e34a684426 function createNonfungibleCollection(32 function createNonfungibleCollection(27 string memory name,33 string memory name,44 string memory tokenPrefix50 string memory tokenPrefix45 ) external view returns (address);51 ) external view returns (address);465253 // Selector: createERC721MetadataCompatibleRFTCollection(string,string,string,string) a559638854 function createERC721MetadataCompatibleRFTCollection(55 string memory name,56 string memory description,57 string memory tokenPrefix,58 string memory baseUri59 ) external returns (address);6061 // Check if a collection exists62 // @param collection_address Address of the collection in question63 // @return bool Does the collection exist?64 //47 // Selector: isCollectionExist(address) c3de149465 // Selector: isCollectionExist(address) c3de149448 function isCollectionExist(address collectionAddress)66 function isCollectionExist(address collectionAddress)49 external67 externaltests/src/eth/api/UniqueNFT.soldiffbeforeafterboth203 function symbol() external view returns (string memory);203 function symbol() external view returns (string memory);204204205 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.205 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.206 // @dev Throws if `tokenId` is not a valid NFT. URIs are defined in RFC206 //207 // 3986. The URI may point to a JSON file that conforms to the "ERC721207 // @dev If the token has a `url` property and it is not empty, it is returned.208 // Metadata JSON Schema".208 // Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.209 // If the collection property `baseURI` is empty or absent, return "" (empty string)210 // otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix211 // otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).212 //209 // @return token's const_metadata213 // @return token's const_metadata210 //214 //211 // Selector: tokenURI(uint256) c87b56dd215 // Selector: tokenURI(uint256) c87b56ddtests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth334pragma solidity >=0.8.0 <0.9.0;4pragma solidity >=0.8.0 <0.9.0;56// Anonymous struct7struct Tuple0 {8 uint256 field_0;9 string field_1;10}5116// Common stubs holder12// Common stubs holder7interface Dummy {13interface Dummy {12 function supportsInterface(bytes4 interfaceID) external view returns (bool);18 function supportsInterface(bytes4 interfaceID) external view returns (bool);13}19}2021// Inline22interface ERC721Events {23 event Transfer(24 address indexed from,25 address indexed to,26 uint256 indexed tokenId27 );28 event Approval(29 address indexed owner,30 address indexed approved,31 uint256 indexed tokenId32 );33 event ApprovalForAll(34 address indexed owner,35 address indexed operator,36 bool approved37 );38}3940// Inline41interface ERC721MintableEvents {42 event MintingFinished();43}4445// Selector: 4136937746interface TokenProperties is Dummy, ERC165 {47 // @notice Set permissions for token property.48 // @dev Throws error if `msg.sender` is not admin or owner of the collection.49 // @param key Property key.50 // @param is_mutable Permission to mutate property.51 // @param collection_admin Permission to mutate property by collection admin if property is mutable.52 // @param token_owner Permission to mutate property by token owner if property is mutable.53 //54 // Selector: setTokenPropertyPermission(string,bool,bool,bool) 222d97fa55 function setTokenPropertyPermission(56 string memory key,57 bool isMutable,58 bool collectionAdmin,59 bool tokenOwner60 ) external;6162 // @notice Set token property value.63 // @dev Throws error if `msg.sender` has no permission to edit the property.64 // @param tokenId ID of the token.65 // @param key Property key.66 // @param value Property value.67 //68 // Selector: setProperty(uint256,string,bytes) 1752d67b69 function setProperty(70 uint256 tokenId,71 string memory key,72 bytes memory value73 ) external;7475 // @notice Delete token property value.76 // @dev Throws error if `msg.sender` has no permission to edit the property.77 // @param tokenId ID of the token.78 // @param key Property key.79 //80 // Selector: deleteProperty(uint256,string) 066111d181 function deleteProperty(uint256 tokenId, string memory key) external;8283 // @notice Get token property value.84 // @dev Throws error if key not found85 // @param tokenId ID of the token.86 // @param key Property key.87 // @return Property value bytes88 //89 // Selector: property(uint256,string) 7228c32790 function property(uint256 tokenId, string memory key)91 external92 view93 returns (bytes memory);94}9596// Selector: 42966c6897interface ERC721Burnable is Dummy, ERC165 {98 // @notice Burns a specific ERC721 token.99 // @dev Throws unless `msg.sender` is the current RFT owner, or an authorized100 // operator of the current owner.101 // @param tokenId The RFT to approve102 //103 // Selector: burn(uint256) 42966c68104 function burn(uint256 tokenId) external;105}106107// Selector: 58800161108interface ERC721 is Dummy, ERC165, ERC721Events {109 // @notice Count all RFTs assigned to an owner110 // @dev RFTs assigned to the zero address are considered invalid, and this111 // function throws for queries about the zero address.112 // @param owner An address for whom to query the balance113 // @return The number of RFTs owned by `owner`, possibly zero114 //115 // Selector: balanceOf(address) 70a08231116 function balanceOf(address owner) external view returns (uint256);117118 // @notice Find the owner of an RFT119 // @dev RFTs assigned to zero address are considered invalid, and queries120 // about them do throw.121 // Returns special 0xffffffffffffffffffffffffffffffffffffffff address for122 // the tokens that are partially owned.123 // @param tokenId The identifier for an RFT124 // @return The address of the owner of the RFT125 //126 // Selector: ownerOf(uint256) 6352211e127 function ownerOf(uint256 tokenId) external view returns (address);128129 // @dev Not implemented130 //131 // Selector: safeTransferFromWithData(address,address,uint256,bytes) 60a11672132 function safeTransferFromWithData(133 address from,134 address to,135 uint256 tokenId,136 bytes memory data137 ) external;138139 // @dev Not implemented140 //141 // Selector: safeTransferFrom(address,address,uint256) 42842e0e142 function safeTransferFrom(143 address from,144 address to,145 uint256 tokenId146 ) external;147148 // @notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE149 // TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE150 // THEY MAY BE PERMANENTLY LOST151 // @dev Throws unless `msg.sender` is the current owner or an authorized152 // operator for this RFT. Throws if `from` is not the current owner. Throws153 // if `to` is the zero address. Throws if `tokenId` is not a valid RFT.154 // Throws if RFT pieces have multiple owners.155 // @param from The current owner of the NFT156 // @param to The new owner157 // @param tokenId The NFT to transfer158 // @param _value Not used for an NFT159 //160 // Selector: transferFrom(address,address,uint256) 23b872dd161 function transferFrom(162 address from,163 address to,164 uint256 tokenId165 ) external;166167 // @dev Not implemented168 //169 // Selector: approve(address,uint256) 095ea7b3170 function approve(address approved, uint256 tokenId) external;171172 // @dev Not implemented173 //174 // Selector: setApprovalForAll(address,bool) a22cb465175 function setApprovalForAll(address operator, bool approved) external;176177 // @dev Not implemented178 //179 // Selector: getApproved(uint256) 081812fc180 function getApproved(uint256 tokenId) external view returns (address);181182 // @dev Not implemented183 //184 // Selector: isApprovedForAll(address,address) e985e9c5185 function isApprovedForAll(address owner, address operator)186 external187 view188 returns (address);189}190191// Selector: 5b5e139f192interface ERC721Metadata is Dummy, ERC165 {193 // @notice A descriptive name for a collection of RFTs in this contract194 //195 // Selector: name() 06fdde03196 function name() external view returns (string memory);197198 // @notice An abbreviated name for RFTs in this contract199 //200 // Selector: symbol() 95d89b41201 function symbol() external view returns (string memory);202203 // @notice A distinct Uniform Resource Identifier (URI) for a given asset.204 //205 // @dev If the token has a `url` property and it is not empty, it is returned.206 // Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.207 // If the collection property `baseURI` is empty or absent, return "" (empty string)208 // otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix209 // otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).210 //211 // @return token's const_metadata212 //213 // Selector: tokenURI(uint256) c87b56dd214 function tokenURI(uint256 tokenId) external view returns (string memory);215}216217// Selector: 68ccfe89218interface ERC721Mintable is Dummy, ERC165, ERC721MintableEvents {219 // Selector: mintingFinished() 05d2035b220 function mintingFinished() external view returns (bool);221222 // @notice Function to mint token.223 // @dev `tokenId` should be obtained with `nextTokenId` method,224 // unlike standard, you can't specify it manually225 // @param to The new owner226 // @param tokenId ID of the minted RFT227 //228 // Selector: mint(address,uint256) 40c10f19229 function mint(address to, uint256 tokenId) external returns (bool);230231 // @notice Function to mint token with the given tokenUri.232 // @dev `tokenId` should be obtained with `nextTokenId` method,233 // unlike standard, you can't specify it manually234 // @param to The new owner235 // @param tokenId ID of the minted RFT236 // @param tokenUri Token URI that would be stored in the RFT properties237 //238 // Selector: mintWithTokenURI(address,uint256,string) 50bb4e7f239 function mintWithTokenURI(240 address to,241 uint256 tokenId,242 string memory tokenUri243 ) external returns (bool);244245 // @dev Not implemented246 //247 // Selector: finishMinting() 7d64bcb4248 function finishMinting() external returns (bool);249}250251// Selector: 780e9d63252interface ERC721Enumerable is Dummy, ERC165 {253 // @notice Enumerate valid RFTs254 // @param index A counter less than `totalSupply()`255 // @return The token identifier for the `index`th NFT,256 // (sort order not specified)257 //258 // Selector: tokenByIndex(uint256) 4f6ccce7259 function tokenByIndex(uint256 index) external view returns (uint256);260261 // Not implemented262 //263 // Selector: tokenOfOwnerByIndex(address,uint256) 2f745c59264 function tokenOfOwnerByIndex(address owner, uint256 index)265 external266 view267 returns (uint256);268269 // @notice Count RFTs tracked by this contract270 // @return A count of valid RFTs tracked by this contract, where each one of271 // them has an assigned and queryable owner not equal to the zero address272 //273 // Selector: totalSupply() 18160ddd274 function totalSupply() external view returns (uint256);275}1427615// Selector: 7d9262e6277// Selector: 7d9262e616interface Collection is Dummy, ERC165 {278interface Collection is Dummy, ERC165 {160 function setCollectionMintMode(bool mode) external;422 function setCollectionMintMode(bool mode) external;161}423}424425// Selector: d74d154f426interface ERC721UniqueExtensions is Dummy, ERC165 {427 // @notice Transfer ownership of an RFT428 // @dev Throws unless `msg.sender` is the current owner. Throws if `to`429 // is the zero address. Throws if `tokenId` is not a valid RFT.430 // Throws if RFT pieces have multiple owners.431 // @param to The new owner432 // @param tokenId The RFT to transfer433 // @param _value Not used for an RFT434 //435 // Selector: transfer(address,uint256) a9059cbb436 function transfer(address to, uint256 tokenId) external;437438 // @notice Burns a specific ERC721 token.439 // @dev Throws unless `msg.sender` is the current owner or an authorized440 // operator for this RFT. Throws if `from` is not the current owner. Throws441 // if `to` is the zero address. Throws if `tokenId` is not a valid RFT.442 // Throws if RFT pieces have multiple owners.443 // @param from The current owner of the RFT444 // @param tokenId The RFT to transfer445 // @param _value Not used for an RFT446 //447 // Selector: burnFrom(address,uint256) 79cc6790448 function burnFrom(address from, uint256 tokenId) external;449450 // @notice Returns next free RFT ID.451 //452 // Selector: nextTokenId() 75794a3c453 function nextTokenId() external view returns (uint256);454455 // @notice Function to mint multiple tokens.456 // @dev `tokenIds` should be an array of consecutive numbers and first number457 // should be obtained with `nextTokenId` method458 // @param to The new owner459 // @param tokenIds IDs of the minted RFTs460 //461 // Selector: mintBulk(address,uint256[]) 44a9945e462 function mintBulk(address to, uint256[] memory tokenIds)463 external464 returns (bool);465466 // @notice Function to mint multiple tokens with the given tokenUris.467 // @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive468 // numbers and first number should be obtained with `nextTokenId` method469 // @param to The new owner470 // @param tokens array of pairs of token ID and token URI for minted tokens471 //472 // Selector: mintBulkWithTokenURI(address,(uint256,string)[]) 36543006473 function mintBulkWithTokenURI(address to, Tuple0[] memory tokens)474 external475 returns (bool);476}162477163interface UniqueRefungible is Dummy, ERC165, Collection {}478interface UniqueRefungible is479 Dummy,480 ERC165,481 ERC721,482 ERC721Metadata,483 ERC721Enumerable,484 ERC721UniqueExtensions,485 ERC721Mintable,486 ERC721Burnable,487 Collection,488 TokenProperties489{}164490tests/src/eth/collectionHelpersAbi.jsondiffbeforeafterboth30 "stateMutability": "nonpayable",30 "stateMutability": "nonpayable",31 "type": "function"31 "type": "function"32 },32 },33 {34 "inputs": [35 { "internalType": "string", "name": "name", "type": "string" },36 { "internalType": "string", "name": "description", "type": "string" },37 { "internalType": "string", "name": "tokenPrefix", "type": "string" },38 { "internalType": "string", "name": "baseUri", "type": "string" }39 ],40 "name": "createERC721MetadataCompatibleRFTCollection",41 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],42 "stateMutability": "nonpayable",43 "type": "function"44 },33 {45 {34 "inputs": [46 "inputs": [35 { "internalType": "string", "name": "name", "type": "string" },47 { "internalType": "string", "name": "name", "type": "string" },tests/src/eth/reFungible.test.tsdiffbeforeafterbothno changes
tests/src/eth/reFungibleAbi.jsondiffbeforeafterbothno changes
tests/src/eth/reFungibleToken.test.tsdiffbeforeafterboth74});74});757576// FIXME: Need erc721 for ReFubgible.76// FIXME: Need erc721 for ReFubgible.77describe.skip('Check ERC721 token URI for ReFungible', () => {77describe('Check ERC721 token URI for ReFungible', () => {78 itWeb3('Empty tokenURI', async ({web3, api, privateKeyWrapper}) => {78 itWeb3('Empty tokenURI', async ({web3, api, privateKeyWrapper}) => {79 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);79 const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);80 const helper = evmCollectionHelpers(web3, owner);80 const helper = evmCollectionHelpers(web3, owner);277 {277 {278 const result = await contract.methods.transferFrom(owner, receiver, 49).send({from: spender});278 const result = await contract.methods.transferFrom(owner, receiver, 49).send({from: spender});279 const events = normalizeEvents(result.events);279 const events = normalizeEvents(result.events);280 expect(events).to.be.deep.equal([280 expect(events).to.include.deep.members([281 {281 {282 address,282 address,283 event: 'Transfer',283 event: 'Transfer',329 {329 {330 const result = await contract.methods.transfer(receiver, 50).send({from: owner});330 const result = await contract.methods.transfer(receiver, 50).send({from: owner});331 const events = normalizeEvents(result.events);331 const events = normalizeEvents(result.events);332 expect(events).to.be.deep.equal([332 expect(events).to.include.deep.members([333 {333 {334 address,334 address,335 event: 'Transfer',335 event: 'Transfer',443 ]);443 ]);444 });444 });445446 itWeb3('Receiving Transfer event on burning into full ownership', async ({web3, api, privateKeyWrapper}) => {447 const caller = await createEthAccountWithBalance(api, web3, privateKeyWrapper);448 const receiver = await createEthAccountWithBalance(api, web3, privateKeyWrapper);449 const helper = evmCollectionHelpers(web3, caller);450 const result = await helper.methods.createRefungibleCollection('Mint collection', '6', '6').send();451 const {collectionIdAddress, collectionId} = await getCollectionAddressFromResult(api, result);452 const contract = evmCollection(web3, caller, collectionIdAddress, {type: 'ReFungible'});453454 const tokenId = await contract.methods.nextTokenId().call();455 await contract.methods.mint(caller, tokenId).send();456457 const address = tokenIdToAddress(collectionId, tokenId);458459 const tokenContract = new web3.eth.Contract(reFungibleTokenAbi as any, address, {from: caller, ...GAS_ARGS});460 await tokenContract.methods.repartition(2).send();461 await tokenContract.methods.transfer(receiver, 1).send();462463 const events = await recordEvents(contract, async () => 464 await tokenContract.methods.burnFrom(caller, 1).send());465 expect(events).to.deep.equal([466 {467 address: collectionIdAddress,468 event: 'Transfer',469 args: {470 from: '0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF',471 to: receiver,472 tokenId,473 },474 },475 ]);476 });445});477});446478447describe('Refungible: Fees', () => {479describe('Refungible: Fees', () => {tests/src/eth/util/helpers.tsdiffbeforeafterboth31import collectionHelpersAbi from '../collectionHelpersAbi.json';31import collectionHelpersAbi from '../collectionHelpersAbi.json';32import fungibleAbi from '../fungibleAbi.json';32import fungibleAbi from '../fungibleAbi.json';33import nonFungibleAbi from '../nonFungibleAbi.json';33import nonFungibleAbi from '../nonFungibleAbi.json';34import refungibleAbi from '../refungibleAbi.json';34import refungibleAbi from '../reFungibleAbi.json';35import contractHelpersAbi from './contractHelpersAbi.json';35import contractHelpersAbi from './contractHelpersAbi.json';363637export const GAS_ARGS = {gas: 2500000};37export const GAS_ARGS = {gas: 2500000};tests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth446 [key: string]: AugmentedError<ApiType>;446 [key: string]: AugmentedError<ApiType>;447 };447 };448 rmrkCore: {448 rmrkCore: {449 /**450 * Not the target owner of the sent NFT.451 **/449 CannotAcceptNonOwnedNft: AugmentedError<ApiType>;452 CannotAcceptNonOwnedNft: AugmentedError<ApiType>;453 /**454 * Not the target owner of the sent NFT.455 **/450 CannotRejectNonOwnedNft: AugmentedError<ApiType>;456 CannotRejectNonOwnedNft: AugmentedError<ApiType>;457 /**458 * NFT was not sent and is not pending.459 **/451 CannotRejectNonPendingNft: AugmentedError<ApiType>;460 CannotRejectNonPendingNft: AugmentedError<ApiType>;461 /**462 * If an NFT is sent to a descendant, that would form a nesting loop, an ouroboros.463 * Sending to self is redundant.464 **/452 CannotSendToDescendentOrSelf: AugmentedError<ApiType>;465 CannotSendToDescendentOrSelf: AugmentedError<ApiType>;466 /**467 * Too many tokens created in the collection, no new ones are allowed.468 **/453 CollectionFullOrLocked: AugmentedError<ApiType>;469 CollectionFullOrLocked: AugmentedError<ApiType>;470 /**471 * Only destroying collections without tokens is allowed.472 **/454 CollectionNotEmpty: AugmentedError<ApiType>;473 CollectionNotEmpty: AugmentedError<ApiType>;474 /**475 * Collection does not exist, has a wrong type, or does not map to a Unique ID.476 **/455 CollectionUnknown: AugmentedError<ApiType>;477 CollectionUnknown: AugmentedError<ApiType>;478 /**479 * Property of the type of RMRK collection could not be read successfully.480 **/456 CorruptedCollectionType: AugmentedError<ApiType>;481 CorruptedCollectionType: AugmentedError<ApiType>;457 NftTypeEncodeError: AugmentedError<ApiType>;482 /**483 * Could not find an ID for a collection. It is likely there were too many collections created on the chain, causing an overflow.484 **/458 NoAvailableCollectionId: AugmentedError<ApiType>;485 NoAvailableCollectionId: AugmentedError<ApiType>;486 /**487 * Token does not exist, or there is no suitable ID for it, likely too many tokens were created in a collection, causing an overflow.488 **/459 NoAvailableNftId: AugmentedError<ApiType>;489 NoAvailableNftId: AugmentedError<ApiType>;490 /**491 * Could not find an ID for the resource. It is likely there were too many resources created on an NFT, causing an overflow.492 **/460 NoAvailableResourceId: AugmentedError<ApiType>;493 NoAvailableResourceId: AugmentedError<ApiType>;494 /**495 * Token is marked as non-transferable, and thus cannot be transferred.496 **/461 NonTransferable: AugmentedError<ApiType>;497 NonTransferable: AugmentedError<ApiType>;498 /**499 * No permission to perform action.500 **/462 NoPermission: AugmentedError<ApiType>;501 NoPermission: AugmentedError<ApiType>;502 /**503 * No such resource found.504 **/463 ResourceDoesntExist: AugmentedError<ApiType>;505 ResourceDoesntExist: AugmentedError<ApiType>;506 /**507 * Resource is not pending for the operation.508 **/464 ResourceNotPending: AugmentedError<ApiType>;509 ResourceNotPending: AugmentedError<ApiType>;510 /**511 * Could not find a property by the supplied key.512 **/465 RmrkPropertyIsNotFound: AugmentedError<ApiType>;513 RmrkPropertyIsNotFound: AugmentedError<ApiType>;514 /**515 * Too many symbols supplied as the property key. The maximum is [256](up_data_structs::MAX_PROPERTY_KEY_LENGTH).516 **/466 RmrkPropertyKeyIsTooLong: AugmentedError<ApiType>;517 RmrkPropertyKeyIsTooLong: AugmentedError<ApiType>;518 /**519 * Too many bytes supplied as the property value. The maximum is [32768](up_data_structs::MAX_PROPERTY_VALUE_LENGTH).520 **/467 RmrkPropertyValueIsTooLong: AugmentedError<ApiType>;521 RmrkPropertyValueIsTooLong: AugmentedError<ApiType>;522 /**523 * Something went wrong when decoding encoded data from the storage.524 * Perhaps, there was a wrong key supplied for the type, or the data was improperly stored.525 **/468 UnableToDecodeRmrkData: AugmentedError<ApiType>;526 UnableToDecodeRmrkData: AugmentedError<ApiType>;469 /**527 /**470 * Generic error528 * Generic error471 **/529 **/472 [key: string]: AugmentedError<ApiType>;530 [key: string]: AugmentedError<ApiType>;473 };531 };474 rmrkEquip: {532 rmrkEquip: {533 /**534 * Base collection linked to this ID does not exist.535 **/475 BaseDoesntExist: AugmentedError<ApiType>;536 BaseDoesntExist: AugmentedError<ApiType>;537 /**538 * No Theme named "default" is associated with the Base.539 **/476 NeedsDefaultThemeFirst: AugmentedError<ApiType>;540 NeedsDefaultThemeFirst: AugmentedError<ApiType>;541 /**542 * Could not find an ID for a Base collection. It is likely there were too many collections created on the chain, causing an overflow.543 **/477 NoAvailableBaseId: AugmentedError<ApiType>;544 NoAvailableBaseId: AugmentedError<ApiType>;545 /**546 * Could not find a suitable ID for a Part, likely too many Part tokens were created in the Base, causing an overflow547 **/478 NoAvailablePartId: AugmentedError<ApiType>;548 NoAvailablePartId: AugmentedError<ApiType>;549 /**550 * Cannot assign equippables to a fixed Part.551 **/479 NoEquippableOnFixedPart: AugmentedError<ApiType>;552 NoEquippableOnFixedPart: AugmentedError<ApiType>;553 /**554 * Part linked to this ID does not exist.555 **/480 PartDoesntExist: AugmentedError<ApiType>;556 PartDoesntExist: AugmentedError<ApiType>;557 /**558 * No permission to perform action.559 **/481 PermissionError: AugmentedError<ApiType>;560 PermissionError: AugmentedError<ApiType>;482 /**561 /**483 * Generic error562 * Generic error507 [key: string]: AugmentedError<ApiType>;586 [key: string]: AugmentedError<ApiType>;508 };587 };509 structure: {588 structure: {510 /**589 /**511 * While iterating over children, reached the breadth limit.590 * While nesting, reached the breadth limit of nesting, exceeding the provided budget.512 **/591 **/513 BreadthLimit: AugmentedError<ApiType>;592 BreadthLimit: AugmentedError<ApiType>;514 /**593 /**515 * While searching for the owner, reached the depth limit.594 * While nesting, reached the depth limit of nesting, exceeding the provided budget.516 **/595 **/517 DepthLimit: AugmentedError<ApiType>;596 DepthLimit: AugmentedError<ApiType>;518 /**597 /**519 * While searching for the owner, encountered an already checked account, detecting a loop.598 * While nesting, encountered an already checked account, detecting a loop.520 **/599 **/521 OuroborosDetected: AugmentedError<ApiType>;600 OuroborosDetected: AugmentedError<ApiType>;522 /**601 /**523 * Couldn't find the token owner that is itself a token.602 * Couldn't find the token owner that is itself a token.tests/src/interfaces/augment-api-query.tsdiffbeforeafterboth492 [key: string]: QueryableStorageEntry<ApiType>;492 [key: string]: QueryableStorageEntry<ApiType>;493 };493 };494 rmrkCore: {494 rmrkCore: {495 /**496 * Latest yet-unused collection ID.497 **/495 collectionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;498 collectionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;499 /**500 * Mapping from RMRK collection ID to Unique's.501 **/496 uniqueCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;502 uniqueCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;497 /**503 /**498 * Generic query504 * Generic query499 **/505 **/500 [key: string]: QueryableStorageEntry<ApiType>;506 [key: string]: QueryableStorageEntry<ApiType>;501 };507 };502 rmrkEquip: {508 rmrkEquip: {509 /**510 * Checkmark that a Base has a Theme NFT named "default".511 **/503 baseHasDefaultTheme: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;512 baseHasDefaultTheme: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;513 /**514 * Map of a Base ID and a Part ID to an NFT in the Base collection serving as the Part.515 **/504 inernalPartId: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;516 inernalPartId: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;505 /**517 /**506 * Generic query518 * Generic querytests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth347 [key: string]: SubmittableExtrinsicFunction<ApiType>;347 [key: string]: SubmittableExtrinsicFunction<ApiType>;348 };348 };349 rmrkCore: {349 rmrkCore: {350 /**350 /**351 * Accepts an NFT sent from another account to self or owned NFT351 * Accept an NFT sent from another account to self or an owned NFT.352 * 352 * 353 * Parameters:353 * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first.354 * - `origin`: sender of the transaction354 * 355 * # Permissions:356 * - Token-owner-to-be355 * - `rmrk_collection_id`: collection id of the nft to be accepted357 * 358 * # Arguments:359 * - `rmrk_collection_id`: RMRK collection ID of the NFT to be accepted.356 * - `rmrk_nft_id`: nft id of the nft to be accepted360 * - `rmrk_nft_id`: ID of the NFT to be accepted.357 * - `new_owner`: either origin's account ID or origin-owned NFT, whichever the NFT was361 * - `new_owner`: Either the sender's account ID or a sender-owned NFT,358 * sent to362 * whichever the accepted NFT was sent to.359 **/363 **/360 acceptNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;364 acceptNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;361 /**365 /**362 * accept the addition of a new resource to an existing NFT366 * Accept the addition of a newly created pending resource to an existing NFT.363 **/367 * 368 * This transaction is needed when a resource is created and assigned to an NFT369 * by a non-owner, i.e. the collection issuer, with one of the370 * [`add_...` transactions](Pallet::add_basic_resource).371 * 372 * # Permissions:373 * - Token owner374 * 375 * # Arguments:376 * - `rmrk_collection_id`: RMRK collection ID of the NFT.377 * - `rmrk_nft_id`: ID of the NFT with a pending resource to be accepted.378 * - `resource_id`: ID of the newly created pending resource.379 **/364 acceptResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;380 acceptResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;365 /**381 /**366 * accept the removal of a resource of an existing NFT382 * Accept the removal of a removal-pending resource from an NFT.367 **/383 * 384 * This transaction is needed when a non-owner, i.e. the collection issuer,385 * requests a [removal](`Pallet::remove_resource`) of a resource from an NFT.386 * 387 * # Permissions:388 * - Token owner389 * 390 * # Arguments:391 * - `rmrk_collection_id`: RMRK collection ID of the NFT.392 * - `rmrk_nft_id`: ID of the NFT with a resource to be removed.393 * - `resource_id`: ID of the removal-pending resource.394 **/368 acceptResourceRemoval: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;395 acceptResourceRemoval: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;369 /**396 /**370 * Create basic resource397 * Create and set/propose a basic resource for an NFT.371 **/398 * 399 * A basic resource is the simplest, lacking a Base and anything that comes with it.400 * See RMRK docs for more information and examples.401 * 402 * # Permissions:403 * - Collection issuer - if not the token owner, adding the resource will warrant404 * the owner's [acceptance](Pallet::accept_resource).405 * 406 * # Arguments:407 * - `rmrk_collection_id`: RMRK collection ID of the NFT.408 * - `nft_id`: ID of the NFT to assign a resource to.409 * - `resource`: Data of the resource to be created.410 **/372 addBasicResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceBasicResource | { src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceBasicResource]>;411 addBasicResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceBasicResource | { src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceBasicResource]>;373 /**412 /**374 * Create composable resource413 * Create and set/propose a composable resource for an NFT.375 **/414 * 415 * A composable resource links to a Base and has a subset of its Parts it is composed of.416 * See RMRK docs for more information and examples.417 * 418 * # Permissions:419 * - Collection issuer - if not the token owner, adding the resource will warrant420 * the owner's [acceptance](Pallet::accept_resource).421 * 422 * # Arguments:423 * - `rmrk_collection_id`: RMRK collection ID of the NFT.424 * - `nft_id`: ID of the NFT to assign a resource to.425 * - `resource`: Data of the resource to be created.426 **/376 addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceComposableResource]>;427 addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceComposableResource]>;377 /**428 /**378 * Create slot resource429 * Create and set/propose a slot resource for an NFT.379 **/430 * 431 * A slot resource links to a Base and a slot ID in it which it can fit into.432 * See RMRK docs for more information and examples.433 * 434 * # Permissions:435 * - Collection issuer - if not the token owner, adding the resource will warrant436 * the owner's [acceptance](Pallet::accept_resource).437 * 438 * # Arguments:439 * - `rmrk_collection_id`: RMRK collection ID of the NFT.440 * - `nft_id`: ID of the NFT to assign a resource to.441 * - `resource`: Data of the resource to be created.442 **/380 addSlotResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceSlotResource | { base?: any; src?: any; metadata?: any; slot?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceSlotResource]>;443 addSlotResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceSlotResource | { base?: any; src?: any; metadata?: any; slot?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceSlotResource]>;381 /**444 /**382 * burn nft445 * Burn an NFT, destroying it and its nested tokens up to the specified limit.383 **/446 * If the burning budget is exceeded, the transaction is reverted.447 * 448 * This is the way to burn a nested token as well.449 * 450 * For more information, see [`burn_recursively`](pallet_nonfungible::pallet::Pallet::burn_recursively).451 * 452 * # Permissions:453 * * Token owner454 * 455 * # Arguments:456 * - `collection_id`: RMRK ID of the collection in which the NFT to burn belongs to.457 * - `nft_id`: ID of the NFT to be destroyed.458 * - `max_burns`: Maximum number of tokens to burn, assuming nesting. The transaction459 * is reverted if there are more tokens to burn in the nesting tree than this number.460 * This is primarily a mechanism of transaction weight control.461 **/384 burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, maxBurns: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;462 burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, maxBurns: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;385 /**463 /**386 * Change the issuer of a collection464 * Change the issuer of a collection. Analogous to Unique's collection's [`owner`](up_data_structs::Collection).387 * 465 * 388 * Parameters:466 * # Permissions:389 * - `origin`: sender of the transaction467 * * Collection issuer468 * 390 * - `collection_id`: collection id of the nft to change issuer of469 * # Arguments:470 * - `collection_id`: RMRK collection ID to change the issuer of.391 * - `new_issuer`: Collection's new issuer471 * - `new_issuer`: Collection's new issuer.392 **/472 **/393 changeCollectionIssuer: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newIssuer: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, MultiAddress]>;473 changeCollectionIssuer: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newIssuer: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, MultiAddress]>;394 /**474 /**395 * Create a collection475 * Create a new collection of NFTs.396 **/476 * 477 * # Permissions:478 * * Anyone - will be assigned as the issuer of the collection.479 * 480 * # Arguments:481 * - `metadata`: Metadata describing the collection, e.g. IPFS hash. Cannot be changed.482 * - `max`: Optional maximum number of tokens.483 * - `symbol`: UTF-8 string with token prefix, by which to represent the token in wallets and UIs.484 * Analogous to Unique's [`token_prefix`](up_data_structs::Collection). Cannot be changed.485 **/397 createCollection: AugmentedSubmittable<(metadata: Bytes | string | Uint8Array, max: Option<u32> | null | object | string | Uint8Array, symbol: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, Option<u32>, Bytes]>;486 createCollection: AugmentedSubmittable<(metadata: Bytes | string | Uint8Array, max: Option<u32> | null | object | string | Uint8Array, symbol: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, Option<u32>, Bytes]>;398 /**487 /**399 * destroy collection488 * Destroy a collection.400 **/489 * 490 * Only empty collections can be destroyed. If it has any tokens, they must be burned first.491 * 492 * # Permissions:493 * * Collection issuer494 * 495 * # Arguments:496 * - `collection_id`: RMRK ID of the collection to destroy.497 **/401 destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;498 destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;402 /**499 /**403 * lock collection500 * "Lock" the collection and prevent new token creation. Cannot be undone.404 **/501 * 502 * # Permissions:503 * * Collection issuer504 * 505 * # Arguments:506 * - `collection_id`: RMRK ID of the collection to lock.507 **/405 lockCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;508 lockCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;406 /**509 /**407 * Mints an NFT in the specified collection510 * Mint an NFT in a specified collection.408 * Sets metadata and the royalty attribute511 * 409 * 512 * # Permissions:410 * Parameters:513 * * Collection issuer411 * - `collection_id`: The class of the asset to be minted.514 * 412 * - `nft_id`: The nft value of the asset to be minted.515 * # Arguments:413 * - `recipient`: Receiver of the royalty516 * - `owner`: Owner account of the NFT. If set to None, defaults to the sender (collection issuer).414 * - `royalty`: Permillage reward from each trade for the Recipient517 * - `collection_id`: RMRK collection ID for the NFT to be minted within. Cannot be changed.415 * - `metadata`: Arbitrary data about an nft, e.g. IPFS hash518 * - `recipient`: Receiver account of the royalty. Has no effect if the `royalty_amount` is not set. Cannot be changed.416 * - `transferable`: Ability to transfer this NFT519 * - `royalty_amount`: Optional permillage reward from each trade for the `recipient`. Cannot be changed.417 **/520 * - `metadata`: Arbitrary data about an NFT, e.g. IPFS hash. Cannot be changed.521 * - `transferable`: Can this NFT be transferred? Cannot be changed.522 * - `resources`: Resource data to be added to the NFT immediately after minting.523 **/418 mintNft: AugmentedSubmittable<(owner: Option<AccountId32> | null | object | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option<AccountId32> | null | object | string | Uint8Array, royaltyAmount: Option<Permill> | null | object | string | Uint8Array, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array, resources: Option<Vec<RmrkTraitsResourceResourceTypes>> | null | object | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Option<AccountId32>, u32, Option<AccountId32>, Option<Permill>, Bytes, bool, Option<Vec<RmrkTraitsResourceResourceTypes>>]>;524 mintNft: AugmentedSubmittable<(owner: Option<AccountId32> | null | object | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option<AccountId32> | null | object | string | Uint8Array, royaltyAmount: Option<Permill> | null | object | string | Uint8Array, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array, resources: Option<Vec<RmrkTraitsResourceResourceTypes>> | null | object | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Option<AccountId32>, u32, Option<AccountId32>, Option<Permill>, Bytes, bool, Option<Vec<RmrkTraitsResourceResourceTypes>>]>;419 /**525 /**420 * Rejects an NFT sent from another account to self or owned NFT526 * Reject an NFT sent from another account to self or owned NFT.421 * 527 * The NFT in question will not be sent back and burnt instead.422 * Parameters:528 * 423 * - `origin`: sender of the transaction529 * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first.424 * - `rmrk_collection_id`: collection id of the nft to be accepted530 * 425 * - `rmrk_nft_id`: nft id of the nft to be accepted531 * # Permissions:426 **/532 * - Token-owner-to-be-not533 * 534 * # Arguments:535 * - `rmrk_collection_id`: RMRK ID of the NFT to be rejected.536 * - `rmrk_nft_id`: ID of the NFT to be rejected.537 **/427 rejectNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;538 rejectNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;428 /**539 /**429 * remove resource540 * Remove and erase a resource from an NFT.430 **/541 * 542 * If the sender does not own the NFT, then it will be pending confirmation,543 * and will have to be [accepted](Pallet::accept_resource_removal) by the token owner.544 * 545 * # Permissions546 * - Collection issuer547 * 548 * # Arguments549 * - `collection_id`: RMRK ID of a collection to which the NFT making use of the resource belongs to.550 * - `nft_id`: ID of the NFT with a resource to be removed.551 * - `resource_id`: ID of the resource to be removed.552 **/431 removeResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;553 removeResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;432 /**554 /**433 * Transfers a NFT from an Account or NFT A to another Account or NFT B555 * Transfer an NFT from an account/NFT A to another account/NFT B.434 * 556 * The token must be transferable. Nesting cannot occur deeper than the [`NESTING_BUDGET`].435 * Parameters:557 * 436 * - `origin`: sender of the transaction558 * If the target owner is an NFT owned by another account, then the NFT will enter437 * - `rmrk_collection_id`: collection id of the nft to be transferred559 * the pending state and will have to be accepted by the other account.438 * - `rmrk_nft_id`: nft id of the nft to be transferred560 * 439 * - `new_owner`: new owner of the nft which can be either an account or a NFT561 * # Permissions:440 **/562 * - Token owner563 * 564 * # Arguments:565 * - `collection_id`: RMRK ID of the collection of the NFT to be transferred.566 * - `nft_id`: ID of the NFT to be transferred.567 * - `new_owner`: New owner of the nft which can be either an account or a NFT.568 **/441 send: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;569 send: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;442 /**570 /**443 * set a different order of resource priority571 * Set a different order of resource priorities for an NFT. Priorities can be used,444 **/572 * for example, for order of rendering.573 * 574 * Note that the priorities are not updated automatically, and are an empty vector575 * by default. There is no pre-set definition for the order to be particular,576 * it can be interpreted arbitrarily use-case by use-case.577 * 578 * # Permissions:579 * - Token owner580 * 581 * # Arguments:582 * - `rmrk_collection_id`: RMRK collection ID of the NFT.583 * - `rmrk_nft_id`: ID of the NFT to rearrange resource priorities for.584 * - `priorities`: Ordered vector of resource IDs.585 **/445 setPriority: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, priorities: Vec<u32> | (u32 | AnyNumber | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<u32>]>;586 setPriority: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, priorities: Vec<u32> | (u32 | AnyNumber | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<u32>]>;446 /**587 /**447 * set a custom value on an NFT588 * Add or edit a custom user property, a key-value pair, describing the metadata448 **/589 * of a token or a collection, on either one of these.590 * 591 * Note that in this proxy implementation many details regarding RMRK are stored592 * as scoped properties prefixed with "rmrk:", normally inaccessible593 * to external transactions and RPCs.594 * 595 * # Permissions:596 * - Collection issuer - in case of collection property597 * - Token owner - in case of NFT property598 * 599 * # Arguments:600 * - `rmrk_collection_id`: RMRK collection ID.601 * - `maybe_nft_id`: Optional ID of the NFT. If left empty, then the property is set for the collection.602 * - `key`: Key of the custom property to be referenced by.603 * - `value`: Value of the custom property to be stored.604 **/449 setProperty: AugmentedSubmittable<(rmrkCollectionId: Compact<u32> | AnyNumber | Uint8Array, maybeNftId: Option<u32> | null | object | string | Uint8Array, key: Bytes | string | Uint8Array, value: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Option<u32>, Bytes, Bytes]>;605 setProperty: AugmentedSubmittable<(rmrkCollectionId: Compact<u32> | AnyNumber | Uint8Array, maybeNftId: Option<u32> | null | object | string | Uint8Array, key: Bytes | string | Uint8Array, value: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Option<u32>, Bytes, Bytes]>;450 /**606 /**451 * Generic tx607 * Generic tx452 **/608 **/453 [key: string]: SubmittableExtrinsicFunction<ApiType>;609 [key: string]: SubmittableExtrinsicFunction<ApiType>;454 };610 };455 rmrkEquip: {611 rmrkEquip: {456 /**612 /**457 * Creates a new Base.613 * Create a new Base.458 * Modeled after [base interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/base.md)614 * 615 * Modeled after the [Base interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/base.md)459 * 616 * 460 * Parameters:617 * # Permissions461 * - origin: Caller, will be assigned as the issuer of the Base618 * - Anyone - will be assigned as the issuer of the Base.462 * - base_type: media type, e.g. "svg"619 * 620 * # Arguments:621 * - `base_type`: Arbitrary media type, e.g. "svg".463 * - symbol: arbitrary client-chosen symbol622 * - `symbol`: Arbitrary client-chosen symbol.464 * - parts: array of Fixed and Slot parts composing the base, confined in length by623 * - `parts`: Array of Fixed and Slot Parts composing the Base,465 * RmrkPartsLimit624 * confined in length by [`RmrkPartsLimit`](up_data_structs::RmrkPartsLimit).466 **/625 **/467 createBase: AugmentedSubmittable<(baseType: Bytes | string | Uint8Array, symbol: Bytes | string | Uint8Array, parts: Vec<RmrkTraitsPartPartType> | (RmrkTraitsPartPartType | { FixedPart: any } | { SlotPart: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Bytes, Bytes, Vec<RmrkTraitsPartPartType>]>;626 createBase: AugmentedSubmittable<(baseType: Bytes | string | Uint8Array, symbol: Bytes | string | Uint8Array, parts: Vec<RmrkTraitsPartPartType> | (RmrkTraitsPartPartType | { FixedPart: any } | { SlotPart: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Bytes, Bytes, Vec<RmrkTraitsPartPartType>]>;627 /**628 * Update the array of Collections allowed to be equipped to a Base's specified Slot Part.629 * 630 * Modeled after [equippable interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/equippable.md).631 * 632 * # Permissions:633 * - Base issuer634 * 635 * # Arguments:636 * - `base_id`: Base containing the Slot Part to be updated.637 * - `part_id`: Slot Part whose Equippable List is being updated.638 * - `equippables`: List of equippables that will override the current Equippables list.639 **/468 equippable: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, slotId: u32 | AnyNumber | Uint8Array, equippables: RmrkTraitsPartEquippableList | { All: any } | { Empty: any } | { Custom: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsPartEquippableList]>;640 equippable: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, slotId: u32 | AnyNumber | Uint8Array, equippables: RmrkTraitsPartEquippableList | { All: any } | { Empty: any } | { Custom: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsPartEquippableList]>;469 /**641 /**470 * Adds a Theme to a Base.642 * Add a Theme to a Base.471 * Modeled after [themeadd interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/themeadd.md)643 * A Theme named "default" is required prior to adding other Themes.644 * 645 * Modeled after [Themeadd interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/themeadd.md).472 * Themes are stored in the Themes storage646 * 473 * A Theme named "default" is required prior to adding other Themes.647 * # Permissions:474 * 648 * - Base issuer475 * Parameters:649 * 476 * - origin: The caller of the function, must be issuer of the base650 * # Arguments:477 * - base_id: The Base containing the Theme to be updated651 * - `base_id`: Base ID containing the Theme to be updated.478 * - theme: The Theme to add to the Base. A Theme has a name and properties, which are an652 * - `theme`: Theme to add to the Base. A Theme has a name and properties, which are an479 * array of [key, value, inherit].653 * array of [key, value, inherit].480 * - key: arbitrary BoundedString, defined by client654 * - `key`: Arbitrary BoundedString, defined by client.481 * - value: arbitrary BoundedString, defined by client655 * - `value`: Arbitrary BoundedString, defined by client.482 * - inherit: optional bool656 * - `inherit`: Optional bool.483 **/657 **/484 themeAdd: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, theme: RmrkTraitsTheme | { name?: any; properties?: any; inherit?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, RmrkTraitsTheme]>;658 themeAdd: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, theme: RmrkTraitsTheme | { name?: any; properties?: any; inherit?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, RmrkTraitsTheme]>;485 /**659 /**486 * Generic tx660 * Generic txtests/src/interfaces/default/types.tsdiffbeforeafterboth1314/** @name PalletRmrkCoreError */1314/** @name PalletRmrkCoreError */1315export interface PalletRmrkCoreError extends Enum {1315export interface PalletRmrkCoreError extends Enum {1316 readonly isCorruptedCollectionType: boolean;1316 readonly isCorruptedCollectionType: boolean;1317 readonly isNftTypeEncodeError: boolean;1318 readonly isRmrkPropertyKeyIsTooLong: boolean;1317 readonly isRmrkPropertyKeyIsTooLong: boolean;1319 readonly isRmrkPropertyValueIsTooLong: boolean;1318 readonly isRmrkPropertyValueIsTooLong: boolean;1320 readonly isRmrkPropertyIsNotFound: boolean;1319 readonly isRmrkPropertyIsNotFound: boolean;1333 readonly isCannotRejectNonPendingNft: boolean;1332 readonly isCannotRejectNonPendingNft: boolean;1334 readonly isResourceNotPending: boolean;1333 readonly isResourceNotPending: boolean;1335 readonly isNoAvailableResourceId: boolean;1334 readonly isNoAvailableResourceId: boolean;1336 readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';1335 readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';1337}1336}133813371339/** @name PalletRmrkCoreEvent */1338/** @name PalletRmrkCoreEvent */245924582460/** @name UpDataStructsCreateReFungibleData */2459/** @name UpDataStructsCreateReFungibleData */2461export interface UpDataStructsCreateReFungibleData extends Struct {2460export interface UpDataStructsCreateReFungibleData extends Struct {2462 readonly constData: Bytes;2463 readonly pieces: u128;2461 readonly pieces: u128;2464 readonly properties: Vec<UpDataStructsProperty>;2462 readonly properties: Vec<UpDataStructsProperty>;2465}2463}246624642467/** @name UpDataStructsCreateRefungibleExData */2465/** @name UpDataStructsCreateRefungibleExData */2468export interface UpDataStructsCreateRefungibleExData extends Struct {2466export interface UpDataStructsCreateRefungibleExData extends Struct {2469 readonly constData: Bytes;2470 readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;2467 readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;2471 readonly properties: Vec<UpDataStructsProperty>;2468 readonly properties: Vec<UpDataStructsProperty>;2472}2469}tests/src/interfaces/lookup.tsdiffbeforeafterboth1501 * Lookup188: up_data_structs::CreateReFungibleData1501 * Lookup188: up_data_structs::CreateReFungibleData1502 **/1502 **/1503 UpDataStructsCreateReFungibleData: {1503 UpDataStructsCreateReFungibleData: {1504 constData: 'Bytes',1505 pieces: 'u128',1504 pieces: 'u128',1506 properties: 'Vec<UpDataStructsProperty>'1505 properties: 'Vec<UpDataStructsProperty>'1507 },1506 },1508 /**1507 /**1509 * Lookup193: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1508 * Lookup192: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1510 **/1509 **/1511 UpDataStructsCreateItemExData: {1510 UpDataStructsCreateItemExData: {1512 _enum: {1511 _enum: {1513 NFT: 'Vec<UpDataStructsCreateNftExData>',1512 NFT: 'Vec<UpDataStructsCreateNftExData>',1516 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExData'1515 RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExData'1517 }1516 }1518 },1517 },1519 /**1518 /**1520 * Lookup195: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1519 * Lookup194: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1521 **/1520 **/1522 UpDataStructsCreateNftExData: {1521 UpDataStructsCreateNftExData: {1523 properties: 'Vec<UpDataStructsProperty>',1522 properties: 'Vec<UpDataStructsProperty>',1524 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'1523 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'1525 },1524 },1526 /**1525 /**1527 * Lookup202: up_data_structs::CreateRefungibleExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1526 * Lookup201: up_data_structs::CreateRefungibleExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>1528 **/1527 **/1529 UpDataStructsCreateRefungibleExData: {1528 UpDataStructsCreateRefungibleExData: {1530 constData: 'Bytes',1531 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',1529 users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',1532 properties: 'Vec<UpDataStructsProperty>'1530 properties: 'Vec<UpDataStructsProperty>'1533 },1531 },1534 /**1532 /**1535 * Lookup204: pallet_unique_scheduler::pallet::Call<T>1533 * Lookup203: pallet_unique_scheduler::pallet::Call<T>1536 **/1534 **/1537 PalletUniqueSchedulerCall: {1535 PalletUniqueSchedulerCall: {1538 _enum: {1536 _enum: {1539 schedule_named: {1537 schedule_named: {1555 }1553 }1556 }1554 }1557 },1555 },1558 /**1556 /**1559 * Lookup206: frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>1557 * Lookup205: frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>1560 **/1558 **/1561 FrameSupportScheduleMaybeHashed: {1559 FrameSupportScheduleMaybeHashed: {1562 _enum: {1560 _enum: {1563 Value: 'Call',1561 Value: 'Call',1564 Hash: 'H256'1562 Hash: 'H256'1565 }1563 }1566 },1564 },1567 /**1565 /**1568 * Lookup207: pallet_template_transaction_payment::Call<T>1566 * Lookup206: pallet_template_transaction_payment::Call<T>1569 **/1567 **/1570 PalletTemplateTransactionPaymentCall: 'Null',1568 PalletTemplateTransactionPaymentCall: 'Null',1571 /**1569 /**1572 * Lookup208: pallet_structure::pallet::Call<T>1570 * Lookup207: pallet_structure::pallet::Call<T>1573 **/1571 **/1574 PalletStructureCall: 'Null',1572 PalletStructureCall: 'Null',1575 /**1573 /**1576 * Lookup209: pallet_rmrk_core::pallet::Call<T>1574 * Lookup208: pallet_rmrk_core::pallet::Call<T>1577 **/1575 **/1578 PalletRmrkCoreCall: {1576 PalletRmrkCoreCall: {1579 _enum: {1577 _enum: {1580 create_collection: {1578 create_collection: {1663 }1661 }1664 }1662 }1665 },1663 },1666 /**1664 /**1667 * Lookup215: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1665 * Lookup214: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1668 **/1666 **/1669 RmrkTraitsResourceResourceTypes: {1667 RmrkTraitsResourceResourceTypes: {1670 _enum: {1668 _enum: {1671 Basic: 'RmrkTraitsResourceBasicResource',1669 Basic: 'RmrkTraitsResourceBasicResource',1672 Composable: 'RmrkTraitsResourceComposableResource',1670 Composable: 'RmrkTraitsResourceComposableResource',1673 Slot: 'RmrkTraitsResourceSlotResource'1671 Slot: 'RmrkTraitsResourceSlotResource'1674 }1672 }1675 },1673 },1676 /**1674 /**1677 * Lookup217: rmrk_traits::resource::BasicResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1675 * Lookup216: rmrk_traits::resource::BasicResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1678 **/1676 **/1679 RmrkTraitsResourceBasicResource: {1677 RmrkTraitsResourceBasicResource: {1680 src: 'Option<Bytes>',1678 src: 'Option<Bytes>',1681 metadata: 'Option<Bytes>',1679 metadata: 'Option<Bytes>',1682 license: 'Option<Bytes>',1680 license: 'Option<Bytes>',1683 thumb: 'Option<Bytes>'1681 thumb: 'Option<Bytes>'1684 },1682 },1685 /**1683 /**1686 * Lookup219: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1684 * Lookup218: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1687 **/1685 **/1688 RmrkTraitsResourceComposableResource: {1686 RmrkTraitsResourceComposableResource: {1689 parts: 'Vec<u32>',1687 parts: 'Vec<u32>',1690 base: 'u32',1688 base: 'u32',1693 license: 'Option<Bytes>',1691 license: 'Option<Bytes>',1694 thumb: 'Option<Bytes>'1692 thumb: 'Option<Bytes>'1695 },1693 },1696 /**1694 /**1697 * Lookup220: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1695 * Lookup219: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1698 **/1696 **/1699 RmrkTraitsResourceSlotResource: {1697 RmrkTraitsResourceSlotResource: {1700 base: 'u32',1698 base: 'u32',1701 src: 'Option<Bytes>',1699 src: 'Option<Bytes>',1704 license: 'Option<Bytes>',1702 license: 'Option<Bytes>',1705 thumb: 'Option<Bytes>'1703 thumb: 'Option<Bytes>'1706 },1704 },1707 /**1705 /**1708 * Lookup222: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>1706 * Lookup221: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>1709 **/1707 **/1710 RmrkTraitsNftAccountIdOrCollectionNftTuple: {1708 RmrkTraitsNftAccountIdOrCollectionNftTuple: {1711 _enum: {1709 _enum: {1712 AccountId: 'AccountId32',1710 AccountId: 'AccountId32',1713 CollectionAndNftTuple: '(u32,u32)'1711 CollectionAndNftTuple: '(u32,u32)'1714 }1712 }1715 },1713 },1716 /**1714 /**1717 * Lookup226: pallet_rmrk_equip::pallet::Call<T>1715 * Lookup225: pallet_rmrk_equip::pallet::Call<T>1718 **/1716 **/1719 PalletRmrkEquipCall: {1717 PalletRmrkEquipCall: {1720 _enum: {1718 _enum: {1721 create_base: {1719 create_base: {1734 }1732 }1735 }1733 }1736 },1734 },1737 /**1735 /**1738 * Lookup229: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1736 * Lookup228: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1739 **/1737 **/1740 RmrkTraitsPartPartType: {1738 RmrkTraitsPartPartType: {1741 _enum: {1739 _enum: {1742 FixedPart: 'RmrkTraitsPartFixedPart',1740 FixedPart: 'RmrkTraitsPartFixedPart',1743 SlotPart: 'RmrkTraitsPartSlotPart'1741 SlotPart: 'RmrkTraitsPartSlotPart'1744 }1742 }1745 },1743 },1746 /**1744 /**1747 * Lookup231: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>1745 * Lookup230: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>1748 **/1746 **/1749 RmrkTraitsPartFixedPart: {1747 RmrkTraitsPartFixedPart: {1750 id: 'u32',1748 id: 'u32',1751 z: 'u32',1749 z: 'u32',1752 src: 'Bytes'1750 src: 'Bytes'1753 },1751 },1754 /**1752 /**1755 * Lookup232: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1753 * Lookup231: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1756 **/1754 **/1757 RmrkTraitsPartSlotPart: {1755 RmrkTraitsPartSlotPart: {1758 id: 'u32',1756 id: 'u32',1759 equippable: 'RmrkTraitsPartEquippableList',1757 equippable: 'RmrkTraitsPartEquippableList',1760 src: 'Bytes',1758 src: 'Bytes',1761 z: 'u32'1759 z: 'u32'1762 },1760 },1763 /**1761 /**1764 * Lookup233: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>1762 * Lookup232: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>1765 **/1763 **/1766 RmrkTraitsPartEquippableList: {1764 RmrkTraitsPartEquippableList: {1767 _enum: {1765 _enum: {1768 All: 'Null',1766 All: 'Null',1769 Empty: 'Null',1767 Empty: 'Null',1770 Custom: 'Vec<u32>'1768 Custom: 'Vec<u32>'1771 }1769 }1772 },1770 },1773 /**1771 /**1774 * Lookup235: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>, S>>1772 * Lookup234: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>, S>>1775 **/1773 **/1776 RmrkTraitsTheme: {1774 RmrkTraitsTheme: {1777 name: 'Bytes',1775 name: 'Bytes',1778 properties: 'Vec<RmrkTraitsThemeThemeProperty>',1776 properties: 'Vec<RmrkTraitsThemeThemeProperty>',1779 inherit: 'bool'1777 inherit: 'bool'1780 },1778 },1781 /**1779 /**1782 * Lookup237: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>1780 * Lookup236: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>1783 **/1781 **/1784 RmrkTraitsThemeThemeProperty: {1782 RmrkTraitsThemeThemeProperty: {1785 key: 'Bytes',1783 key: 'Bytes',1786 value: 'Bytes'1784 value: 'Bytes'1787 },1785 },1788 /**1786 /**1789 * Lookup239: pallet_evm::pallet::Call<T>1787 * Lookup238: pallet_evm::pallet::Call<T>1790 **/1788 **/1791 PalletEvmCall: {1789 PalletEvmCall: {1792 _enum: {1790 _enum: {1793 withdraw: {1791 withdraw: {1828 }1826 }1829 }1827 }1830 },1828 },1831 /**1829 /**1832 * Lookup245: pallet_ethereum::pallet::Call<T>1830 * Lookup244: pallet_ethereum::pallet::Call<T>1833 **/1831 **/1834 PalletEthereumCall: {1832 PalletEthereumCall: {1835 _enum: {1833 _enum: {1836 transact: {1834 transact: {1837 transaction: 'EthereumTransactionTransactionV2'1835 transaction: 'EthereumTransactionTransactionV2'1838 }1836 }1839 }1837 }1840 },1838 },1841 /**1839 /**1842 * Lookup246: ethereum::transaction::TransactionV21840 * Lookup245: ethereum::transaction::TransactionV21843 **/1841 **/1844 EthereumTransactionTransactionV2: {1842 EthereumTransactionTransactionV2: {1845 _enum: {1843 _enum: {1846 Legacy: 'EthereumTransactionLegacyTransaction',1844 Legacy: 'EthereumTransactionLegacyTransaction',1847 EIP2930: 'EthereumTransactionEip2930Transaction',1845 EIP2930: 'EthereumTransactionEip2930Transaction',1848 EIP1559: 'EthereumTransactionEip1559Transaction'1846 EIP1559: 'EthereumTransactionEip1559Transaction'1849 }1847 }1850 },1848 },1851 /**1849 /**1852 * Lookup247: ethereum::transaction::LegacyTransaction1850 * Lookup246: ethereum::transaction::LegacyTransaction1853 **/1851 **/1854 EthereumTransactionLegacyTransaction: {1852 EthereumTransactionLegacyTransaction: {1855 nonce: 'U256',1853 nonce: 'U256',1856 gasPrice: 'U256',1854 gasPrice: 'U256',1860 input: 'Bytes',1858 input: 'Bytes',1861 signature: 'EthereumTransactionTransactionSignature'1859 signature: 'EthereumTransactionTransactionSignature'1862 },1860 },1863 /**1861 /**1864 * Lookup248: ethereum::transaction::TransactionAction1862 * Lookup247: ethereum::transaction::TransactionAction1865 **/1863 **/1866 EthereumTransactionTransactionAction: {1864 EthereumTransactionTransactionAction: {1867 _enum: {1865 _enum: {1868 Call: 'H160',1866 Call: 'H160',1869 Create: 'Null'1867 Create: 'Null'1870 }1868 }1871 },1869 },1872 /**1870 /**1873 * Lookup249: ethereum::transaction::TransactionSignature1871 * Lookup248: ethereum::transaction::TransactionSignature1874 **/1872 **/1875 EthereumTransactionTransactionSignature: {1873 EthereumTransactionTransactionSignature: {1876 v: 'u64',1874 v: 'u64',1877 r: 'H256',1875 r: 'H256',1878 s: 'H256'1876 s: 'H256'1879 },1877 },1880 /**1878 /**1881 * Lookup251: ethereum::transaction::EIP2930Transaction1879 * Lookup250: ethereum::transaction::EIP2930Transaction1882 **/1880 **/1883 EthereumTransactionEip2930Transaction: {1881 EthereumTransactionEip2930Transaction: {1884 chainId: 'u64',1882 chainId: 'u64',1885 nonce: 'U256',1883 nonce: 'U256',1893 r: 'H256',1891 r: 'H256',1894 s: 'H256'1892 s: 'H256'1895 },1893 },1896 /**1894 /**1897 * Lookup253: ethereum::transaction::AccessListItem1895 * Lookup252: ethereum::transaction::AccessListItem1898 **/1896 **/1899 EthereumTransactionAccessListItem: {1897 EthereumTransactionAccessListItem: {1900 address: 'H160',1898 address: 'H160',1901 storageKeys: 'Vec<H256>'1899 storageKeys: 'Vec<H256>'1902 },1900 },1903 /**1901 /**1904 * Lookup254: ethereum::transaction::EIP1559Transaction1902 * Lookup253: ethereum::transaction::EIP1559Transaction1905 **/1903 **/1906 EthereumTransactionEip1559Transaction: {1904 EthereumTransactionEip1559Transaction: {1907 chainId: 'u64',1905 chainId: 'u64',1908 nonce: 'U256',1906 nonce: 'U256',1917 r: 'H256',1915 r: 'H256',1918 s: 'H256'1916 s: 'H256'1919 },1917 },1920 /**1918 /**1921 * Lookup255: pallet_evm_migration::pallet::Call<T>1919 * Lookup254: pallet_evm_migration::pallet::Call<T>1922 **/1920 **/1923 PalletEvmMigrationCall: {1921 PalletEvmMigrationCall: {1924 _enum: {1922 _enum: {1925 begin: {1923 begin: {1935 }1933 }1936 }1934 }1937 },1935 },1938 /**1936 /**1939 * Lookup258: pallet_sudo::pallet::Event<T>1937 * Lookup257: pallet_sudo::pallet::Event<T>1940 **/1938 **/1941 PalletSudoEvent: {1939 PalletSudoEvent: {1942 _enum: {1940 _enum: {1943 Sudid: {1941 Sudid: {1951 }1949 }1952 }1950 }1953 },1951 },1954 /**1952 /**1955 * Lookup260: sp_runtime::DispatchError1953 * Lookup259: sp_runtime::DispatchError1956 **/1954 **/1957 SpRuntimeDispatchError: {1955 SpRuntimeDispatchError: {1958 _enum: {1956 _enum: {1959 Other: 'Null',1957 Other: 'Null',1968 Transactional: 'SpRuntimeTransactionalError'1966 Transactional: 'SpRuntimeTransactionalError'1969 }1967 }1970 },1968 },1971 /**1969 /**1972 * Lookup261: sp_runtime::ModuleError1970 * Lookup260: sp_runtime::ModuleError1973 **/1971 **/1974 SpRuntimeModuleError: {1972 SpRuntimeModuleError: {1975 index: 'u8',1973 index: 'u8',1976 error: '[u8;4]'1974 error: '[u8;4]'1977 },1975 },1978 /**1976 /**1979 * Lookup262: sp_runtime::TokenError1977 * Lookup261: sp_runtime::TokenError1980 **/1978 **/1981 SpRuntimeTokenError: {1979 SpRuntimeTokenError: {1982 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']1980 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']1983 },1981 },1984 /**1982 /**1985 * Lookup263: sp_runtime::ArithmeticError1983 * Lookup262: sp_runtime::ArithmeticError1986 **/1984 **/1987 SpRuntimeArithmeticError: {1985 SpRuntimeArithmeticError: {1988 _enum: ['Underflow', 'Overflow', 'DivisionByZero']1986 _enum: ['Underflow', 'Overflow', 'DivisionByZero']1989 },1987 },1990 /**1988 /**1991 * Lookup264: sp_runtime::TransactionalError1989 * Lookup263: sp_runtime::TransactionalError1992 **/1990 **/1993 SpRuntimeTransactionalError: {1991 SpRuntimeTransactionalError: {1994 _enum: ['LimitReached', 'NoLayer']1992 _enum: ['LimitReached', 'NoLayer']1995 },1993 },1996 /**1994 /**1997 * Lookup265: pallet_sudo::pallet::Error<T>1995 * Lookup264: pallet_sudo::pallet::Error<T>1998 **/1996 **/1999 PalletSudoError: {1997 PalletSudoError: {2000 _enum: ['RequireSudo']1998 _enum: ['RequireSudo']2001 },1999 },2002 /**2000 /**2003 * Lookup266: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>2001 * Lookup265: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>2004 **/2002 **/2005 FrameSystemAccountInfo: {2003 FrameSystemAccountInfo: {2006 nonce: 'u32',2004 nonce: 'u32',2007 consumers: 'u32',2005 consumers: 'u32',2008 providers: 'u32',2006 providers: 'u32',2009 sufficients: 'u32',2007 sufficients: 'u32',2010 data: 'PalletBalancesAccountData'2008 data: 'PalletBalancesAccountData'2011 },2009 },2012 /**2010 /**2013 * Lookup267: frame_support::weights::PerDispatchClass<T>2011 * Lookup266: frame_support::weights::PerDispatchClass<T>2014 **/2012 **/2015 FrameSupportWeightsPerDispatchClassU64: {2013 FrameSupportWeightsPerDispatchClassU64: {2016 normal: 'u64',2014 normal: 'u64',2017 operational: 'u64',2015 operational: 'u64',2018 mandatory: 'u64'2016 mandatory: 'u64'2019 },2017 },2020 /**2018 /**2021 * Lookup268: sp_runtime::generic::digest::Digest2019 * Lookup267: sp_runtime::generic::digest::Digest2022 **/2020 **/2023 SpRuntimeDigest: {2021 SpRuntimeDigest: {2024 logs: 'Vec<SpRuntimeDigestDigestItem>'2022 logs: 'Vec<SpRuntimeDigestDigestItem>'2025 },2023 },2026 /**2024 /**2027 * Lookup270: sp_runtime::generic::digest::DigestItem2025 * Lookup269: sp_runtime::generic::digest::DigestItem2028 **/2026 **/2029 SpRuntimeDigestDigestItem: {2027 SpRuntimeDigestDigestItem: {2030 _enum: {2028 _enum: {2031 Other: 'Bytes',2029 Other: 'Bytes',2039 RuntimeEnvironmentUpdated: 'Null'2037 RuntimeEnvironmentUpdated: 'Null'2040 }2038 }2041 },2039 },2042 /**2040 /**2043 * Lookup272: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>2041 * Lookup271: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>2044 **/2042 **/2045 FrameSystemEventRecord: {2043 FrameSystemEventRecord: {2046 phase: 'FrameSystemPhase',2044 phase: 'FrameSystemPhase',2047 event: 'Event',2045 event: 'Event',2048 topics: 'Vec<H256>'2046 topics: 'Vec<H256>'2049 },2047 },2050 /**2048 /**2051 * Lookup274: frame_system::pallet::Event<T>2049 * Lookup273: frame_system::pallet::Event<T>2052 **/2050 **/2053 FrameSystemEvent: {2051 FrameSystemEvent: {2054 _enum: {2052 _enum: {2055 ExtrinsicSuccess: {2053 ExtrinsicSuccess: {2075 }2073 }2076 }2074 }2077 },2075 },2078 /**2076 /**2079 * Lookup275: frame_support::weights::DispatchInfo2077 * Lookup274: frame_support::weights::DispatchInfo2080 **/2078 **/2081 FrameSupportWeightsDispatchInfo: {2079 FrameSupportWeightsDispatchInfo: {2082 weight: 'u64',2080 weight: 'u64',2083 class: 'FrameSupportWeightsDispatchClass',2081 class: 'FrameSupportWeightsDispatchClass',2084 paysFee: 'FrameSupportWeightsPays'2082 paysFee: 'FrameSupportWeightsPays'2085 },2083 },2086 /**2084 /**2087 * Lookup276: frame_support::weights::DispatchClass2085 * Lookup275: frame_support::weights::DispatchClass2088 **/2086 **/2089 FrameSupportWeightsDispatchClass: {2087 FrameSupportWeightsDispatchClass: {2090 _enum: ['Normal', 'Operational', 'Mandatory']2088 _enum: ['Normal', 'Operational', 'Mandatory']2091 },2089 },2092 /**2090 /**2093 * Lookup277: frame_support::weights::Pays2091 * Lookup276: frame_support::weights::Pays2094 **/2092 **/2095 FrameSupportWeightsPays: {2093 FrameSupportWeightsPays: {2096 _enum: ['Yes', 'No']2094 _enum: ['Yes', 'No']2097 },2095 },2098 /**2096 /**2099 * Lookup278: orml_vesting::module::Event<T>2097 * Lookup277: orml_vesting::module::Event<T>2100 **/2098 **/2101 OrmlVestingModuleEvent: {2099 OrmlVestingModuleEvent: {2102 _enum: {2100 _enum: {2103 VestingScheduleAdded: {2101 VestingScheduleAdded: {2114 }2112 }2115 }2113 }2116 },2114 },2117 /**2115 /**2118 * Lookup279: cumulus_pallet_xcmp_queue::pallet::Event<T>2116 * Lookup278: cumulus_pallet_xcmp_queue::pallet::Event<T>2119 **/2117 **/2120 CumulusPalletXcmpQueueEvent: {2118 CumulusPalletXcmpQueueEvent: {2121 _enum: {2119 _enum: {2122 Success: 'Option<H256>',2120 Success: 'Option<H256>',2129 OverweightServiced: '(u64,u64)'2127 OverweightServiced: '(u64,u64)'2130 }2128 }2131 },2129 },2132 /**2130 /**2133 * Lookup280: pallet_xcm::pallet::Event<T>2131 * Lookup279: pallet_xcm::pallet::Event<T>2134 **/2132 **/2135 PalletXcmEvent: {2133 PalletXcmEvent: {2136 _enum: {2134 _enum: {2137 Attempted: 'XcmV2TraitsOutcome',2135 Attempted: 'XcmV2TraitsOutcome',2152 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'2150 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'2153 }2151 }2154 },2152 },2155 /**2153 /**2156 * Lookup281: xcm::v2::traits::Outcome2154 * Lookup280: xcm::v2::traits::Outcome2157 **/2155 **/2158 XcmV2TraitsOutcome: {2156 XcmV2TraitsOutcome: {2159 _enum: {2157 _enum: {2160 Complete: 'u64',2158 Complete: 'u64',2161 Incomplete: '(u64,XcmV2TraitsError)',2159 Incomplete: '(u64,XcmV2TraitsError)',2162 Error: 'XcmV2TraitsError'2160 Error: 'XcmV2TraitsError'2163 }2161 }2164 },2162 },2165 /**2163 /**2166 * Lookup283: cumulus_pallet_xcm::pallet::Event<T>2164 * Lookup282: cumulus_pallet_xcm::pallet::Event<T>2167 **/2165 **/2168 CumulusPalletXcmEvent: {2166 CumulusPalletXcmEvent: {2169 _enum: {2167 _enum: {2170 InvalidFormat: '[u8;8]',2168 InvalidFormat: '[u8;8]',2171 UnsupportedVersion: '[u8;8]',2169 UnsupportedVersion: '[u8;8]',2172 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'2170 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'2173 }2171 }2174 },2172 },2175 /**2173 /**2176 * Lookup284: cumulus_pallet_dmp_queue::pallet::Event<T>2174 * Lookup283: cumulus_pallet_dmp_queue::pallet::Event<T>2177 **/2175 **/2178 CumulusPalletDmpQueueEvent: {2176 CumulusPalletDmpQueueEvent: {2179 _enum: {2177 _enum: {2180 InvalidFormat: {2178 InvalidFormat: {2203 }2201 }2204 }2202 }2205 },2203 },2206 /**2204 /**2207 * Lookup285: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2205 * Lookup284: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2208 **/2206 **/2209 PalletUniqueRawEvent: {2207 PalletUniqueRawEvent: {2210 _enum: {2208 _enum: {2211 CollectionSponsorRemoved: 'u32',2209 CollectionSponsorRemoved: 'u32',2220 CollectionPermissionSet: 'u32'2218 CollectionPermissionSet: 'u32'2221 }2219 }2222 },2220 },2223 /**2221 /**2224 * Lookup286: pallet_unique_scheduler::pallet::Event<T>2222 * Lookup285: pallet_unique_scheduler::pallet::Event<T>2225 **/2223 **/2226 PalletUniqueSchedulerEvent: {2224 PalletUniqueSchedulerEvent: {2227 _enum: {2225 _enum: {2228 Scheduled: {2226 Scheduled: {2245 }2243 }2246 }2244 }2247 },2245 },2248 /**2246 /**2249 * Lookup288: frame_support::traits::schedule::LookupError2247 * Lookup287: frame_support::traits::schedule::LookupError2250 **/2248 **/2251 FrameSupportScheduleLookupError: {2249 FrameSupportScheduleLookupError: {2252 _enum: ['Unknown', 'BadFormat']2250 _enum: ['Unknown', 'BadFormat']2253 },2251 },2254 /**2252 /**2255 * Lookup289: pallet_common::pallet::Event<T>2253 * Lookup288: pallet_common::pallet::Event<T>2256 **/2254 **/2257 PalletCommonEvent: {2255 PalletCommonEvent: {2258 _enum: {2256 _enum: {2259 CollectionCreated: '(u32,u8,AccountId32)',2257 CollectionCreated: '(u32,u8,AccountId32)',2269 PropertyPermissionSet: '(u32,Bytes)'2267 PropertyPermissionSet: '(u32,Bytes)'2270 }2268 }2271 },2269 },2272 /**2270 /**2273 * Lookup290: pallet_structure::pallet::Event<T>2271 * Lookup289: pallet_structure::pallet::Event<T>2274 **/2272 **/2275 PalletStructureEvent: {2273 PalletStructureEvent: {2276 _enum: {2274 _enum: {2277 Executed: 'Result<Null, SpRuntimeDispatchError>'2275 Executed: 'Result<Null, SpRuntimeDispatchError>'2278 }2276 }2279 },2277 },2280 /**2278 /**2281 * Lookup291: pallet_rmrk_core::pallet::Event<T>2279 * Lookup290: pallet_rmrk_core::pallet::Event<T>2282 **/2280 **/2283 PalletRmrkCoreEvent: {2281 PalletRmrkCoreEvent: {2284 _enum: {2282 _enum: {2285 CollectionCreated: {2283 CollectionCreated: {2354 }2352 }2355 }2353 }2356 },2354 },2357 /**2355 /**2358 * Lookup292: pallet_rmrk_equip::pallet::Event<T>2356 * Lookup291: pallet_rmrk_equip::pallet::Event<T>2359 **/2357 **/2360 PalletRmrkEquipEvent: {2358 PalletRmrkEquipEvent: {2361 _enum: {2359 _enum: {2362 BaseCreated: {2360 BaseCreated: {2369 }2367 }2370 }2368 }2371 },2369 },2372 /**2370 /**2373 * Lookup293: pallet_evm::pallet::Event<T>2371 * Lookup292: pallet_evm::pallet::Event<T>2374 **/2372 **/2375 PalletEvmEvent: {2373 PalletEvmEvent: {2376 _enum: {2374 _enum: {2377 Log: 'EthereumLog',2375 Log: 'EthereumLog',2383 BalanceWithdraw: '(AccountId32,H160,U256)'2381 BalanceWithdraw: '(AccountId32,H160,U256)'2384 }2382 }2385 },2383 },2386 /**2384 /**2387 * Lookup294: ethereum::log::Log2385 * Lookup293: ethereum::log::Log2388 **/2386 **/2389 EthereumLog: {2387 EthereumLog: {2390 address: 'H160',2388 address: 'H160',2391 topics: 'Vec<H256>',2389 topics: 'Vec<H256>',2392 data: 'Bytes'2390 data: 'Bytes'2393 },2391 },2394 /**2392 /**2395 * Lookup295: pallet_ethereum::pallet::Event2393 * Lookup294: pallet_ethereum::pallet::Event2396 **/2394 **/2397 PalletEthereumEvent: {2395 PalletEthereumEvent: {2398 _enum: {2396 _enum: {2399 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'2397 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'2400 }2398 }2401 },2399 },2402 /**2400 /**2403 * Lookup296: evm_core::error::ExitReason2401 * Lookup295: evm_core::error::ExitReason2404 **/2402 **/2405 EvmCoreErrorExitReason: {2403 EvmCoreErrorExitReason: {2406 _enum: {2404 _enum: {2407 Succeed: 'EvmCoreErrorExitSucceed',2405 Succeed: 'EvmCoreErrorExitSucceed',2410 Fatal: 'EvmCoreErrorExitFatal'2408 Fatal: 'EvmCoreErrorExitFatal'2411 }2409 }2412 },2410 },2413 /**2411 /**2414 * Lookup297: evm_core::error::ExitSucceed2412 * Lookup296: evm_core::error::ExitSucceed2415 **/2413 **/2416 EvmCoreErrorExitSucceed: {2414 EvmCoreErrorExitSucceed: {2417 _enum: ['Stopped', 'Returned', 'Suicided']2415 _enum: ['Stopped', 'Returned', 'Suicided']2418 },2416 },2419 /**2417 /**2420 * Lookup298: evm_core::error::ExitError2418 * Lookup297: evm_core::error::ExitError2421 **/2419 **/2422 EvmCoreErrorExitError: {2420 EvmCoreErrorExitError: {2423 _enum: {2421 _enum: {2424 StackUnderflow: 'Null',2422 StackUnderflow: 'Null',2438 InvalidCode: 'Null'2436 InvalidCode: 'Null'2439 }2437 }2440 },2438 },2441 /**2439 /**2442 * Lookup301: evm_core::error::ExitRevert2440 * Lookup300: evm_core::error::ExitRevert2443 **/2441 **/2444 EvmCoreErrorExitRevert: {2442 EvmCoreErrorExitRevert: {2445 _enum: ['Reverted']2443 _enum: ['Reverted']2446 },2444 },2447 /**2445 /**2448 * Lookup302: evm_core::error::ExitFatal2446 * Lookup301: evm_core::error::ExitFatal2449 **/2447 **/2450 EvmCoreErrorExitFatal: {2448 EvmCoreErrorExitFatal: {2451 _enum: {2449 _enum: {2452 NotSupported: 'Null',2450 NotSupported: 'Null',2455 Other: 'Text'2453 Other: 'Text'2456 }2454 }2457 },2455 },2458 /**2456 /**2459 * Lookup303: frame_system::Phase2457 * Lookup302: frame_system::Phase2460 **/2458 **/2461 FrameSystemPhase: {2459 FrameSystemPhase: {2462 _enum: {2460 _enum: {2463 ApplyExtrinsic: 'u32',2461 ApplyExtrinsic: 'u32',2464 Finalization: 'Null',2462 Finalization: 'Null',2465 Initialization: 'Null'2463 Initialization: 'Null'2466 }2464 }2467 },2465 },2468 /**2466 /**2469 * Lookup305: frame_system::LastRuntimeUpgradeInfo2467 * Lookup304: frame_system::LastRuntimeUpgradeInfo2470 **/2468 **/2471 FrameSystemLastRuntimeUpgradeInfo: {2469 FrameSystemLastRuntimeUpgradeInfo: {2472 specVersion: 'Compact<u32>',2470 specVersion: 'Compact<u32>',2473 specName: 'Text'2471 specName: 'Text'2474 },2472 },2475 /**2473 /**2476 * Lookup306: frame_system::limits::BlockWeights2474 * Lookup305: frame_system::limits::BlockWeights2477 **/2475 **/2478 FrameSystemLimitsBlockWeights: {2476 FrameSystemLimitsBlockWeights: {2479 baseBlock: 'u64',2477 baseBlock: 'u64',2480 maxBlock: 'u64',2478 maxBlock: 'u64',2481 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'2479 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'2482 },2480 },2483 /**2481 /**2484 * Lookup307: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>2482 * Lookup306: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>2485 **/2483 **/2486 FrameSupportWeightsPerDispatchClassWeightsPerClass: {2484 FrameSupportWeightsPerDispatchClassWeightsPerClass: {2487 normal: 'FrameSystemLimitsWeightsPerClass',2485 normal: 'FrameSystemLimitsWeightsPerClass',2488 operational: 'FrameSystemLimitsWeightsPerClass',2486 operational: 'FrameSystemLimitsWeightsPerClass',2489 mandatory: 'FrameSystemLimitsWeightsPerClass'2487 mandatory: 'FrameSystemLimitsWeightsPerClass'2490 },2488 },2491 /**2489 /**2492 * Lookup308: frame_system::limits::WeightsPerClass2490 * Lookup307: frame_system::limits::WeightsPerClass2493 **/2491 **/2494 FrameSystemLimitsWeightsPerClass: {2492 FrameSystemLimitsWeightsPerClass: {2495 baseExtrinsic: 'u64',2493 baseExtrinsic: 'u64',2496 maxExtrinsic: 'Option<u64>',2494 maxExtrinsic: 'Option<u64>',2497 maxTotal: 'Option<u64>',2495 maxTotal: 'Option<u64>',2498 reserved: 'Option<u64>'2496 reserved: 'Option<u64>'2499 },2497 },2500 /**2498 /**2501 * Lookup310: frame_system::limits::BlockLength2499 * Lookup309: frame_system::limits::BlockLength2502 **/2500 **/2503 FrameSystemLimitsBlockLength: {2501 FrameSystemLimitsBlockLength: {2504 max: 'FrameSupportWeightsPerDispatchClassU32'2502 max: 'FrameSupportWeightsPerDispatchClassU32'2505 },2503 },2506 /**2504 /**2507 * Lookup311: frame_support::weights::PerDispatchClass<T>2505 * Lookup310: frame_support::weights::PerDispatchClass<T>2508 **/2506 **/2509 FrameSupportWeightsPerDispatchClassU32: {2507 FrameSupportWeightsPerDispatchClassU32: {2510 normal: 'u32',2508 normal: 'u32',2511 operational: 'u32',2509 operational: 'u32',2512 mandatory: 'u32'2510 mandatory: 'u32'2513 },2511 },2514 /**2512 /**2515 * Lookup312: frame_support::weights::RuntimeDbWeight2513 * Lookup311: frame_support::weights::RuntimeDbWeight2516 **/2514 **/2517 FrameSupportWeightsRuntimeDbWeight: {2515 FrameSupportWeightsRuntimeDbWeight: {2518 read: 'u64',2516 read: 'u64',2519 write: 'u64'2517 write: 'u64'2520 },2518 },2521 /**2519 /**2522 * Lookup313: sp_version::RuntimeVersion2520 * Lookup312: sp_version::RuntimeVersion2523 **/2521 **/2524 SpVersionRuntimeVersion: {2522 SpVersionRuntimeVersion: {2525 specName: 'Text',2523 specName: 'Text',2526 implName: 'Text',2524 implName: 'Text',2531 transactionVersion: 'u32',2529 transactionVersion: 'u32',2532 stateVersion: 'u8'2530 stateVersion: 'u8'2533 },2531 },2534 /**2532 /**2535 * Lookup317: frame_system::pallet::Error<T>2533 * Lookup316: frame_system::pallet::Error<T>2536 **/2534 **/2537 FrameSystemError: {2535 FrameSystemError: {2538 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']2536 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']2539 },2537 },2540 /**2538 /**2541 * Lookup319: orml_vesting::module::Error<T>2539 * Lookup318: orml_vesting::module::Error<T>2542 **/2540 **/2543 OrmlVestingModuleError: {2541 OrmlVestingModuleError: {2544 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2542 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2545 },2543 },2546 /**2544 /**2547 * Lookup321: cumulus_pallet_xcmp_queue::InboundChannelDetails2545 * Lookup320: cumulus_pallet_xcmp_queue::InboundChannelDetails2548 **/2546 **/2549 CumulusPalletXcmpQueueInboundChannelDetails: {2547 CumulusPalletXcmpQueueInboundChannelDetails: {2550 sender: 'u32',2548 sender: 'u32',2551 state: 'CumulusPalletXcmpQueueInboundState',2549 state: 'CumulusPalletXcmpQueueInboundState',2552 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2550 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2553 },2551 },2554 /**2552 /**2555 * Lookup322: cumulus_pallet_xcmp_queue::InboundState2553 * Lookup321: cumulus_pallet_xcmp_queue::InboundState2556 **/2554 **/2557 CumulusPalletXcmpQueueInboundState: {2555 CumulusPalletXcmpQueueInboundState: {2558 _enum: ['Ok', 'Suspended']2556 _enum: ['Ok', 'Suspended']2559 },2557 },2560 /**2558 /**2561 * Lookup325: polkadot_parachain::primitives::XcmpMessageFormat2559 * Lookup324: polkadot_parachain::primitives::XcmpMessageFormat2562 **/2560 **/2563 PolkadotParachainPrimitivesXcmpMessageFormat: {2561 PolkadotParachainPrimitivesXcmpMessageFormat: {2564 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2562 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2565 },2563 },2566 /**2564 /**2567 * Lookup328: cumulus_pallet_xcmp_queue::OutboundChannelDetails2565 * Lookup327: cumulus_pallet_xcmp_queue::OutboundChannelDetails2568 **/2566 **/2569 CumulusPalletXcmpQueueOutboundChannelDetails: {2567 CumulusPalletXcmpQueueOutboundChannelDetails: {2570 recipient: 'u32',2568 recipient: 'u32',2571 state: 'CumulusPalletXcmpQueueOutboundState',2569 state: 'CumulusPalletXcmpQueueOutboundState',2572 signalsExist: 'bool',2570 signalsExist: 'bool',2573 firstIndex: 'u16',2571 firstIndex: 'u16',2574 lastIndex: 'u16'2572 lastIndex: 'u16'2575 },2573 },2576 /**2574 /**2577 * Lookup329: cumulus_pallet_xcmp_queue::OutboundState2575 * Lookup328: cumulus_pallet_xcmp_queue::OutboundState2578 **/2576 **/2579 CumulusPalletXcmpQueueOutboundState: {2577 CumulusPalletXcmpQueueOutboundState: {2580 _enum: ['Ok', 'Suspended']2578 _enum: ['Ok', 'Suspended']2581 },2579 },2582 /**2580 /**2583 * Lookup331: cumulus_pallet_xcmp_queue::QueueConfigData2581 * Lookup330: cumulus_pallet_xcmp_queue::QueueConfigData2584 **/2582 **/2585 CumulusPalletXcmpQueueQueueConfigData: {2583 CumulusPalletXcmpQueueQueueConfigData: {2586 suspendThreshold: 'u32',2584 suspendThreshold: 'u32',2587 dropThreshold: 'u32',2585 dropThreshold: 'u32',2590 weightRestrictDecay: 'u64',2588 weightRestrictDecay: 'u64',2591 xcmpMaxIndividualWeight: 'u64'2589 xcmpMaxIndividualWeight: 'u64'2592 },2590 },2593 /**2591 /**2594 * Lookup333: cumulus_pallet_xcmp_queue::pallet::Error<T>2592 * Lookup332: cumulus_pallet_xcmp_queue::pallet::Error<T>2595 **/2593 **/2596 CumulusPalletXcmpQueueError: {2594 CumulusPalletXcmpQueueError: {2597 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']2595 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']2598 },2596 },2599 /**2597 /**2600 * Lookup334: pallet_xcm::pallet::Error<T>2598 * Lookup333: pallet_xcm::pallet::Error<T>2601 **/2599 **/2602 PalletXcmError: {2600 PalletXcmError: {2603 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']2601 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']2604 },2602 },2605 /**2603 /**2606 * Lookup335: cumulus_pallet_xcm::pallet::Error<T>2604 * Lookup334: cumulus_pallet_xcm::pallet::Error<T>2607 **/2605 **/2608 CumulusPalletXcmError: 'Null',2606 CumulusPalletXcmError: 'Null',2609 /**2607 /**2610 * Lookup336: cumulus_pallet_dmp_queue::ConfigData2608 * Lookup335: cumulus_pallet_dmp_queue::ConfigData2611 **/2609 **/2612 CumulusPalletDmpQueueConfigData: {2610 CumulusPalletDmpQueueConfigData: {2613 maxIndividual: 'u64'2611 maxIndividual: 'u64'2614 },2612 },2615 /**2613 /**2616 * Lookup337: cumulus_pallet_dmp_queue::PageIndexData2614 * Lookup336: cumulus_pallet_dmp_queue::PageIndexData2617 **/2615 **/2618 CumulusPalletDmpQueuePageIndexData: {2616 CumulusPalletDmpQueuePageIndexData: {2619 beginUsed: 'u32',2617 beginUsed: 'u32',2620 endUsed: 'u32',2618 endUsed: 'u32',2621 overweightCount: 'u64'2619 overweightCount: 'u64'2622 },2620 },2623 /**2621 /**2624 * Lookup340: cumulus_pallet_dmp_queue::pallet::Error<T>2622 * Lookup339: cumulus_pallet_dmp_queue::pallet::Error<T>2625 **/2623 **/2626 CumulusPalletDmpQueueError: {2624 CumulusPalletDmpQueueError: {2627 _enum: ['Unknown', 'OverLimit']2625 _enum: ['Unknown', 'OverLimit']2628 },2626 },2629 /**2627 /**2630 * Lookup344: pallet_unique::Error<T>2628 * Lookup343: pallet_unique::Error<T>2631 **/2629 **/2632 PalletUniqueError: {2630 PalletUniqueError: {2633 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']2631 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']2634 },2632 },2635 /**2633 /**2636 * Lookup347: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>2634 * Lookup346: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>2637 **/2635 **/2638 PalletUniqueSchedulerScheduledV3: {2636 PalletUniqueSchedulerScheduledV3: {2639 maybeId: 'Option<[u8;16]>',2637 maybeId: 'Option<[u8;16]>',2640 priority: 'u8',2638 priority: 'u8',2641 call: 'FrameSupportScheduleMaybeHashed',2639 call: 'FrameSupportScheduleMaybeHashed',2642 maybePeriodic: 'Option<(u32,u32)>',2640 maybePeriodic: 'Option<(u32,u32)>',2643 origin: 'OpalRuntimeOriginCaller'2641 origin: 'OpalRuntimeOriginCaller'2644 },2642 },2645 /**2643 /**2646 * Lookup348: opal_runtime::OriginCaller2644 * Lookup347: opal_runtime::OriginCaller2647 **/2645 **/2648 OpalRuntimeOriginCaller: {2646 OpalRuntimeOriginCaller: {2649 _enum: {2647 _enum: {2650 __Unused0: 'Null',2648 __Unused0: 'Null',2751 Ethereum: 'PalletEthereumRawOrigin'2749 Ethereum: 'PalletEthereumRawOrigin'2752 }2750 }2753 },2751 },2754 /**2752 /**2755 * Lookup349: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>2753 * Lookup348: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>2756 **/2754 **/2757 FrameSupportDispatchRawOrigin: {2755 FrameSupportDispatchRawOrigin: {2758 _enum: {2756 _enum: {2759 Root: 'Null',2757 Root: 'Null',2760 Signed: 'AccountId32',2758 Signed: 'AccountId32',2761 None: 'Null'2759 None: 'Null'2762 }2760 }2763 },2761 },2764 /**2762 /**2765 * Lookup350: pallet_xcm::pallet::Origin2763 * Lookup349: pallet_xcm::pallet::Origin2766 **/2764 **/2767 PalletXcmOrigin: {2765 PalletXcmOrigin: {2768 _enum: {2766 _enum: {2769 Xcm: 'XcmV1MultiLocation',2767 Xcm: 'XcmV1MultiLocation',2770 Response: 'XcmV1MultiLocation'2768 Response: 'XcmV1MultiLocation'2771 }2769 }2772 },2770 },2773 /**2771 /**2774 * Lookup351: cumulus_pallet_xcm::pallet::Origin2772 * Lookup350: cumulus_pallet_xcm::pallet::Origin2775 **/2773 **/2776 CumulusPalletXcmOrigin: {2774 CumulusPalletXcmOrigin: {2777 _enum: {2775 _enum: {2778 Relay: 'Null',2776 Relay: 'Null',2779 SiblingParachain: 'u32'2777 SiblingParachain: 'u32'2780 }2778 }2781 },2779 },2782 /**2780 /**2783 * Lookup352: pallet_ethereum::RawOrigin2781 * Lookup351: pallet_ethereum::RawOrigin2784 **/2782 **/2785 PalletEthereumRawOrigin: {2783 PalletEthereumRawOrigin: {2786 _enum: {2784 _enum: {2787 EthereumTransaction: 'H160'2785 EthereumTransaction: 'H160'2788 }2786 }2789 },2787 },2790 /**2788 /**2791 * Lookup353: sp_core::Void2789 * Lookup352: sp_core::Void2792 **/2790 **/2793 SpCoreVoid: 'Null',2791 SpCoreVoid: 'Null',2794 /**2792 /**2795 * Lookup354: pallet_unique_scheduler::pallet::Error<T>2793 * Lookup353: pallet_unique_scheduler::pallet::Error<T>2796 **/2794 **/2797 PalletUniqueSchedulerError: {2795 PalletUniqueSchedulerError: {2798 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']2796 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']2799 },2797 },2800 /**2798 /**2801 * Lookup355: up_data_structs::Collection<sp_core::crypto::AccountId32>2799 * Lookup354: up_data_structs::Collection<sp_core::crypto::AccountId32>2802 **/2800 **/2803 UpDataStructsCollection: {2801 UpDataStructsCollection: {2804 owner: 'AccountId32',2802 owner: 'AccountId32',2805 mode: 'UpDataStructsCollectionMode',2803 mode: 'UpDataStructsCollectionMode',2811 permissions: 'UpDataStructsCollectionPermissions',2809 permissions: 'UpDataStructsCollectionPermissions',2812 externalCollection: 'bool'2810 externalCollection: 'bool'2813 },2811 },2814 /**2812 /**2815 * Lookup356: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>2813 * Lookup355: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>2816 **/2814 **/2817 UpDataStructsSponsorshipState: {2815 UpDataStructsSponsorshipState: {2818 _enum: {2816 _enum: {2819 Disabled: 'Null',2817 Disabled: 'Null',2820 Unconfirmed: 'AccountId32',2818 Unconfirmed: 'AccountId32',2821 Confirmed: 'AccountId32'2819 Confirmed: 'AccountId32'2822 }2820 }2823 },2821 },2824 /**2822 /**2825 * Lookup357: up_data_structs::Properties2823 * Lookup356: up_data_structs::Properties2826 **/2824 **/2827 UpDataStructsProperties: {2825 UpDataStructsProperties: {2828 map: 'UpDataStructsPropertiesMapBoundedVec',2826 map: 'UpDataStructsPropertiesMapBoundedVec',2829 consumedSpace: 'u32',2827 consumedSpace: 'u32',2830 spaceLimit: 'u32'2828 spaceLimit: 'u32'2831 },2829 },2832 /**2830 /**2833 * Lookup358: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>2831 * Lookup357: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>2834 **/2832 **/2835 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',2833 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',2836 /**2834 /**2837 * Lookup363: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>2835 * Lookup362: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>2838 **/2836 **/2839 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',2837 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',2840 /**2838 /**2841 * Lookup370: up_data_structs::CollectionStats2839 * Lookup369: up_data_structs::CollectionStats2842 **/2840 **/2843 UpDataStructsCollectionStats: {2841 UpDataStructsCollectionStats: {2844 created: 'u32',2842 created: 'u32',2845 destroyed: 'u32',2843 destroyed: 'u32',2846 alive: 'u32'2844 alive: 'u32'2847 },2845 },2848 /**2846 /**2849 * Lookup371: up_data_structs::TokenChild2847 * Lookup370: up_data_structs::TokenChild2850 **/2848 **/2851 UpDataStructsTokenChild: {2849 UpDataStructsTokenChild: {2852 token: 'u32',2850 token: 'u32',2853 collection: 'u32'2851 collection: 'u32'2854 },2852 },2855 /**2853 /**2856 * Lookup372: PhantomType::up_data_structs<T>2854 * Lookup371: PhantomType::up_data_structs<T>2857 **/2855 **/2858 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',2856 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',2859 /**2857 /**2860 * Lookup374: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2858 * Lookup373: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2861 **/2859 **/2862 UpDataStructsTokenData: {2860 UpDataStructsTokenData: {2863 properties: 'Vec<UpDataStructsProperty>',2861 properties: 'Vec<UpDataStructsProperty>',2864 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',2862 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>',2865 pieces: 'u128'2863 pieces: 'u128'2866 },2864 },2867 /**2865 /**2868 * Lookup376: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>2866 * Lookup375: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>2869 **/2867 **/2870 UpDataStructsRpcCollection: {2868 UpDataStructsRpcCollection: {2871 owner: 'AccountId32',2869 owner: 'AccountId32',2872 mode: 'UpDataStructsCollectionMode',2870 mode: 'UpDataStructsCollectionMode',2880 properties: 'Vec<UpDataStructsProperty>',2878 properties: 'Vec<UpDataStructsProperty>',2881 readOnly: 'bool'2879 readOnly: 'bool'2882 },2880 },2883 /**2881 /**2884 * Lookup377: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>2882 * Lookup376: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>2885 **/2883 **/2886 RmrkTraitsCollectionCollectionInfo: {2884 RmrkTraitsCollectionCollectionInfo: {2887 issuer: 'AccountId32',2885 issuer: 'AccountId32',2888 metadata: 'Bytes',2886 metadata: 'Bytes',2889 max: 'Option<u32>',2887 max: 'Option<u32>',2890 symbol: 'Bytes',2888 symbol: 'Bytes',2891 nftsCount: 'u32'2889 nftsCount: 'u32'2892 },2890 },2893 /**2891 /**2894 * Lookup378: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>2892 * Lookup377: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>2895 **/2893 **/2896 RmrkTraitsNftNftInfo: {2894 RmrkTraitsNftNftInfo: {2897 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',2895 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',2898 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',2896 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',2899 metadata: 'Bytes',2897 metadata: 'Bytes',2900 equipped: 'bool',2898 equipped: 'bool',2901 pending: 'bool'2899 pending: 'bool'2902 },2900 },2903 /**2901 /**2904 * Lookup380: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>2902 * Lookup379: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>2905 **/2903 **/2906 RmrkTraitsNftRoyaltyInfo: {2904 RmrkTraitsNftRoyaltyInfo: {2907 recipient: 'AccountId32',2905 recipient: 'AccountId32',2908 amount: 'Permill'2906 amount: 'Permill'2909 },2907 },2910 /**2908 /**2911 * Lookup381: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2909 * Lookup380: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2912 **/2910 **/2913 RmrkTraitsResourceResourceInfo: {2911 RmrkTraitsResourceResourceInfo: {2914 id: 'u32',2912 id: 'u32',2915 resource: 'RmrkTraitsResourceResourceTypes',2913 resource: 'RmrkTraitsResourceResourceTypes',2916 pending: 'bool',2914 pending: 'bool',2917 pendingRemoval: 'bool'2915 pendingRemoval: 'bool'2918 },2916 },2919 /**2917 /**2920 * Lookup382: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2918 * Lookup381: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2921 **/2919 **/2922 RmrkTraitsPropertyPropertyInfo: {2920 RmrkTraitsPropertyPropertyInfo: {2923 key: 'Bytes',2921 key: 'Bytes',2924 value: 'Bytes'2922 value: 'Bytes'2925 },2923 },2926 /**2924 /**2927 * Lookup383: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>2925 * Lookup382: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>2928 **/2926 **/2929 RmrkTraitsBaseBaseInfo: {2927 RmrkTraitsBaseBaseInfo: {2930 issuer: 'AccountId32',2928 issuer: 'AccountId32',2931 baseType: 'Bytes',2929 baseType: 'Bytes',2932 symbol: 'Bytes'2930 symbol: 'Bytes'2933 },2931 },2934 /**2932 /**2935 * Lookup384: rmrk_traits::nft::NftChild2933 * Lookup383: rmrk_traits::nft::NftChild2936 **/2934 **/2937 RmrkTraitsNftNftChild: {2935 RmrkTraitsNftNftChild: {2938 collectionId: 'u32',2936 collectionId: 'u32',2939 nftId: 'u32'2937 nftId: 'u32'2940 },2938 },2941 /**2939 /**2942 * Lookup386: pallet_common::pallet::Error<T>2940 * Lookup385: pallet_common::pallet::Error<T>2943 **/2941 **/2944 PalletCommonError: {2942 PalletCommonError: {2945 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal']2943 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal']2946 },2944 },2947 /**2945 /**2948 * Lookup388: pallet_fungible::pallet::Error<T>2946 * Lookup387: pallet_fungible::pallet::Error<T>2949 **/2947 **/2950 PalletFungibleError: {2948 PalletFungibleError: {2951 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2949 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2952 },2950 },2953 /**2951 /**2954 * Lookup389: pallet_refungible::ItemData2952 * Lookup388: pallet_refungible::ItemData2955 **/2953 **/2956 PalletRefungibleItemData: {2954 PalletRefungibleItemData: {2957 constData: 'Bytes'2955 constData: 'Bytes'2958 },2956 },2990 * Lookup400: pallet_rmrk_core::pallet::Error<T>2988 * Lookup400: pallet_rmrk_core::pallet::Error<T>2991 **/2989 **/2992 PalletRmrkCoreError: {2990 PalletRmrkCoreError: {2993 _enum: ['CorruptedCollectionType', 'NftTypeEncodeError', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']2991 _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']2994 },2992 },2995 /**2993 /**2996 * Lookup402: pallet_rmrk_equip::pallet::Error<T>2994 * Lookup402: pallet_rmrk_equip::pallet::Error<T>tests/src/interfaces/types-lookup.tsdiffbeforeafterboth162716271628 /** @name UpDataStructsCreateReFungibleData (188) */1628 /** @name UpDataStructsCreateReFungibleData (188) */1629 export interface UpDataStructsCreateReFungibleData extends Struct {1629 export interface UpDataStructsCreateReFungibleData extends Struct {1630 readonly constData: Bytes;1631 readonly pieces: u128;1630 readonly pieces: u128;1632 readonly properties: Vec<UpDataStructsProperty>;1631 readonly properties: Vec<UpDataStructsProperty>;1633 }1632 }163416331635 /** @name UpDataStructsCreateItemExData (193) */1634 /** @name UpDataStructsCreateItemExData (192) */1636 export interface UpDataStructsCreateItemExData extends Enum {1635 export interface UpDataStructsCreateItemExData extends Enum {1637 readonly isNft: boolean;1636 readonly isNft: boolean;1638 readonly asNft: Vec<UpDataStructsCreateNftExData>;1637 readonly asNft: Vec<UpDataStructsCreateNftExData>;1645 readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1644 readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1646 }1645 }164716461648 /** @name UpDataStructsCreateNftExData (195) */1647 /** @name UpDataStructsCreateNftExData (194) */1649 export interface UpDataStructsCreateNftExData extends Struct {1648 export interface UpDataStructsCreateNftExData extends Struct {1650 readonly properties: Vec<UpDataStructsProperty>;1649 readonly properties: Vec<UpDataStructsProperty>;1651 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1650 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1652 }1651 }165316521654 /** @name UpDataStructsCreateRefungibleExData (202) */1653 /** @name UpDataStructsCreateRefungibleExData (201) */1655 export interface UpDataStructsCreateRefungibleExData extends Struct {1654 export interface UpDataStructsCreateRefungibleExData extends Struct {1656 readonly constData: Bytes;1657 readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1655 readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1658 readonly properties: Vec<UpDataStructsProperty>;1656 readonly properties: Vec<UpDataStructsProperty>;1659 }1657 }166016581661 /** @name PalletUniqueSchedulerCall (204) */1659 /** @name PalletUniqueSchedulerCall (203) */1662 export interface PalletUniqueSchedulerCall extends Enum {1660 export interface PalletUniqueSchedulerCall extends Enum {1663 readonly isScheduleNamed: boolean;1661 readonly isScheduleNamed: boolean;1664 readonly asScheduleNamed: {1662 readonly asScheduleNamed: {1683 readonly type: 'ScheduleNamed' | 'CancelNamed' | 'ScheduleNamedAfter';1681 readonly type: 'ScheduleNamed' | 'CancelNamed' | 'ScheduleNamedAfter';1684 }1682 }168516831686 /** @name FrameSupportScheduleMaybeHashed (206) */1684 /** @name FrameSupportScheduleMaybeHashed (205) */1687 export interface FrameSupportScheduleMaybeHashed extends Enum {1685 export interface FrameSupportScheduleMaybeHashed extends Enum {1688 readonly isValue: boolean;1686 readonly isValue: boolean;1689 readonly asValue: Call;1687 readonly asValue: Call;1692 readonly type: 'Value' | 'Hash';1690 readonly type: 'Value' | 'Hash';1693 }1691 }169416921695 /** @name PalletTemplateTransactionPaymentCall (207) */1693 /** @name PalletTemplateTransactionPaymentCall (206) */1696 export type PalletTemplateTransactionPaymentCall = Null;1694 export type PalletTemplateTransactionPaymentCall = Null;169716951698 /** @name PalletStructureCall (208) */1696 /** @name PalletStructureCall (207) */1699 export type PalletStructureCall = Null;1697 export type PalletStructureCall = Null;170016981701 /** @name PalletRmrkCoreCall (209) */1699 /** @name PalletRmrkCoreCall (208) */1702 export interface PalletRmrkCoreCall extends Enum {1700 export interface PalletRmrkCoreCall extends Enum {1703 readonly isCreateCollection: boolean;1701 readonly isCreateCollection: boolean;1704 readonly asCreateCollection: {1702 readonly asCreateCollection: {1804 readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';1802 readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';1805 }1803 }180618041807 /** @name RmrkTraitsResourceResourceTypes (215) */1805 /** @name RmrkTraitsResourceResourceTypes (214) */1808 export interface RmrkTraitsResourceResourceTypes extends Enum {1806 export interface RmrkTraitsResourceResourceTypes extends Enum {1809 readonly isBasic: boolean;1807 readonly isBasic: boolean;1810 readonly asBasic: RmrkTraitsResourceBasicResource;1808 readonly asBasic: RmrkTraitsResourceBasicResource;1815 readonly type: 'Basic' | 'Composable' | 'Slot';1813 readonly type: 'Basic' | 'Composable' | 'Slot';1816 }1814 }181718151818 /** @name RmrkTraitsResourceBasicResource (217) */1816 /** @name RmrkTraitsResourceBasicResource (216) */1819 export interface RmrkTraitsResourceBasicResource extends Struct {1817 export interface RmrkTraitsResourceBasicResource extends Struct {1820 readonly src: Option<Bytes>;1818 readonly src: Option<Bytes>;1821 readonly metadata: Option<Bytes>;1819 readonly metadata: Option<Bytes>;1822 readonly license: Option<Bytes>;1820 readonly license: Option<Bytes>;1823 readonly thumb: Option<Bytes>;1821 readonly thumb: Option<Bytes>;1824 }1822 }182518231826 /** @name RmrkTraitsResourceComposableResource (219) */1824 /** @name RmrkTraitsResourceComposableResource (218) */1827 export interface RmrkTraitsResourceComposableResource extends Struct {1825 export interface RmrkTraitsResourceComposableResource extends Struct {1828 readonly parts: Vec<u32>;1826 readonly parts: Vec<u32>;1829 readonly base: u32;1827 readonly base: u32;1833 readonly thumb: Option<Bytes>;1831 readonly thumb: Option<Bytes>;1834 }1832 }183518331836 /** @name RmrkTraitsResourceSlotResource (220) */1834 /** @name RmrkTraitsResourceSlotResource (219) */1837 export interface RmrkTraitsResourceSlotResource extends Struct {1835 export interface RmrkTraitsResourceSlotResource extends Struct {1838 readonly base: u32;1836 readonly base: u32;1839 readonly src: Option<Bytes>;1837 readonly src: Option<Bytes>;1843 readonly thumb: Option<Bytes>;1841 readonly thumb: Option<Bytes>;1844 }1842 }184518431846 /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (222) */1844 /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (221) */1847 export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum {1845 export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum {1848 readonly isAccountId: boolean;1846 readonly isAccountId: boolean;1849 readonly asAccountId: AccountId32;1847 readonly asAccountId: AccountId32;1852 readonly type: 'AccountId' | 'CollectionAndNftTuple';1850 readonly type: 'AccountId' | 'CollectionAndNftTuple';1853 }1851 }185418521855 /** @name PalletRmrkEquipCall (226) */1853 /** @name PalletRmrkEquipCall (225) */1856 export interface PalletRmrkEquipCall extends Enum {1854 export interface PalletRmrkEquipCall extends Enum {1857 readonly isCreateBase: boolean;1855 readonly isCreateBase: boolean;1858 readonly asCreateBase: {1856 readonly asCreateBase: {1874 readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable';1872 readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable';1875 }1873 }187618741877 /** @name RmrkTraitsPartPartType (229) */1875 /** @name RmrkTraitsPartPartType (228) */1878 export interface RmrkTraitsPartPartType extends Enum {1876 export interface RmrkTraitsPartPartType extends Enum {1879 readonly isFixedPart: boolean;1877 readonly isFixedPart: boolean;1880 readonly asFixedPart: RmrkTraitsPartFixedPart;1878 readonly asFixedPart: RmrkTraitsPartFixedPart;1883 readonly type: 'FixedPart' | 'SlotPart';1881 readonly type: 'FixedPart' | 'SlotPart';1884 }1882 }188518831886 /** @name RmrkTraitsPartFixedPart (231) */1884 /** @name RmrkTraitsPartFixedPart (230) */1887 export interface RmrkTraitsPartFixedPart extends Struct {1885 export interface RmrkTraitsPartFixedPart extends Struct {1888 readonly id: u32;1886 readonly id: u32;1889 readonly z: u32;1887 readonly z: u32;1890 readonly src: Bytes;1888 readonly src: Bytes;1891 }1889 }189218901893 /** @name RmrkTraitsPartSlotPart (232) */1891 /** @name RmrkTraitsPartSlotPart (231) */1894 export interface RmrkTraitsPartSlotPart extends Struct {1892 export interface RmrkTraitsPartSlotPart extends Struct {1895 readonly id: u32;1893 readonly id: u32;1896 readonly equippable: RmrkTraitsPartEquippableList;1894 readonly equippable: RmrkTraitsPartEquippableList;1897 readonly src: Bytes;1895 readonly src: Bytes;1898 readonly z: u32;1896 readonly z: u32;1899 }1897 }190018981901 /** @name RmrkTraitsPartEquippableList (233) */1899 /** @name RmrkTraitsPartEquippableList (232) */1902 export interface RmrkTraitsPartEquippableList extends Enum {1900 export interface RmrkTraitsPartEquippableList extends Enum {1903 readonly isAll: boolean;1901 readonly isAll: boolean;1904 readonly isEmpty: boolean;1902 readonly isEmpty: boolean;1907 readonly type: 'All' | 'Empty' | 'Custom';1905 readonly type: 'All' | 'Empty' | 'Custom';1908 }1906 }190919071910 /** @name RmrkTraitsTheme (235) */1908 /** @name RmrkTraitsTheme (234) */1911 export interface RmrkTraitsTheme extends Struct {1909 export interface RmrkTraitsTheme extends Struct {1912 readonly name: Bytes;1910 readonly name: Bytes;1913 readonly properties: Vec<RmrkTraitsThemeThemeProperty>;1911 readonly properties: Vec<RmrkTraitsThemeThemeProperty>;1914 readonly inherit: bool;1912 readonly inherit: bool;1915 }1913 }191619141917 /** @name RmrkTraitsThemeThemeProperty (237) */1915 /** @name RmrkTraitsThemeThemeProperty (236) */1918 export interface RmrkTraitsThemeThemeProperty extends Struct {1916 export interface RmrkTraitsThemeThemeProperty extends Struct {1919 readonly key: Bytes;1917 readonly key: Bytes;1920 readonly value: Bytes;1918 readonly value: Bytes;1921 }1919 }192219201923 /** @name PalletEvmCall (239) */1921 /** @name PalletEvmCall (238) */1924 export interface PalletEvmCall extends Enum {1922 export interface PalletEvmCall extends Enum {1925 readonly isWithdraw: boolean;1923 readonly isWithdraw: boolean;1926 readonly asWithdraw: {1924 readonly asWithdraw: {1965 readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';1963 readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';1966 }1964 }196719651968 /** @name PalletEthereumCall (245) */1966 /** @name PalletEthereumCall (244) */1969 export interface PalletEthereumCall extends Enum {1967 export interface PalletEthereumCall extends Enum {1970 readonly isTransact: boolean;1968 readonly isTransact: boolean;1971 readonly asTransact: {1969 readonly asTransact: {1974 readonly type: 'Transact';1972 readonly type: 'Transact';1975 }1973 }197619741977 /** @name EthereumTransactionTransactionV2 (246) */1975 /** @name EthereumTransactionTransactionV2 (245) */1978 export interface EthereumTransactionTransactionV2 extends Enum {1976 export interface EthereumTransactionTransactionV2 extends Enum {1979 readonly isLegacy: boolean;1977 readonly isLegacy: boolean;1980 readonly asLegacy: EthereumTransactionLegacyTransaction;1978 readonly asLegacy: EthereumTransactionLegacyTransaction;1985 readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';1983 readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';1986 }1984 }198719851988 /** @name EthereumTransactionLegacyTransaction (247) */1986 /** @name EthereumTransactionLegacyTransaction (246) */1989 export interface EthereumTransactionLegacyTransaction extends Struct {1987 export interface EthereumTransactionLegacyTransaction extends Struct {1990 readonly nonce: U256;1988 readonly nonce: U256;1991 readonly gasPrice: U256;1989 readonly gasPrice: U256;1996 readonly signature: EthereumTransactionTransactionSignature;1994 readonly signature: EthereumTransactionTransactionSignature;1997 }1995 }199819961999 /** @name EthereumTransactionTransactionAction (248) */1997 /** @name EthereumTransactionTransactionAction (247) */2000 export interface EthereumTransactionTransactionAction extends Enum {1998 export interface EthereumTransactionTransactionAction extends Enum {2001 readonly isCall: boolean;1999 readonly isCall: boolean;2002 readonly asCall: H160;2000 readonly asCall: H160;2003 readonly isCreate: boolean;2001 readonly isCreate: boolean;2004 readonly type: 'Call' | 'Create';2002 readonly type: 'Call' | 'Create';2005 }2003 }200620042007 /** @name EthereumTransactionTransactionSignature (249) */2005 /** @name EthereumTransactionTransactionSignature (248) */2008 export interface EthereumTransactionTransactionSignature extends Struct {2006 export interface EthereumTransactionTransactionSignature extends Struct {2009 readonly v: u64;2007 readonly v: u64;2010 readonly r: H256;2008 readonly r: H256;2011 readonly s: H256;2009 readonly s: H256;2012 }2010 }201320112014 /** @name EthereumTransactionEip2930Transaction (251) */2012 /** @name EthereumTransactionEip2930Transaction (250) */2015 export interface EthereumTransactionEip2930Transaction extends Struct {2013 export interface EthereumTransactionEip2930Transaction extends Struct {2016 readonly chainId: u64;2014 readonly chainId: u64;2017 readonly nonce: U256;2015 readonly nonce: U256;2026 readonly s: H256;2024 readonly s: H256;2027 }2025 }202820262029 /** @name EthereumTransactionAccessListItem (253) */2027 /** @name EthereumTransactionAccessListItem (252) */2030 export interface EthereumTransactionAccessListItem extends Struct {2028 export interface EthereumTransactionAccessListItem extends Struct {2031 readonly address: H160;2029 readonly address: H160;2032 readonly storageKeys: Vec<H256>;2030 readonly storageKeys: Vec<H256>;2033 }2031 }203420322035 /** @name EthereumTransactionEip1559Transaction (254) */2033 /** @name EthereumTransactionEip1559Transaction (253) */2036 export interface EthereumTransactionEip1559Transaction extends Struct {2034 export interface EthereumTransactionEip1559Transaction extends Struct {2037 readonly chainId: u64;2035 readonly chainId: u64;2038 readonly nonce: U256;2036 readonly nonce: U256;2048 readonly s: H256;2046 readonly s: H256;2049 }2047 }205020482051 /** @name PalletEvmMigrationCall (255) */2049 /** @name PalletEvmMigrationCall (254) */2052 export interface PalletEvmMigrationCall extends Enum {2050 export interface PalletEvmMigrationCall extends Enum {2053 readonly isBegin: boolean;2051 readonly isBegin: boolean;2054 readonly asBegin: {2052 readonly asBegin: {2067 readonly type: 'Begin' | 'SetData' | 'Finish';2065 readonly type: 'Begin' | 'SetData' | 'Finish';2068 }2066 }206920672070 /** @name PalletSudoEvent (258) */2068 /** @name PalletSudoEvent (257) */2071 export interface PalletSudoEvent extends Enum {2069 export interface PalletSudoEvent extends Enum {2072 readonly isSudid: boolean;2070 readonly isSudid: boolean;2073 readonly asSudid: {2071 readonly asSudid: {2084 readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';2082 readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';2085 }2083 }208620842087 /** @name SpRuntimeDispatchError (260) */2085 /** @name SpRuntimeDispatchError (259) */2088 export interface SpRuntimeDispatchError extends Enum {2086 export interface SpRuntimeDispatchError extends Enum {2089 readonly isOther: boolean;2087 readonly isOther: boolean;2090 readonly isCannotLookup: boolean;2088 readonly isCannotLookup: boolean;2103 readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic' | 'Transactional';2101 readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic' | 'Transactional';2104 }2102 }210521032106 /** @name SpRuntimeModuleError (261) */2104 /** @name SpRuntimeModuleError (260) */2107 export interface SpRuntimeModuleError extends Struct {2105 export interface SpRuntimeModuleError extends Struct {2108 readonly index: u8;2106 readonly index: u8;2109 readonly error: U8aFixed;2107 readonly error: U8aFixed;2110 }2108 }211121092112 /** @name SpRuntimeTokenError (262) */2110 /** @name SpRuntimeTokenError (261) */2113 export interface SpRuntimeTokenError extends Enum {2111 export interface SpRuntimeTokenError extends Enum {2114 readonly isNoFunds: boolean;2112 readonly isNoFunds: boolean;2115 readonly isWouldDie: boolean;2113 readonly isWouldDie: boolean;2121 readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';2119 readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';2122 }2120 }212321212124 /** @name SpRuntimeArithmeticError (263) */2122 /** @name SpRuntimeArithmeticError (262) */2125 export interface SpRuntimeArithmeticError extends Enum {2123 export interface SpRuntimeArithmeticError extends Enum {2126 readonly isUnderflow: boolean;2124 readonly isUnderflow: boolean;2127 readonly isOverflow: boolean;2125 readonly isOverflow: boolean;2128 readonly isDivisionByZero: boolean;2126 readonly isDivisionByZero: boolean;2129 readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';2127 readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';2130 }2128 }213121292132 /** @name SpRuntimeTransactionalError (264) */2130 /** @name SpRuntimeTransactionalError (263) */2133 export interface SpRuntimeTransactionalError extends Enum {2131 export interface SpRuntimeTransactionalError extends Enum {2134 readonly isLimitReached: boolean;2132 readonly isLimitReached: boolean;2135 readonly isNoLayer: boolean;2133 readonly isNoLayer: boolean;2136 readonly type: 'LimitReached' | 'NoLayer';2134 readonly type: 'LimitReached' | 'NoLayer';2137 }2135 }213821362139 /** @name PalletSudoError (265) */2137 /** @name PalletSudoError (264) */2140 export interface PalletSudoError extends Enum {2138 export interface PalletSudoError extends Enum {2141 readonly isRequireSudo: boolean;2139 readonly isRequireSudo: boolean;2142 readonly type: 'RequireSudo';2140 readonly type: 'RequireSudo';2143 }2141 }214421422145 /** @name FrameSystemAccountInfo (266) */2143 /** @name FrameSystemAccountInfo (265) */2146 export interface FrameSystemAccountInfo extends Struct {2144 export interface FrameSystemAccountInfo extends Struct {2147 readonly nonce: u32;2145 readonly nonce: u32;2148 readonly consumers: u32;2146 readonly consumers: u32;2151 readonly data: PalletBalancesAccountData;2149 readonly data: PalletBalancesAccountData;2152 }2150 }215321512154 /** @name FrameSupportWeightsPerDispatchClassU64 (267) */2152 /** @name FrameSupportWeightsPerDispatchClassU64 (266) */2155 export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {2153 export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {2156 readonly normal: u64;2154 readonly normal: u64;2157 readonly operational: u64;2155 readonly operational: u64;2158 readonly mandatory: u64;2156 readonly mandatory: u64;2159 }2157 }216021582161 /** @name SpRuntimeDigest (268) */2159 /** @name SpRuntimeDigest (267) */2162 export interface SpRuntimeDigest extends Struct {2160 export interface SpRuntimeDigest extends Struct {2163 readonly logs: Vec<SpRuntimeDigestDigestItem>;2161 readonly logs: Vec<SpRuntimeDigestDigestItem>;2164 }2162 }216521632166 /** @name SpRuntimeDigestDigestItem (270) */2164 /** @name SpRuntimeDigestDigestItem (269) */2167 export interface SpRuntimeDigestDigestItem extends Enum {2165 export interface SpRuntimeDigestDigestItem extends Enum {2168 readonly isOther: boolean;2166 readonly isOther: boolean;2169 readonly asOther: Bytes;2167 readonly asOther: Bytes;2177 readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';2175 readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';2178 }2176 }217921772180 /** @name FrameSystemEventRecord (272) */2178 /** @name FrameSystemEventRecord (271) */2181 export interface FrameSystemEventRecord extends Struct {2179 export interface FrameSystemEventRecord extends Struct {2182 readonly phase: FrameSystemPhase;2180 readonly phase: FrameSystemPhase;2183 readonly event: Event;2181 readonly event: Event;2184 readonly topics: Vec<H256>;2182 readonly topics: Vec<H256>;2185 }2183 }218621842187 /** @name FrameSystemEvent (274) */2185 /** @name FrameSystemEvent (273) */2188 export interface FrameSystemEvent extends Enum {2186 export interface FrameSystemEvent extends Enum {2189 readonly isExtrinsicSuccess: boolean;2187 readonly isExtrinsicSuccess: boolean;2190 readonly asExtrinsicSuccess: {2188 readonly asExtrinsicSuccess: {2212 readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';2210 readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';2213 }2211 }221422122215 /** @name FrameSupportWeightsDispatchInfo (275) */2213 /** @name FrameSupportWeightsDispatchInfo (274) */2216 export interface FrameSupportWeightsDispatchInfo extends Struct {2214 export interface FrameSupportWeightsDispatchInfo extends Struct {2217 readonly weight: u64;2215 readonly weight: u64;2218 readonly class: FrameSupportWeightsDispatchClass;2216 readonly class: FrameSupportWeightsDispatchClass;2219 readonly paysFee: FrameSupportWeightsPays;2217 readonly paysFee: FrameSupportWeightsPays;2220 }2218 }222122192222 /** @name FrameSupportWeightsDispatchClass (276) */2220 /** @name FrameSupportWeightsDispatchClass (275) */2223 export interface FrameSupportWeightsDispatchClass extends Enum {2221 export interface FrameSupportWeightsDispatchClass extends Enum {2224 readonly isNormal: boolean;2222 readonly isNormal: boolean;2225 readonly isOperational: boolean;2223 readonly isOperational: boolean;2226 readonly isMandatory: boolean;2224 readonly isMandatory: boolean;2227 readonly type: 'Normal' | 'Operational' | 'Mandatory';2225 readonly type: 'Normal' | 'Operational' | 'Mandatory';2228 }2226 }222922272230 /** @name FrameSupportWeightsPays (277) */2228 /** @name FrameSupportWeightsPays (276) */2231 export interface FrameSupportWeightsPays extends Enum {2229 export interface FrameSupportWeightsPays extends Enum {2232 readonly isYes: boolean;2230 readonly isYes: boolean;2233 readonly isNo: boolean;2231 readonly isNo: boolean;2234 readonly type: 'Yes' | 'No';2232 readonly type: 'Yes' | 'No';2235 }2233 }223622342237 /** @name OrmlVestingModuleEvent (278) */2235 /** @name OrmlVestingModuleEvent (277) */2238 export interface OrmlVestingModuleEvent extends Enum {2236 export interface OrmlVestingModuleEvent extends Enum {2239 readonly isVestingScheduleAdded: boolean;2237 readonly isVestingScheduleAdded: boolean;2240 readonly asVestingScheduleAdded: {2238 readonly asVestingScheduleAdded: {2254 readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';2252 readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';2255 }2253 }225622542257 /** @name CumulusPalletXcmpQueueEvent (279) */2255 /** @name CumulusPalletXcmpQueueEvent (278) */2258 export interface CumulusPalletXcmpQueueEvent extends Enum {2256 export interface CumulusPalletXcmpQueueEvent extends Enum {2259 readonly isSuccess: boolean;2257 readonly isSuccess: boolean;2260 readonly asSuccess: Option<H256>;2258 readonly asSuccess: Option<H256>;2275 readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';2273 readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';2276 }2274 }227722752278 /** @name PalletXcmEvent (280) */2276 /** @name PalletXcmEvent (279) */2279 export interface PalletXcmEvent extends Enum {2277 export interface PalletXcmEvent extends Enum {2280 readonly isAttempted: boolean;2278 readonly isAttempted: boolean;2281 readonly asAttempted: XcmV2TraitsOutcome;2279 readonly asAttempted: XcmV2TraitsOutcome;2312 readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';2310 readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';2313 }2311 }231423122315 /** @name XcmV2TraitsOutcome (281) */2313 /** @name XcmV2TraitsOutcome (280) */2316 export interface XcmV2TraitsOutcome extends Enum {2314 export interface XcmV2TraitsOutcome extends Enum {2317 readonly isComplete: boolean;2315 readonly isComplete: boolean;2318 readonly asComplete: u64;2316 readonly asComplete: u64;2323 readonly type: 'Complete' | 'Incomplete' | 'Error';2321 readonly type: 'Complete' | 'Incomplete' | 'Error';2324 }2322 }232523232326 /** @name CumulusPalletXcmEvent (283) */2324 /** @name CumulusPalletXcmEvent (282) */2327 export interface CumulusPalletXcmEvent extends Enum {2325 export interface CumulusPalletXcmEvent extends Enum {2328 readonly isInvalidFormat: boolean;2326 readonly isInvalidFormat: boolean;2329 readonly asInvalidFormat: U8aFixed;2327 readonly asInvalidFormat: U8aFixed;2334 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';2332 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';2335 }2333 }233623342337 /** @name CumulusPalletDmpQueueEvent (284) */2335 /** @name CumulusPalletDmpQueueEvent (283) */2338 export interface CumulusPalletDmpQueueEvent extends Enum {2336 export interface CumulusPalletDmpQueueEvent extends Enum {2339 readonly isInvalidFormat: boolean;2337 readonly isInvalidFormat: boolean;2340 readonly asInvalidFormat: {2338 readonly asInvalidFormat: {2369 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';2367 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';2370 }2368 }237123692372 /** @name PalletUniqueRawEvent (285) */2370 /** @name PalletUniqueRawEvent (284) */2373 export interface PalletUniqueRawEvent extends Enum {2371 export interface PalletUniqueRawEvent extends Enum {2374 readonly isCollectionSponsorRemoved: boolean;2372 readonly isCollectionSponsorRemoved: boolean;2375 readonly asCollectionSponsorRemoved: u32;2373 readonly asCollectionSponsorRemoved: u32;2394 readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'CollectionPermissionSet';2392 readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'CollectionPermissionSet';2395 }2393 }239623942397 /** @name PalletUniqueSchedulerEvent (286) */2395 /** @name PalletUniqueSchedulerEvent (285) */2398 export interface PalletUniqueSchedulerEvent extends Enum {2396 export interface PalletUniqueSchedulerEvent extends Enum {2399 readonly isScheduled: boolean;2397 readonly isScheduled: boolean;2400 readonly asScheduled: {2398 readonly asScheduled: {2421 readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallLookupFailed';2419 readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallLookupFailed';2422 }2420 }242324212424 /** @name FrameSupportScheduleLookupError (288) */2422 /** @name FrameSupportScheduleLookupError (287) */2425 export interface FrameSupportScheduleLookupError extends Enum {2423 export interface FrameSupportScheduleLookupError extends Enum {2426 readonly isUnknown: boolean;2424 readonly isUnknown: boolean;2427 readonly isBadFormat: boolean;2425 readonly isBadFormat: boolean;2428 readonly type: 'Unknown' | 'BadFormat';2426 readonly type: 'Unknown' | 'BadFormat';2429 }2427 }243024282431 /** @name PalletCommonEvent (289) */2429 /** @name PalletCommonEvent (288) */2432 export interface PalletCommonEvent extends Enum {2430 export interface PalletCommonEvent extends Enum {2433 readonly isCollectionCreated: boolean;2431 readonly isCollectionCreated: boolean;2434 readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;2432 readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;2455 readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet';2453 readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet';2456 }2454 }245724552458 /** @name PalletStructureEvent (290) */2456 /** @name PalletStructureEvent (289) */2459 export interface PalletStructureEvent extends Enum {2457 export interface PalletStructureEvent extends Enum {2460 readonly isExecuted: boolean;2458 readonly isExecuted: boolean;2461 readonly asExecuted: Result<Null, SpRuntimeDispatchError>;2459 readonly asExecuted: Result<Null, SpRuntimeDispatchError>;2462 readonly type: 'Executed';2460 readonly type: 'Executed';2463 }2461 }246424622465 /** @name PalletRmrkCoreEvent (291) */2463 /** @name PalletRmrkCoreEvent (290) */2466 export interface PalletRmrkCoreEvent extends Enum {2464 export interface PalletRmrkCoreEvent extends Enum {2467 readonly isCollectionCreated: boolean;2465 readonly isCollectionCreated: boolean;2468 readonly asCollectionCreated: {2466 readonly asCollectionCreated: {2552 readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet';2550 readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet';2553 }2551 }255425522555 /** @name PalletRmrkEquipEvent (292) */2553 /** @name PalletRmrkEquipEvent (291) */2556 export interface PalletRmrkEquipEvent extends Enum {2554 export interface PalletRmrkEquipEvent extends Enum {2557 readonly isBaseCreated: boolean;2555 readonly isBaseCreated: boolean;2558 readonly asBaseCreated: {2556 readonly asBaseCreated: {2567 readonly type: 'BaseCreated' | 'EquippablesUpdated';2565 readonly type: 'BaseCreated' | 'EquippablesUpdated';2568 }2566 }256925672570 /** @name PalletEvmEvent (293) */2568 /** @name PalletEvmEvent (292) */2571 export interface PalletEvmEvent extends Enum {2569 export interface PalletEvmEvent extends Enum {2572 readonly isLog: boolean;2570 readonly isLog: boolean;2573 readonly asLog: EthereumLog;2571 readonly asLog: EthereumLog;2586 readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';2584 readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';2587 }2585 }258825862589 /** @name EthereumLog (294) */2587 /** @name EthereumLog (293) */2590 export interface EthereumLog extends Struct {2588 export interface EthereumLog extends Struct {2591 readonly address: H160;2589 readonly address: H160;2592 readonly topics: Vec<H256>;2590 readonly topics: Vec<H256>;2593 readonly data: Bytes;2591 readonly data: Bytes;2594 }2592 }259525932596 /** @name PalletEthereumEvent (295) */2594 /** @name PalletEthereumEvent (294) */2597 export interface PalletEthereumEvent extends Enum {2595 export interface PalletEthereumEvent extends Enum {2598 readonly isExecuted: boolean;2596 readonly isExecuted: boolean;2599 readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;2597 readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;2600 readonly type: 'Executed';2598 readonly type: 'Executed';2601 }2599 }260226002603 /** @name EvmCoreErrorExitReason (296) */2601 /** @name EvmCoreErrorExitReason (295) */2604 export interface EvmCoreErrorExitReason extends Enum {2602 export interface EvmCoreErrorExitReason extends Enum {2605 readonly isSucceed: boolean;2603 readonly isSucceed: boolean;2606 readonly asSucceed: EvmCoreErrorExitSucceed;2604 readonly asSucceed: EvmCoreErrorExitSucceed;2613 readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';2611 readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';2614 }2612 }261526132616 /** @name EvmCoreErrorExitSucceed (297) */2614 /** @name EvmCoreErrorExitSucceed (296) */2617 export interface EvmCoreErrorExitSucceed extends Enum {2615 export interface EvmCoreErrorExitSucceed extends Enum {2618 readonly isStopped: boolean;2616 readonly isStopped: boolean;2619 readonly isReturned: boolean;2617 readonly isReturned: boolean;2620 readonly isSuicided: boolean;2618 readonly isSuicided: boolean;2621 readonly type: 'Stopped' | 'Returned' | 'Suicided';2619 readonly type: 'Stopped' | 'Returned' | 'Suicided';2622 }2620 }262326212624 /** @name EvmCoreErrorExitError (298) */2622 /** @name EvmCoreErrorExitError (297) */2625 export interface EvmCoreErrorExitError extends Enum {2623 export interface EvmCoreErrorExitError extends Enum {2626 readonly isStackUnderflow: boolean;2624 readonly isStackUnderflow: boolean;2627 readonly isStackOverflow: boolean;2625 readonly isStackOverflow: boolean;2642 readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode';2640 readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode';2643 }2641 }264426422645 /** @name EvmCoreErrorExitRevert (301) */2643 /** @name EvmCoreErrorExitRevert (300) */2646 export interface EvmCoreErrorExitRevert extends Enum {2644 export interface EvmCoreErrorExitRevert extends Enum {2647 readonly isReverted: boolean;2645 readonly isReverted: boolean;2648 readonly type: 'Reverted';2646 readonly type: 'Reverted';2649 }2647 }265026482651 /** @name EvmCoreErrorExitFatal (302) */2649 /** @name EvmCoreErrorExitFatal (301) */2652 export interface EvmCoreErrorExitFatal extends Enum {2650 export interface EvmCoreErrorExitFatal extends Enum {2653 readonly isNotSupported: boolean;2651 readonly isNotSupported: boolean;2654 readonly isUnhandledInterrupt: boolean;2652 readonly isUnhandledInterrupt: boolean;2659 readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';2657 readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';2660 }2658 }266126592662 /** @name FrameSystemPhase (303) */2660 /** @name FrameSystemPhase (302) */2663 export interface FrameSystemPhase extends Enum {2661 export interface FrameSystemPhase extends Enum {2664 readonly isApplyExtrinsic: boolean;2662 readonly isApplyExtrinsic: boolean;2665 readonly asApplyExtrinsic: u32;2663 readonly asApplyExtrinsic: u32;2668 readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';2666 readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';2669 }2667 }267026682671 /** @name FrameSystemLastRuntimeUpgradeInfo (305) */2669 /** @name FrameSystemLastRuntimeUpgradeInfo (304) */2672 export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {2670 export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {2673 readonly specVersion: Compact<u32>;2671 readonly specVersion: Compact<u32>;2674 readonly specName: Text;2672 readonly specName: Text;2675 }2673 }267626742677 /** @name FrameSystemLimitsBlockWeights (306) */2675 /** @name FrameSystemLimitsBlockWeights (305) */2678 export interface FrameSystemLimitsBlockWeights extends Struct {2676 export interface FrameSystemLimitsBlockWeights extends Struct {2679 readonly baseBlock: u64;2677 readonly baseBlock: u64;2680 readonly maxBlock: u64;2678 readonly maxBlock: u64;2681 readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;2679 readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;2682 }2680 }268326812684 /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (307) */2682 /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (306) */2685 export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {2683 export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {2686 readonly normal: FrameSystemLimitsWeightsPerClass;2684 readonly normal: FrameSystemLimitsWeightsPerClass;2687 readonly operational: FrameSystemLimitsWeightsPerClass;2685 readonly operational: FrameSystemLimitsWeightsPerClass;2688 readonly mandatory: FrameSystemLimitsWeightsPerClass;2686 readonly mandatory: FrameSystemLimitsWeightsPerClass;2689 }2687 }269026882691 /** @name FrameSystemLimitsWeightsPerClass (308) */2689 /** @name FrameSystemLimitsWeightsPerClass (307) */2692 export interface FrameSystemLimitsWeightsPerClass extends Struct {2690 export interface FrameSystemLimitsWeightsPerClass extends Struct {2693 readonly baseExtrinsic: u64;2691 readonly baseExtrinsic: u64;2694 readonly maxExtrinsic: Option<u64>;2692 readonly maxExtrinsic: Option<u64>;2695 readonly maxTotal: Option<u64>;2693 readonly maxTotal: Option<u64>;2696 readonly reserved: Option<u64>;2694 readonly reserved: Option<u64>;2697 }2695 }269826962699 /** @name FrameSystemLimitsBlockLength (310) */2697 /** @name FrameSystemLimitsBlockLength (309) */2700 export interface FrameSystemLimitsBlockLength extends Struct {2698 export interface FrameSystemLimitsBlockLength extends Struct {2701 readonly max: FrameSupportWeightsPerDispatchClassU32;2699 readonly max: FrameSupportWeightsPerDispatchClassU32;2702 }2700 }270327012704 /** @name FrameSupportWeightsPerDispatchClassU32 (311) */2702 /** @name FrameSupportWeightsPerDispatchClassU32 (310) */2705 export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {2703 export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {2706 readonly normal: u32;2704 readonly normal: u32;2707 readonly operational: u32;2705 readonly operational: u32;2708 readonly mandatory: u32;2706 readonly mandatory: u32;2709 }2707 }271027082711 /** @name FrameSupportWeightsRuntimeDbWeight (312) */2709 /** @name FrameSupportWeightsRuntimeDbWeight (311) */2712 export interface FrameSupportWeightsRuntimeDbWeight extends Struct {2710 export interface FrameSupportWeightsRuntimeDbWeight extends Struct {2713 readonly read: u64;2711 readonly read: u64;2714 readonly write: u64;2712 readonly write: u64;2715 }2713 }271627142717 /** @name SpVersionRuntimeVersion (313) */2715 /** @name SpVersionRuntimeVersion (312) */2718 export interface SpVersionRuntimeVersion extends Struct {2716 export interface SpVersionRuntimeVersion extends Struct {2719 readonly specName: Text;2717 readonly specName: Text;2720 readonly implName: Text;2718 readonly implName: Text;2726 readonly stateVersion: u8;2724 readonly stateVersion: u8;2727 }2725 }272827262729 /** @name FrameSystemError (317) */2727 /** @name FrameSystemError (316) */2730 export interface FrameSystemError extends Enum {2728 export interface FrameSystemError extends Enum {2731 readonly isInvalidSpecName: boolean;2729 readonly isInvalidSpecName: boolean;2732 readonly isSpecVersionNeedsToIncrease: boolean;2730 readonly isSpecVersionNeedsToIncrease: boolean;2737 readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';2735 readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';2738 }2736 }273927372740 /** @name OrmlVestingModuleError (319) */2738 /** @name OrmlVestingModuleError (318) */2741 export interface OrmlVestingModuleError extends Enum {2739 export interface OrmlVestingModuleError extends Enum {2742 readonly isZeroVestingPeriod: boolean;2740 readonly isZeroVestingPeriod: boolean;2743 readonly isZeroVestingPeriodCount: boolean;2741 readonly isZeroVestingPeriodCount: boolean;2748 readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';2746 readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';2749 }2747 }275027482751 /** @name CumulusPalletXcmpQueueInboundChannelDetails (321) */2749 /** @name CumulusPalletXcmpQueueInboundChannelDetails (320) */2752 export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {2750 export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {2753 readonly sender: u32;2751 readonly sender: u32;2754 readonly state: CumulusPalletXcmpQueueInboundState;2752 readonly state: CumulusPalletXcmpQueueInboundState;2755 readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;2753 readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;2756 }2754 }275727552758 /** @name CumulusPalletXcmpQueueInboundState (322) */2756 /** @name CumulusPalletXcmpQueueInboundState (321) */2759 export interface CumulusPalletXcmpQueueInboundState extends Enum {2757 export interface CumulusPalletXcmpQueueInboundState extends Enum {2760 readonly isOk: boolean;2758 readonly isOk: boolean;2761 readonly isSuspended: boolean;2759 readonly isSuspended: boolean;2762 readonly type: 'Ok' | 'Suspended';2760 readonly type: 'Ok' | 'Suspended';2763 }2761 }276427622765 /** @name PolkadotParachainPrimitivesXcmpMessageFormat (325) */2763 /** @name PolkadotParachainPrimitivesXcmpMessageFormat (324) */2766 export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {2764 export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {2767 readonly isConcatenatedVersionedXcm: boolean;2765 readonly isConcatenatedVersionedXcm: boolean;2768 readonly isConcatenatedEncodedBlob: boolean;2766 readonly isConcatenatedEncodedBlob: boolean;2769 readonly isSignals: boolean;2767 readonly isSignals: boolean;2770 readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';2768 readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';2771 }2769 }277227702773 /** @name CumulusPalletXcmpQueueOutboundChannelDetails (328) */2771 /** @name CumulusPalletXcmpQueueOutboundChannelDetails (327) */2774 export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {2772 export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {2775 readonly recipient: u32;2773 readonly recipient: u32;2776 readonly state: CumulusPalletXcmpQueueOutboundState;2774 readonly state: CumulusPalletXcmpQueueOutboundState;2779 readonly lastIndex: u16;2777 readonly lastIndex: u16;2780 }2778 }278127792782 /** @name CumulusPalletXcmpQueueOutboundState (329) */2780 /** @name CumulusPalletXcmpQueueOutboundState (328) */2783 export interface CumulusPalletXcmpQueueOutboundState extends Enum {2781 export interface CumulusPalletXcmpQueueOutboundState extends Enum {2784 readonly isOk: boolean;2782 readonly isOk: boolean;2785 readonly isSuspended: boolean;2783 readonly isSuspended: boolean;2786 readonly type: 'Ok' | 'Suspended';2784 readonly type: 'Ok' | 'Suspended';2787 }2785 }278827862789 /** @name CumulusPalletXcmpQueueQueueConfigData (331) */2787 /** @name CumulusPalletXcmpQueueQueueConfigData (330) */2790 export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {2788 export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {2791 readonly suspendThreshold: u32;2789 readonly suspendThreshold: u32;2792 readonly dropThreshold: u32;2790 readonly dropThreshold: u32;2796 readonly xcmpMaxIndividualWeight: u64;2794 readonly xcmpMaxIndividualWeight: u64;2797 }2795 }279827962799 /** @name CumulusPalletXcmpQueueError (333) */2797 /** @name CumulusPalletXcmpQueueError (332) */2800 export interface CumulusPalletXcmpQueueError extends Enum {2798 export interface CumulusPalletXcmpQueueError extends Enum {2801 readonly isFailedToSend: boolean;2799 readonly isFailedToSend: boolean;2802 readonly isBadXcmOrigin: boolean;2800 readonly isBadXcmOrigin: boolean;2806 readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';2804 readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';2807 }2805 }280828062809 /** @name PalletXcmError (334) */2807 /** @name PalletXcmError (333) */2810 export interface PalletXcmError extends Enum {2808 export interface PalletXcmError extends Enum {2811 readonly isUnreachable: boolean;2809 readonly isUnreachable: boolean;2812 readonly isSendFailure: boolean;2810 readonly isSendFailure: boolean;2824 readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';2822 readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';2825 }2823 }282628242827 /** @name CumulusPalletXcmError (335) */2825 /** @name CumulusPalletXcmError (334) */2828 export type CumulusPalletXcmError = Null;2826 export type CumulusPalletXcmError = Null;282928272830 /** @name CumulusPalletDmpQueueConfigData (336) */2828 /** @name CumulusPalletDmpQueueConfigData (335) */2831 export interface CumulusPalletDmpQueueConfigData extends Struct {2829 export interface CumulusPalletDmpQueueConfigData extends Struct {2832 readonly maxIndividual: u64;2830 readonly maxIndividual: u64;2833 }2831 }283428322835 /** @name CumulusPalletDmpQueuePageIndexData (337) */2833 /** @name CumulusPalletDmpQueuePageIndexData (336) */2836 export interface CumulusPalletDmpQueuePageIndexData extends Struct {2834 export interface CumulusPalletDmpQueuePageIndexData extends Struct {2837 readonly beginUsed: u32;2835 readonly beginUsed: u32;2838 readonly endUsed: u32;2836 readonly endUsed: u32;2839 readonly overweightCount: u64;2837 readonly overweightCount: u64;2840 }2838 }284128392842 /** @name CumulusPalletDmpQueueError (340) */2840 /** @name CumulusPalletDmpQueueError (339) */2843 export interface CumulusPalletDmpQueueError extends Enum {2841 export interface CumulusPalletDmpQueueError extends Enum {2844 readonly isUnknown: boolean;2842 readonly isUnknown: boolean;2845 readonly isOverLimit: boolean;2843 readonly isOverLimit: boolean;2846 readonly type: 'Unknown' | 'OverLimit';2844 readonly type: 'Unknown' | 'OverLimit';2847 }2845 }284828462849 /** @name PalletUniqueError (344) */2847 /** @name PalletUniqueError (343) */2850 export interface PalletUniqueError extends Enum {2848 export interface PalletUniqueError extends Enum {2851 readonly isCollectionDecimalPointLimitExceeded: boolean;2849 readonly isCollectionDecimalPointLimitExceeded: boolean;2852 readonly isConfirmUnsetSponsorFail: boolean;2850 readonly isConfirmUnsetSponsorFail: boolean;2855 readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';2853 readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';2856 }2854 }285728552858 /** @name PalletUniqueSchedulerScheduledV3 (347) */2856 /** @name PalletUniqueSchedulerScheduledV3 (346) */2859 export interface PalletUniqueSchedulerScheduledV3 extends Struct {2857 export interface PalletUniqueSchedulerScheduledV3 extends Struct {2860 readonly maybeId: Option<U8aFixed>;2858 readonly maybeId: Option<U8aFixed>;2861 readonly priority: u8;2859 readonly priority: u8;2864 readonly origin: OpalRuntimeOriginCaller;2862 readonly origin: OpalRuntimeOriginCaller;2865 }2863 }286628642867 /** @name OpalRuntimeOriginCaller (348) */2865 /** @name OpalRuntimeOriginCaller (347) */2868 export interface OpalRuntimeOriginCaller extends Enum {2866 export interface OpalRuntimeOriginCaller extends Enum {2869 readonly isVoid: boolean;2867 readonly isVoid: boolean;2870 readonly isSystem: boolean;2868 readonly isSystem: boolean;2878 readonly type: 'Void' | 'System' | 'PolkadotXcm' | 'CumulusXcm' | 'Ethereum';2876 readonly type: 'Void' | 'System' | 'PolkadotXcm' | 'CumulusXcm' | 'Ethereum';2879 }2877 }288028782881 /** @name FrameSupportDispatchRawOrigin (349) */2879 /** @name FrameSupportDispatchRawOrigin (348) */2882 export interface FrameSupportDispatchRawOrigin extends Enum {2880 export interface FrameSupportDispatchRawOrigin extends Enum {2883 readonly isRoot: boolean;2881 readonly isRoot: boolean;2884 readonly isSigned: boolean;2882 readonly isSigned: boolean;2887 readonly type: 'Root' | 'Signed' | 'None';2885 readonly type: 'Root' | 'Signed' | 'None';2888 }2886 }288928872890 /** @name PalletXcmOrigin (350) */2888 /** @name PalletXcmOrigin (349) */2891 export interface PalletXcmOrigin extends Enum {2889 export interface PalletXcmOrigin extends Enum {2892 readonly isXcm: boolean;2890 readonly isXcm: boolean;2893 readonly asXcm: XcmV1MultiLocation;2891 readonly asXcm: XcmV1MultiLocation;2896 readonly type: 'Xcm' | 'Response';2894 readonly type: 'Xcm' | 'Response';2897 }2895 }289828962899 /** @name CumulusPalletXcmOrigin (351) */2897 /** @name CumulusPalletXcmOrigin (350) */2900 export interface CumulusPalletXcmOrigin extends Enum {2898 export interface CumulusPalletXcmOrigin extends Enum {2901 readonly isRelay: boolean;2899 readonly isRelay: boolean;2902 readonly isSiblingParachain: boolean;2900 readonly isSiblingParachain: boolean;2903 readonly asSiblingParachain: u32;2901 readonly asSiblingParachain: u32;2904 readonly type: 'Relay' | 'SiblingParachain';2902 readonly type: 'Relay' | 'SiblingParachain';2905 }2903 }290629042907 /** @name PalletEthereumRawOrigin (352) */2905 /** @name PalletEthereumRawOrigin (351) */2908 export interface PalletEthereumRawOrigin extends Enum {2906 export interface PalletEthereumRawOrigin extends Enum {2909 readonly isEthereumTransaction: boolean;2907 readonly isEthereumTransaction: boolean;2910 readonly asEthereumTransaction: H160;2908 readonly asEthereumTransaction: H160;2911 readonly type: 'EthereumTransaction';2909 readonly type: 'EthereumTransaction';2912 }2910 }291329112914 /** @name SpCoreVoid (353) */2912 /** @name SpCoreVoid (352) */2915 export type SpCoreVoid = Null;2913 export type SpCoreVoid = Null;291629142917 /** @name PalletUniqueSchedulerError (354) */2915 /** @name PalletUniqueSchedulerError (353) */2918 export interface PalletUniqueSchedulerError extends Enum {2916 export interface PalletUniqueSchedulerError extends Enum {2919 readonly isFailedToSchedule: boolean;2917 readonly isFailedToSchedule: boolean;2920 readonly isNotFound: boolean;2918 readonly isNotFound: boolean;2923 readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange';2921 readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange';2924 }2922 }292529232926 /** @name UpDataStructsCollection (355) */2924 /** @name UpDataStructsCollection (354) */2927 export interface UpDataStructsCollection extends Struct {2925 export interface UpDataStructsCollection extends Struct {2928 readonly owner: AccountId32;2926 readonly owner: AccountId32;2929 readonly mode: UpDataStructsCollectionMode;2927 readonly mode: UpDataStructsCollectionMode;2936 readonly externalCollection: bool;2934 readonly externalCollection: bool;2937 }2935 }293829362939 /** @name UpDataStructsSponsorshipState (356) */2937 /** @name UpDataStructsSponsorshipState (355) */2940 export interface UpDataStructsSponsorshipState extends Enum {2938 export interface UpDataStructsSponsorshipState extends Enum {2941 readonly isDisabled: boolean;2939 readonly isDisabled: boolean;2942 readonly isUnconfirmed: boolean;2940 readonly isUnconfirmed: boolean;2946 readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';2944 readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';2947 }2945 }294829462949 /** @name UpDataStructsProperties (357) */2947 /** @name UpDataStructsProperties (356) */2950 export interface UpDataStructsProperties extends Struct {2948 export interface UpDataStructsProperties extends Struct {2951 readonly map: UpDataStructsPropertiesMapBoundedVec;2949 readonly map: UpDataStructsPropertiesMapBoundedVec;2952 readonly consumedSpace: u32;2950 readonly consumedSpace: u32;2953 readonly spaceLimit: u32;2951 readonly spaceLimit: u32;2954 }2952 }295529532956 /** @name UpDataStructsPropertiesMapBoundedVec (358) */2954 /** @name UpDataStructsPropertiesMapBoundedVec (357) */2957 export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}2955 export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}295829562959 /** @name UpDataStructsPropertiesMapPropertyPermission (363) */2957 /** @name UpDataStructsPropertiesMapPropertyPermission (362) */2960 export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}2958 export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}296129592962 /** @name UpDataStructsCollectionStats (370) */2960 /** @name UpDataStructsCollectionStats (369) */2963 export interface UpDataStructsCollectionStats extends Struct {2961 export interface UpDataStructsCollectionStats extends Struct {2964 readonly created: u32;2962 readonly created: u32;2965 readonly destroyed: u32;2963 readonly destroyed: u32;2966 readonly alive: u32;2964 readonly alive: u32;2967 }2965 }296829662969 /** @name UpDataStructsTokenChild (371) */2967 /** @name UpDataStructsTokenChild (370) */2970 export interface UpDataStructsTokenChild extends Struct {2968 export interface UpDataStructsTokenChild extends Struct {2971 readonly token: u32;2969 readonly token: u32;2972 readonly collection: u32;2970 readonly collection: u32;2973 }2971 }297429722975 /** @name PhantomTypeUpDataStructs (372) */2973 /** @name PhantomTypeUpDataStructs (371) */2976 export interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}2974 export interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}297729752978 /** @name UpDataStructsTokenData (374) */2976 /** @name UpDataStructsTokenData (373) */2979 export interface UpDataStructsTokenData extends Struct {2977 export interface UpDataStructsTokenData extends Struct {2980 readonly properties: Vec<UpDataStructsProperty>;2978 readonly properties: Vec<UpDataStructsProperty>;2981 readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;2979 readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;2982 readonly pieces: u128;2980 readonly pieces: u128;2983 }2981 }298429822985 /** @name UpDataStructsRpcCollection (376) */2983 /** @name UpDataStructsRpcCollection (375) */2986 export interface UpDataStructsRpcCollection extends Struct {2984 export interface UpDataStructsRpcCollection extends Struct {2987 readonly owner: AccountId32;2985 readonly owner: AccountId32;2988 readonly mode: UpDataStructsCollectionMode;2986 readonly mode: UpDataStructsCollectionMode;2997 readonly readOnly: bool;2995 readonly readOnly: bool;2998 }2996 }299929973000 /** @name RmrkTraitsCollectionCollectionInfo (377) */2998 /** @name RmrkTraitsCollectionCollectionInfo (376) */3001 export interface RmrkTraitsCollectionCollectionInfo extends Struct {2999 export interface RmrkTraitsCollectionCollectionInfo extends Struct {3002 readonly issuer: AccountId32;3000 readonly issuer: AccountId32;3003 readonly metadata: Bytes;3001 readonly metadata: Bytes;3006 readonly nftsCount: u32;3004 readonly nftsCount: u32;3007 }3005 }300830063009 /** @name RmrkTraitsNftNftInfo (378) */3007 /** @name RmrkTraitsNftNftInfo (377) */3010 export interface RmrkTraitsNftNftInfo extends Struct {3008 export interface RmrkTraitsNftNftInfo extends Struct {3011 readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;3009 readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;3012 readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;3010 readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;3015 readonly pending: bool;3013 readonly pending: bool;3016 }3014 }301730153018 /** @name RmrkTraitsNftRoyaltyInfo (380) */3016 /** @name RmrkTraitsNftRoyaltyInfo (379) */3019 export interface RmrkTraitsNftRoyaltyInfo extends Struct {3017 export interface RmrkTraitsNftRoyaltyInfo extends Struct {3020 readonly recipient: AccountId32;3018 readonly recipient: AccountId32;3021 readonly amount: Permill;3019 readonly amount: Permill;3022 }3020 }302330213024 /** @name RmrkTraitsResourceResourceInfo (381) */3022 /** @name RmrkTraitsResourceResourceInfo (380) */3025 export interface RmrkTraitsResourceResourceInfo extends Struct {3023 export interface RmrkTraitsResourceResourceInfo extends Struct {3026 readonly id: u32;3024 readonly id: u32;3027 readonly resource: RmrkTraitsResourceResourceTypes;3025 readonly resource: RmrkTraitsResourceResourceTypes;3028 readonly pending: bool;3026 readonly pending: bool;3029 readonly pendingRemoval: bool;3027 readonly pendingRemoval: bool;3030 }3028 }303130293032 /** @name RmrkTraitsPropertyPropertyInfo (382) */3030 /** @name RmrkTraitsPropertyPropertyInfo (381) */3033 export interface RmrkTraitsPropertyPropertyInfo extends Struct {3031 export interface RmrkTraitsPropertyPropertyInfo extends Struct {3034 readonly key: Bytes;3032 readonly key: Bytes;3035 readonly value: Bytes;3033 readonly value: Bytes;3036 }3034 }303730353038 /** @name RmrkTraitsBaseBaseInfo (383) */3036 /** @name RmrkTraitsBaseBaseInfo (382) */3039 export interface RmrkTraitsBaseBaseInfo extends Struct {3037 export interface RmrkTraitsBaseBaseInfo extends Struct {3040 readonly issuer: AccountId32;3038 readonly issuer: AccountId32;3041 readonly baseType: Bytes;3039 readonly baseType: Bytes;3042 readonly symbol: Bytes;3040 readonly symbol: Bytes;3043 }3041 }304430423045 /** @name RmrkTraitsNftNftChild (384) */3043 /** @name RmrkTraitsNftNftChild (383) */3046 export interface RmrkTraitsNftNftChild extends Struct {3044 export interface RmrkTraitsNftNftChild extends Struct {3047 readonly collectionId: u32;3045 readonly collectionId: u32;3048 readonly nftId: u32;3046 readonly nftId: u32;3049 }3047 }305030483051 /** @name PalletCommonError (386) */3049 /** @name PalletCommonError (385) */3052 export interface PalletCommonError extends Enum {3050 export interface PalletCommonError extends Enum {3053 readonly isCollectionNotFound: boolean;3051 readonly isCollectionNotFound: boolean;3054 readonly isMustBeTokenOwner: boolean;3052 readonly isMustBeTokenOwner: boolean;3087 readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal';3085 readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal';3088 }3086 }308930873090 /** @name PalletFungibleError (388) */3088 /** @name PalletFungibleError (387) */3091 export interface PalletFungibleError extends Enum {3089 export interface PalletFungibleError extends Enum {3092 readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;3090 readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;3093 readonly isFungibleItemsHaveNoId: boolean;3091 readonly isFungibleItemsHaveNoId: boolean;3097 readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';3095 readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';3098 }3096 }309930973100 /** @name PalletRefungibleItemData (389) */3098 /** @name PalletRefungibleItemData (388) */3101 export interface PalletRefungibleItemData extends Struct {3099 export interface PalletRefungibleItemData extends Struct {3102 readonly constData: Bytes;3100 readonly constData: Bytes;3103 }3101 }3144 /** @name PalletRmrkCoreError (400) */3142 /** @name PalletRmrkCoreError (400) */3145 export interface PalletRmrkCoreError extends Enum {3143 export interface PalletRmrkCoreError extends Enum {3146 readonly isCorruptedCollectionType: boolean;3144 readonly isCorruptedCollectionType: boolean;3147 readonly isNftTypeEncodeError: boolean;3148 readonly isRmrkPropertyKeyIsTooLong: boolean;3145 readonly isRmrkPropertyKeyIsTooLong: boolean;3149 readonly isRmrkPropertyValueIsTooLong: boolean;3146 readonly isRmrkPropertyValueIsTooLong: boolean;3150 readonly isRmrkPropertyIsNotFound: boolean;3147 readonly isRmrkPropertyIsNotFound: boolean;3163 readonly isCannotRejectNonPendingNft: boolean;3160 readonly isCannotRejectNonPendingNft: boolean;3164 readonly isResourceNotPending: boolean;3161 readonly isResourceNotPending: boolean;3165 readonly isNoAvailableResourceId: boolean;3162 readonly isNoAvailableResourceId: boolean;3166 readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';3163 readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';3167 }3164 }316831653169 /** @name PalletRmrkEquipError (402) */3166 /** @name PalletRmrkEquipError (402) */