difftreelog
bench and contract added
in: master
20 files changed
bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.abidiffbeforeafterboth--- /dev/null
+++ b/bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.abi
@@ -0,0 +1 @@
+[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_toEth","type":"address"},{"indexed":false,"internalType":"uint256","name":"_toSub","type":"uint256"},{"indexed":false,"internalType":"address","name":"_collection","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"MintToSub","type":"event"},{"inputs":[{"internalType":"address","name":"_collection","type":"address"},{"internalType":"uint256","name":"_substrateReceiver","type":"uint256"}],"name":"mintToSubstrate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_collection","type":"address"},{"internalType":"uint256","name":"_substrateReceiver","type":"uint256"},{"components":[{"internalType":"string","name":"field_0","type":"string"},{"internalType":"bytes","name":"field_1","type":"bytes"}],"internalType":"struct Tuple21[]","name":"_properties","type":"tuple[]"}],"name":"mintToSubstrateBulkProperty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_collection","type":"address"},{"internalType":"uint256","name":"_substrateReceiver","type":"uint256"},{"components":[{"internalType":"string","name":"key","type":"string"},{"internalType":"bytes","name":"value","type":"bytes"}],"internalType":"struct Property[]","name":"properties","type":"tuple[]"}],"name":"mintToSubstrateWithProperty","outputs":[],"stateMutability":"nonpayable","type":"function"}]
\ No newline at end of file
bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.bindiffbeforeafterboth--- /dev/null
+++ b/bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.bin
@@ -0,0 +1 @@
+608060405234801561001057600080fd5b506111d4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633a0dbb1a14610046578063440dff9d1461005b5780637a8d97861461006e575b600080fd5b610059610054366004610d6f565b610081565b005b610059610069366004610d6f565b610472565b61005961007c366004610dc9565b6109fb565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ed9190610df3565b6101125760405162461bcd60e51b815260040161010990610e1c565b60405180910390fd5b82806101555760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c29190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201156104165760408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b81523060048201528a906001600160a01b03821690636a627842906024016020604051808303816000875af11580156102a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c69190610f4c565b604051630a769d3760e11b81529092506001600160a01b038216906314ed3a6e906102f99085908d908d90600401610fd4565b600060405180830381600087803b15801561031357600080fd5b505af1158015610327573d6000803e3d6000fd5b5050604080518082018252308152600060208083018290528351808501855291825281018f9052915163d5cf430b60e01b81526001600160a01b038616945063d5cf430b935061037c92908790600401611088565b600060405180830381600087803b15801561039657600080fd5b505af11580156103aa573d6000803e3d6000fd5b5050505050610416565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b6064820152608401610109565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de9190610df3565b6104fa5760405162461bcd60e51b815260040161010990610e1c565b828061053d5760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610582573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105aa9190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016108065760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610642573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106669190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c85818110610701576107016110c1565b905060200281019061071391906110d7565b61071d90806110f7565b8e8e8781811061072f5761072f6110c1565b905060200281019061074191906110d7565b61074f9060208101906110f7565b6040518663ffffffff1660e01b815260040161076f95949392919061113e565b600060405180830381600087803b15801561078957600080fd5b505af115801561079d573d6000803e3d6000fd5b50505050806107ab90611177565b90506106d7565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b9261037c929091908790600401611088565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b45760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af9190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c8581811061094a5761094a6110c1565b905060200281019061095c91906110d7565b61096690806110f7565b8e8e87818110610978576109786110c1565b905060200281019061098a91906110d7565b6109989060208101906110f7565b6040518663ffffffff1660e01b81526004016109b895949392919061113e565b600060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b50505050806109f490611177565b9050610920565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190610df3565b610a835760405162461bcd60e51b815260040161010990610e1c565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610ac8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610af09190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201610c3e576040516335313c2160e11b815230600482015287906001600160a01b03821690636a627842906024015b6020604051808303816000875af1158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190610f4c565b604080518082018252308152600060208083018290528351808501855291825281018b9052915163d5cf430b60e01b81529294506001600160a01b0384169263d5cf430b92610c0692918790600401611088565b600060405180830381600087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b5050505050610cae565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b815230600482015287906001600160a01b03821690636a62784290602401610b6f565b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610d1e57600080fd5b919050565b60008083601f840112610d3557600080fd5b50813567ffffffffffffffff811115610d4d57600080fd5b6020830191508360208260051b8501011115610d6857600080fd5b9250929050565b60008060008060608587031215610d8557600080fd5b610d8e85610d07565b935060208501359250604085013567ffffffffffffffff811115610db157600080fd5b610dbd87828801610d23565b95989497509550505050565b60008060408385031215610ddc57600080fd5b610de583610d07565b946020939093013593505050565b600060208284031215610e0557600080fd5b81518015158114610e1557600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e9557600080fd5b825167ffffffffffffffff80821115610ead57600080fd5b818501915085601f830112610ec157600080fd5b815181811115610ed357610ed3610e6c565b604051601f8201601f19908116603f01168101908382118183101715610efb57610efb610e6c565b816040528281528886848701011115610f1357600080fd5b600093505b82841015610f355784840186015181850187015292850192610f18565b600086848301015280965050505050505092915050565b600060208284031215610f5e57600080fd5b5051919050565b6000808335601e19843603018112610f7c57600080fd5b830160208101925035905067ffffffffffffffff811115610f9c57600080fd5b803603821315610d6857600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006040808301868452602082818601528186835260608601905060608760051b8701019250876000805b8981101561107857888603605f190184528235368c9003603e19018112611024578283fd5b8b016110308180610f65565b8989526110408a8a018284610fab565b91505061104f87830183610f65565b9250888203888a0152611063828483610fab565b98505050938501935091840191600101610fff565b50939a9950505050505050505050565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a00190565b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126110ed57600080fd5b9190910192915050565b6000808335601e1984360301811261110e57600080fd5b83018035915067ffffffffffffffff82111561112957600080fd5b602001915036819003821315610d6857600080fd5b858152606060208201526000611158606083018688610fab565b828103604084015261116b818587610fab565b98975050505050505050565b60006001820161119757634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212206fee43cab49543809f191e238525b8a47306c665c42f86e318153d2b9e9d1de064736f6c63430008110033
\ No newline at end of file
bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.jsondiffbeforeafterboth--- /dev/null
+++ b/bin/tests/src/eth/evmToSubstrate/EvmToSubstrate.json
@@ -0,0 +1,7415 @@
+{
+ "contractName": "EvmToSubstrate",
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_toEth",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_toSub",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "MintToSub",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "_properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "mintToSubstrateBulkProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Property[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_toEth\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_toSub\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"MintToSub\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"}],\"name\":\"mintToSubstrate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"_properties\",\"type\":\"tuple[]\"}],\"name\":\"mintToSubstrateBulkProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"internalType\":\"struct Property[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"mintToSubstrateWithProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"MintToSub(address,uint256,address,uint256)\":{\"details\":\"This emits when a mint to a substrate address has been made.\"}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":\"EvmToSubstrate\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":{\"keccak256\":\"0x36f13dcad1a598bad13e4019319da9ca6161782448bd7fc698c1e265140e5460\",\"license\":\"Apache License\",\"urls\":[\"bzz-raw://2e32be5bdb8265a44cbdb50306ea53fb56c52dbbe7b8d742af30f46e48133e13\",\"dweb:/ipfs/QmZfaDgiXDvyERJvYuvGXWT5FeRpPSdH5UuGgDnDxP5RVk\"]}},\"version\":1}",
+ "bytecode": "608060405234801561001057600080fd5b506111d4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633a0dbb1a14610046578063440dff9d1461005b5780637a8d97861461006e575b600080fd5b610059610054366004610d6f565b610081565b005b610059610069366004610d6f565b610472565b61005961007c366004610dc9565b6109fb565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ed9190610df3565b6101125760405162461bcd60e51b815260040161010990610e1c565b60405180910390fd5b82806101555760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c29190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201156104165760408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b81523060048201528a906001600160a01b03821690636a627842906024016020604051808303816000875af11580156102a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c69190610f4c565b604051630a769d3760e11b81529092506001600160a01b038216906314ed3a6e906102f99085908d908d90600401610fd4565b600060405180830381600087803b15801561031357600080fd5b505af1158015610327573d6000803e3d6000fd5b5050604080518082018252308152600060208083018290528351808501855291825281018f9052915163d5cf430b60e01b81526001600160a01b038616945063d5cf430b935061037c92908790600401611088565b600060405180830381600087803b15801561039657600080fd5b505af11580156103aa573d6000803e3d6000fd5b5050505050610416565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b6064820152608401610109565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de9190610df3565b6104fa5760405162461bcd60e51b815260040161010990610e1c565b828061053d5760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610582573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105aa9190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016108065760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610642573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106669190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c85818110610701576107016110c1565b905060200281019061071391906110d7565b61071d90806110f7565b8e8e8781811061072f5761072f6110c1565b905060200281019061074191906110d7565b61074f9060208101906110f7565b6040518663ffffffff1660e01b815260040161076f95949392919061113e565b600060405180830381600087803b15801561078957600080fd5b505af115801561079d573d6000803e3d6000fd5b50505050806107ab90611177565b90506106d7565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b9261037c929091908790600401611088565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b45760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af9190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c8581811061094a5761094a6110c1565b905060200281019061095c91906110d7565b61096690806110f7565b8e8e87818110610978576109786110c1565b905060200281019061098a91906110d7565b6109989060208101906110f7565b6040518663ffffffff1660e01b81526004016109b895949392919061113e565b600060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b50505050806109f490611177565b9050610920565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190610df3565b610a835760405162461bcd60e51b815260040161010990610e1c565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610ac8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610af09190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201610c3e576040516335313c2160e11b815230600482015287906001600160a01b03821690636a627842906024015b6020604051808303816000875af1158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190610f4c565b604080518082018252308152600060208083018290528351808501855291825281018b9052915163d5cf430b60e01b81529294506001600160a01b0384169263d5cf430b92610c0692918790600401611088565b600060405180830381600087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b5050505050610cae565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b815230600482015287906001600160a01b03821690636a62784290602401610b6f565b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610d1e57600080fd5b919050565b60008083601f840112610d3557600080fd5b50813567ffffffffffffffff811115610d4d57600080fd5b6020830191508360208260051b8501011115610d6857600080fd5b9250929050565b60008060008060608587031215610d8557600080fd5b610d8e85610d07565b935060208501359250604085013567ffffffffffffffff811115610db157600080fd5b610dbd87828801610d23565b95989497509550505050565b60008060408385031215610ddc57600080fd5b610de583610d07565b946020939093013593505050565b600060208284031215610e0557600080fd5b81518015158114610e1557600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e9557600080fd5b825167ffffffffffffffff80821115610ead57600080fd5b818501915085601f830112610ec157600080fd5b815181811115610ed357610ed3610e6c565b604051601f8201601f19908116603f01168101908382118183101715610efb57610efb610e6c565b816040528281528886848701011115610f1357600080fd5b600093505b82841015610f355784840186015181850187015292850192610f18565b600086848301015280965050505050505092915050565b600060208284031215610f5e57600080fd5b5051919050565b6000808335601e19843603018112610f7c57600080fd5b830160208101925035905067ffffffffffffffff811115610f9c57600080fd5b803603821315610d6857600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006040808301868452602082818601528186835260608601905060608760051b8701019250876000805b8981101561107857888603605f190184528235368c9003603e19018112611024578283fd5b8b016110308180610f65565b8989526110408a8a018284610fab565b91505061104f87830183610f65565b9250888203888a0152611063828483610fab565b98505050938501935091840191600101610fff565b50939a9950505050505050505050565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a00190565b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126110ed57600080fd5b9190910192915050565b6000808335601e1984360301811261110e57600080fd5b83018035915067ffffffffffffffff82111561112957600080fd5b602001915036819003821315610d6857600080fd5b858152606060208201526000611158606083018688610fab565b828103604084015261116b818587610fab565b98975050505050505050565b60006001820161119757634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212206fee43cab49543809f191e238525b8a47306c665c42f86e318153d2b9e9d1de064736f6c63430008110033",
+ "deployedBytecode": "608060405234801561001057600080fd5b50600436106100415760003560e01c80633a0dbb1a14610046578063440dff9d1461005b5780637a8d97861461006e575b600080fd5b610059610054366004610d6f565b610081565b005b610059610069366004610d6f565b610472565b61005961007c366004610dc9565b6109fb565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ed9190610df3565b6101125760405162461bcd60e51b815260040161010990610e1c565b60405180910390fd5b82806101555760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c29190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201156104165760408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b81523060048201528a906001600160a01b03821690636a627842906024016020604051808303816000875af11580156102a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c69190610f4c565b604051630a769d3760e11b81529092506001600160a01b038216906314ed3a6e906102f99085908d908d90600401610fd4565b600060405180830381600087803b15801561031357600080fd5b505af1158015610327573d6000803e3d6000fd5b5050604080518082018252308152600060208083018290528351808501855291825281018f9052915163d5cf430b60e01b81526001600160a01b038616945063d5cf430b935061037c92908790600401611088565b600060405180830381600087803b15801561039657600080fd5b505af11580156103aa573d6000803e3d6000fd5b5050505050610416565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b6064820152608401610109565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de9190610df3565b6104fa5760405162461bcd60e51b815260040161010990610e1c565b828061053d5760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610582573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105aa9190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016108065760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610642573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106669190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c85818110610701576107016110c1565b905060200281019061071391906110d7565b61071d90806110f7565b8e8e8781811061072f5761072f6110c1565b905060200281019061074191906110d7565b61074f9060208101906110f7565b6040518663ffffffff1660e01b815260040161076f95949392919061113e565b600060405180830381600087803b15801561078957600080fd5b505af115801561079d573d6000803e3d6000fd5b50505050806107ab90611177565b90506106d7565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b9261037c929091908790600401611088565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b45760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af9190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c8581811061094a5761094a6110c1565b905060200281019061095c91906110d7565b61096690806110f7565b8e8e87818110610978576109786110c1565b905060200281019061098a91906110d7565b6109989060208101906110f7565b6040518663ffffffff1660e01b81526004016109b895949392919061113e565b600060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b50505050806109f490611177565b9050610920565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190610df3565b610a835760405162461bcd60e51b815260040161010990610e1c565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610ac8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610af09190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201610c3e576040516335313c2160e11b815230600482015287906001600160a01b03821690636a627842906024015b6020604051808303816000875af1158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190610f4c565b604080518082018252308152600060208083018290528351808501855291825281018b9052915163d5cf430b60e01b81529294506001600160a01b0384169263d5cf430b92610c0692918790600401611088565b600060405180830381600087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b5050505050610cae565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b815230600482015287906001600160a01b03821690636a62784290602401610b6f565b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610d1e57600080fd5b919050565b60008083601f840112610d3557600080fd5b50813567ffffffffffffffff811115610d4d57600080fd5b6020830191508360208260051b8501011115610d6857600080fd5b9250929050565b60008060008060608587031215610d8557600080fd5b610d8e85610d07565b935060208501359250604085013567ffffffffffffffff811115610db157600080fd5b610dbd87828801610d23565b95989497509550505050565b60008060408385031215610ddc57600080fd5b610de583610d07565b946020939093013593505050565b600060208284031215610e0557600080fd5b81518015158114610e1557600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e9557600080fd5b825167ffffffffffffffff80821115610ead57600080fd5b818501915085601f830112610ec157600080fd5b815181811115610ed357610ed3610e6c565b604051601f8201601f19908116603f01168101908382118183101715610efb57610efb610e6c565b816040528281528886848701011115610f1357600080fd5b600093505b82841015610f355784840186015181850187015292850192610f18565b600086848301015280965050505050505092915050565b600060208284031215610f5e57600080fd5b5051919050565b6000808335601e19843603018112610f7c57600080fd5b830160208101925035905067ffffffffffffffff811115610f9c57600080fd5b803603821315610d6857600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006040808301868452602082818601528186835260608601905060608760051b8701019250876000805b8981101561107857888603605f190184528235368c9003603e19018112611024578283fd5b8b016110308180610f65565b8989526110408a8a018284610fab565b91505061104f87830183610f65565b9250888203888a0152611063828483610fab565b98505050938501935091840191600101610fff565b50939a9950505050505050505050565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a00190565b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126110ed57600080fd5b9190910192915050565b6000808335601e1984360301811261110e57600080fd5b83018035915067ffffffffffffffff82111561112957600080fd5b602001915036819003821315610d6857600080fd5b858152606060208201526000611158606083018688610fab565b828103604084015261116b818587610fab565b98975050505050505050565b60006001820161119757634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212206fee43cab49543809f191e238525b8a47306c665c42f86e318153d2b9e9d1de064736f6c63430008110033",
+ "sourceMap": "673:5833:5:-:0;;;;;;;;;;;;;;;;;;;",
+ "deployedSourceMap": "673:5833:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5448:1056;;;;;;:::i;:::-;;:::i;:::-;;3688:1757;;;;;;:::i;:::-;;:::i;2212:1473::-;;;;;;:::i;:::-;;:::i;5448:1056::-;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;5606:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;;;;;;;;;5650:11;5680:20;5672:51:::1;;;::::0;-1:-1:-1;;;5672:51:5;;3202:2:6;5672:51:5::1;::::0;::::1;3184:21:6::0;3241:2;3221:18;;;3214:30;-1:-1:-1;;;3260:18:6;;;3253:48;3318:18;;5672:51:5::1;3000:342:6::0;5672:51:5::1;5728:25;5767:11;5728:51;;5783:22;5824:14;-1:-1:-1::0;;;;;5824:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;5824:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;5808:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;5808:55;-1:-1:-1;5867:15:5::1;5891:44:::0;;;5887:541;::::1;;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;5949:45;;;5945:483:::1;;6109:33;::::0;-1:-1:-1;;;6109:33:5;;6136:4:::1;6109:33;::::0;::::1;2239:51:6::0;6037:11:5;;-1:-1:-1;;;;;6109:18:5;::::1;::::0;::::1;::::0;2212::6;;6109:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6148:49;::::0;-1:-1:-1;;;6148:49:5;;6099:43;;-1:-1:-1;;;;;;6148:27:5;::::1;::::0;::::1;::::0;:49:::1;::::0;6099:43;;6185:11;;;;6148:49:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6240:35:5::1;::::0;;;;::::1;::::0;;6266:4:::1;6240:35:::0;;-1:-1:-1;6240:35:5::1;::::0;;::::1;::::0;;;6281:49;;;;::::1;::::0;;;;;;::::1;::::0;;;6203:145;;-1:-1:-1;;;6203:145:5;;-1:-1:-1;;;;;6203:31:5;::::1;::::0;-1:-1:-1;6203:31:5::1;::::0;-1:-1:-1;6203:145:5::1;::::0;6281:49;6336:7;;6203:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;5996:357;5945:483;;;6364:59;::::0;-1:-1:-1;;;6364:59:5;;7944:2:6;6364:59:5::1;::::0;::::1;7926:21:6::0;7983:2;7963:18;;;7956:30;8022:34;8002:18;;;7995:62;-1:-1:-1;;;8073:18:6;;;8066:47;8130:19;;6364:59:5::1;7742:413:6::0;5945:483:5::1;6437:63;::::0;;6455:1:::1;8429:34:6::0;;8494:2;8479:18;;8472:34;;;-1:-1:-1;;;;;8542:15:6;;8522:18;;;8515:43;8589:2;8574:18;;8567:34;;;6437:63:5;;::::1;::::0;;;;8378:3:6;6437:63:5;;::::1;5619:885;;;;1159:889:::0;5448:1056;;;;;:::o;3688:1757::-;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;3842:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;4035:10;4064:20;4056:51:::1;;;::::0;-1:-1:-1;;;4056:51:5;;3202:2:6;4056:51:5::1;::::0;::::1;3184:21:6::0;3241:2;3221:18;;;3214:30;-1:-1:-1;;;3260:18:6;;;3253:48;3318:18;;4056:51:5::1;3000:342:6::0;4056:51:5::1;4112:25;4151:11;4112:51;;4167:22;4208:14;-1:-1:-1::0;;;;;4208:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;4208:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;4192:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;4192:55;-1:-1:-1;4251:15:5::1;4275:44:::0;;;4271:1046:::1;;4326:30;4376:11;4326:62;;4403:13;-1:-1:-1::0;;;;;4403:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4435:33;::::0;-1:-1:-1;;;4435:33:5;;4462:4:::1;4435:33;::::0;::::1;2239:51:6::0;4393:37:5;;-1:-1:-1;;;;;;4435:18:5;::::1;::::0;::::1;::::0;2212::6;;4435:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4478:9;4473:133;4497:16;4493:1;:20;4473:133;;;4526:13;-1:-1:-1::0;;;;;4526:25:5::1;;4552:7;4561:10;;4572:1;4561:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;4580:10;;4591:1;4580:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;4526:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4515:3;;;;:::i;:::-;;;4473:133;;;-1:-1:-1::0;4647:35:5::1;::::0;;;;::::1;::::0;;4673:4:::1;4647:35:::0;;-1:-1:-1;4647:35:5::1;::::0;;::::1;::::0;;;4688:49;;;;::::1;::::0;;;;;;::::1;::::0;;;4610:145;;-1:-1:-1;;;4610:145:5;;-1:-1:-1;;;;;4610:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;4647:35;;4688:49;4743:7;;4610:145:::1;;;:::i;4271:1046::-;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;4770:45;;;4766:551:::1;;4822:23;4858:11;4822:48;;4885:13;-1:-1:-1::0;;;;;4885:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4917:33;::::0;-1:-1:-1;;;4917:33:5;;4944:4:::1;4917:33;::::0;::::1;2239:51:6::0;4875:37:5;;-1:-1:-1;;;;;;4917:18:5;::::1;::::0;::::1;::::0;2212::6;;4917:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4960:9;4955:133;4979:16;4975:1;:20;4955:133;;;5008:13;-1:-1:-1::0;;;;;5008:25:5::1;;5034:7;5043:10;;5054:1;5043:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;5062:10;;5073:1;5062:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5008:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4997:3;;;;:::i;:::-;;;4955:133;;2212:1473:::0;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;2313:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;2476:25:::1;2515:11;2476:51;;2531:22;2572:14;-1:-1:-1::0;;;;;2572:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;2572:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;2556:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;2556:55;-1:-1:-1;2615:15:5::1;2639:44:::0;;;2635:759:::1;;2771:33;::::0;-1:-1:-1;;;2771:33:5;;2798:4:::1;2771:33;::::0;::::1;2239:51:6::0;2740:11:5;;-1:-1:-1;;;;;2771:18:5;::::1;::::0;::::1;::::0;2212::6;;2771:33:5::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2847:35;::::0;;;;::::1;::::0;;2873:4:::1;2847:35:::0;;-1:-1:-1;2847:35:5::1;::::0;;::::1;::::0;;;2888:49;;;;::::1;::::0;;;;;;::::1;::::0;;;2810:145;;-1:-1:-1;;;2810:145:5;;2761:43;;-1:-1:-1;;;;;;2810:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;2847:35;2761:43;;2810:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2685:275;2635:759;;;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;2970:45;;;2966:428:::1;;3130:33;::::0;-1:-1:-1;;;3130:33:5;;3157:4:::1;3130:33;::::0;::::1;2239:51:6::0;3058:11:5;;-1:-1:-1;;;;;3130:18:5;::::1;::::0;::::1;::::0;2212::6;;3130:33:5::1;2093:203:6::0;2966:428:5::1;3618:63;::::0;;3636:1:::1;8429:34:6::0;;8494:2;8479:18;;8472:34;;;-1:-1:-1;;;;;8542:15:6;;8522:18;;;8515:43;8589:2;8574:18;;8567:34;;;3618:63:5;;::::1;::::0;;;;8378:3:6;3618:63:5;;::::1;2326:1359;;;1159:889:::0;2212:1473;;;:::o;14:173:6:-;82:20;;-1:-1:-1;;;;;131:31:6;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:383::-;271:8;281:6;335:3;328:4;320:6;316:17;312:27;302:55;;353:1;350;343:12;302:55;-1:-1:-1;376:20:6;;419:18;408:30;;405:50;;;451:1;448;441:12;405:50;488:4;480:6;476:17;464:29;;548:3;541:4;531:6;528:1;524:14;516:6;512:27;508:38;505:47;502:67;;;565:1;562;555:12;502:67;192:383;;;;;:::o;580:621::-;710:6;718;726;734;787:2;775:9;766:7;762:23;758:32;755:52;;;803:1;800;793:12;755:52;826:29;845:9;826:29;:::i;:::-;816:39;;902:2;891:9;887:18;874:32;864:42;;957:2;946:9;942:18;929:32;984:18;976:6;973:30;970:50;;;1016:1;1013;1006:12;970:50;1055:86;1133:7;1124:6;1113:9;1109:22;1055:86;:::i;:::-;580:621;;;;-1:-1:-1;1160:8:6;-1:-1:-1;;;;580:621:6:o;1834:254::-;1902:6;1910;1963:2;1951:9;1942:7;1938:23;1934:32;1931:52;;;1979:1;1976;1969:12;1931:52;2002:29;2021:9;2002:29;:::i;:::-;1992:39;2078:2;2063:18;;;;2050:32;;-1:-1:-1;;;1834:254:6:o;2301:277::-;2368:6;2421:2;2409:9;2400:7;2396:23;2392:32;2389:52;;;2437:1;2434;2427:12;2389:52;2469:9;2463:16;2522:5;2515:13;2508:21;2501:5;2498:32;2488:60;;2544:1;2541;2534:12;2488:60;2567:5;2301:277;-1:-1:-1;;;2301:277:6:o;2583:412::-;2785:2;2767:21;;;2824:2;2804:18;;;2797:30;2863:34;2858:2;2843:18;;2836:62;-1:-1:-1;;;2929:2:6;2914:18;;2907:46;2985:3;2970:19;;2583:412::o;3347:127::-;3408:10;3403:3;3399:20;3396:1;3389:31;3439:4;3436:1;3429:15;3463:4;3460:1;3453:15;3479:1042;3559:6;3590:2;3633;3621:9;3612:7;3608:23;3604:32;3601:52;;;3649:1;3646;3639:12;3601:52;3682:9;3676:16;3711:18;3752:2;3744:6;3741:14;3738:34;;;3768:1;3765;3758:12;3738:34;3806:6;3795:9;3791:22;3781:32;;3851:7;3844:4;3840:2;3836:13;3832:27;3822:55;;3873:1;3870;3863:12;3822:55;3902:2;3896:9;3924:2;3920;3917:10;3914:36;;;3930:18;;:::i;:::-;4005:2;3999:9;3973:2;4059:13;;-1:-1:-1;;4055:22:6;;;4079:2;4051:31;4047:40;4035:53;;;4103:18;;;4123:22;;;4100:46;4097:72;;;4149:18;;:::i;:::-;4189:10;4185:2;4178:22;4224:2;4216:6;4209:18;4264:7;4259:2;4254;4250;4246:11;4242:20;4239:33;4236:53;;;4285:1;4282;4275:12;4236:53;4307:1;4298:10;;4317:129;4331:2;4328:1;4325:9;4317:129;;;4419:10;;;4415:19;;4409:26;4388:14;;;4384:23;;4377:59;4342:10;;;;4317:129;;;4488:1;4483:2;4478;4470:6;4466:15;4462:24;4455:35;4509:6;4499:16;;;;;;;;3479:1042;;;;:::o;4526:184::-;4596:6;4649:2;4637:9;4628:7;4624:23;4620:32;4617:52;;;4665:1;4662;4655:12;4617:52;-1:-1:-1;4688:16:6;;4526:184;-1:-1:-1;4526:184:6:o;4715:501::-;4774:5;4781:6;4841:3;4828:17;4927:2;4923:7;4912:8;4896:14;4892:29;4888:43;4868:18;4864:68;4854:96;;4946:1;4943;4936:12;4854:96;4974:33;;5078:4;5065:18;;;-1:-1:-1;5026:21:6;;-1:-1:-1;5106:18:6;5095:30;;5092:50;;;5138:1;5135;5128:12;5092:50;5185:6;5169:14;5165:27;5158:5;5154:39;5151:59;;;5206:1;5203;5196:12;5221:267;5310:6;5305:3;5298:19;5362:6;5355:5;5348:4;5343:3;5339:14;5326:43;-1:-1:-1;5414:1:6;5389:16;;;5407:4;5385:27;;;5378:38;;;;5470:2;5449:15;;;-1:-1:-1;;5445:29:6;5436:39;;;5432:50;;5221:267::o;5493:1549::-;5723:4;5752:2;5792;5781:9;5777:18;5822:6;5811:9;5804:25;5848:2;5886;5881;5870:9;5866:18;5859:30;5909:6;5939;5931;5924:22;5977:2;5966:9;5962:18;5955:25;;6039:2;6029:6;6026:1;6022:14;6011:9;6007:30;6003:39;5989:53;;6065:6;6089:1;6110;6120:893;6136:6;6131:3;6128:15;6120:893;;;6205:22;;;-1:-1:-1;;6201:36:6;6189:49;;6277:20;;6352:14;6348:27;;;-1:-1:-1;;6344:41:6;6320:66;;6310:94;;6400:1;6397;6390:12;6310:94;6430:31;;6508:45;6430:31;;6508:45;:::i;:::-;6581:2;6573:6;6566:18;6611:71;6678:2;6670:6;6666:15;6652:12;6638;6611:71;:::i;:::-;6597:85;;;6733:54;6783:2;6776:5;6772:14;6765:5;6733:54;:::i;:::-;6695:92;;6836:6;6828;6824:19;6819:2;6811:6;6807:15;6800:44;6867:66;6926:6;6910:14;6894;6867:66;:::i;:::-;6857:76;-1:-1:-1;;;6991:12:6;;;;-1:-1:-1;6956:15:6;;;;6162:1;6153:11;6120:893;;;-1:-1:-1;7030:6:6;;5493:1549;-1:-1:-1;;;;;;;;;;5493:1549:6:o;7234:503::-;7132:12;;-1:-1:-1;;;;;7128:38:6;;;7116:51;;7216:4;7205:16;;;7199:23;7183:14;;;7176:47;7132:12;;7128:38;7683:2;7668:18;;7116:51;7205:16;;;;7199:23;7183:14;;;7176:47;7718:3;7703:19;;7696:35;;;;7552:3;7537:19;;7234:503::o;8612:127::-;8673:10;8668:3;8664:20;8661:1;8654:31;8704:4;8701:1;8694:15;8728:4;8725:1;8718:15;8744:325;8838:4;8896:11;8883:25;8990:2;8986:7;8975:8;8959:14;8955:29;8951:43;8931:18;8927:68;8917:96;;9009:1;9006;8999:12;8917:96;9030:33;;;;;8744:325;-1:-1:-1;;8744:325:6:o;9074:522::-;9152:4;9158:6;9218:11;9205:25;9312:2;9308:7;9297:8;9281:14;9277:29;9273:43;9253:18;9249:68;9239:96;;9331:1;9328;9321:12;9239:96;9358:33;;9410:20;;;-1:-1:-1;9453:18:6;9442:30;;9439:50;;;9485:1;9482;9475:12;9439:50;9518:4;9506:17;;-1:-1:-1;9549:14:6;9545:27;;;9535:38;;9532:58;;;9586:1;9583;9576:12;10127:506;10370:6;10359:9;10352:25;10413:2;10408;10397:9;10393:18;10386:30;10333:4;10439:62;10497:2;10486:9;10482:18;10474:6;10466;10439:62;:::i;:::-;10549:9;10541:6;10537:22;10532:2;10521:9;10517:18;10510:50;10577;10620:6;10612;10604;10577:50;:::i;:::-;10569:58;10127:506;-1:-1:-1;;;;;;;;10127:506:6:o;10638:232::-;10677:3;10698:17;;;10695:140;;10757:10;10752:3;10748:20;10745:1;10738:31;10792:4;10789:1;10782:15;10820:4;10817:1;10810:15;10695:140;-1:-1:-1;10862:1:6;10851:13;;10638:232::o",
+ "sourcePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",
+ "compiler": {
+ "name": "solc",
+ "version": "0.8.17+commit.8df45f5f"
+ },
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",
+ "exportedSymbols": {
+ "Collection": [
+ 1248
+ ],
+ "CollectionHelpers": [
+ 99
+ ],
+ "ContractHelpers": [
+ 282
+ ],
+ "EvmToSubstrate": [
+ 2269
+ ],
+ "NftCrossAccountId": [
+ 610
+ ],
+ "NftProperty": [
+ 620
+ ],
+ "Property": [
+ 1762
+ ],
+ "RftCrossAccountId": [
+ 1253
+ ],
+ "RftProperties": [
+ 1263
+ ],
+ "TokenProperties": [
+ 357
+ ],
+ "UniqueNFT": [
+ 930
+ ],
+ "UniqueRefungible": [
+ 1572
+ ],
+ "UniqueRefungibleToken": [
+ 1739
+ ]
+ },
+ "id": 2270,
+ "license": "Apache License",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 1741,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "44:24:5"
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol",
+ "file": "../api/CollectionHelpers.sol",
+ "id": 1743,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 100,
+ "src": "69:63:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1742,
+ "name": "CollectionHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 99,
+ "src": "77:17:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol",
+ "file": "../api/ContractHelpers.sol",
+ "id": 1745,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 288,
+ "src": "133:59:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1744,
+ "name": "ContractHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 282,
+ "src": "141:15:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol",
+ "file": "../api/UniqueRefungibleToken.sol",
+ "id": 1747,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 1740,
+ "src": "193:71:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1746,
+ "name": "UniqueRefungibleToken",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1739,
+ "src": "201:21:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol",
+ "file": "../api/UniqueRefungible.sol",
+ "id": 1752,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 1573,
+ "src": "265:137:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1748,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "273:16:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1749,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "291:10:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1750,
+ "name": "EthCrossAccount",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "303:15:5",
+ "typeDescriptions": {}
+ },
+ "local": "RftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1751,
+ "name": "Tuple20",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1263,
+ "src": "341:7:5",
+ "typeDescriptions": {}
+ },
+ "local": "RftProperties",
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol",
+ "file": "../api/UniqueNFT.sol",
+ "id": 1757,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 931,
+ "src": "403:126:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1753,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "411:9:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1754,
+ "name": "EthCrossAccount",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "422:15:5",
+ "typeDescriptions": {}
+ },
+ "local": "NftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1755,
+ "name": "Tuple21",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 620,
+ "src": "460:7:5",
+ "typeDescriptions": {}
+ },
+ "local": "NftProperty",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1756,
+ "name": "TokenProperties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 357,
+ "src": "484:15:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "canonicalName": "Property",
+ "id": 1762,
+ "members": [
+ {
+ "constant": false,
+ "id": 1759,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "557:3:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1762,
+ "src": "550:10:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1758,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "550:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1761,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "569:5:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1762,
+ "src": "563:11:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1760,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "563:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Property",
+ "nameLocation": "538:8:5",
+ "nodeType": "StructDefinition",
+ "scope": 2270,
+ "src": "531:46:5",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "EvmToSubstrate",
+ "contractDependencies": [],
+ "contractKind": "contract",
+ "fullyImplemented": true,
+ "id": 2269,
+ "linearizedBaseContracts": [
+ 2269
+ ],
+ "name": "EvmToSubstrate",
+ "nameLocation": "682:14:5",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "constant": true,
+ "id": 1770,
+ "mutability": "constant",
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "717:26:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2269,
+ "src": "700:76:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1763,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "700:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "526546756e6769626c65",
+ "id": 1767,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "762:12:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ },
+ "value": "ReFungible"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ }
+ ],
+ "id": 1766,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "756:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1765,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "756:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1768,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "756:19:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1764,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "746:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1769,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "746:30:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": true,
+ "id": 1778,
+ "mutability": "constant",
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "796:27:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2269,
+ "src": "779:70:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1771,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "779:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "4e4654",
+ "id": 1775,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "842:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ },
+ "value": "NFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ }
+ ],
+ "id": 1774,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "836:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1773,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "836:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1776,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "836:12:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1772,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "826:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1777,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "826:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "body": {
+ "id": 1799,
+ "nodeType": "Block",
+ "src": "1159:889:5",
+ "statements": [
+ {
+ "assignments": [
+ 1784
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1784,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "1174:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1799,
+ "src": "1163:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1783,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1782,
+ "name": "Collection",
+ "nameLocations": [
+ "1163:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "1163:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "1163:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1788,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1786,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1780,
+ "src": "1202:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1785,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "1191:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1787,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1191:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "1163:51:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "expression": {
+ "id": 1792,
+ "name": "msg",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967281,
+ "src": "1256:3:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_magic_message",
+ "typeString": "msg"
+ }
+ },
+ "id": 1793,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1260:6:5",
+ "memberName": "sender",
+ "nodeType": "MemberAccess",
+ "src": "1256:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1790,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1784,
+ "src": "1226:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1791,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1241:14:5",
+ "memberName": "isOwnerOrAdmin",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1204,
+ "src": "1226:29:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$",
+ "typeString": "function (address) view external returns (bool)"
+ }
+ },
+ "id": 1794,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1226:41:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2063616c6c2074686973206d6574686f64",
+ "id": 1795,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "1269:50:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ },
+ "value": "Only collection admin/owner can call this method"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ }
+ ],
+ "id": 1789,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "1218:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1796,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1218:102:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1797,
+ "nodeType": "ExpressionStatement",
+ "src": "1218:102:5"
+ },
+ {
+ "id": 1798,
+ "nodeType": "PlaceholderStatement",
+ "src": "2043:1:5"
+ }
+ ]
+ },
+ "id": 1800,
+ "name": "checkRestrictions",
+ "nameLocation": "1120:17:5",
+ "nodeType": "ModifierDefinition",
+ "parameters": {
+ "id": 1781,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1780,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "1146:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1800,
+ "src": "1138:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1779,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1138:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1137:21:5"
+ },
+ "src": "1111:937:5",
+ "virtual": false,
+ "visibility": "internal"
+ },
+ {
+ "anonymous": false,
+ "documentation": {
+ "id": 1801,
+ "nodeType": "StructuredDocumentation",
+ "src": "2051:69:5",
+ "text": "@dev This emits when a mint to a substrate address has been made."
+ },
+ "eventSelector": "fb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb7535",
+ "id": 1811,
+ "name": "MintToSub",
+ "nameLocation": "2128:9:5",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1810,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1803,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toEth",
+ "nameLocation": "2146:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2138:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1802,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2138:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1805,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toSub",
+ "nameLocation": "2162:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2154:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1804,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2154:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1807,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "2178:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2170:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1806,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2170:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1809,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_tokenId",
+ "nameLocation": "2199:8:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2191:16:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1808,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2191:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2137:71:5"
+ },
+ "src": "2122:87:5"
+ },
+ {
+ "body": {
+ "id": 1941,
+ "nodeType": "Block",
+ "src": "2326:1359:5",
+ "statements": [
+ {
+ "assignments": [
+ 1823
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1823,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "2487:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2476:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1822,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1821,
+ "name": "Collection",
+ "nameLocations": [
+ "2476:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "2476:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "2476:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1827,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1825,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2515:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1824,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "2504:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1826,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2504:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2476:51:5"
+ },
+ {
+ "assignments": [
+ 1829
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1829,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "2539:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2531:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1828,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "2531:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1838,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1833,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1823,
+ "src": "2572:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1834,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2587:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "2572:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1835,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2572:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1832,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2566:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1831,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "2566:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1836,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2566:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1830,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "2556:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1837,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2556:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2531:80:5"
+ },
+ {
+ "assignments": [
+ 1840
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1840,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2623:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2615:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1839,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2615:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1841,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2615:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1844,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1842,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1829,
+ "src": "2639:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1843,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "2657:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "2639:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1885,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1883,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1829,
+ "src": "2970:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1884,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "2988:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "2970:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 1928,
+ "nodeType": "Block",
+ "src": "3325:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 1925,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3337:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 1924,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "3330:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 1926,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3330:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1927,
+ "nodeType": "ExpressionStatement",
+ "src": "3330:59:5"
+ }
+ ]
+ },
+ "id": 1929,
+ "nodeType": "IfStatement",
+ "src": "2966:428:5",
+ "trueBody": {
+ "id": 1923,
+ "nodeType": "Block",
+ "src": "3017:302:5",
+ "statements": [
+ {
+ "assignments": [
+ 1888
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1888,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "3032:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1923,
+ "src": "3022:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 1887,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1886,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "3022:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "3022:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "3022:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1892,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1890,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "3058:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1889,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "3048:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 1891,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3048:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "3022:48:5"
+ },
+ {
+ "expression": {
+ "id": 1901,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1893,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3120:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1898,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3157:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1897,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3149:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1896,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3149:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1899,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3149:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1894,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1888,
+ "src": "3130:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1895,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3144:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "3130:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 1900,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3130:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "3120:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1902,
+ "nodeType": "ExpressionStatement",
+ "src": "3120:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1909,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3232:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1908,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3224:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1907,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3224:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1910,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3224:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1911,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3239:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1906,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "3206:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1912,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3206:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1916,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3273:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1915,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3265:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1914,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3265:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1917,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3265:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1918,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "3277:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1913,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "3247:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1919,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3247:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 1920,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3302:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1903,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1888,
+ "src": "3169:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1905,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3183:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "3169:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 1921,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3169:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1922,
+ "nodeType": "ExpressionStatement",
+ "src": "3169:145:5"
+ }
+ ]
+ }
+ },
+ "id": 1930,
+ "nodeType": "IfStatement",
+ "src": "2635:759:5",
+ "trueBody": {
+ "id": 1882,
+ "nodeType": "Block",
+ "src": "2685:275:5",
+ "statements": [
+ {
+ "assignments": [
+ 1847
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1847,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "2707:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1882,
+ "src": "2690:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1846,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1845,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "2690:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1572,
+ "src": "2690:16:5"
+ },
+ "referencedDeclaration": 1572,
+ "src": "2690:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1851,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1849,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2740:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1848,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "2723:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1572_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1850,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2723:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2690:62:5"
+ },
+ {
+ "expression": {
+ "id": 1860,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1852,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "2761:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1857,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "2798:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1856,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2790:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1855,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2790:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1858,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2790:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1853,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1847,
+ "src": "2771:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1854,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2785:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1314,
+ "src": "2771:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 1859,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2771:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "2761:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1861,
+ "nodeType": "ExpressionStatement",
+ "src": "2761:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1868,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "2873:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1867,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2865:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1866,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2865:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1869,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2865:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1870,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "2880:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1865,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "2847:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1871,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2847:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1875,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "2914:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1874,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2906:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1873,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2906:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1876,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2906:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1877,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "2918:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1872,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "2888:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1878,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2888:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 1879,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "2943:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1862,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1847,
+ "src": "2810:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1864,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2824:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1368,
+ "src": "2810:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 1880,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2810:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1881,
+ "nodeType": "ExpressionStatement",
+ "src": "2810:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1934,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3636:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1933,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3628:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1932,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3628:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1935,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3628:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1936,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "3640:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 1937,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "3660:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1938,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3673:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1931,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "3618:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 1939,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3618:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1940,
+ "nodeType": "EmitStatement",
+ "src": "3613:68:5"
+ }
+ ]
+ },
+ "functionSelector": "7a8d9786",
+ "id": 1942,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1818,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2313:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1819,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1817,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "2295:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "2295:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "2295:30:5"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "nameLocation": "2221:15:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1816,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1813,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "2245:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1942,
+ "src": "2237:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1812,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2237:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1815,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "2266:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1942,
+ "src": "2258:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1814,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2258:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2236:49:5"
+ },
+ "returnParameters": {
+ "id": 1820,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2326:0:5"
+ },
+ "scope": 2269,
+ "src": "2212:1473:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "body": {
+ "id": 2150,
+ "nodeType": "Block",
+ "src": "3855:1590:5",
+ "statements": [
+ {
+ "assignments": [
+ 1957
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1957,
+ "mutability": "mutable",
+ "name": "propertiesLength",
+ "nameLocation": "4016:16:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4008:24:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1956,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4008:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1960,
+ "initialValue": {
+ "expression": {
+ "id": 1958,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4035:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 1959,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4046:6:5",
+ "memberName": "length",
+ "nodeType": "MemberAccess",
+ "src": "4035:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4008:44:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 1964,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1962,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4064:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": ">",
+ "rightExpression": {
+ "hexValue": "30",
+ "id": 1963,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4083:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "src": "4064:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "id": 1965,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4086:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ },
+ "value": "Properies is empty"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ }
+ ],
+ "id": 1961,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "4056:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1966,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4056:51:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1967,
+ "nodeType": "ExpressionStatement",
+ "src": "4056:51:5"
+ },
+ {
+ "assignments": [
+ 1970
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1970,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "4123:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4112:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1969,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1968,
+ "name": "Collection",
+ "nameLocations": [
+ "4112:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "4112:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "4112:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1974,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1972,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4151:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1971,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "4140:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1973,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4140:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4112:51:5"
+ },
+ {
+ "assignments": [
+ 1976
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1976,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "4175:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4167:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1975,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "4167:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1985,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1980,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1970,
+ "src": "4208:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1981,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4223:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "4208:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1982,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4208:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1979,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4202:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1978,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "4202:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1983,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4202:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1977,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "4192:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1984,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4192:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4167:80:5"
+ },
+ {
+ "assignments": [
+ 1987
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1987,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "4259:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4251:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1986,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4251:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1988,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4251:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1991,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1989,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1976,
+ "src": "4275:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1990,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "4293:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "4275:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2063,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2061,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1976,
+ "src": "4770:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2062,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "4788:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "4770:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 2137,
+ "nodeType": "Block",
+ "src": "5248:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 2134,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5260:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 2133,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "5253:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 2135,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5253:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2136,
+ "nodeType": "ExpressionStatement",
+ "src": "5253:59:5"
+ }
+ ]
+ },
+ "id": 2138,
+ "nodeType": "IfStatement",
+ "src": "4766:551:5",
+ "trueBody": {
+ "id": 2132,
+ "nodeType": "Block",
+ "src": "4817:425:5",
+ "statements": [
+ {
+ "assignments": [
+ 2066
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2066,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "4832:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2132,
+ "src": "4822:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 2065,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2064,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "4822:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "4822:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "4822:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2070,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2068,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4858:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2067,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "4848:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 2069,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4848:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4822:48:5"
+ },
+ {
+ "expression": {
+ "id": 2075,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 2071,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4875:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2072,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "4885:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2073,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4899:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 757,
+ "src": "4885:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 2074,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4885:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4875:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2076,
+ "nodeType": "ExpressionStatement",
+ "src": "4875:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2082,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4944:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2081,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4936:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2080,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4936:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2083,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4936:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2077,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "4917:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2079,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4931:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "4917:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2084,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4917:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2085,
+ "nodeType": "ExpressionStatement",
+ "src": "4917:33:5"
+ },
+ {
+ "body": {
+ "id": 2110,
+ "nodeType": "Block",
+ "src": "5002:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2099,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5034:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2100,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "5043:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2102,
+ "indexExpression": {
+ "id": 2101,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "5054:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5043:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2103,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5057:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1759,
+ "src": "5043:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2104,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "5062:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2106,
+ "indexExpression": {
+ "id": 2105,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "5073:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5062:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2107,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5076:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1761,
+ "src": "5062:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 2096,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "5008:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2098,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5022:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 328,
+ "src": "5008:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 2108,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5008:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2109,
+ "nodeType": "ExpressionStatement",
+ "src": "5008:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2092,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2090,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "4975:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 2091,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4979:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4975:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2111,
+ "initializationExpression": {
+ "assignments": [
+ 2087
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2087,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "4968:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2111,
+ "src": "4960:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2086,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4960:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2089,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 2088,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4972:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4960:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 2094,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "4997:3:5",
+ "subExpression": {
+ "id": 2093,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "4999:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2095,
+ "nodeType": "ExpressionStatement",
+ "src": "4997:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "4955:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2118,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "5155:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2117,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5147:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2116,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5147:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2119,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5147:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2120,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5162:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2115,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "5129:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2121,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5129:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2125,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5196:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2124,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5188:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2123,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5188:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2126,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5188:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2127,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "5200:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2122,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "5170:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2128,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5170:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2129,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5225:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2112,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "5092:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2114,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5106:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "5092:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2130,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5092:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2131,
+ "nodeType": "ExpressionStatement",
+ "src": "5092:145:5"
+ }
+ ]
+ }
+ },
+ "id": 2139,
+ "nodeType": "IfStatement",
+ "src": "4271:1046:5",
+ "trueBody": {
+ "id": 2060,
+ "nodeType": "Block",
+ "src": "4321:439:5",
+ "statements": [
+ {
+ "assignments": [
+ 1994
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1994,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "4343:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2060,
+ "src": "4326:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1993,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1992,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "4326:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1572,
+ "src": "4326:16:5"
+ },
+ "referencedDeclaration": 1572,
+ "src": "4326:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1998,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1996,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4376:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1995,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "4359:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1572_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1997,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4359:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4326:62:5"
+ },
+ {
+ "expression": {
+ "id": 2003,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1999,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4393:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2000,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4403:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2001,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4417:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1391,
+ "src": "4403:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 2002,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4403:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4393:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2004,
+ "nodeType": "ExpressionStatement",
+ "src": "4393:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2010,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4462:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2009,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4454:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2008,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4454:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2011,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4454:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2005,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4435:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2007,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4449:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1314,
+ "src": "4435:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2012,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4435:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2013,
+ "nodeType": "ExpressionStatement",
+ "src": "4435:33:5"
+ },
+ {
+ "body": {
+ "id": 2038,
+ "nodeType": "Block",
+ "src": "4520:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2027,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4552:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2028,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4561:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2030,
+ "indexExpression": {
+ "id": 2029,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4572:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4561:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2031,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4575:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1759,
+ "src": "4561:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2032,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4580:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2034,
+ "indexExpression": {
+ "id": 2033,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4591:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4580:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2035,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4594:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1761,
+ "src": "4580:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 2024,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4526:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2026,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4540:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 971,
+ "src": "4526:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 2036,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4526:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2037,
+ "nodeType": "ExpressionStatement",
+ "src": "4526:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2020,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2018,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4493:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 2019,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4497:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4493:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2039,
+ "initializationExpression": {
+ "assignments": [
+ 2015
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2015,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "4486:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2039,
+ "src": "4478:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2014,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4478:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2017,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 2016,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4490:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4478:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 2022,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "4515:3:5",
+ "subExpression": {
+ "id": 2021,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4517:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2023,
+ "nodeType": "ExpressionStatement",
+ "src": "4515:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "4473:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2046,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4673:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2045,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4665:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2044,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4665:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2047,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4665:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2048,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4680:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2043,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "4647:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2049,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4647:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2053,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4714:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2052,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4706:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2051,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4706:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2054,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4706:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2055,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "4718:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2050,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "4688:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2056,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4688:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2057,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4743:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2040,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4610:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2042,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4624:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1368,
+ "src": "4610:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2058,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4610:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2059,
+ "nodeType": "ExpressionStatement",
+ "src": "4610:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2143,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5396:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2142,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5388:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2141,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5388:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2144,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5388:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2145,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "5400:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2146,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "5420:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2147,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5433:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2140,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "5378:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 2148,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5378:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2149,
+ "nodeType": "EmitStatement",
+ "src": "5373:68:5"
+ }
+ ]
+ },
+ "functionSelector": "440dff9d",
+ "id": 2151,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1953,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "3842:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1954,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1952,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "3824:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "3824:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "3824:30:5"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "nameLocation": "3697:27:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1951,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1944,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "3736:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3728:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1943,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3728:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1946,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "3759:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3751:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1945,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3751:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1950,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "3801:10:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3781:30:5",
+ "stateVariable": false,
+ "storageLocation": "calldata",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1948,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1947,
+ "name": "Property",
+ "nameLocations": [
+ "3781:8:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1762,
+ "src": "3781:8:5"
+ },
+ "referencedDeclaration": 1762,
+ "src": "3781:8:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_storage_ptr",
+ "typeString": "struct Property"
+ }
+ },
+ "id": 1949,
+ "nodeType": "ArrayTypeName",
+ "src": "3781:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_storage_$dyn_storage_ptr",
+ "typeString": "struct Property[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3724:90:5"
+ },
+ "returnParameters": {
+ "id": 1955,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3855:0:5"
+ },
+ "scope": 2269,
+ "src": "3688:1757:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "body": {
+ "id": 2267,
+ "nodeType": "Block",
+ "src": "5619:885:5",
+ "statements": [
+ {
+ "assignments": [
+ 2166
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2166,
+ "mutability": "mutable",
+ "name": "propertiesLength",
+ "nameLocation": "5631:16:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5623:24:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2165,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5623:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2169,
+ "initialValue": {
+ "expression": {
+ "id": 2167,
+ "name": "_properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2159,
+ "src": "5650:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ },
+ "id": 2168,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5662:6:5",
+ "memberName": "length",
+ "nodeType": "MemberAccess",
+ "src": "5650:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5623:45:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2173,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2171,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2166,
+ "src": "5680:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": ">",
+ "rightExpression": {
+ "hexValue": "30",
+ "id": 2172,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5699:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "src": "5680:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "id": 2174,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5702:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ },
+ "value": "Properies is empty"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ }
+ ],
+ "id": 2170,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "5672:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 2175,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5672:51:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2176,
+ "nodeType": "ExpressionStatement",
+ "src": "5672:51:5"
+ },
+ {
+ "assignments": [
+ 2179
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2179,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "5739:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5728:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 2178,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2177,
+ "name": "Collection",
+ "nameLocations": [
+ "5728:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "5728:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "5728:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2183,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2181,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "5767:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2180,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "5756:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 2182,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5756:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5728:51:5"
+ },
+ {
+ "assignments": [
+ 2185
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2185,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "5791:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5783:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 2184,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "5783:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2194,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2189,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2179,
+ "src": "5824:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 2190,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5839:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "5824:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 2191,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5824:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 2188,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5818:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 2187,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "5818:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2192,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5818:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 2186,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "5808:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 2193,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5808:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5783:80:5"
+ },
+ {
+ "assignments": [
+ 2196
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2196,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "5875:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5867:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2195,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5867:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2197,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5867:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2200,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2198,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2185,
+ "src": "5891:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2199,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "5909:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "5891:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2204,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2202,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2185,
+ "src": "5949:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2203,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "5967:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "5949:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 2254,
+ "nodeType": "Block",
+ "src": "6359:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 2251,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6371:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 2250,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "6364:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 2252,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6364:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2253,
+ "nodeType": "ExpressionStatement",
+ "src": "6364:59:5"
+ }
+ ]
+ },
+ "id": 2255,
+ "nodeType": "IfStatement",
+ "src": "5945:483:5",
+ "trueBody": {
+ "id": 2249,
+ "nodeType": "Block",
+ "src": "5996:357:5",
+ "statements": [
+ {
+ "assignments": [
+ 2207
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2207,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "6011:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2249,
+ "src": "6001:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 2206,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2205,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "6001:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "6001:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "6001:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2211,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2209,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "6037:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2208,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "6027:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 2210,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6027:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "6001:48:5"
+ },
+ {
+ "expression": {
+ "id": 2220,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 2212,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6099:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2217,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "6136:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2216,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6128:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2215,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6128:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2218,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6128:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2213,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6109:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2214,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6123:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "6109:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2219,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6109:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "6099:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2221,
+ "nodeType": "ExpressionStatement",
+ "src": "6099:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2225,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6176:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2226,
+ "name": "_properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2159,
+ "src": "6185:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ ],
+ "expression": {
+ "id": 2222,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6148:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2224,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6162:13:5",
+ "memberName": "setProperties",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 338,
+ "src": "6148:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,struct Tuple21 memory[] memory) external"
+ }
+ },
+ "id": 2227,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6148:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2228,
+ "nodeType": "ExpressionStatement",
+ "src": "6148:49:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2235,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "6266:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2234,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6258:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2233,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6258:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2236,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6258:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2237,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6273:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2232,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "6240:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2238,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6240:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2242,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6307:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2241,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6299:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2240,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6299:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2243,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6299:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2244,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2155,
+ "src": "6311:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2239,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "6281:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2245,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6281:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2246,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6336:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2229,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6203:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2231,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6217:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "6203:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2247,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6203:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2248,
+ "nodeType": "ExpressionStatement",
+ "src": "6203:145:5"
+ }
+ ]
+ }
+ },
+ "id": 2256,
+ "nodeType": "IfStatement",
+ "src": "5887:541:5",
+ "trueBody": {
+ "id": 2201,
+ "nodeType": "Block",
+ "src": "5937:2:5",
+ "statements": []
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2260,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6455:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2259,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6447:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2258,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6447:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2261,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6447:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2262,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2155,
+ "src": "6459:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2263,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "6479:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2264,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6492:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2257,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "6437:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 2265,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6437:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2266,
+ "nodeType": "EmitStatement",
+ "src": "6432:68:5"
+ }
+ ]
+ },
+ "functionSelector": "3a0dbb1a",
+ "id": 2268,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 2162,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "5606:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 2163,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 2161,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "5588:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "5588:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "5588:30:5"
+ }
+ ],
+ "name": "mintToSubstrateBulkProperty",
+ "nameLocation": "5457:27:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 2160,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 2153,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "5496:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5488:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 2152,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5488:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 2155,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "5519:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5511:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2154,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5511:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 2159,
+ "mutability": "mutable",
+ "name": "_properties",
+ "nameLocation": "5564:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5541:34:5",
+ "stateVariable": false,
+ "storageLocation": "calldata",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 2157,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2156,
+ "name": "NftProperty",
+ "nameLocations": [
+ "5541:11:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 620,
+ "src": "5541:11:5"
+ },
+ "referencedDeclaration": 620,
+ "src": "5541:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple21_$620_storage_ptr",
+ "typeString": "struct Tuple21"
+ }
+ },
+ "id": 2158,
+ "nodeType": "ArrayTypeName",
+ "src": "5541:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple21[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5484:94:5"
+ },
+ "returnParameters": {
+ "id": 2164,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5619:0:5"
+ },
+ "scope": 2269,
+ "src": "5448:1056:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 2270,
+ "src": "673:5833:5",
+ "usedErrors": []
+ }
+ ],
+ "src": "44:6463:5"
+ },
+ "functionHashes": {
+ "mintToSubstrate(address,uint256)": "7a8d9786",
+ "mintToSubstrateBulkProperty(address,uint256,(string,bytes)[])": "3a0dbb1a",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "440dff9d"
+ },
+ "gasEstimates": {
+ "creation": {
+ "codeDepositCost": "912800",
+ "executionCost": "948",
+ "totalCost": "913748"
+ },
+ "external": {
+ "mintToSubstrate(address,uint256)": "infinite",
+ "mintToSubstrateBulkProperty(address,uint256,(string,bytes)[])": "infinite",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "infinite"
+ }
+ }
+}
\ No newline at end of file
bin/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper-solc-output.jsondiffbeforeafterboth--- /dev/null
+++ b/bin/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper-solc-output.json
@@ -0,0 +1,47295 @@
+{
+ "contracts": {
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol": {
+ "CollectionHelpers": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "collectionId",
+ "type": "address"
+ }
+ ],
+ "name": "CollectionCreated",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "collectionId",
+ "type": "address"
+ }
+ ],
+ "name": "CollectionDestroyed",
+ "type": "event"
+ },
+ {
+ "inputs": [],
+ "name": "collectionCreationFee",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "name",
+ "type": "string"
+ },
+ {
+ "internalType": "uint8",
+ "name": "decimals",
+ "type": "uint8"
+ },
+ {
+ "internalType": "string",
+ "name": "description",
+ "type": "string"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenPrefix",
+ "type": "string"
+ }
+ ],
+ "name": "createFTCollection",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "payable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "name",
+ "type": "string"
+ },
+ {
+ "internalType": "string",
+ "name": "description",
+ "type": "string"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenPrefix",
+ "type": "string"
+ }
+ ],
+ "name": "createNFTCollection",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "payable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "name",
+ "type": "string"
+ },
+ {
+ "internalType": "string",
+ "name": "description",
+ "type": "string"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenPrefix",
+ "type": "string"
+ }
+ ],
+ "name": "createRFTCollection",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "payable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "collectionAddress",
+ "type": "address"
+ }
+ ],
+ "name": "destroyCollection",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "collectionAddress",
+ "type": "address"
+ }
+ ],
+ "name": "isCollectionExist",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "collection",
+ "type": "address"
+ },
+ {
+ "internalType": "string",
+ "name": "baseUri",
+ "type": "string"
+ }
+ ],
+ "name": "makeCollectionERC721MetadataCompatible",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x7dea03b1",
+ "kind": "dev",
+ "methods": {
+ "collectionCreationFee()": {
+ "details": "EVM selector for this function is: 0xd23a7ab1, or in textual repr: collectionCreationFee()"
+ },
+ "createFTCollection(string,uint8,string,string)": {
+ "details": "EVM selector for this function is: 0x7335b79f, or in textual repr: createFTCollection(string,uint8,string,string)"
+ },
+ "createNFTCollection(string,string,string)": {
+ "details": "EVM selector for this function is: 0x844af658, or in textual repr: createNFTCollection(string,string,string)",
+ "params": {
+ "description": "Informative description of the collection",
+ "name": "Name of the collection",
+ "tokenPrefix": "Token prefix to represent the collection tokens in UI and user applications"
+ },
+ "returns": {
+ "_0": "address Address of the newly created collection"
+ }
+ },
+ "createRFTCollection(string,string,string)": {
+ "details": "EVM selector for this function is: 0xab173450, or in textual repr: createRFTCollection(string,string,string)"
+ },
+ "destroyCollection(address)": {
+ "details": "EVM selector for this function is: 0x564e321f, or in textual repr: destroyCollection(address)"
+ },
+ "isCollectionExist(address)": {
+ "details": "EVM selector for this function is: 0xc3de1494, or in textual repr: isCollectionExist(address)",
+ "params": {
+ "collectionAddress": "Address of the collection in question"
+ },
+ "returns": {
+ "_0": "bool Does the collection exist?"
+ }
+ },
+ "makeCollectionERC721MetadataCompatible(address,string)": {
+ "details": "EVM selector for this function is: 0x85624258, or in textual repr: makeCollectionERC721MetadataCompatible(address,string)"
+ }
+ },
+ "title": "Contract, which allows users to operate with collections",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "collectionCreationFee()": "d23a7ab1",
+ "createFTCollection(string,uint8,string,string)": "7335b79f",
+ "createNFTCollection(string,string,string)": "844af658",
+ "createRFTCollection(string,string,string)": "ab173450",
+ "destroyCollection(address)": "564e321f",
+ "isCollectionExist(address)": "c3de1494",
+ "makeCollectionERC721MetadataCompatible(address,string)": "85624258",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"collectionId\",\"type\":\"address\"}],\"name\":\"CollectionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"collectionId\",\"type\":\"address\"}],\"name\":\"CollectionDestroyed\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"collectionCreationFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"tokenPrefix\",\"type\":\"string\"}],\"name\":\"createFTCollection\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"tokenPrefix\",\"type\":\"string\"}],\"name\":\"createNFTCollection\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"tokenPrefix\",\"type\":\"string\"}],\"name\":\"createRFTCollection\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"collectionAddress\",\"type\":\"address\"}],\"name\":\"destroyCollection\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"collectionAddress\",\"type\":\"address\"}],\"name\":\"isCollectionExist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"collection\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"baseUri\",\"type\":\"string\"}],\"name\":\"makeCollectionERC721MetadataCompatible\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x7dea03b1\",\"kind\":\"dev\",\"methods\":{\"collectionCreationFee()\":{\"details\":\"EVM selector for this function is: 0xd23a7ab1, or in textual repr: collectionCreationFee()\"},\"createFTCollection(string,uint8,string,string)\":{\"details\":\"EVM selector for this function is: 0x7335b79f, or in textual repr: createFTCollection(string,uint8,string,string)\"},\"createNFTCollection(string,string,string)\":{\"details\":\"EVM selector for this function is: 0x844af658, or in textual repr: createNFTCollection(string,string,string)\",\"params\":{\"description\":\"Informative description of the collection\",\"name\":\"Name of the collection\",\"tokenPrefix\":\"Token prefix to represent the collection tokens in UI and user applications\"},\"returns\":{\"_0\":\"address Address of the newly created collection\"}},\"createRFTCollection(string,string,string)\":{\"details\":\"EVM selector for this function is: 0xab173450, or in textual repr: createRFTCollection(string,string,string)\"},\"destroyCollection(address)\":{\"details\":\"EVM selector for this function is: 0x564e321f, or in textual repr: destroyCollection(address)\"},\"isCollectionExist(address)\":{\"details\":\"EVM selector for this function is: 0xc3de1494, or in textual repr: isCollectionExist(address)\",\"params\":{\"collectionAddress\":\"Address of the collection in question\"},\"returns\":{\"_0\":\"bool Does the collection exist?\"}},\"makeCollectionERC721MetadataCompatible(address,string)\":{\"details\":\"EVM selector for this function is: 0x85624258, or in textual repr: makeCollectionERC721MetadataCompatible(address,string)\"}},\"title\":\"Contract, which allows users to operate with collections\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"createNFTCollection(string,string,string)\":{\"notice\":\"Create an NFT collection\"},\"isCollectionExist(address)\":{\"notice\":\"Check if a collection exists\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":\"CollectionHelpers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "createNFTCollection(string,string,string)": {
+ "notice": "Create an NFT collection"
+ },
+ "isCollectionExist(address)": {
+ "notice": "Check if a collection exists"
+ }
+ },
+ "version": 1
+ }
+ },
+ "CollectionHelpersEvents": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "collectionId",
+ "type": "address"
+ }
+ ],
+ "name": "CollectionCreated",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "collectionId",
+ "type": "address"
+ }
+ ],
+ "name": "CollectionDestroyed",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"collectionId\",\"type\":\"address\"}],\"name\":\"CollectionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"collectionId\",\"type\":\"address\"}],\"name\":\"CollectionDestroyed\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":\"CollectionHelpersEvents\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "Dummy": {
+ "abi": [],
+ "devdoc": {
+ "details": "common stubs holder",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"common stubs holder\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":\"Dummy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC165": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ }
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol": {
+ "ContractHelpers": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorRemoved",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorSet",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorshipConfirmed",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "allowed",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "allowlistEnabled",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "confirmSponsorship",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "contractOwner",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "hasPendingSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "hasSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "removeSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "selfSponsoredEnable",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "setSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "feeLimit",
+ "type": "uint256"
+ }
+ ],
+ "name": "setSponsoringFeeLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "uint8",
+ "name": "mode",
+ "type": "uint8"
+ }
+ ],
+ "name": "setSponsoringMode",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "uint32",
+ "name": "rateLimit",
+ "type": "uint32"
+ }
+ ],
+ "name": "setSponsoringRateLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "sponsor",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "field_0",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "field_1",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct Tuple0",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "sponsoringEnabled",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "sponsoringFeeLimit",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "sponsoringRateLimit",
+ "outputs": [
+ {
+ "internalType": "uint32",
+ "name": "",
+ "type": "uint32"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "isAllowed",
+ "type": "bool"
+ }
+ ],
+ "name": "toggleAllowed",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "enabled",
+ "type": "bool"
+ }
+ ],
+ "name": "toggleAllowlist",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x30afad04",
+ "kind": "dev",
+ "methods": {
+ "allowed(address,address)": {
+ "details": "Contract owner always implicitly includedEVM selector for this function is: 0x5c658165, or in textual repr: allowed(address,address)",
+ "params": {
+ "contractAddress": "Contract to check allowlist of",
+ "user": "User to check"
+ },
+ "returns": {
+ "_0": "bool Is specified users exists in contract allowlist"
+ }
+ },
+ "allowlistEnabled(address)": {
+ "details": "Allowlist always can have users, and it is used for two purposes: in case of allowlist sponsoring mode, users will be sponsored if they exist in allowlist in case of allowlist access enabled, only users from allowlist may call this contractEVM selector for this function is: 0xc772ef6c, or in textual repr: allowlistEnabled(address)",
+ "params": {
+ "contractAddress": "Contract to get allowlist access of"
+ },
+ "returns": {
+ "_0": "bool Is specified contract has allowlist access enabled"
+ }
+ },
+ "confirmSponsorship(address)": {
+ "details": "Caller must be same that set via [`setSponsor`].EVM selector for this function is: 0xabc00001, or in textual repr: confirmSponsorship(address)",
+ "params": {
+ "contractAddress": "Сontract for which need to confirm sponsorship."
+ }
+ },
+ "contractOwner(address)": {
+ "details": "May return zero address in case if contract is deployed using uniquenetwork evm-migration pallet, or using other terms not intended by pallet-evmReturns zero address if contract does not existsEVM selector for this function is: 0x5152b14c, or in textual repr: contractOwner(address)",
+ "params": {
+ "contractAddress": "Contract to get owner of"
+ },
+ "returns": {
+ "_0": "address Owner of contract"
+ }
+ },
+ "hasPendingSponsor(address)": {
+ "details": "EVM selector for this function is: 0x39b9b242, or in textual repr: hasPendingSponsor(address)",
+ "params": {
+ "contractAddress": "The contract for which the presence of a pending sponsor is checked."
+ },
+ "returns": {
+ "_0": "**true** if contract has pending sponsor."
+ }
+ },
+ "hasSponsor(address)": {
+ "details": "EVM selector for this function is: 0x97418603, or in textual repr: hasSponsor(address)",
+ "params": {
+ "contractAddress": "The contract for which the presence of a confirmed sponsor is checked."
+ },
+ "returns": {
+ "_0": "**true** if contract has confirmed sponsor."
+ }
+ },
+ "removeSponsor(address)": {
+ "details": "EVM selector for this function is: 0xef784250, or in textual repr: removeSponsor(address)",
+ "params": {
+ "contractAddress": "Contract for which a sponsorship is being removed."
+ }
+ },
+ "selfSponsoredEnable(address)": {
+ "details": "EVM selector for this function is: 0x89f7d9ae, or in textual repr: selfSponsoredEnable(address)",
+ "params": {
+ "contractAddress": "Contract for which a self sponsoring is being enabled."
+ }
+ },
+ "setSponsor(address,address)": {
+ "details": "EVM selector for this function is: 0xf01fba93, or in textual repr: setSponsor(address,address)",
+ "params": {
+ "contractAddress": "Contract for which a sponsor is being established.",
+ "sponsor": "User address who set as pending sponsor."
+ }
+ },
+ "setSponsoringFeeLimit(address,uint256)": {
+ "details": "Sponsoring fee limit - is maximum fee that could be spent by single transactionOnly contract owner can change this settingEVM selector for this function is: 0x03aed665, or in textual repr: setSponsoringFeeLimit(address,uint256)",
+ "params": {
+ "contractAddress": "Contract to change sponsoring fee limit of",
+ "feeLimit": "Fee limit"
+ }
+ },
+ "setSponsoringMode(address,uint8)": {
+ "details": "EVM selector for this function is: 0xfde8a560, or in textual repr: setSponsoringMode(address,uint8)"
+ },
+ "setSponsoringRateLimit(address,uint32)": {
+ "details": "Sponsoring rate limit - is a minimum amount of blocks that should pass between two sponsored transactionsOnly contract owner can change this settingEVM selector for this function is: 0x77b6c908, or in textual repr: setSponsoringRateLimit(address,uint32)",
+ "params": {
+ "contractAddress": "Contract to change sponsoring rate limit of",
+ "rateLimit": "Target rate limit"
+ }
+ },
+ "sponsor(address)": {
+ "details": "EVM selector for this function is: 0x766c4f37, or in textual repr: sponsor(address)",
+ "params": {
+ "contractAddress": "The contract for which a sponsor is requested."
+ },
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw."
+ }
+ },
+ "sponsoringEnabled(address)": {
+ "details": "EVM selector for this function is: 0x6027dc61, or in textual repr: sponsoringEnabled(address)"
+ },
+ "sponsoringFeeLimit(address)": {
+ "details": "EVM selector for this function is: 0x75b73606, or in textual repr: sponsoringFeeLimit(address)",
+ "params": {
+ "contractAddress": "Contract to get sponsoring fee limit of"
+ },
+ "returns": {
+ "_0": "uint256 Maximum amount of fee that could be spent by single transaction"
+ }
+ },
+ "sponsoringRateLimit(address)": {
+ "details": "EVM selector for this function is: 0xf29694d8, or in textual repr: sponsoringRateLimit(address)",
+ "params": {
+ "contractAddress": "Contract to get sponsoring rate limit of"
+ },
+ "returns": {
+ "_0": "uint32 Amount of blocks between two sponsored transactions"
+ }
+ },
+ "toggleAllowed(address,address,bool)": {
+ "details": "Only contract owner can change this settingEVM selector for this function is: 0x4706cc1c, or in textual repr: toggleAllowed(address,address,bool)",
+ "params": {
+ "contractAddress": "Contract to change allowlist of",
+ "isAllowed": "`true` if user should be allowed to be sponsored or call this contract, `false` otherwise",
+ "user": "Which user presence should be toggled"
+ }
+ },
+ "toggleAllowlist(address,bool)": {
+ "details": "EVM selector for this function is: 0x36de20f5, or in textual repr: toggleAllowlist(address,bool)",
+ "params": {
+ "contractAddress": "Contract to change allowlist access of",
+ "enabled": "Should allowlist access to be enabled?"
+ }
+ }
+ },
+ "title": "Magic contract, which allows users to reconfigure other contracts",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "allowed(address,address)": "5c658165",
+ "allowlistEnabled(address)": "c772ef6c",
+ "confirmSponsorship(address)": "abc00001",
+ "contractOwner(address)": "5152b14c",
+ "hasPendingSponsor(address)": "39b9b242",
+ "hasSponsor(address)": "97418603",
+ "removeSponsor(address)": "ef784250",
+ "selfSponsoredEnable(address)": "89f7d9ae",
+ "setSponsor(address,address)": "f01fba93",
+ "setSponsoringFeeLimit(address,uint256)": "03aed665",
+ "setSponsoringMode(address,uint8)": "fde8a560",
+ "setSponsoringRateLimit(address,uint32)": "77b6c908",
+ "sponsor(address)": "766c4f37",
+ "sponsoringEnabled(address)": "6027dc61",
+ "sponsoringFeeLimit(address)": "75b73606",
+ "sponsoringRateLimit(address)": "f29694d8",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "toggleAllowed(address,address,bool)": "4706cc1c",
+ "toggleAllowlist(address,bool)": "36de20f5"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"ContractSponsorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"ContractSponsorSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"ContractSponsorshipConfirmed\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"allowlistEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"confirmSponsorship\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"contractOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"hasPendingSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"hasSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"removeSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"selfSponsoredEnable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"setSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"feeLimit\",\"type\":\"uint256\"}],\"name\":\"setSponsoringFeeLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"mode\",\"type\":\"uint8\"}],\"name\":\"setSponsoringMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"rateLimit\",\"type\":\"uint32\"}],\"name\":\"setSponsoringRateLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"sponsor\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"field_0\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"field_1\",\"type\":\"uint256\"}],\"internalType\":\"struct Tuple0\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"sponsoringEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"sponsoringFeeLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"sponsoringRateLimit\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"isAllowed\",\"type\":\"bool\"}],\"name\":\"toggleAllowed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"}],\"name\":\"toggleAllowlist\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x30afad04\",\"kind\":\"dev\",\"methods\":{\"allowed(address,address)\":{\"details\":\"Contract owner always implicitly includedEVM selector for this function is: 0x5c658165, or in textual repr: allowed(address,address)\",\"params\":{\"contractAddress\":\"Contract to check allowlist of\",\"user\":\"User to check\"},\"returns\":{\"_0\":\"bool Is specified users exists in contract allowlist\"}},\"allowlistEnabled(address)\":{\"details\":\"Allowlist always can have users, and it is used for two purposes: in case of allowlist sponsoring mode, users will be sponsored if they exist in allowlist in case of allowlist access enabled, only users from allowlist may call this contractEVM selector for this function is: 0xc772ef6c, or in textual repr: allowlistEnabled(address)\",\"params\":{\"contractAddress\":\"Contract to get allowlist access of\"},\"returns\":{\"_0\":\"bool Is specified contract has allowlist access enabled\"}},\"confirmSponsorship(address)\":{\"details\":\"Caller must be same that set via [`setSponsor`].EVM selector for this function is: 0xabc00001, or in textual repr: confirmSponsorship(address)\",\"params\":{\"contractAddress\":\"\\u0421ontract for which need to confirm sponsorship.\"}},\"contractOwner(address)\":{\"details\":\"May return zero address in case if contract is deployed using uniquenetwork evm-migration pallet, or using other terms not intended by pallet-evmReturns zero address if contract does not existsEVM selector for this function is: 0x5152b14c, or in textual repr: contractOwner(address)\",\"params\":{\"contractAddress\":\"Contract to get owner of\"},\"returns\":{\"_0\":\"address Owner of contract\"}},\"hasPendingSponsor(address)\":{\"details\":\"EVM selector for this function is: 0x39b9b242, or in textual repr: hasPendingSponsor(address)\",\"params\":{\"contractAddress\":\"The contract for which the presence of a pending sponsor is checked.\"},\"returns\":{\"_0\":\"**true** if contract has pending sponsor.\"}},\"hasSponsor(address)\":{\"details\":\"EVM selector for this function is: 0x97418603, or in textual repr: hasSponsor(address)\",\"params\":{\"contractAddress\":\"The contract for which the presence of a confirmed sponsor is checked.\"},\"returns\":{\"_0\":\"**true** if contract has confirmed sponsor.\"}},\"removeSponsor(address)\":{\"details\":\"EVM selector for this function is: 0xef784250, or in textual repr: removeSponsor(address)\",\"params\":{\"contractAddress\":\"Contract for which a sponsorship is being removed.\"}},\"selfSponsoredEnable(address)\":{\"details\":\"EVM selector for this function is: 0x89f7d9ae, or in textual repr: selfSponsoredEnable(address)\",\"params\":{\"contractAddress\":\"Contract for which a self sponsoring is being enabled.\"}},\"setSponsor(address,address)\":{\"details\":\"EVM selector for this function is: 0xf01fba93, or in textual repr: setSponsor(address,address)\",\"params\":{\"contractAddress\":\"Contract for which a sponsor is being established.\",\"sponsor\":\"User address who set as pending sponsor.\"}},\"setSponsoringFeeLimit(address,uint256)\":{\"details\":\"Sponsoring fee limit - is maximum fee that could be spent by single transactionOnly contract owner can change this settingEVM selector for this function is: 0x03aed665, or in textual repr: setSponsoringFeeLimit(address,uint256)\",\"params\":{\"contractAddress\":\"Contract to change sponsoring fee limit of\",\"feeLimit\":\"Fee limit\"}},\"setSponsoringMode(address,uint8)\":{\"details\":\"EVM selector for this function is: 0xfde8a560, or in textual repr: setSponsoringMode(address,uint8)\"},\"setSponsoringRateLimit(address,uint32)\":{\"details\":\"Sponsoring rate limit - is a minimum amount of blocks that should pass between two sponsored transactionsOnly contract owner can change this settingEVM selector for this function is: 0x77b6c908, or in textual repr: setSponsoringRateLimit(address,uint32)\",\"params\":{\"contractAddress\":\"Contract to change sponsoring rate limit of\",\"rateLimit\":\"Target rate limit\"}},\"sponsor(address)\":{\"details\":\"EVM selector for this function is: 0x766c4f37, or in textual repr: sponsor(address)\",\"params\":{\"contractAddress\":\"The contract for which a sponsor is requested.\"},\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \\\"Contract has no sponsor\\\" throw.\"}},\"sponsoringEnabled(address)\":{\"details\":\"EVM selector for this function is: 0x6027dc61, or in textual repr: sponsoringEnabled(address)\"},\"sponsoringFeeLimit(address)\":{\"details\":\"EVM selector for this function is: 0x75b73606, or in textual repr: sponsoringFeeLimit(address)\",\"params\":{\"contractAddress\":\"Contract to get sponsoring fee limit of\"},\"returns\":{\"_0\":\"uint256 Maximum amount of fee that could be spent by single transaction\"}},\"sponsoringRateLimit(address)\":{\"details\":\"EVM selector for this function is: 0xf29694d8, or in textual repr: sponsoringRateLimit(address)\",\"params\":{\"contractAddress\":\"Contract to get sponsoring rate limit of\"},\"returns\":{\"_0\":\"uint32 Amount of blocks between two sponsored transactions\"}},\"toggleAllowed(address,address,bool)\":{\"details\":\"Only contract owner can change this settingEVM selector for this function is: 0x4706cc1c, or in textual repr: toggleAllowed(address,address,bool)\",\"params\":{\"contractAddress\":\"Contract to change allowlist of\",\"isAllowed\":\"`true` if user should be allowed to be sponsored or call this contract, `false` otherwise\",\"user\":\"Which user presence should be toggled\"}},\"toggleAllowlist(address,bool)\":{\"details\":\"EVM selector for this function is: 0x36de20f5, or in textual repr: toggleAllowlist(address,bool)\",\"params\":{\"contractAddress\":\"Contract to change allowlist access of\",\"enabled\":\"Should allowlist access to be enabled?\"}}},\"title\":\"Magic contract, which allows users to reconfigure other contracts\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"allowed(address,address)\":{\"notice\":\"Is specified user present in contract allow list\"},\"allowlistEnabled(address)\":{\"notice\":\"Is this contract has allowlist access enabled\"},\"confirmSponsorship(address)\":{\"notice\":\"Confirm sponsorship.\"},\"contractOwner(address)\":{\"notice\":\"Get user, which deployed specified contract\"},\"hasPendingSponsor(address)\":{\"notice\":\"Check tat contract has pending sponsor.\"},\"hasSponsor(address)\":{\"notice\":\"Check tat contract has confirmed sponsor.\"},\"removeSponsor(address)\":{\"notice\":\"Remove sponsor.\"},\"selfSponsoredEnable(address)\":{\"notice\":\"Set contract as self sponsored.\"},\"setSponsor(address,address)\":{\"notice\":\"Set sponsor.\"},\"setSponsoringFeeLimit(address,uint256)\":{\"notice\":\"Set contract sponsoring fee limit\"},\"setSponsoringRateLimit(address,uint32)\":{\"notice\":\"Set contract sponsoring rate limit\"},\"sponsor(address)\":{\"notice\":\"Get current sponsor.\"},\"sponsoringFeeLimit(address)\":{\"notice\":\"Get current contract sponsoring fee limit\"},\"sponsoringRateLimit(address)\":{\"notice\":\"Get current contract sponsoring rate limit\"},\"toggleAllowed(address,address,bool)\":{\"notice\":\"Toggle user presence in contract allowlist\"},\"toggleAllowlist(address,bool)\":{\"notice\":\"Toggle contract allowlist access\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":\"ContractHelpers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "allowed(address,address)": {
+ "notice": "Is specified user present in contract allow list"
+ },
+ "allowlistEnabled(address)": {
+ "notice": "Is this contract has allowlist access enabled"
+ },
+ "confirmSponsorship(address)": {
+ "notice": "Confirm sponsorship."
+ },
+ "contractOwner(address)": {
+ "notice": "Get user, which deployed specified contract"
+ },
+ "hasPendingSponsor(address)": {
+ "notice": "Check tat contract has pending sponsor."
+ },
+ "hasSponsor(address)": {
+ "notice": "Check tat contract has confirmed sponsor."
+ },
+ "removeSponsor(address)": {
+ "notice": "Remove sponsor."
+ },
+ "selfSponsoredEnable(address)": {
+ "notice": "Set contract as self sponsored."
+ },
+ "setSponsor(address,address)": {
+ "notice": "Set sponsor."
+ },
+ "setSponsoringFeeLimit(address,uint256)": {
+ "notice": "Set contract sponsoring fee limit"
+ },
+ "setSponsoringRateLimit(address,uint32)": {
+ "notice": "Set contract sponsoring rate limit"
+ },
+ "sponsor(address)": {
+ "notice": "Get current sponsor."
+ },
+ "sponsoringFeeLimit(address)": {
+ "notice": "Get current contract sponsoring fee limit"
+ },
+ "sponsoringRateLimit(address)": {
+ "notice": "Get current contract sponsoring rate limit"
+ },
+ "toggleAllowed(address,address,bool)": {
+ "notice": "Toggle user presence in contract allowlist"
+ },
+ "toggleAllowlist(address,bool)": {
+ "notice": "Toggle contract allowlist access"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ContractHelpersEvents": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorRemoved",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorSet",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "contractAddress",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "ContractSponsorshipConfirmed",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"ContractSponsorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"ContractSponsorSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"ContractSponsorshipConfirmed\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":\"ContractHelpersEvents\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "Dummy": {
+ "abi": [],
+ "devdoc": {
+ "details": "common stubs holder",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"common stubs holder\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":\"Dummy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC165": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ }
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol": {
+ "Collection": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newAdmin",
+ "type": "address"
+ }
+ ],
+ "name": "addCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newAdmin",
+ "type": "tuple"
+ }
+ ],
+ "name": "addCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "addToCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "addToCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "allowed",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newOwner",
+ "type": "address"
+ }
+ ],
+ "name": "changeCollectionOwner",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionAdmins",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionOwner",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "collectionProperties",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "collectionProperty",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "field_0",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "field_1",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct Tuple24",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "confirmCollectionSponsorship",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "contractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "deleteCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "hasCollectionPendingSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "isOwnerOrAdmin",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "isOwnerOrAdminCross",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "admin",
+ "type": "address"
+ }
+ ],
+ "name": "removeCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "admin",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "removeCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "removeFromCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeFromCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint8",
+ "name": "mode",
+ "type": "uint8"
+ }
+ ],
+ "name": "setCollectionAccess",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "uint32",
+ "name": "value",
+ "type": "uint32"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "value",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "mode",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionMintMode",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ },
+ {
+ "internalType": "address[]",
+ "name": "collections",
+ "type": "address[]"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "setCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "sponsor",
+ "type": "tuple"
+ }
+ ],
+ "name": "setCollectionSponsorCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newOwner",
+ "type": "tuple"
+ }
+ ],
+ "name": "setOwnerCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "uniqueCollectionType",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0xb3152af3",
+ "kind": "dev",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)",
+ "params": {
+ "newAdmin": "Address of the added administrator."
+ }
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))",
+ "params": {
+ "newAdmin": "Cross account administrator address."
+ }
+ },
+ "addToCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a trusted user."
+ }
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "allowed(address)": {
+ "details": "EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)",
+ "params": {
+ "user": "User address to check."
+ }
+ },
+ "changeCollectionOwner(address)": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)",
+ "params": {
+ "newOwner": "new owner account"
+ }
+ },
+ "collectionAdmins()": {
+ "details": "EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()",
+ "returns": {
+ "_0": "Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionOwner()": {
+ "details": "EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys. Empty keys for all propertyes."
+ },
+ "returns": {
+ "_0": "Vector of properties key/value pairs."
+ }
+ },
+ "collectionProperty(string)": {
+ "details": "Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ },
+ "returns": {
+ "_0": "bytes The property corresponding to the key."
+ }
+ },
+ "collectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw."
+ }
+ },
+ "confirmCollectionSponsorship()": {
+ "details": "After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()"
+ },
+ "contractAddress()": {
+ "details": "EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()"
+ },
+ "deleteCollectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys."
+ }
+ },
+ "deleteCollectionProperty(string)": {
+ "details": "EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ }
+ },
+ "hasCollectionPendingSponsor()": {
+ "details": "EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "isOwnerOrAdmin(address)": {
+ "details": "EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)",
+ "params": {
+ "user": "account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))",
+ "params": {
+ "user": "User cross account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "removeCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)",
+ "params": {
+ "admin": "Address of the removed administrator."
+ }
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))",
+ "params": {
+ "admin": "Cross account administrator address."
+ }
+ },
+ "removeCollectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()"
+ },
+ "removeFromCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a removed user."
+ }
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "setCollectionAccess(uint8)": {
+ "details": "EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)",
+ "params": {
+ "mode": "Access mode \t0 for Normal \t1 for AllowList"
+ }
+ },
+ "setCollectionLimit(string,bool)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"ownerCanTransfer\", \t\"ownerCanDestroy\", \t\"transfersEnabled\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionLimit(string,uint32)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"accountTokenOwnershipLimit\", \t\"sponsoredDataSize\", \t\"sponsoredDataRateLimit\", \t\"tokenLimit\", \t\"sponsorTransferTimeout\", \t\"sponsorApproveTimeout\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionMintMode(bool)": {
+ "details": "EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)",
+ "params": {
+ "mode": "Enable if \"true\"."
+ }
+ },
+ "setCollectionNesting(bool)": {
+ "details": "EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)",
+ "params": {
+ "enable": "If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionNesting(bool,address[])": {
+ "details": "EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])",
+ "params": {
+ "collections": "Addresses of collections that will be available for nesting.",
+ "enable": "If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "details": "EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])",
+ "params": {
+ "properties": "Vector of properties key/value pair."
+ }
+ },
+ "setCollectionProperty(string,bytes)": {
+ "details": "EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "value": "Propery value."
+ }
+ },
+ "setCollectionSponsor(address)": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)",
+ "params": {
+ "sponsor": "Address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))",
+ "params": {
+ "sponsor": "Cross account address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setOwnerCross((address,uint256))": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))",
+ "params": {
+ "newOwner": "new owner cross account"
+ }
+ },
+ "uniqueCollectionType()": {
+ "details": "EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()",
+ "returns": {
+ "_0": "`Fungible` or `NFT` or `ReFungible`"
+ }
+ }
+ },
+ "title": "A contract that allows you to work with collections.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "addCollectionAdmin(address)": "92e462c7",
+ "addCollectionAdminCross((address,uint256))": "859aa7d6",
+ "addToCollectionAllowList(address)": "67844fe6",
+ "addToCollectionAllowListCross((address,uint256))": "a0184a3a",
+ "allowed(address)": "d63a8e11",
+ "changeCollectionOwner(address)": "4f53e226",
+ "collectionAdmins()": "5813216b",
+ "collectionOwner()": "df727d3b",
+ "collectionProperties(string[])": "285fb8e6",
+ "collectionProperty(string)": "cf24fd6d",
+ "collectionSponsor()": "6ec0a9f1",
+ "confirmCollectionSponsorship()": "3c50e97a",
+ "contractAddress()": "f6b4dfb4",
+ "deleteCollectionProperties(string[])": "ee206ee3",
+ "deleteCollectionProperty(string)": "7b7debce",
+ "hasCollectionPendingSponsor()": "058ac185",
+ "isOwnerOrAdmin(address)": "9811b0c7",
+ "isOwnerOrAdminCross((address,uint256))": "3e75a905",
+ "removeCollectionAdmin(address)": "fafd7b42",
+ "removeCollectionAdminCross((address,uint256))": "6c0cd173",
+ "removeCollectionSponsor()": "6e0326a3",
+ "removeFromCollectionAllowList(address)": "85c51acb",
+ "removeFromCollectionAllowListCross((address,uint256))": "09ba452a",
+ "setCollectionAccess(uint8)": "41835d4c",
+ "setCollectionLimit(string,bool)": "993b7fba",
+ "setCollectionLimit(string,uint32)": "6a3841db",
+ "setCollectionMintMode(bool)": "00018e84",
+ "setCollectionNesting(bool)": "112d4586",
+ "setCollectionNesting(bool,address[])": "64872396",
+ "setCollectionProperties((string,bytes)[])": "50b26b2a",
+ "setCollectionProperty(string,bytes)": "2f073f66",
+ "setCollectionSponsor(address)": "7623402e",
+ "setCollectionSponsorCross((address,uint256))": "84a1d5a8",
+ "setOwnerCross((address,uint256))": "e5c9913f",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "uniqueCollectionType()": "d34b55b8"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"addCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newAdmin\",\"type\":\"tuple\"}],\"name\":\"addCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"addToCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"addToCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeCollectionOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionAdmins\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionOwner\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"collectionProperties\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"collectionProperty\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionSponsor\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"field_0\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"field_1\",\"type\":\"uint256\"}],\"internalType\":\"struct Tuple24\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"confirmCollectionSponsorship\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"deleteCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hasCollectionPendingSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"isOwnerOrAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"isOwnerOrAdminCross\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"}],\"name\":\"removeCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"admin\",\"type\":\"tuple\"}],\"name\":\"removeCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"removeCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"removeFromCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"removeFromCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"mode\",\"type\":\"uint8\"}],\"name\":\"setCollectionAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"value\",\"type\":\"uint32\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"mode\",\"type\":\"bool\"}],\"name\":\"setCollectionMintMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"},{\"internalType\":\"address[]\",\"name\":\"collections\",\"type\":\"address[]\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"setCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"sponsor\",\"type\":\"tuple\"}],\"name\":\"setCollectionSponsorCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newOwner\",\"type\":\"tuple\"}],\"name\":\"setOwnerCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"uniqueCollectionType\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0xb3152af3\",\"kind\":\"dev\",\"methods\":{\"addCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)\",\"params\":{\"newAdmin\":\"Address of the added administrator.\"}},\"addCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))\",\"params\":{\"newAdmin\":\"Cross account administrator address.\"}},\"addToCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a trusted user.\"}},\"addToCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"allowed(address)\":{\"details\":\"EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)\",\"params\":{\"user\":\"User address to check.\"}},\"changeCollectionOwner(address)\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)\",\"params\":{\"newOwner\":\"new owner account\"}},\"collectionAdmins()\":{\"details\":\"EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()\",\"returns\":{\"_0\":\"Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionOwner()\":{\"details\":\"EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys. Empty keys for all propertyes.\"},\"returns\":{\"_0\":\"Vector of properties key/value pairs.\"}},\"collectionProperty(string)\":{\"details\":\"Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)\",\"params\":{\"key\":\"Property key.\"},\"returns\":{\"_0\":\"bytes The property corresponding to the key.\"}},\"collectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \\\"Contract has no sponsor\\\" throw.\"}},\"confirmCollectionSponsorship()\":{\"details\":\"After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()\"},\"contractAddress()\":{\"details\":\"EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()\"},\"deleteCollectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys.\"}},\"deleteCollectionProperty(string)\":{\"details\":\"EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)\",\"params\":{\"key\":\"Property key.\"}},\"hasCollectionPendingSponsor()\":{\"details\":\"EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()\"},\"isOwnerOrAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)\",\"params\":{\"user\":\"account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"isOwnerOrAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))\",\"params\":{\"user\":\"User cross account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"removeCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)\",\"params\":{\"admin\":\"Address of the removed administrator.\"}},\"removeCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))\",\"params\":{\"admin\":\"Cross account administrator address.\"}},\"removeCollectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()\"},\"removeFromCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a removed user.\"}},\"removeFromCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"setCollectionAccess(uint8)\":{\"details\":\"EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)\",\"params\":{\"mode\":\"Access mode \\t0 for Normal \\t1 for AllowList\"}},\"setCollectionLimit(string,bool)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"ownerCanTransfer\\\", \\t\\\"ownerCanDestroy\\\", \\t\\\"transfersEnabled\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionLimit(string,uint32)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"accountTokenOwnershipLimit\\\", \\t\\\"sponsoredDataSize\\\", \\t\\\"sponsoredDataRateLimit\\\", \\t\\\"tokenLimit\\\", \\t\\\"sponsorTransferTimeout\\\", \\t\\\"sponsorApproveTimeout\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionMintMode(bool)\":{\"details\":\"EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)\",\"params\":{\"mode\":\"Enable if \\\"true\\\".\"}},\"setCollectionNesting(bool)\":{\"details\":\"EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)\",\"params\":{\"enable\":\"If \\\"true\\\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\"}},\"setCollectionNesting(bool,address[])\":{\"details\":\"EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])\",\"params\":{\"collections\":\"Addresses of collections that will be available for nesting.\",\"enable\":\"If \\\"true\\\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\"}},\"setCollectionProperties((string,bytes)[])\":{\"details\":\"EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])\",\"params\":{\"properties\":\"Vector of properties key/value pair.\"}},\"setCollectionProperty(string,bytes)\":{\"details\":\"EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)\",\"params\":{\"key\":\"Property key.\",\"value\":\"Propery value.\"}},\"setCollectionSponsor(address)\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)\",\"params\":{\"sponsor\":\"Address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setCollectionSponsorCross((address,uint256))\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))\",\"params\":{\"sponsor\":\"Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setOwnerCross((address,uint256))\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))\",\"params\":{\"newOwner\":\"new owner cross account\"}},\"uniqueCollectionType()\":{\"details\":\"EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()\",\"returns\":{\"_0\":\"`Fungible` or `NFT` or `ReFungible`\"}}},\"title\":\"A contract that allows you to work with collections.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addCollectionAdmin(address)\":{\"notice\":\"Add collection admin.\"},\"addCollectionAdminCross((address,uint256))\":{\"notice\":\"Add collection admin.\"},\"addToCollectionAllowList(address)\":{\"notice\":\"Add the user to the allowed list.\"},\"addToCollectionAllowListCross((address,uint256))\":{\"notice\":\"Add user to allowed list.\"},\"allowed(address)\":{\"notice\":\"Checks that user allowed to operate with collection.\"},\"changeCollectionOwner(address)\":{\"notice\":\"Changes collection owner to another account\"},\"collectionAdmins()\":{\"notice\":\"Get collection administrators\"},\"collectionOwner()\":{\"notice\":\"Get collection owner.\"},\"collectionProperties(string[])\":{\"notice\":\"Get collection properties.\"},\"collectionProperty(string)\":{\"notice\":\"Get collection property.\"},\"collectionSponsor()\":{\"notice\":\"Get current sponsor.\"},\"confirmCollectionSponsorship()\":{\"notice\":\"Collection sponsorship confirmation.\"},\"contractAddress()\":{\"notice\":\"Get contract address.\"},\"deleteCollectionProperties(string[])\":{\"notice\":\"Delete collection properties.\"},\"deleteCollectionProperty(string)\":{\"notice\":\"Delete collection property.\"},\"hasCollectionPendingSponsor()\":{\"notice\":\"Whether there is a pending sponsor.\"},\"isOwnerOrAdmin(address)\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"isOwnerOrAdminCross((address,uint256))\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"removeCollectionAdmin(address)\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionAdminCross((address,uint256))\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionSponsor()\":{\"notice\":\"Remove collection sponsor.\"},\"removeFromCollectionAllowList(address)\":{\"notice\":\"Remove the user from the allowed list.\"},\"removeFromCollectionAllowListCross((address,uint256))\":{\"notice\":\"Remove user from allowed list.\"},\"setCollectionAccess(uint8)\":{\"notice\":\"Set the collection access method.\"},\"setCollectionLimit(string,bool)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionLimit(string,uint32)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionMintMode(bool)\":{\"notice\":\"Switch permission for minting.\"},\"setCollectionNesting(bool)\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionNesting(bool,address[])\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionProperties((string,bytes)[])\":{\"notice\":\"Set collection properties.\"},\"setCollectionProperty(string,bytes)\":{\"notice\":\"Set collection property.\"},\"setCollectionSponsor(address)\":{\"notice\":\"Set the sponsor of the collection.\"},\"setCollectionSponsorCross((address,uint256))\":{\"notice\":\"Set the sponsor of the collection.\"},\"setOwnerCross((address,uint256))\":{\"notice\":\"Changes collection owner to another account\"},\"uniqueCollectionType()\":{\"notice\":\"Returns collection type\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"Collection\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "notice": "Add collection admin."
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "notice": "Add collection admin."
+ },
+ "addToCollectionAllowList(address)": {
+ "notice": "Add the user to the allowed list."
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "notice": "Add user to allowed list."
+ },
+ "allowed(address)": {
+ "notice": "Checks that user allowed to operate with collection."
+ },
+ "changeCollectionOwner(address)": {
+ "notice": "Changes collection owner to another account"
+ },
+ "collectionAdmins()": {
+ "notice": "Get collection administrators"
+ },
+ "collectionOwner()": {
+ "notice": "Get collection owner."
+ },
+ "collectionProperties(string[])": {
+ "notice": "Get collection properties."
+ },
+ "collectionProperty(string)": {
+ "notice": "Get collection property."
+ },
+ "collectionSponsor()": {
+ "notice": "Get current sponsor."
+ },
+ "confirmCollectionSponsorship()": {
+ "notice": "Collection sponsorship confirmation."
+ },
+ "contractAddress()": {
+ "notice": "Get contract address."
+ },
+ "deleteCollectionProperties(string[])": {
+ "notice": "Delete collection properties."
+ },
+ "deleteCollectionProperty(string)": {
+ "notice": "Delete collection property."
+ },
+ "hasCollectionPendingSponsor()": {
+ "notice": "Whether there is a pending sponsor."
+ },
+ "isOwnerOrAdmin(address)": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "removeCollectionAdmin(address)": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionSponsor()": {
+ "notice": "Remove collection sponsor."
+ },
+ "removeFromCollectionAllowList(address)": {
+ "notice": "Remove the user from the allowed list."
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "notice": "Remove user from allowed list."
+ },
+ "setCollectionAccess(uint8)": {
+ "notice": "Set the collection access method."
+ },
+ "setCollectionLimit(string,bool)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionLimit(string,uint32)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionMintMode(bool)": {
+ "notice": "Switch permission for minting."
+ },
+ "setCollectionNesting(bool)": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionNesting(bool,address[])": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "notice": "Set collection properties."
+ },
+ "setCollectionProperty(string,bytes)": {
+ "notice": "Set collection property."
+ },
+ "setCollectionSponsor(address)": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setOwnerCross((address,uint256))": {
+ "notice": "Changes collection owner to another account"
+ },
+ "uniqueCollectionType()": {
+ "notice": "Returns collection type"
+ }
+ },
+ "version": 1
+ }
+ },
+ "Dummy": {
+ "abi": [],
+ "devdoc": {
+ "details": "common stubs holder",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"common stubs holder\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"Dummy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC165": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC721": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getApproved",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ }
+ ],
+ "name": "isApprovedForAll",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "ownerOf",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "bytes",
+ "name": "data",
+ "type": "bytes"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "setApprovalForAll",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.mdthe ERC-165 identifier for this interface is 0x80ac58cd",
+ "kind": "dev",
+ "methods": {
+ "approve(address,uint256)": {
+ "details": "The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)",
+ "params": {
+ "approved": "The new approved NFT controller",
+ "tokenId": "The NFT to approve"
+ }
+ },
+ "balanceOf(address)": {
+ "details": "NFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "An address for whom to query the balance"
+ },
+ "returns": {
+ "_0": "The number of NFTs owned by `owner`, possibly zero"
+ }
+ },
+ "getApproved(uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)"
+ },
+ "isApprovedForAll(address,address)": {
+ "details": "Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)"
+ },
+ "ownerOf(uint256)": {
+ "details": "NFTs assigned to zero address are considered invalid, and queries about them do throw.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)",
+ "params": {
+ "tokenId": "The identifier for an NFT"
+ },
+ "returns": {
+ "_0": "The address of the owner of the NFT"
+ }
+ },
+ "safeTransferFrom(address,address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "safeTransferFrom(address,address,uint256,bytes)": {
+ "details": "Not implementedEVM selector for this function is: 0xb88d4fde, or in textual repr: safeTransferFrom(address,address,uint256,bytes)"
+ },
+ "setApprovalForAll(address,bool)": {
+ "details": "Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ }
+ },
+ "title": "ERC-721 Non-Fungible Token Standard",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "approve(address,uint256)": "095ea7b3",
+ "balanceOf(address)": "70a08231",
+ "getApproved(uint256)": "081812fc",
+ "isApprovedForAll(address,address)": "e985e9c5",
+ "ownerOf(uint256)": "6352211e",
+ "safeTransferFrom(address,address,uint256)": "42842e0e",
+ "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde",
+ "setApprovalForAll(address,bool)": "a22cb465",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "transferFrom(address,address,uint256)": "23b872dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.mdthe ERC-165 identifier for this interface is 0x80ac58cd\",\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\",\"params\":{\"approved\":\"The new approved NFT controller\",\"tokenId\":\"The NFT to approve\"}},\"balanceOf(address)\":{\"details\":\"NFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"An address for whom to query the balance\"},\"returns\":{\"_0\":\"The number of NFTs owned by `owner`, possibly zero\"}},\"getApproved(uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)\"},\"isApprovedForAll(address,address)\":{\"details\":\"Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)\"},\"ownerOf(uint256)\":{\"details\":\"NFTs assigned to zero address are considered invalid, and queries about them do throw.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)\",\"params\":{\"tokenId\":\"The identifier for an NFT\"},\"returns\":{\"_0\":\"The address of the owner of the NFT\"}},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Not implementedEVM selector for this function is: 0xb88d4fde, or in textual repr: safeTransferFrom(address,address,uint256,bytes)\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}}},\"title\":\"ERC-721 Non-Fungible Token Standard\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"approve(address,uint256)\":{\"notice\":\"Set or reaffirm the approved address for an NFT\"},\"balanceOf(address)\":{\"notice\":\"Count all NFTs assigned to an owner\"},\"ownerOf(uint256)\":{\"notice\":\"Find the owner of an NFT\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "approve(address,uint256)": {
+ "notice": "Set or reaffirm the approved address for an NFT"
+ },
+ "balanceOf(address)": {
+ "notice": "Count all NFTs assigned to an owner"
+ },
+ "ownerOf(uint256)": {
+ "notice": "Find the owner of an NFT"
+ },
+ "transferFrom(address,address,uint256)": {
+ "notice": "Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Burnable": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burn",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x42966c68",
+ "kind": "dev",
+ "methods": {
+ "burn(uint256)": {
+ "details": "Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)",
+ "params": {
+ "tokenId": "The NFT to approve"
+ }
+ }
+ },
+ "title": "ERC721 Token that can be irreversibly burned (destroyed).",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "burn(uint256)": "42966c68",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x42966c68\",\"kind\":\"dev\",\"methods\":{\"burn(uint256)\":{\"details\":\"Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)\",\"params\":{\"tokenId\":\"The NFT to approve\"}}},\"title\":\"ERC721 Token that can be irreversibly burned (destroyed).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"burn(uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721Burnable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "burn(uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Enumerable": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenOfOwnerByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x780e9d63",
+ "kind": "dev",
+ "methods": {
+ "tokenByIndex(uint256)": {
+ "details": "EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)",
+ "params": {
+ "index": "A counter less than `totalSupply()`"
+ },
+ "returns": {
+ "_0": "The token identifier for the `index`th NFT, (sort order not specified)"
+ }
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "totalSupply()": {
+ "details": "EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()",
+ "returns": {
+ "_0": "A count of valid NFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address"
+ }
+ }
+ },
+ "title": "ERC-721 Non-Fungible Token Standard, optional enumeration extension",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "tokenByIndex(uint256)": "4f6ccce7",
+ "tokenOfOwnerByIndex(address,uint256)": "2f745c59",
+ "totalSupply()": "18160ddd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x780e9d63\",\"kind\":\"dev\",\"methods\":{\"tokenByIndex(uint256)\":{\"details\":\"EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)\",\"params\":{\"index\":\"A counter less than `totalSupply()`\"},\"returns\":{\"_0\":\"The token identifier for the `index`th NFT, (sort order not specified)\"}},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)\"},\"totalSupply()\":{\"details\":\"EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\",\"returns\":{\"_0\":\"A count of valid NFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address\"}}},\"title\":\"ERC-721 Non-Fungible Token Standard, optional enumeration extension\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"tokenByIndex(uint256)\":{\"notice\":\"Enumerate valid NFTs\"},\"totalSupply()\":{\"notice\":\"Count NFTs tracked by this contract\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721Enumerable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "tokenByIndex(uint256)": {
+ "notice": "Enumerate valid NFTs"
+ },
+ "totalSupply()": {
+ "notice": "Count NFTs tracked by this contract"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Events": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721Events\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC721Metadata": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenURI",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x5b5e139f",
+ "kind": "dev",
+ "methods": {
+ "tokenURI(uint256)": {
+ "details": "If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \"\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)",
+ "returns": {
+ "_0": "token's const_metadata"
+ }
+ }
+ },
+ "title": "ERC-721 Non-Fungible Token Standard, optional metadata extension",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "tokenURI(uint256)": "c87b56dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x5b5e139f\",\"kind\":\"dev\",\"methods\":{\"tokenURI(uint256)\":{\"details\":\"If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \\\"\\\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)\",\"returns\":{\"_0\":\"token's const_metadata\"}}},\"title\":\"ERC-721 Non-Fungible Token Standard, optional metadata extension\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"tokenURI(uint256)\":{\"notice\":\"A distinct Uniform Resource Identifier (URI) for a given asset.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721Metadata\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "tokenURI(uint256)": {
+ "notice": "A distinct Uniform Resource Identifier (URI) for a given asset."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueExtensions": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "approved",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approveCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "nextTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "to",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x244543ee",
+ "kind": "dev",
+ "methods": {
+ "approveCross((address,uint256),uint256)": {
+ "details": "The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x0ecd0ab0, or in textual repr: approveCross((address,uint256),uint256)",
+ "params": {
+ "approved": "The new substrate address approved NFT controller",
+ "tokenId": "The NFT to approve"
+ }
+ },
+ "burnFrom(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()"
+ },
+ "nextTokenId()": {
+ "details": "EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()"
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()"
+ },
+ "transfer(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)",
+ "params": {
+ "from": "Cross acccount address of current owner",
+ "to": "Cross acccount address of new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ }
+ },
+ "title": "Unique extensions for ERC721.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "approveCross((address,uint256),uint256)": "0ecd0ab0",
+ "burnFrom(address,uint256)": "79cc6790",
+ "burnFromCross((address,uint256),uint256)": "bb2f5a58",
+ "name()": "06fdde03",
+ "nextTokenId()": "75794a3c",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFromCross((address,uint256),(address,uint256),uint256)": "d5cf430b"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"approved\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approveCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"to\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x244543ee\",\"kind\":\"dev\",\"methods\":{\"approveCross((address,uint256),uint256)\":{\"details\":\"The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x0ecd0ab0, or in textual repr: approveCross((address,uint256),uint256)\",\"params\":{\"approved\":\"The new substrate address approved NFT controller\",\"tokenId\":\"The NFT to approve\"}},\"burnFrom(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"tokenId\":\"The NFT to transfer\"}},\"burnFromCross((address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"tokenId\":\"The NFT to transfer\"}},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\"},\"nextTokenId()\":{\"details\":\"EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()\"},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\"},\"transfer(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)\",\"params\":{\"from\":\"Cross acccount address of current owner\",\"to\":\"Cross acccount address of new owner\",\"tokenId\":\"The NFT to transfer\"}}},\"title\":\"Unique extensions for ERC721.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"approveCross((address,uint256),uint256)\":{\"notice\":\"Set or reaffirm the approved address for an NFT\"},\"burnFrom(address,uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFromCross((address,uint256),uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"name()\":{\"notice\":\"A descriptive name for a collection of NFTs in this contract\"},\"nextTokenId()\":{\"notice\":\"Returns next free NFT ID.\"},\"symbol()\":{\"notice\":\"An abbreviated name for NFTs in this contract\"},\"transfer(address,uint256)\":{\"notice\":\"Transfer ownership of an NFT\"},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"notice\":\"Transfer ownership of an NFT from cross account address to cross account address\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721UniqueExtensions\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "approveCross((address,uint256),uint256)": {
+ "notice": "Set or reaffirm the approved address for an NFT"
+ },
+ "burnFrom(address,uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "name()": {
+ "notice": "A descriptive name for a collection of NFTs in this contract"
+ },
+ "nextTokenId()": {
+ "notice": "Returns next free NFT ID."
+ },
+ "symbol()": {
+ "notice": "An abbreviated name for NFTs in this contract"
+ },
+ "transfer(address,uint256)": {
+ "notice": "Transfer ownership of an NFT"
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "notice": "Transfer ownership of an NFT from cross account address to cross account address"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueMintable": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ },
+ {
+ "inputs": [],
+ "name": "finishMinting",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ }
+ ],
+ "name": "mint",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenUri",
+ "type": "string"
+ }
+ ],
+ "name": "mintWithTokenURI",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "mintingFinished",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x476ff149",
+ "kind": "dev",
+ "methods": {
+ "finishMinting()": {
+ "details": "Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()"
+ },
+ "mint(address)": {
+ "details": "EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)",
+ "params": {
+ "to": "The new owner"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintWithTokenURI(address,string)": {
+ "details": "EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)",
+ "params": {
+ "to": "The new owner",
+ "tokenUri": "Token URI that would be stored in the NFT properties"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintingFinished()": {
+ "details": "EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()"
+ }
+ },
+ "title": "ERC721 minting logic.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "finishMinting()": "7d64bcb4",
+ "mint(address)": "6a627842",
+ "mintWithTokenURI(address,string)": "45c17782",
+ "mintingFinished()": "05d2035b",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"finishMinting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintWithTokenURI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintingFinished\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x476ff149\",\"kind\":\"dev\",\"methods\":{\"finishMinting()\":{\"details\":\"Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()\"},\"mint(address)\":{\"details\":\"EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)\",\"params\":{\"to\":\"The new owner\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintWithTokenURI(address,string)\":{\"details\":\"EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)\",\"params\":{\"to\":\"The new owner\",\"tokenUri\":\"Token URI that would be stored in the NFT properties\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintingFinished()\":{\"details\":\"EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()\"}},\"title\":\"ERC721 minting logic.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"mint(address)\":{\"notice\":\"Function to mint token.\"},\"mintWithTokenURI(address,string)\":{\"notice\":\"Function to mint token with the given tokenUri.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721UniqueMintable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "mint(address)": {
+ "notice": "Function to mint token."
+ },
+ "mintWithTokenURI(address,string)": {
+ "notice": "Function to mint token with the given tokenUri."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueMintableEvents": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"ERC721UniqueMintableEvents\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "TokenProperties": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "property",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "isMutable",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "collectionAdmin",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "tokenOwner",
+ "type": "bool"
+ }
+ ],
+ "name": "setTokenPropertyPermission",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x55dba919",
+ "kind": "dev",
+ "methods": {
+ "deleteProperty(uint256,string)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ }
+ },
+ "property(uint256,string)": {
+ "details": "Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ },
+ "returns": {
+ "_0": "Property value bytes"
+ }
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])",
+ "params": {
+ "properties": "settable properties",
+ "tokenId": "ID of the token."
+ }
+ },
+ "setProperty(uint256,string,bytes)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token.",
+ "value": "Property value."
+ }
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "details": "Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)",
+ "params": {
+ "collectionAdmin": "Permission to mutate property by collection admin if property is mutable.",
+ "isMutable": "Permission to mutate property.",
+ "key": "Property key.",
+ "tokenOwner": "Permission to mutate property by token owner if property is mutable."
+ }
+ }
+ },
+ "title": "A contract that allows to set and delete token properties and change token property permissions.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "deleteProperty(uint256,string)": "066111d1",
+ "property(uint256,string)": "7228c327",
+ "setProperties(uint256,(string,bytes)[])": "14ed3a6e",
+ "setProperty(uint256,string,bytes)": "1752d67b",
+ "setTokenPropertyPermission(string,bool,bool,bool)": "222d97fa",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"property\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isMutable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"collectionAdmin\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"tokenOwner\",\"type\":\"bool\"}],\"name\":\"setTokenPropertyPermission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x55dba919\",\"kind\":\"dev\",\"methods\":{\"deleteProperty(uint256,string)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"}},\"property(uint256,string)\":{\"details\":\"Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"},\"returns\":{\"_0\":\"Property value bytes\"}},\"setProperties(uint256,(string,bytes)[])\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])\",\"params\":{\"properties\":\"settable properties\",\"tokenId\":\"ID of the token.\"}},\"setProperty(uint256,string,bytes)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\",\"value\":\"Property value.\"}},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"details\":\"Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)\",\"params\":{\"collectionAdmin\":\"Permission to mutate property by collection admin if property is mutable.\",\"isMutable\":\"Permission to mutate property.\",\"key\":\"Property key.\",\"tokenOwner\":\"Permission to mutate property by token owner if property is mutable.\"}}},\"title\":\"A contract that allows to set and delete token properties and change token property permissions.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"deleteProperty(uint256,string)\":{\"notice\":\"Delete token property value.\"},\"property(uint256,string)\":{\"notice\":\"Get token property value.\"},\"setProperties(uint256,(string,bytes)[])\":{\"notice\":\"Set token properties value.\"},\"setProperty(uint256,string,bytes)\":{\"notice\":\"Set token property value.\"},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"notice\":\"Set permissions for token property.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"TokenProperties\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "deleteProperty(uint256,string)": {
+ "notice": "Delete token property value."
+ },
+ "property(uint256,string)": {
+ "notice": "Get token property value."
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "notice": "Set token properties value."
+ },
+ "setProperty(uint256,string,bytes)": {
+ "notice": "Set token property value."
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "notice": "Set permissions for token property."
+ }
+ },
+ "version": 1
+ }
+ },
+ "UniqueNFT": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newAdmin",
+ "type": "address"
+ }
+ ],
+ "name": "addCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newAdmin",
+ "type": "tuple"
+ }
+ ],
+ "name": "addCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "addToCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "addToCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "allowed",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "approved",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approveCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burn",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newOwner",
+ "type": "address"
+ }
+ ],
+ "name": "changeCollectionOwner",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionAdmins",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionOwner",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "collectionProperties",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "collectionProperty",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "field_0",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "field_1",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct Tuple24",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "confirmCollectionSponsorship",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "contractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "deleteCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "finishMinting",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getApproved",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "hasCollectionPendingSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ }
+ ],
+ "name": "isApprovedForAll",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "isOwnerOrAdmin",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "isOwnerOrAdminCross",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ }
+ ],
+ "name": "mint",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenUri",
+ "type": "string"
+ }
+ ],
+ "name": "mintWithTokenURI",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "mintingFinished",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "nextTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "ownerOf",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "property",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "admin",
+ "type": "address"
+ }
+ ],
+ "name": "removeCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "admin",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "removeCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "removeFromCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeFromCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "bytes",
+ "name": "data",
+ "type": "bytes"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "setApprovalForAll",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint8",
+ "name": "mode",
+ "type": "uint8"
+ }
+ ],
+ "name": "setCollectionAccess",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "uint32",
+ "name": "value",
+ "type": "uint32"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "value",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "mode",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionMintMode",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ },
+ {
+ "internalType": "address[]",
+ "name": "collections",
+ "type": "address[]"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "setCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "sponsor",
+ "type": "tuple"
+ }
+ ],
+ "name": "setCollectionSponsorCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newOwner",
+ "type": "tuple"
+ }
+ ],
+ "name": "setOwnerCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "isMutable",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "collectionAdmin",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "tokenOwner",
+ "type": "bool"
+ }
+ ],
+ "name": "setTokenPropertyPermission",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenOfOwnerByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenURI",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "to",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "uniqueCollectionType",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)",
+ "params": {
+ "newAdmin": "Address of the added administrator."
+ }
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))",
+ "params": {
+ "newAdmin": "Cross account administrator address."
+ }
+ },
+ "addToCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a trusted user."
+ }
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "allowed(address)": {
+ "details": "EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)",
+ "params": {
+ "user": "User address to check."
+ }
+ },
+ "approve(address,uint256)": {
+ "details": "The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)",
+ "params": {
+ "approved": "The new approved NFT controller",
+ "tokenId": "The NFT to approve"
+ }
+ },
+ "approveCross((address,uint256),uint256)": {
+ "details": "The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x0ecd0ab0, or in textual repr: approveCross((address,uint256),uint256)",
+ "params": {
+ "approved": "The new substrate address approved NFT controller",
+ "tokenId": "The NFT to approve"
+ }
+ },
+ "balanceOf(address)": {
+ "details": "NFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "An address for whom to query the balance"
+ },
+ "returns": {
+ "_0": "The number of NFTs owned by `owner`, possibly zero"
+ }
+ },
+ "burn(uint256)": {
+ "details": "Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)",
+ "params": {
+ "tokenId": "The NFT to approve"
+ }
+ },
+ "burnFrom(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "changeCollectionOwner(address)": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)",
+ "params": {
+ "newOwner": "new owner account"
+ }
+ },
+ "collectionAdmins()": {
+ "details": "EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()",
+ "returns": {
+ "_0": "Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionOwner()": {
+ "details": "EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys. Empty keys for all propertyes."
+ },
+ "returns": {
+ "_0": "Vector of properties key/value pairs."
+ }
+ },
+ "collectionProperty(string)": {
+ "details": "Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ },
+ "returns": {
+ "_0": "bytes The property corresponding to the key."
+ }
+ },
+ "collectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw."
+ }
+ },
+ "confirmCollectionSponsorship()": {
+ "details": "After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()"
+ },
+ "contractAddress()": {
+ "details": "EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()"
+ },
+ "deleteCollectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys."
+ }
+ },
+ "deleteCollectionProperty(string)": {
+ "details": "EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ }
+ },
+ "deleteProperty(uint256,string)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ }
+ },
+ "finishMinting()": {
+ "details": "Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()"
+ },
+ "getApproved(uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)"
+ },
+ "hasCollectionPendingSponsor()": {
+ "details": "EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "isApprovedForAll(address,address)": {
+ "details": "Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)"
+ },
+ "isOwnerOrAdmin(address)": {
+ "details": "EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)",
+ "params": {
+ "user": "account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))",
+ "params": {
+ "user": "User cross account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "mint(address)": {
+ "details": "EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)",
+ "params": {
+ "to": "The new owner"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintWithTokenURI(address,string)": {
+ "details": "EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)",
+ "params": {
+ "to": "The new owner",
+ "tokenUri": "Token URI that would be stored in the NFT properties"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintingFinished()": {
+ "details": "EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()"
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()"
+ },
+ "nextTokenId()": {
+ "details": "EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()"
+ },
+ "ownerOf(uint256)": {
+ "details": "NFTs assigned to zero address are considered invalid, and queries about them do throw.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)",
+ "params": {
+ "tokenId": "The identifier for an NFT"
+ },
+ "returns": {
+ "_0": "The address of the owner of the NFT"
+ }
+ },
+ "property(uint256,string)": {
+ "details": "Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ },
+ "returns": {
+ "_0": "Property value bytes"
+ }
+ },
+ "removeCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)",
+ "params": {
+ "admin": "Address of the removed administrator."
+ }
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))",
+ "params": {
+ "admin": "Cross account administrator address."
+ }
+ },
+ "removeCollectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()"
+ },
+ "removeFromCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a removed user."
+ }
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "safeTransferFrom(address,address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "safeTransferFrom(address,address,uint256,bytes)": {
+ "details": "Not implementedEVM selector for this function is: 0xb88d4fde, or in textual repr: safeTransferFrom(address,address,uint256,bytes)"
+ },
+ "setApprovalForAll(address,bool)": {
+ "details": "Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "setCollectionAccess(uint8)": {
+ "details": "EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)",
+ "params": {
+ "mode": "Access mode \t0 for Normal \t1 for AllowList"
+ }
+ },
+ "setCollectionLimit(string,bool)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"ownerCanTransfer\", \t\"ownerCanDestroy\", \t\"transfersEnabled\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionLimit(string,uint32)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"accountTokenOwnershipLimit\", \t\"sponsoredDataSize\", \t\"sponsoredDataRateLimit\", \t\"tokenLimit\", \t\"sponsorTransferTimeout\", \t\"sponsorApproveTimeout\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionMintMode(bool)": {
+ "details": "EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)",
+ "params": {
+ "mode": "Enable if \"true\"."
+ }
+ },
+ "setCollectionNesting(bool)": {
+ "details": "EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)",
+ "params": {
+ "enable": "If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionNesting(bool,address[])": {
+ "details": "EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])",
+ "params": {
+ "collections": "Addresses of collections that will be available for nesting.",
+ "enable": "If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "details": "EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])",
+ "params": {
+ "properties": "Vector of properties key/value pair."
+ }
+ },
+ "setCollectionProperty(string,bytes)": {
+ "details": "EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "value": "Propery value."
+ }
+ },
+ "setCollectionSponsor(address)": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)",
+ "params": {
+ "sponsor": "Address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))",
+ "params": {
+ "sponsor": "Cross account address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setOwnerCross((address,uint256))": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))",
+ "params": {
+ "newOwner": "new owner cross account"
+ }
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])",
+ "params": {
+ "properties": "settable properties",
+ "tokenId": "ID of the token."
+ }
+ },
+ "setProperty(uint256,string,bytes)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token.",
+ "value": "Property value."
+ }
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "details": "Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)",
+ "params": {
+ "collectionAdmin": "Permission to mutate property by collection admin if property is mutable.",
+ "isMutable": "Permission to mutate property.",
+ "key": "Property key.",
+ "tokenOwner": "Permission to mutate property by token owner if property is mutable."
+ }
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()"
+ },
+ "tokenByIndex(uint256)": {
+ "details": "EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)",
+ "params": {
+ "index": "A counter less than `totalSupply()`"
+ },
+ "returns": {
+ "_0": "The token identifier for the `index`th NFT, (sort order not specified)"
+ }
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "tokenURI(uint256)": {
+ "details": "If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \"\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)",
+ "returns": {
+ "_0": "token's const_metadata"
+ }
+ },
+ "totalSupply()": {
+ "details": "EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()",
+ "returns": {
+ "_0": "A count of valid NFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address"
+ }
+ },
+ "transfer(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)",
+ "params": {
+ "from": "Cross acccount address of current owner",
+ "to": "Cross acccount address of new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "uniqueCollectionType()": {
+ "details": "EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()",
+ "returns": {
+ "_0": "`Fungible` or `NFT` or `ReFungible`"
+ }
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "addCollectionAdmin(address)": "92e462c7",
+ "addCollectionAdminCross((address,uint256))": "859aa7d6",
+ "addToCollectionAllowList(address)": "67844fe6",
+ "addToCollectionAllowListCross((address,uint256))": "a0184a3a",
+ "allowed(address)": "d63a8e11",
+ "approve(address,uint256)": "095ea7b3",
+ "approveCross((address,uint256),uint256)": "0ecd0ab0",
+ "balanceOf(address)": "70a08231",
+ "burn(uint256)": "42966c68",
+ "burnFrom(address,uint256)": "79cc6790",
+ "burnFromCross((address,uint256),uint256)": "bb2f5a58",
+ "changeCollectionOwner(address)": "4f53e226",
+ "collectionAdmins()": "5813216b",
+ "collectionOwner()": "df727d3b",
+ "collectionProperties(string[])": "285fb8e6",
+ "collectionProperty(string)": "cf24fd6d",
+ "collectionSponsor()": "6ec0a9f1",
+ "confirmCollectionSponsorship()": "3c50e97a",
+ "contractAddress()": "f6b4dfb4",
+ "deleteCollectionProperties(string[])": "ee206ee3",
+ "deleteCollectionProperty(string)": "7b7debce",
+ "deleteProperty(uint256,string)": "066111d1",
+ "finishMinting()": "7d64bcb4",
+ "getApproved(uint256)": "081812fc",
+ "hasCollectionPendingSponsor()": "058ac185",
+ "isApprovedForAll(address,address)": "e985e9c5",
+ "isOwnerOrAdmin(address)": "9811b0c7",
+ "isOwnerOrAdminCross((address,uint256))": "3e75a905",
+ "mint(address)": "6a627842",
+ "mintWithTokenURI(address,string)": "45c17782",
+ "mintingFinished()": "05d2035b",
+ "name()": "06fdde03",
+ "nextTokenId()": "75794a3c",
+ "ownerOf(uint256)": "6352211e",
+ "property(uint256,string)": "7228c327",
+ "removeCollectionAdmin(address)": "fafd7b42",
+ "removeCollectionAdminCross((address,uint256))": "6c0cd173",
+ "removeCollectionSponsor()": "6e0326a3",
+ "removeFromCollectionAllowList(address)": "85c51acb",
+ "removeFromCollectionAllowListCross((address,uint256))": "09ba452a",
+ "safeTransferFrom(address,address,uint256)": "42842e0e",
+ "safeTransferFrom(address,address,uint256,bytes)": "b88d4fde",
+ "setApprovalForAll(address,bool)": "a22cb465",
+ "setCollectionAccess(uint8)": "41835d4c",
+ "setCollectionLimit(string,bool)": "993b7fba",
+ "setCollectionLimit(string,uint32)": "6a3841db",
+ "setCollectionMintMode(bool)": "00018e84",
+ "setCollectionNesting(bool)": "112d4586",
+ "setCollectionNesting(bool,address[])": "64872396",
+ "setCollectionProperties((string,bytes)[])": "50b26b2a",
+ "setCollectionProperty(string,bytes)": "2f073f66",
+ "setCollectionSponsor(address)": "7623402e",
+ "setCollectionSponsorCross((address,uint256))": "84a1d5a8",
+ "setOwnerCross((address,uint256))": "e5c9913f",
+ "setProperties(uint256,(string,bytes)[])": "14ed3a6e",
+ "setProperty(uint256,string,bytes)": "1752d67b",
+ "setTokenPropertyPermission(string,bool,bool,bool)": "222d97fa",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "tokenByIndex(uint256)": "4f6ccce7",
+ "tokenOfOwnerByIndex(address,uint256)": "2f745c59",
+ "tokenURI(uint256)": "c87b56dd",
+ "totalSupply()": "18160ddd",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFrom(address,address,uint256)": "23b872dd",
+ "transferFromCross((address,uint256),(address,uint256),uint256)": "d5cf430b",
+ "uniqueCollectionType()": "d34b55b8"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"addCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newAdmin\",\"type\":\"tuple\"}],\"name\":\"addCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"addToCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"addToCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"approved\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approveCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeCollectionOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionAdmins\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionOwner\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"collectionProperties\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"collectionProperty\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionSponsor\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"field_0\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"field_1\",\"type\":\"uint256\"}],\"internalType\":\"struct Tuple24\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"confirmCollectionSponsorship\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"deleteCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finishMinting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hasCollectionPendingSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"isOwnerOrAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"isOwnerOrAdminCross\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintWithTokenURI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintingFinished\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"property\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"}],\"name\":\"removeCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"admin\",\"type\":\"tuple\"}],\"name\":\"removeCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"removeCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"removeFromCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"removeFromCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"mode\",\"type\":\"uint8\"}],\"name\":\"setCollectionAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"value\",\"type\":\"uint32\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"mode\",\"type\":\"bool\"}],\"name\":\"setCollectionMintMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"},{\"internalType\":\"address[]\",\"name\":\"collections\",\"type\":\"address[]\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"setCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"sponsor\",\"type\":\"tuple\"}],\"name\":\"setCollectionSponsorCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newOwner\",\"type\":\"tuple\"}],\"name\":\"setOwnerCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isMutable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"collectionAdmin\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"tokenOwner\",\"type\":\"bool\"}],\"name\":\"setTokenPropertyPermission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"to\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"uniqueCollectionType\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)\",\"params\":{\"newAdmin\":\"Address of the added administrator.\"}},\"addCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))\",\"params\":{\"newAdmin\":\"Cross account administrator address.\"}},\"addToCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a trusted user.\"}},\"addToCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"allowed(address)\":{\"details\":\"EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)\",\"params\":{\"user\":\"User address to check.\"}},\"approve(address,uint256)\":{\"details\":\"The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\",\"params\":{\"approved\":\"The new approved NFT controller\",\"tokenId\":\"The NFT to approve\"}},\"approveCross((address,uint256),uint256)\":{\"details\":\"The zero address indicates there is no approved address.Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x0ecd0ab0, or in textual repr: approveCross((address,uint256),uint256)\",\"params\":{\"approved\":\"The new substrate address approved NFT controller\",\"tokenId\":\"The NFT to approve\"}},\"balanceOf(address)\":{\"details\":\"NFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"An address for whom to query the balance\"},\"returns\":{\"_0\":\"The number of NFTs owned by `owner`, possibly zero\"}},\"burn(uint256)\":{\"details\":\"Throws unless `msg.sender` is the current NFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)\",\"params\":{\"tokenId\":\"The NFT to approve\"}},\"burnFrom(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"tokenId\":\"The NFT to transfer\"}},\"burnFromCross((address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"tokenId\":\"The NFT to transfer\"}},\"changeCollectionOwner(address)\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)\",\"params\":{\"newOwner\":\"new owner account\"}},\"collectionAdmins()\":{\"details\":\"EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()\",\"returns\":{\"_0\":\"Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionOwner()\":{\"details\":\"EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys. Empty keys for all propertyes.\"},\"returns\":{\"_0\":\"Vector of properties key/value pairs.\"}},\"collectionProperty(string)\":{\"details\":\"Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)\",\"params\":{\"key\":\"Property key.\"},\"returns\":{\"_0\":\"bytes The property corresponding to the key.\"}},\"collectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \\\"Contract has no sponsor\\\" throw.\"}},\"confirmCollectionSponsorship()\":{\"details\":\"After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()\"},\"contractAddress()\":{\"details\":\"EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()\"},\"deleteCollectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys.\"}},\"deleteCollectionProperty(string)\":{\"details\":\"EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)\",\"params\":{\"key\":\"Property key.\"}},\"deleteProperty(uint256,string)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"}},\"finishMinting()\":{\"details\":\"Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()\"},\"getApproved(uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)\"},\"hasCollectionPendingSponsor()\":{\"details\":\"EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()\"},\"isApprovedForAll(address,address)\":{\"details\":\"Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)\"},\"isOwnerOrAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)\",\"params\":{\"user\":\"account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"isOwnerOrAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))\",\"params\":{\"user\":\"User cross account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"mint(address)\":{\"details\":\"EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)\",\"params\":{\"to\":\"The new owner\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintWithTokenURI(address,string)\":{\"details\":\"EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)\",\"params\":{\"to\":\"The new owner\",\"tokenUri\":\"Token URI that would be stored in the NFT properties\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintingFinished()\":{\"details\":\"EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()\"},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\"},\"nextTokenId()\":{\"details\":\"EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()\"},\"ownerOf(uint256)\":{\"details\":\"NFTs assigned to zero address are considered invalid, and queries about them do throw.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)\",\"params\":{\"tokenId\":\"The identifier for an NFT\"},\"returns\":{\"_0\":\"The address of the owner of the NFT\"}},\"property(uint256,string)\":{\"details\":\"Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"},\"returns\":{\"_0\":\"Property value bytes\"}},\"removeCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)\",\"params\":{\"admin\":\"Address of the removed administrator.\"}},\"removeCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))\",\"params\":{\"admin\":\"Cross account administrator address.\"}},\"removeCollectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()\"},\"removeFromCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a removed user.\"}},\"removeFromCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Not implementedEVM selector for this function is: 0xb88d4fde, or in textual repr: safeTransferFrom(address,address,uint256,bytes)\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)\"},\"setCollectionAccess(uint8)\":{\"details\":\"EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)\",\"params\":{\"mode\":\"Access mode \\t0 for Normal \\t1 for AllowList\"}},\"setCollectionLimit(string,bool)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"ownerCanTransfer\\\", \\t\\\"ownerCanDestroy\\\", \\t\\\"transfersEnabled\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionLimit(string,uint32)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"accountTokenOwnershipLimit\\\", \\t\\\"sponsoredDataSize\\\", \\t\\\"sponsoredDataRateLimit\\\", \\t\\\"tokenLimit\\\", \\t\\\"sponsorTransferTimeout\\\", \\t\\\"sponsorApproveTimeout\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionMintMode(bool)\":{\"details\":\"EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)\",\"params\":{\"mode\":\"Enable if \\\"true\\\".\"}},\"setCollectionNesting(bool)\":{\"details\":\"EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)\",\"params\":{\"enable\":\"If \\\"true\\\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\"}},\"setCollectionNesting(bool,address[])\":{\"details\":\"EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])\",\"params\":{\"collections\":\"Addresses of collections that will be available for nesting.\",\"enable\":\"If \\\"true\\\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\"}},\"setCollectionProperties((string,bytes)[])\":{\"details\":\"EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])\",\"params\":{\"properties\":\"Vector of properties key/value pair.\"}},\"setCollectionProperty(string,bytes)\":{\"details\":\"EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)\",\"params\":{\"key\":\"Property key.\",\"value\":\"Propery value.\"}},\"setCollectionSponsor(address)\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)\",\"params\":{\"sponsor\":\"Address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setCollectionSponsorCross((address,uint256))\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))\",\"params\":{\"sponsor\":\"Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setOwnerCross((address,uint256))\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))\",\"params\":{\"newOwner\":\"new owner cross account\"}},\"setProperties(uint256,(string,bytes)[])\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])\",\"params\":{\"properties\":\"settable properties\",\"tokenId\":\"ID of the token.\"}},\"setProperty(uint256,string,bytes)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\",\"value\":\"Property value.\"}},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"details\":\"Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)\",\"params\":{\"collectionAdmin\":\"Permission to mutate property by collection admin if property is mutable.\",\"isMutable\":\"Permission to mutate property.\",\"key\":\"Property key.\",\"tokenOwner\":\"Permission to mutate property by token owner if property is mutable.\"}},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\"},\"tokenByIndex(uint256)\":{\"details\":\"EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)\",\"params\":{\"index\":\"A counter less than `totalSupply()`\"},\"returns\":{\"_0\":\"The token identifier for the `index`th NFT, (sort order not specified)\"}},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)\"},\"tokenURI(uint256)\":{\"details\":\"If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \\\"\\\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)\",\"returns\":{\"_0\":\"token's const_metadata\"}},\"totalSupply()\":{\"details\":\"EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\",\"returns\":{\"_0\":\"A count of valid NFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address\"}},\"transfer(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this NFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid NFT.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)\",\"params\":{\"from\":\"Cross acccount address of current owner\",\"to\":\"Cross acccount address of new owner\",\"tokenId\":\"The NFT to transfer\"}},\"uniqueCollectionType()\":{\"details\":\"EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()\",\"returns\":{\"_0\":\"`Fungible` or `NFT` or `ReFungible`\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addCollectionAdmin(address)\":{\"notice\":\"Add collection admin.\"},\"addCollectionAdminCross((address,uint256))\":{\"notice\":\"Add collection admin.\"},\"addToCollectionAllowList(address)\":{\"notice\":\"Add the user to the allowed list.\"},\"addToCollectionAllowListCross((address,uint256))\":{\"notice\":\"Add user to allowed list.\"},\"allowed(address)\":{\"notice\":\"Checks that user allowed to operate with collection.\"},\"approve(address,uint256)\":{\"notice\":\"Set or reaffirm the approved address for an NFT\"},\"approveCross((address,uint256),uint256)\":{\"notice\":\"Set or reaffirm the approved address for an NFT\"},\"balanceOf(address)\":{\"notice\":\"Count all NFTs assigned to an owner\"},\"burn(uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFrom(address,uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFromCross((address,uint256),uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"changeCollectionOwner(address)\":{\"notice\":\"Changes collection owner to another account\"},\"collectionAdmins()\":{\"notice\":\"Get collection administrators\"},\"collectionOwner()\":{\"notice\":\"Get collection owner.\"},\"collectionProperties(string[])\":{\"notice\":\"Get collection properties.\"},\"collectionProperty(string)\":{\"notice\":\"Get collection property.\"},\"collectionSponsor()\":{\"notice\":\"Get current sponsor.\"},\"confirmCollectionSponsorship()\":{\"notice\":\"Collection sponsorship confirmation.\"},\"contractAddress()\":{\"notice\":\"Get contract address.\"},\"deleteCollectionProperties(string[])\":{\"notice\":\"Delete collection properties.\"},\"deleteCollectionProperty(string)\":{\"notice\":\"Delete collection property.\"},\"deleteProperty(uint256,string)\":{\"notice\":\"Delete token property value.\"},\"hasCollectionPendingSponsor()\":{\"notice\":\"Whether there is a pending sponsor.\"},\"isOwnerOrAdmin(address)\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"isOwnerOrAdminCross((address,uint256))\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"mint(address)\":{\"notice\":\"Function to mint token.\"},\"mintWithTokenURI(address,string)\":{\"notice\":\"Function to mint token with the given tokenUri.\"},\"name()\":{\"notice\":\"A descriptive name for a collection of NFTs in this contract\"},\"nextTokenId()\":{\"notice\":\"Returns next free NFT ID.\"},\"ownerOf(uint256)\":{\"notice\":\"Find the owner of an NFT\"},\"property(uint256,string)\":{\"notice\":\"Get token property value.\"},\"removeCollectionAdmin(address)\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionAdminCross((address,uint256))\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionSponsor()\":{\"notice\":\"Remove collection sponsor.\"},\"removeFromCollectionAllowList(address)\":{\"notice\":\"Remove the user from the allowed list.\"},\"removeFromCollectionAllowListCross((address,uint256))\":{\"notice\":\"Remove user from allowed list.\"},\"setCollectionAccess(uint8)\":{\"notice\":\"Set the collection access method.\"},\"setCollectionLimit(string,bool)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionLimit(string,uint32)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionMintMode(bool)\":{\"notice\":\"Switch permission for minting.\"},\"setCollectionNesting(bool)\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionNesting(bool,address[])\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionProperties((string,bytes)[])\":{\"notice\":\"Set collection properties.\"},\"setCollectionProperty(string,bytes)\":{\"notice\":\"Set collection property.\"},\"setCollectionSponsor(address)\":{\"notice\":\"Set the sponsor of the collection.\"},\"setCollectionSponsorCross((address,uint256))\":{\"notice\":\"Set the sponsor of the collection.\"},\"setOwnerCross((address,uint256))\":{\"notice\":\"Changes collection owner to another account\"},\"setProperties(uint256,(string,bytes)[])\":{\"notice\":\"Set token properties value.\"},\"setProperty(uint256,string,bytes)\":{\"notice\":\"Set token property value.\"},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"notice\":\"Set permissions for token property.\"},\"symbol()\":{\"notice\":\"An abbreviated name for NFTs in this contract\"},\"tokenByIndex(uint256)\":{\"notice\":\"Enumerate valid NFTs\"},\"tokenURI(uint256)\":{\"notice\":\"A distinct Uniform Resource Identifier (URI) for a given asset.\"},\"totalSupply()\":{\"notice\":\"Count NFTs tracked by this contract\"},\"transfer(address,uint256)\":{\"notice\":\"Transfer ownership of an NFT\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST\"},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"notice\":\"Transfer ownership of an NFT from cross account address to cross account address\"},\"uniqueCollectionType()\":{\"notice\":\"Returns collection type\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":\"UniqueNFT\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "notice": "Add collection admin."
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "notice": "Add collection admin."
+ },
+ "addToCollectionAllowList(address)": {
+ "notice": "Add the user to the allowed list."
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "notice": "Add user to allowed list."
+ },
+ "allowed(address)": {
+ "notice": "Checks that user allowed to operate with collection."
+ },
+ "approve(address,uint256)": {
+ "notice": "Set or reaffirm the approved address for an NFT"
+ },
+ "approveCross((address,uint256),uint256)": {
+ "notice": "Set or reaffirm the approved address for an NFT"
+ },
+ "balanceOf(address)": {
+ "notice": "Count all NFTs assigned to an owner"
+ },
+ "burn(uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFrom(address,uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "changeCollectionOwner(address)": {
+ "notice": "Changes collection owner to another account"
+ },
+ "collectionAdmins()": {
+ "notice": "Get collection administrators"
+ },
+ "collectionOwner()": {
+ "notice": "Get collection owner."
+ },
+ "collectionProperties(string[])": {
+ "notice": "Get collection properties."
+ },
+ "collectionProperty(string)": {
+ "notice": "Get collection property."
+ },
+ "collectionSponsor()": {
+ "notice": "Get current sponsor."
+ },
+ "confirmCollectionSponsorship()": {
+ "notice": "Collection sponsorship confirmation."
+ },
+ "contractAddress()": {
+ "notice": "Get contract address."
+ },
+ "deleteCollectionProperties(string[])": {
+ "notice": "Delete collection properties."
+ },
+ "deleteCollectionProperty(string)": {
+ "notice": "Delete collection property."
+ },
+ "deleteProperty(uint256,string)": {
+ "notice": "Delete token property value."
+ },
+ "hasCollectionPendingSponsor()": {
+ "notice": "Whether there is a pending sponsor."
+ },
+ "isOwnerOrAdmin(address)": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "mint(address)": {
+ "notice": "Function to mint token."
+ },
+ "mintWithTokenURI(address,string)": {
+ "notice": "Function to mint token with the given tokenUri."
+ },
+ "name()": {
+ "notice": "A descriptive name for a collection of NFTs in this contract"
+ },
+ "nextTokenId()": {
+ "notice": "Returns next free NFT ID."
+ },
+ "ownerOf(uint256)": {
+ "notice": "Find the owner of an NFT"
+ },
+ "property(uint256,string)": {
+ "notice": "Get token property value."
+ },
+ "removeCollectionAdmin(address)": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionSponsor()": {
+ "notice": "Remove collection sponsor."
+ },
+ "removeFromCollectionAllowList(address)": {
+ "notice": "Remove the user from the allowed list."
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "notice": "Remove user from allowed list."
+ },
+ "setCollectionAccess(uint8)": {
+ "notice": "Set the collection access method."
+ },
+ "setCollectionLimit(string,bool)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionLimit(string,uint32)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionMintMode(bool)": {
+ "notice": "Switch permission for minting."
+ },
+ "setCollectionNesting(bool)": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionNesting(bool,address[])": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "notice": "Set collection properties."
+ },
+ "setCollectionProperty(string,bytes)": {
+ "notice": "Set collection property."
+ },
+ "setCollectionSponsor(address)": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setOwnerCross((address,uint256))": {
+ "notice": "Changes collection owner to another account"
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "notice": "Set token properties value."
+ },
+ "setProperty(uint256,string,bytes)": {
+ "notice": "Set token property value."
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "notice": "Set permissions for token property."
+ },
+ "symbol()": {
+ "notice": "An abbreviated name for NFTs in this contract"
+ },
+ "tokenByIndex(uint256)": {
+ "notice": "Enumerate valid NFTs"
+ },
+ "tokenURI(uint256)": {
+ "notice": "A distinct Uniform Resource Identifier (URI) for a given asset."
+ },
+ "totalSupply()": {
+ "notice": "Count NFTs tracked by this contract"
+ },
+ "transfer(address,uint256)": {
+ "notice": "Transfer ownership of an NFT"
+ },
+ "transferFrom(address,address,uint256)": {
+ "notice": "Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST"
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "notice": "Transfer ownership of an NFT from cross account address to cross account address"
+ },
+ "uniqueCollectionType()": {
+ "notice": "Returns collection type"
+ }
+ },
+ "version": 1
+ }
+ }
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol": {
+ "Collection": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newAdmin",
+ "type": "address"
+ }
+ ],
+ "name": "addCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newAdmin",
+ "type": "tuple"
+ }
+ ],
+ "name": "addCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "addToCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "addToCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "allowed",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newOwner",
+ "type": "address"
+ }
+ ],
+ "name": "changeCollectionOwner",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionAdmins",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionOwner",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "collectionProperties",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "collectionProperty",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "field_0",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "field_1",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct Tuple23",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "confirmCollectionSponsorship",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "contractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "deleteCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "hasCollectionPendingSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "isOwnerOrAdmin",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "isOwnerOrAdminCross",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "admin",
+ "type": "address"
+ }
+ ],
+ "name": "removeCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "admin",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "removeCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "removeFromCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeFromCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint8",
+ "name": "mode",
+ "type": "uint8"
+ }
+ ],
+ "name": "setCollectionAccess",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "uint32",
+ "name": "value",
+ "type": "uint32"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "value",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "mode",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionMintMode",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ },
+ {
+ "internalType": "address[]",
+ "name": "collections",
+ "type": "address[]"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "setCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "sponsor",
+ "type": "tuple"
+ }
+ ],
+ "name": "setCollectionSponsorCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newOwner",
+ "type": "tuple"
+ }
+ ],
+ "name": "setOwnerCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "uniqueCollectionType",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0xb3152af3",
+ "kind": "dev",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)",
+ "params": {
+ "newAdmin": "Address of the added administrator."
+ }
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))",
+ "params": {
+ "newAdmin": "Cross account administrator address."
+ }
+ },
+ "addToCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a trusted user."
+ }
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "allowed(address)": {
+ "details": "EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)",
+ "params": {
+ "user": "User address to check."
+ }
+ },
+ "changeCollectionOwner(address)": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)",
+ "params": {
+ "newOwner": "new owner account"
+ }
+ },
+ "collectionAdmins()": {
+ "details": "EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()",
+ "returns": {
+ "_0": "Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionOwner()": {
+ "details": "EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys. Empty keys for all propertyes."
+ },
+ "returns": {
+ "_0": "Vector of properties key/value pairs."
+ }
+ },
+ "collectionProperty(string)": {
+ "details": "Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ },
+ "returns": {
+ "_0": "bytes The property corresponding to the key."
+ }
+ },
+ "collectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw."
+ }
+ },
+ "confirmCollectionSponsorship()": {
+ "details": "After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()"
+ },
+ "contractAddress()": {
+ "details": "EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()"
+ },
+ "deleteCollectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys."
+ }
+ },
+ "deleteCollectionProperty(string)": {
+ "details": "EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ }
+ },
+ "hasCollectionPendingSponsor()": {
+ "details": "EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "isOwnerOrAdmin(address)": {
+ "details": "EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)",
+ "params": {
+ "user": "account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))",
+ "params": {
+ "user": "User cross account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "removeCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)",
+ "params": {
+ "admin": "Address of the removed administrator."
+ }
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))",
+ "params": {
+ "admin": "Cross account administrator address."
+ }
+ },
+ "removeCollectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()"
+ },
+ "removeFromCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a removed user."
+ }
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "setCollectionAccess(uint8)": {
+ "details": "EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)",
+ "params": {
+ "mode": "Access mode \t0 for Normal \t1 for AllowList"
+ }
+ },
+ "setCollectionLimit(string,bool)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"ownerCanTransfer\", \t\"ownerCanDestroy\", \t\"transfersEnabled\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionLimit(string,uint32)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"accountTokenOwnershipLimit\", \t\"sponsoredDataSize\", \t\"sponsoredDataRateLimit\", \t\"tokenLimit\", \t\"sponsorTransferTimeout\", \t\"sponsorApproveTimeout\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionMintMode(bool)": {
+ "details": "EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)",
+ "params": {
+ "mode": "Enable if \"true\"."
+ }
+ },
+ "setCollectionNesting(bool)": {
+ "details": "EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)",
+ "params": {
+ "enable": "If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionNesting(bool,address[])": {
+ "details": "EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])",
+ "params": {
+ "collections": "Addresses of collections that will be available for nesting.",
+ "enable": "If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "details": "EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])",
+ "params": {
+ "properties": "Vector of properties key/value pair."
+ }
+ },
+ "setCollectionProperty(string,bytes)": {
+ "details": "EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "value": "Propery value."
+ }
+ },
+ "setCollectionSponsor(address)": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)",
+ "params": {
+ "sponsor": "Address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))",
+ "params": {
+ "sponsor": "Cross account address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setOwnerCross((address,uint256))": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))",
+ "params": {
+ "newOwner": "new owner cross account"
+ }
+ },
+ "uniqueCollectionType()": {
+ "details": "EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()",
+ "returns": {
+ "_0": "`Fungible` or `NFT` or `ReFungible`"
+ }
+ }
+ },
+ "title": "A contract that allows you to work with collections.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "addCollectionAdmin(address)": "92e462c7",
+ "addCollectionAdminCross((address,uint256))": "859aa7d6",
+ "addToCollectionAllowList(address)": "67844fe6",
+ "addToCollectionAllowListCross((address,uint256))": "a0184a3a",
+ "allowed(address)": "d63a8e11",
+ "changeCollectionOwner(address)": "4f53e226",
+ "collectionAdmins()": "5813216b",
+ "collectionOwner()": "df727d3b",
+ "collectionProperties(string[])": "285fb8e6",
+ "collectionProperty(string)": "cf24fd6d",
+ "collectionSponsor()": "6ec0a9f1",
+ "confirmCollectionSponsorship()": "3c50e97a",
+ "contractAddress()": "f6b4dfb4",
+ "deleteCollectionProperties(string[])": "ee206ee3",
+ "deleteCollectionProperty(string)": "7b7debce",
+ "hasCollectionPendingSponsor()": "058ac185",
+ "isOwnerOrAdmin(address)": "9811b0c7",
+ "isOwnerOrAdminCross((address,uint256))": "3e75a905",
+ "removeCollectionAdmin(address)": "fafd7b42",
+ "removeCollectionAdminCross((address,uint256))": "6c0cd173",
+ "removeCollectionSponsor()": "6e0326a3",
+ "removeFromCollectionAllowList(address)": "85c51acb",
+ "removeFromCollectionAllowListCross((address,uint256))": "09ba452a",
+ "setCollectionAccess(uint8)": "41835d4c",
+ "setCollectionLimit(string,bool)": "993b7fba",
+ "setCollectionLimit(string,uint32)": "6a3841db",
+ "setCollectionMintMode(bool)": "00018e84",
+ "setCollectionNesting(bool)": "112d4586",
+ "setCollectionNesting(bool,address[])": "64872396",
+ "setCollectionProperties((string,bytes)[])": "50b26b2a",
+ "setCollectionProperty(string,bytes)": "2f073f66",
+ "setCollectionSponsor(address)": "7623402e",
+ "setCollectionSponsorCross((address,uint256))": "84a1d5a8",
+ "setOwnerCross((address,uint256))": "e5c9913f",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "uniqueCollectionType()": "d34b55b8"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"addCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newAdmin\",\"type\":\"tuple\"}],\"name\":\"addCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"addToCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"addToCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeCollectionOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionAdmins\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionOwner\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"collectionProperties\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"collectionProperty\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionSponsor\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"field_0\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"field_1\",\"type\":\"uint256\"}],\"internalType\":\"struct Tuple23\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"confirmCollectionSponsorship\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"deleteCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hasCollectionPendingSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"isOwnerOrAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"isOwnerOrAdminCross\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"}],\"name\":\"removeCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"admin\",\"type\":\"tuple\"}],\"name\":\"removeCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"removeCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"removeFromCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"removeFromCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"mode\",\"type\":\"uint8\"}],\"name\":\"setCollectionAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"value\",\"type\":\"uint32\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"mode\",\"type\":\"bool\"}],\"name\":\"setCollectionMintMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"},{\"internalType\":\"address[]\",\"name\":\"collections\",\"type\":\"address[]\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"setCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"sponsor\",\"type\":\"tuple\"}],\"name\":\"setCollectionSponsorCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newOwner\",\"type\":\"tuple\"}],\"name\":\"setOwnerCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"uniqueCollectionType\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0xb3152af3\",\"kind\":\"dev\",\"methods\":{\"addCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)\",\"params\":{\"newAdmin\":\"Address of the added administrator.\"}},\"addCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))\",\"params\":{\"newAdmin\":\"Cross account administrator address.\"}},\"addToCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a trusted user.\"}},\"addToCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"allowed(address)\":{\"details\":\"EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)\",\"params\":{\"user\":\"User address to check.\"}},\"changeCollectionOwner(address)\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)\",\"params\":{\"newOwner\":\"new owner account\"}},\"collectionAdmins()\":{\"details\":\"EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()\",\"returns\":{\"_0\":\"Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionOwner()\":{\"details\":\"EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys. Empty keys for all propertyes.\"},\"returns\":{\"_0\":\"Vector of properties key/value pairs.\"}},\"collectionProperty(string)\":{\"details\":\"Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)\",\"params\":{\"key\":\"Property key.\"},\"returns\":{\"_0\":\"bytes The property corresponding to the key.\"}},\"collectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \\\"Contract has no sponsor\\\" throw.\"}},\"confirmCollectionSponsorship()\":{\"details\":\"After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()\"},\"contractAddress()\":{\"details\":\"EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()\"},\"deleteCollectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys.\"}},\"deleteCollectionProperty(string)\":{\"details\":\"EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)\",\"params\":{\"key\":\"Property key.\"}},\"hasCollectionPendingSponsor()\":{\"details\":\"EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()\"},\"isOwnerOrAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)\",\"params\":{\"user\":\"account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"isOwnerOrAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))\",\"params\":{\"user\":\"User cross account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"removeCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)\",\"params\":{\"admin\":\"Address of the removed administrator.\"}},\"removeCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))\",\"params\":{\"admin\":\"Cross account administrator address.\"}},\"removeCollectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()\"},\"removeFromCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a removed user.\"}},\"removeFromCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"setCollectionAccess(uint8)\":{\"details\":\"EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)\",\"params\":{\"mode\":\"Access mode \\t0 for Normal \\t1 for AllowList\"}},\"setCollectionLimit(string,bool)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"ownerCanTransfer\\\", \\t\\\"ownerCanDestroy\\\", \\t\\\"transfersEnabled\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionLimit(string,uint32)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"accountTokenOwnershipLimit\\\", \\t\\\"sponsoredDataSize\\\", \\t\\\"sponsoredDataRateLimit\\\", \\t\\\"tokenLimit\\\", \\t\\\"sponsorTransferTimeout\\\", \\t\\\"sponsorApproveTimeout\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionMintMode(bool)\":{\"details\":\"EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)\",\"params\":{\"mode\":\"Enable if \\\"true\\\".\"}},\"setCollectionNesting(bool)\":{\"details\":\"EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)\",\"params\":{\"enable\":\"If \\\"true\\\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\"}},\"setCollectionNesting(bool,address[])\":{\"details\":\"EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])\",\"params\":{\"collections\":\"Addresses of collections that will be available for nesting.\",\"enable\":\"If \\\"true\\\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\"}},\"setCollectionProperties((string,bytes)[])\":{\"details\":\"EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])\",\"params\":{\"properties\":\"Vector of properties key/value pair.\"}},\"setCollectionProperty(string,bytes)\":{\"details\":\"EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)\",\"params\":{\"key\":\"Property key.\",\"value\":\"Propery value.\"}},\"setCollectionSponsor(address)\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)\",\"params\":{\"sponsor\":\"Address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setCollectionSponsorCross((address,uint256))\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))\",\"params\":{\"sponsor\":\"Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setOwnerCross((address,uint256))\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))\",\"params\":{\"newOwner\":\"new owner cross account\"}},\"uniqueCollectionType()\":{\"details\":\"EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()\",\"returns\":{\"_0\":\"`Fungible` or `NFT` or `ReFungible`\"}}},\"title\":\"A contract that allows you to work with collections.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addCollectionAdmin(address)\":{\"notice\":\"Add collection admin.\"},\"addCollectionAdminCross((address,uint256))\":{\"notice\":\"Add collection admin.\"},\"addToCollectionAllowList(address)\":{\"notice\":\"Add the user to the allowed list.\"},\"addToCollectionAllowListCross((address,uint256))\":{\"notice\":\"Add user to allowed list.\"},\"allowed(address)\":{\"notice\":\"Checks that user allowed to operate with collection.\"},\"changeCollectionOwner(address)\":{\"notice\":\"Changes collection owner to another account\"},\"collectionAdmins()\":{\"notice\":\"Get collection administrators\"},\"collectionOwner()\":{\"notice\":\"Get collection owner.\"},\"collectionProperties(string[])\":{\"notice\":\"Get collection properties.\"},\"collectionProperty(string)\":{\"notice\":\"Get collection property.\"},\"collectionSponsor()\":{\"notice\":\"Get current sponsor.\"},\"confirmCollectionSponsorship()\":{\"notice\":\"Collection sponsorship confirmation.\"},\"contractAddress()\":{\"notice\":\"Get contract address.\"},\"deleteCollectionProperties(string[])\":{\"notice\":\"Delete collection properties.\"},\"deleteCollectionProperty(string)\":{\"notice\":\"Delete collection property.\"},\"hasCollectionPendingSponsor()\":{\"notice\":\"Whether there is a pending sponsor.\"},\"isOwnerOrAdmin(address)\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"isOwnerOrAdminCross((address,uint256))\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"removeCollectionAdmin(address)\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionAdminCross((address,uint256))\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionSponsor()\":{\"notice\":\"Remove collection sponsor.\"},\"removeFromCollectionAllowList(address)\":{\"notice\":\"Remove the user from the allowed list.\"},\"removeFromCollectionAllowListCross((address,uint256))\":{\"notice\":\"Remove user from allowed list.\"},\"setCollectionAccess(uint8)\":{\"notice\":\"Set the collection access method.\"},\"setCollectionLimit(string,bool)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionLimit(string,uint32)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionMintMode(bool)\":{\"notice\":\"Switch permission for minting.\"},\"setCollectionNesting(bool)\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionNesting(bool,address[])\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionProperties((string,bytes)[])\":{\"notice\":\"Set collection properties.\"},\"setCollectionProperty(string,bytes)\":{\"notice\":\"Set collection property.\"},\"setCollectionSponsor(address)\":{\"notice\":\"Set the sponsor of the collection.\"},\"setCollectionSponsorCross((address,uint256))\":{\"notice\":\"Set the sponsor of the collection.\"},\"setOwnerCross((address,uint256))\":{\"notice\":\"Changes collection owner to another account\"},\"uniqueCollectionType()\":{\"notice\":\"Returns collection type\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"Collection\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "notice": "Add collection admin."
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "notice": "Add collection admin."
+ },
+ "addToCollectionAllowList(address)": {
+ "notice": "Add the user to the allowed list."
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "notice": "Add user to allowed list."
+ },
+ "allowed(address)": {
+ "notice": "Checks that user allowed to operate with collection."
+ },
+ "changeCollectionOwner(address)": {
+ "notice": "Changes collection owner to another account"
+ },
+ "collectionAdmins()": {
+ "notice": "Get collection administrators"
+ },
+ "collectionOwner()": {
+ "notice": "Get collection owner."
+ },
+ "collectionProperties(string[])": {
+ "notice": "Get collection properties."
+ },
+ "collectionProperty(string)": {
+ "notice": "Get collection property."
+ },
+ "collectionSponsor()": {
+ "notice": "Get current sponsor."
+ },
+ "confirmCollectionSponsorship()": {
+ "notice": "Collection sponsorship confirmation."
+ },
+ "contractAddress()": {
+ "notice": "Get contract address."
+ },
+ "deleteCollectionProperties(string[])": {
+ "notice": "Delete collection properties."
+ },
+ "deleteCollectionProperty(string)": {
+ "notice": "Delete collection property."
+ },
+ "hasCollectionPendingSponsor()": {
+ "notice": "Whether there is a pending sponsor."
+ },
+ "isOwnerOrAdmin(address)": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "removeCollectionAdmin(address)": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionSponsor()": {
+ "notice": "Remove collection sponsor."
+ },
+ "removeFromCollectionAllowList(address)": {
+ "notice": "Remove the user from the allowed list."
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "notice": "Remove user from allowed list."
+ },
+ "setCollectionAccess(uint8)": {
+ "notice": "Set the collection access method."
+ },
+ "setCollectionLimit(string,bool)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionLimit(string,uint32)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionMintMode(bool)": {
+ "notice": "Switch permission for minting."
+ },
+ "setCollectionNesting(bool)": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionNesting(bool,address[])": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "notice": "Set collection properties."
+ },
+ "setCollectionProperty(string,bytes)": {
+ "notice": "Set collection property."
+ },
+ "setCollectionSponsor(address)": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setOwnerCross((address,uint256))": {
+ "notice": "Changes collection owner to another account"
+ },
+ "uniqueCollectionType()": {
+ "notice": "Returns collection type"
+ }
+ },
+ "version": 1
+ }
+ },
+ "Dummy": {
+ "abi": [],
+ "devdoc": {
+ "details": "common stubs holder",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"common stubs holder\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"Dummy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC165": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC721": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getApproved",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ }
+ ],
+ "name": "isApprovedForAll",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "ownerOf",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "bytes",
+ "name": "data",
+ "type": "bytes"
+ }
+ ],
+ "name": "safeTransferFromWithData",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "setApprovalForAll",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.mdthe ERC-165 identifier for this interface is 0x58800161",
+ "kind": "dev",
+ "methods": {
+ "approve(address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)"
+ },
+ "balanceOf(address)": {
+ "details": "RFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "An address for whom to query the balance"
+ },
+ "returns": {
+ "_0": "The number of RFTs owned by `owner`, possibly zero"
+ }
+ },
+ "getApproved(uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)"
+ },
+ "isApprovedForAll(address,address)": {
+ "details": "Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)"
+ },
+ "ownerOf(uint256)": {
+ "details": "RFTs assigned to zero address are considered invalid, and queries about them do throw. Returns special 0xffffffffffffffffffffffffffffffffffffffff address for the tokens that are partially owned.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)",
+ "params": {
+ "tokenId": "The identifier for an RFT"
+ },
+ "returns": {
+ "_0": "The address of the owner of the RFT"
+ }
+ },
+ "safeTransferFrom(address,address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "safeTransferFromWithData(address,address,uint256,bytes)": {
+ "details": "Not implementedEVM selector for this function is: 0x60a11672, or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)"
+ },
+ "setApprovalForAll(address,bool)": {
+ "details": "Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ }
+ },
+ "title": "ERC-721 Non-Fungible Token Standard",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "approve(address,uint256)": "095ea7b3",
+ "balanceOf(address)": "70a08231",
+ "getApproved(uint256)": "081812fc",
+ "isApprovedForAll(address,address)": "e985e9c5",
+ "ownerOf(uint256)": "6352211e",
+ "safeTransferFrom(address,address,uint256)": "42842e0e",
+ "safeTransferFromWithData(address,address,uint256,bytes)": "60a11672",
+ "setApprovalForAll(address,bool)": "a22cb465",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "transferFrom(address,address,uint256)": "23b872dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFromWithData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.mdthe ERC-165 identifier for this interface is 0x58800161\",\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\"},\"balanceOf(address)\":{\"details\":\"RFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"An address for whom to query the balance\"},\"returns\":{\"_0\":\"The number of RFTs owned by `owner`, possibly zero\"}},\"getApproved(uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)\"},\"isApprovedForAll(address,address)\":{\"details\":\"Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)\"},\"ownerOf(uint256)\":{\"details\":\"RFTs assigned to zero address are considered invalid, and queries about them do throw. Returns special 0xffffffffffffffffffffffffffffffffffffffff address for the tokens that are partially owned.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)\",\"params\":{\"tokenId\":\"The identifier for an RFT\"},\"returns\":{\"_0\":\"The address of the owner of the RFT\"}},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)\"},\"safeTransferFromWithData(address,address,uint256,bytes)\":{\"details\":\"Not implementedEVM selector for this function is: 0x60a11672, or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}}},\"title\":\"ERC-721 Non-Fungible Token Standard\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"balanceOf(address)\":{\"notice\":\"Count all RFTs assigned to an owner\"},\"ownerOf(uint256)\":{\"notice\":\"Find the owner of an RFT\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "balanceOf(address)": {
+ "notice": "Count all RFTs assigned to an owner"
+ },
+ "ownerOf(uint256)": {
+ "notice": "Find the owner of an RFT"
+ },
+ "transferFrom(address,address,uint256)": {
+ "notice": "Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Burnable": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burn",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x42966c68",
+ "kind": "dev",
+ "methods": {
+ "burn(uint256)": {
+ "details": "Throws unless `msg.sender` is the current RFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)",
+ "params": {
+ "tokenId": "The RFT to approve"
+ }
+ }
+ },
+ "title": "ERC721 Token that can be irreversibly burned (destroyed).",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "burn(uint256)": "42966c68",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x42966c68\",\"kind\":\"dev\",\"methods\":{\"burn(uint256)\":{\"details\":\"Throws unless `msg.sender` is the current RFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)\",\"params\":{\"tokenId\":\"The RFT to approve\"}}},\"title\":\"ERC721 Token that can be irreversibly burned (destroyed).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"burn(uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721Burnable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "burn(uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Enumerable": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenOfOwnerByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x780e9d63",
+ "kind": "dev",
+ "methods": {
+ "tokenByIndex(uint256)": {
+ "details": "EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)",
+ "params": {
+ "index": "A counter less than `totalSupply()`"
+ },
+ "returns": {
+ "_0": "The token identifier for the `index`th NFT, (sort order not specified)"
+ }
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "details": "EVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "totalSupply()": {
+ "details": "EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()",
+ "returns": {
+ "_0": "A count of valid RFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address"
+ }
+ }
+ },
+ "title": "ERC-721 Non-Fungible Token Standard, optional enumeration extension",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "tokenByIndex(uint256)": "4f6ccce7",
+ "tokenOfOwnerByIndex(address,uint256)": "2f745c59",
+ "totalSupply()": "18160ddd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"See https://eips.ethereum.org/EIPS/eip-721the ERC-165 identifier for this interface is 0x780e9d63\",\"kind\":\"dev\",\"methods\":{\"tokenByIndex(uint256)\":{\"details\":\"EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)\",\"params\":{\"index\":\"A counter less than `totalSupply()`\"},\"returns\":{\"_0\":\"The token identifier for the `index`th NFT, (sort order not specified)\"}},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"EVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)\"},\"totalSupply()\":{\"details\":\"EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\",\"returns\":{\"_0\":\"A count of valid RFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address\"}}},\"title\":\"ERC-721 Non-Fungible Token Standard, optional enumeration extension\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"tokenByIndex(uint256)\":{\"notice\":\"Enumerate valid RFTs\"},\"tokenOfOwnerByIndex(address,uint256)\":{\"notice\":\"Not implemented\"},\"totalSupply()\":{\"notice\":\"Count RFTs tracked by this contract\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721Enumerable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "tokenByIndex(uint256)": {
+ "notice": "Enumerate valid RFTs"
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "notice": "Not implemented"
+ },
+ "totalSupply()": {
+ "notice": "Count RFTs tracked by this contract"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721Events": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721Events\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC721Metadata": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenURI",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x5b5e139f",
+ "kind": "dev",
+ "methods": {
+ "tokenURI(uint256)": {
+ "details": "If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \"\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)",
+ "returns": {
+ "_0": "token's const_metadata"
+ }
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "tokenURI(uint256)": "c87b56dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x5b5e139f\",\"kind\":\"dev\",\"methods\":{\"tokenURI(uint256)\":{\"details\":\"If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \\\"\\\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)\",\"returns\":{\"_0\":\"token's const_metadata\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"tokenURI(uint256)\":{\"notice\":\"A distinct Uniform Resource Identifier (URI) for a given asset.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721Metadata\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "tokenURI(uint256)": {
+ "notice": "A distinct Uniform Resource Identifier (URI) for a given asset."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueExtensions": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "nextTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "token",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenContractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "to",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x81feb398",
+ "kind": "dev",
+ "methods": {
+ "burnFrom(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "from": "The current owner of the RFT",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)",
+ "params": {
+ "from": "The current owner of the RFT",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()"
+ },
+ "nextTokenId()": {
+ "details": "EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()"
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()"
+ },
+ "tokenContractAddress(uint256)": {
+ "details": "EVM selector for this function is: 0xab76fac6, or in textual repr: tokenContractAddress(uint256)",
+ "params": {
+ "token": "ID of the token"
+ }
+ },
+ "transfer(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The RFT to transfer"
+ }
+ }
+ },
+ "title": "Unique extensions for ERC721.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "burnFrom(address,uint256)": "79cc6790",
+ "burnFromCross((address,uint256),uint256)": "bb2f5a58",
+ "name()": "06fdde03",
+ "nextTokenId()": "75794a3c",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "tokenContractAddress(uint256)": "ab76fac6",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFromCross((address,uint256),(address,uint256),uint256)": "d5cf430b"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"token\",\"type\":\"uint256\"}],\"name\":\"tokenContractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"to\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x81feb398\",\"kind\":\"dev\",\"methods\":{\"burnFrom(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"from\":\"The current owner of the RFT\",\"tokenId\":\"The RFT to transfer\"}},\"burnFromCross((address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)\",\"params\":{\"from\":\"The current owner of the RFT\",\"tokenId\":\"The RFT to transfer\"}},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\"},\"nextTokenId()\":{\"details\":\"EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()\"},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\"},\"tokenContractAddress(uint256)\":{\"details\":\"EVM selector for this function is: 0xab76fac6, or in textual repr: tokenContractAddress(uint256)\",\"params\":{\"token\":\"ID of the token\"}},\"transfer(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The RFT to transfer\"}},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The RFT to transfer\"}}},\"title\":\"Unique extensions for ERC721.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"burnFrom(address,uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFromCross((address,uint256),uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"name()\":{\"notice\":\"A descriptive name for a collection of NFTs in this contract\"},\"nextTokenId()\":{\"notice\":\"Returns next free RFT ID.\"},\"symbol()\":{\"notice\":\"An abbreviated name for NFTs in this contract\"},\"tokenContractAddress(uint256)\":{\"notice\":\"Returns EVM address for refungible token\"},\"transfer(address,uint256)\":{\"notice\":\"Transfer ownership of an RFT\"},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"notice\":\"Transfer ownership of an RFT\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721UniqueExtensions\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "burnFrom(address,uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "name()": {
+ "notice": "A descriptive name for a collection of NFTs in this contract"
+ },
+ "nextTokenId()": {
+ "notice": "Returns next free RFT ID."
+ },
+ "symbol()": {
+ "notice": "An abbreviated name for NFTs in this contract"
+ },
+ "tokenContractAddress(uint256)": {
+ "notice": "Returns EVM address for refungible token"
+ },
+ "transfer(address,uint256)": {
+ "notice": "Transfer ownership of an RFT"
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "notice": "Transfer ownership of an RFT"
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueMintable": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ },
+ {
+ "inputs": [],
+ "name": "finishMinting",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ }
+ ],
+ "name": "mint",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenUri",
+ "type": "string"
+ }
+ ],
+ "name": "mintWithTokenURI",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "mintingFinished",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x476ff149",
+ "kind": "dev",
+ "methods": {
+ "finishMinting()": {
+ "details": "Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()"
+ },
+ "mint(address)": {
+ "details": "EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)",
+ "params": {
+ "to": "The new owner"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintWithTokenURI(address,string)": {
+ "details": "EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)",
+ "params": {
+ "to": "The new owner",
+ "tokenUri": "Token URI that would be stored in the NFT properties"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintingFinished()": {
+ "details": "EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()"
+ }
+ },
+ "title": "ERC721 minting logic.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "finishMinting()": "7d64bcb4",
+ "mint(address)": "6a627842",
+ "mintWithTokenURI(address,string)": "45c17782",
+ "mintingFinished()": "05d2035b",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"finishMinting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintWithTokenURI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintingFinished\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x476ff149\",\"kind\":\"dev\",\"methods\":{\"finishMinting()\":{\"details\":\"Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()\"},\"mint(address)\":{\"details\":\"EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)\",\"params\":{\"to\":\"The new owner\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintWithTokenURI(address,string)\":{\"details\":\"EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)\",\"params\":{\"to\":\"The new owner\",\"tokenUri\":\"Token URI that would be stored in the NFT properties\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintingFinished()\":{\"details\":\"EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()\"}},\"title\":\"ERC721 minting logic.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"mint(address)\":{\"notice\":\"Function to mint token.\"},\"mintWithTokenURI(address,string)\":{\"notice\":\"Function to mint token with the given tokenUri.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721UniqueMintable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "mint(address)": {
+ "notice": "Function to mint token."
+ },
+ "mintWithTokenURI(address,string)": {
+ "notice": "Function to mint token with the given tokenUri."
+ }
+ },
+ "version": 1
+ }
+ },
+ "ERC721UniqueMintableEvents": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"ERC721UniqueMintableEvents\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "TokenProperties": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "property",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "isMutable",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "collectionAdmin",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "tokenOwner",
+ "type": "bool"
+ }
+ ],
+ "name": "setTokenPropertyPermission",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x55dba919",
+ "kind": "dev",
+ "methods": {
+ "deleteProperty(uint256,string)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ }
+ },
+ "property(uint256,string)": {
+ "details": "Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ },
+ "returns": {
+ "_0": "Property value bytes"
+ }
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])",
+ "params": {
+ "properties": "settable properties",
+ "tokenId": "ID of the token."
+ }
+ },
+ "setProperty(uint256,string,bytes)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token.",
+ "value": "Property value."
+ }
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "details": "Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)",
+ "params": {
+ "collectionAdmin": "Permission to mutate property by collection admin if property is mutable.",
+ "isMutable": "Permission to mutate property.",
+ "key": "Property key.",
+ "tokenOwner": "Permission to mutate property by token owner if property is mutable."
+ }
+ }
+ },
+ "title": "A contract that allows to set and delete token properties and change token property permissions.",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "deleteProperty(uint256,string)": "066111d1",
+ "property(uint256,string)": "7228c327",
+ "setProperties(uint256,(string,bytes)[])": "14ed3a6e",
+ "setProperty(uint256,string,bytes)": "1752d67b",
+ "setTokenPropertyPermission(string,bool,bool,bool)": "222d97fa",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"property\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isMutable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"collectionAdmin\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"tokenOwner\",\"type\":\"bool\"}],\"name\":\"setTokenPropertyPermission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x55dba919\",\"kind\":\"dev\",\"methods\":{\"deleteProperty(uint256,string)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"}},\"property(uint256,string)\":{\"details\":\"Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"},\"returns\":{\"_0\":\"Property value bytes\"}},\"setProperties(uint256,(string,bytes)[])\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])\",\"params\":{\"properties\":\"settable properties\",\"tokenId\":\"ID of the token.\"}},\"setProperty(uint256,string,bytes)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\",\"value\":\"Property value.\"}},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"details\":\"Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)\",\"params\":{\"collectionAdmin\":\"Permission to mutate property by collection admin if property is mutable.\",\"isMutable\":\"Permission to mutate property.\",\"key\":\"Property key.\",\"tokenOwner\":\"Permission to mutate property by token owner if property is mutable.\"}}},\"title\":\"A contract that allows to set and delete token properties and change token property permissions.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"deleteProperty(uint256,string)\":{\"notice\":\"Delete token property value.\"},\"property(uint256,string)\":{\"notice\":\"Get token property value.\"},\"setProperties(uint256,(string,bytes)[])\":{\"notice\":\"Set token properties value.\"},\"setProperty(uint256,string,bytes)\":{\"notice\":\"Set token property value.\"},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"notice\":\"Set permissions for token property.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"TokenProperties\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "deleteProperty(uint256,string)": {
+ "notice": "Delete token property value."
+ },
+ "property(uint256,string)": {
+ "notice": "Get token property value."
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "notice": "Set token properties value."
+ },
+ "setProperty(uint256,string,bytes)": {
+ "notice": "Set token property value."
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "notice": "Set permissions for token property."
+ }
+ },
+ "version": 1
+ }
+ },
+ "UniqueRefungible": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "ApprovalForAll",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [],
+ "name": "MintingFinished",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newAdmin",
+ "type": "address"
+ }
+ ],
+ "name": "addCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newAdmin",
+ "type": "tuple"
+ }
+ ],
+ "name": "addCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "addToCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "addToCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "allowed",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "approved",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burn",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "newOwner",
+ "type": "address"
+ }
+ ],
+ "name": "changeCollectionOwner",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionAdmins",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionOwner",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "collectionProperties",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "",
+ "type": "tuple[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "collectionProperty",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "field_0",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "field_1",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct Tuple23",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "confirmCollectionSponsorship",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "contractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string[]",
+ "name": "keys",
+ "type": "string[]"
+ }
+ ],
+ "name": "deleteCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "deleteProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "finishMinting",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getApproved",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "hasCollectionPendingSponsor",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ }
+ ],
+ "name": "isApprovedForAll",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "isOwnerOrAdmin",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "isOwnerOrAdminCross",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ }
+ ],
+ "name": "mint",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "string",
+ "name": "tokenUri",
+ "type": "string"
+ }
+ ],
+ "name": "mintWithTokenURI",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "mintingFinished",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "nextTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "ownerOf",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ }
+ ],
+ "name": "property",
+ "outputs": [
+ {
+ "internalType": "bytes",
+ "name": "",
+ "type": "bytes"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "admin",
+ "type": "address"
+ }
+ ],
+ "name": "removeCollectionAdmin",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "admin",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeCollectionAdminCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "removeCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ }
+ ],
+ "name": "removeFromCollectionAllowList",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "user",
+ "type": "tuple"
+ }
+ ],
+ "name": "removeFromCollectionAllowListCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "safeTransferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "bytes",
+ "name": "data",
+ "type": "bytes"
+ }
+ ],
+ "name": "safeTransferFromWithData",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "approved",
+ "type": "bool"
+ }
+ ],
+ "name": "setApprovalForAll",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint8",
+ "name": "mode",
+ "type": "uint8"
+ }
+ ],
+ "name": "setCollectionAccess",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "uint32",
+ "name": "value",
+ "type": "uint32"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "limit",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "value",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionLimit",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "mode",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionMintMode",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bool",
+ "name": "enable",
+ "type": "bool"
+ },
+ {
+ "internalType": "address[]",
+ "name": "collections",
+ "type": "address[]"
+ }
+ ],
+ "name": "setCollectionNesting",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setCollectionProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setCollectionProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "sponsor",
+ "type": "address"
+ }
+ ],
+ "name": "setCollectionSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "sponsor",
+ "type": "tuple"
+ }
+ ],
+ "name": "setCollectionSponsorCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "newOwner",
+ "type": "tuple"
+ }
+ ],
+ "name": "setOwnerCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple20[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "setProperties",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "name": "setProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bool",
+ "name": "isMutable",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "collectionAdmin",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "tokenOwner",
+ "type": "bool"
+ }
+ ],
+ "name": "setTokenPropertyPermission",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "token",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenContractAddress",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "index",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenOfOwnerByIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "tokenURI",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "from",
+ "type": "tuple"
+ },
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "eth",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "sub",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct EthCrossAccount",
+ "name": "to",
+ "type": "tuple"
+ },
+ {
+ "internalType": "uint256",
+ "name": "tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFromCross",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "uniqueCollectionType",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)",
+ "params": {
+ "newAdmin": "Address of the added administrator."
+ }
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))",
+ "params": {
+ "newAdmin": "Cross account administrator address."
+ }
+ },
+ "addToCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a trusted user."
+ }
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "allowed(address)": {
+ "details": "EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)",
+ "params": {
+ "user": "User address to check."
+ }
+ },
+ "approve(address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)"
+ },
+ "balanceOf(address)": {
+ "details": "RFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "An address for whom to query the balance"
+ },
+ "returns": {
+ "_0": "The number of RFTs owned by `owner`, possibly zero"
+ }
+ },
+ "burn(uint256)": {
+ "details": "Throws unless `msg.sender` is the current RFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)",
+ "params": {
+ "tokenId": "The RFT to approve"
+ }
+ },
+ "burnFrom(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "from": "The current owner of the RFT",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)",
+ "params": {
+ "from": "The current owner of the RFT",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "changeCollectionOwner(address)": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)",
+ "params": {
+ "newOwner": "new owner account"
+ }
+ },
+ "collectionAdmins()": {
+ "details": "EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()",
+ "returns": {
+ "_0": "Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionOwner()": {
+ "details": "EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa."
+ }
+ },
+ "collectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys. Empty keys for all propertyes."
+ },
+ "returns": {
+ "_0": "Vector of properties key/value pairs."
+ }
+ },
+ "collectionProperty(string)": {
+ "details": "Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ },
+ "returns": {
+ "_0": "bytes The property corresponding to the key."
+ }
+ },
+ "collectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()",
+ "returns": {
+ "_0": "Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw."
+ }
+ },
+ "confirmCollectionSponsorship()": {
+ "details": "After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()"
+ },
+ "contractAddress()": {
+ "details": "EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()"
+ },
+ "deleteCollectionProperties(string[])": {
+ "details": "EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])",
+ "params": {
+ "keys": "Properties keys."
+ }
+ },
+ "deleteCollectionProperty(string)": {
+ "details": "EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)",
+ "params": {
+ "key": "Property key."
+ }
+ },
+ "deleteProperty(uint256,string)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ }
+ },
+ "finishMinting()": {
+ "details": "Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()"
+ },
+ "getApproved(uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)"
+ },
+ "hasCollectionPendingSponsor()": {
+ "details": "EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "isApprovedForAll(address,address)": {
+ "details": "Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)"
+ },
+ "isOwnerOrAdmin(address)": {
+ "details": "EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)",
+ "params": {
+ "user": "account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))",
+ "params": {
+ "user": "User cross account to verify"
+ },
+ "returns": {
+ "_0": "\"true\" if account is the owner or admin"
+ }
+ },
+ "mint(address)": {
+ "details": "EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)",
+ "params": {
+ "to": "The new owner"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintWithTokenURI(address,string)": {
+ "details": "EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)",
+ "params": {
+ "to": "The new owner",
+ "tokenUri": "Token URI that would be stored in the NFT properties"
+ },
+ "returns": {
+ "_0": "uint256 The id of the newly minted token"
+ }
+ },
+ "mintingFinished()": {
+ "details": "EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()"
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()"
+ },
+ "nextTokenId()": {
+ "details": "EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()"
+ },
+ "ownerOf(uint256)": {
+ "details": "RFTs assigned to zero address are considered invalid, and queries about them do throw. Returns special 0xffffffffffffffffffffffffffffffffffffffff address for the tokens that are partially owned.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)",
+ "params": {
+ "tokenId": "The identifier for an RFT"
+ },
+ "returns": {
+ "_0": "The address of the owner of the RFT"
+ }
+ },
+ "property(uint256,string)": {
+ "details": "Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token."
+ },
+ "returns": {
+ "_0": "Property value bytes"
+ }
+ },
+ "removeCollectionAdmin(address)": {
+ "details": "EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)",
+ "params": {
+ "admin": "Address of the removed administrator."
+ }
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))",
+ "params": {
+ "admin": "Cross account administrator address."
+ }
+ },
+ "removeCollectionSponsor()": {
+ "details": "EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()"
+ },
+ "removeFromCollectionAllowList(address)": {
+ "details": "EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)",
+ "params": {
+ "user": "Address of a removed user."
+ }
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "details": "EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))",
+ "params": {
+ "user": "User cross account address."
+ }
+ },
+ "safeTransferFrom(address,address,uint256)": {
+ "details": "Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "safeTransferFromWithData(address,address,uint256,bytes)": {
+ "details": "Not implementedEVM selector for this function is: 0x60a11672, or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)"
+ },
+ "setApprovalForAll(address,bool)": {
+ "details": "Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "setCollectionAccess(uint8)": {
+ "details": "EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)",
+ "params": {
+ "mode": "Access mode \t0 for Normal \t1 for AllowList"
+ }
+ },
+ "setCollectionLimit(string,bool)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"ownerCanTransfer\", \t\"ownerCanDestroy\", \t\"transfersEnabled\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionLimit(string,uint32)": {
+ "details": "Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)",
+ "params": {
+ "limit": "Name of the limit. Valid names: \t\"accountTokenOwnershipLimit\", \t\"sponsoredDataSize\", \t\"sponsoredDataRateLimit\", \t\"tokenLimit\", \t\"sponsorTransferTimeout\", \t\"sponsorApproveTimeout\"",
+ "value": "Value of the limit."
+ }
+ },
+ "setCollectionMintMode(bool)": {
+ "details": "EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)",
+ "params": {
+ "mode": "Enable if \"true\"."
+ }
+ },
+ "setCollectionNesting(bool)": {
+ "details": "EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)",
+ "params": {
+ "enable": "If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionNesting(bool,address[])": {
+ "details": "EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])",
+ "params": {
+ "collections": "Addresses of collections that will be available for nesting.",
+ "enable": "If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'"
+ }
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "details": "EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])",
+ "params": {
+ "properties": "Vector of properties key/value pair."
+ }
+ },
+ "setCollectionProperty(string,bytes)": {
+ "details": "EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "value": "Propery value."
+ }
+ },
+ "setCollectionSponsor(address)": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)",
+ "params": {
+ "sponsor": "Address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "details": "In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))",
+ "params": {
+ "sponsor": "Cross account address of the sponsor from whose account funds will be debited for operations with the contract."
+ }
+ },
+ "setOwnerCross((address,uint256))": {
+ "details": "Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))",
+ "params": {
+ "newOwner": "new owner cross account"
+ }
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])",
+ "params": {
+ "properties": "settable properties",
+ "tokenId": "ID of the token."
+ }
+ },
+ "setProperty(uint256,string,bytes)": {
+ "details": "Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)",
+ "params": {
+ "key": "Property key.",
+ "tokenId": "ID of the token.",
+ "value": "Property value."
+ }
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "details": "Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)",
+ "params": {
+ "collectionAdmin": "Permission to mutate property by collection admin if property is mutable.",
+ "isMutable": "Permission to mutate property.",
+ "key": "Property key.",
+ "tokenOwner": "Permission to mutate property by token owner if property is mutable."
+ }
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()"
+ },
+ "tokenByIndex(uint256)": {
+ "details": "EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)",
+ "params": {
+ "index": "A counter less than `totalSupply()`"
+ },
+ "returns": {
+ "_0": "The token identifier for the `index`th NFT, (sort order not specified)"
+ }
+ },
+ "tokenContractAddress(uint256)": {
+ "details": "EVM selector for this function is: 0xab76fac6, or in textual repr: tokenContractAddress(uint256)",
+ "params": {
+ "token": "ID of the token"
+ }
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "details": "EVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "tokenURI(uint256)": {
+ "details": "If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \"\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)",
+ "returns": {
+ "_0": "token's const_metadata"
+ }
+ },
+ "totalSupply()": {
+ "details": "EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()",
+ "returns": {
+ "_0": "A count of valid RFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address"
+ }
+ },
+ "transfer(address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "from": "The current owner of the NFT",
+ "to": "The new owner",
+ "tokenId": "The NFT to transfer"
+ }
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "details": "Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)",
+ "params": {
+ "to": "The new owner",
+ "tokenId": "The RFT to transfer"
+ }
+ },
+ "uniqueCollectionType()": {
+ "details": "EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()",
+ "returns": {
+ "_0": "`Fungible` or `NFT` or `ReFungible`"
+ }
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "addCollectionAdmin(address)": "92e462c7",
+ "addCollectionAdminCross((address,uint256))": "859aa7d6",
+ "addToCollectionAllowList(address)": "67844fe6",
+ "addToCollectionAllowListCross((address,uint256))": "a0184a3a",
+ "allowed(address)": "d63a8e11",
+ "approve(address,uint256)": "095ea7b3",
+ "balanceOf(address)": "70a08231",
+ "burn(uint256)": "42966c68",
+ "burnFrom(address,uint256)": "79cc6790",
+ "burnFromCross((address,uint256),uint256)": "bb2f5a58",
+ "changeCollectionOwner(address)": "4f53e226",
+ "collectionAdmins()": "5813216b",
+ "collectionOwner()": "df727d3b",
+ "collectionProperties(string[])": "285fb8e6",
+ "collectionProperty(string)": "cf24fd6d",
+ "collectionSponsor()": "6ec0a9f1",
+ "confirmCollectionSponsorship()": "3c50e97a",
+ "contractAddress()": "f6b4dfb4",
+ "deleteCollectionProperties(string[])": "ee206ee3",
+ "deleteCollectionProperty(string)": "7b7debce",
+ "deleteProperty(uint256,string)": "066111d1",
+ "finishMinting()": "7d64bcb4",
+ "getApproved(uint256)": "081812fc",
+ "hasCollectionPendingSponsor()": "058ac185",
+ "isApprovedForAll(address,address)": "e985e9c5",
+ "isOwnerOrAdmin(address)": "9811b0c7",
+ "isOwnerOrAdminCross((address,uint256))": "3e75a905",
+ "mint(address)": "6a627842",
+ "mintWithTokenURI(address,string)": "45c17782",
+ "mintingFinished()": "05d2035b",
+ "name()": "06fdde03",
+ "nextTokenId()": "75794a3c",
+ "ownerOf(uint256)": "6352211e",
+ "property(uint256,string)": "7228c327",
+ "removeCollectionAdmin(address)": "fafd7b42",
+ "removeCollectionAdminCross((address,uint256))": "6c0cd173",
+ "removeCollectionSponsor()": "6e0326a3",
+ "removeFromCollectionAllowList(address)": "85c51acb",
+ "removeFromCollectionAllowListCross((address,uint256))": "09ba452a",
+ "safeTransferFrom(address,address,uint256)": "42842e0e",
+ "safeTransferFromWithData(address,address,uint256,bytes)": "60a11672",
+ "setApprovalForAll(address,bool)": "a22cb465",
+ "setCollectionAccess(uint8)": "41835d4c",
+ "setCollectionLimit(string,bool)": "993b7fba",
+ "setCollectionLimit(string,uint32)": "6a3841db",
+ "setCollectionMintMode(bool)": "00018e84",
+ "setCollectionNesting(bool)": "112d4586",
+ "setCollectionNesting(bool,address[])": "64872396",
+ "setCollectionProperties((string,bytes)[])": "50b26b2a",
+ "setCollectionProperty(string,bytes)": "2f073f66",
+ "setCollectionSponsor(address)": "7623402e",
+ "setCollectionSponsorCross((address,uint256))": "84a1d5a8",
+ "setOwnerCross((address,uint256))": "e5c9913f",
+ "setProperties(uint256,(string,bytes)[])": "14ed3a6e",
+ "setProperty(uint256,string,bytes)": "1752d67b",
+ "setTokenPropertyPermission(string,bool,bool,bool)": "222d97fa",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "tokenByIndex(uint256)": "4f6ccce7",
+ "tokenContractAddress(uint256)": "ab76fac6",
+ "tokenOfOwnerByIndex(address,uint256)": "2f745c59",
+ "tokenURI(uint256)": "c87b56dd",
+ "totalSupply()": "18160ddd",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFrom(address,address,uint256)": "23b872dd",
+ "transferFromCross((address,uint256),(address,uint256),uint256)": "d5cf430b",
+ "uniqueCollectionType()": "d34b55b8"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"MintingFinished\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"addCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newAdmin\",\"type\":\"tuple\"}],\"name\":\"addCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"addToCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"addToCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"allowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burnFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"changeCollectionOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionAdmins\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionOwner\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"collectionProperties\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"collectionProperty\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collectionSponsor\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"field_0\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"field_1\",\"type\":\"uint256\"}],\"internalType\":\"struct Tuple23\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"confirmCollectionSponsorship\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"keys\",\"type\":\"string[]\"}],\"name\":\"deleteCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"deleteProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finishMinting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hasCollectionPendingSponsor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"isOwnerOrAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"isOwnerOrAdminCross\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"tokenUri\",\"type\":\"string\"}],\"name\":\"mintWithTokenURI\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintingFinished\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"property\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"}],\"name\":\"removeCollectionAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"admin\",\"type\":\"tuple\"}],\"name\":\"removeCollectionAdminCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"removeCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"removeFromCollectionAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"user\",\"type\":\"tuple\"}],\"name\":\"removeFromCollectionAllowListCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFromWithData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"mode\",\"type\":\"uint8\"}],\"name\":\"setCollectionAccess\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"value\",\"type\":\"uint32\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"limit\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"setCollectionLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"mode\",\"type\":\"bool\"}],\"name\":\"setCollectionMintMode\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"enable\",\"type\":\"bool\"},{\"internalType\":\"address[]\",\"name\":\"collections\",\"type\":\"address[]\"}],\"name\":\"setCollectionNesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setCollectionProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setCollectionProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"}],\"name\":\"setCollectionSponsor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"sponsor\",\"type\":\"tuple\"}],\"name\":\"setCollectionSponsorCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"newOwner\",\"type\":\"tuple\"}],\"name\":\"setOwnerCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple20[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"setProperties\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"setProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"isMutable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"collectionAdmin\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"tokenOwner\",\"type\":\"bool\"}],\"name\":\"setTokenPropertyPermission\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"token\",\"type\":\"uint256\"}],\"name\":\"tokenContractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"from\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"eth\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sub\",\"type\":\"uint256\"}],\"internalType\":\"struct EthCrossAccount\",\"name\":\"to\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFromCross\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"uniqueCollectionType\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x92e462c7, or in textual repr: addCollectionAdmin(address)\",\"params\":{\"newAdmin\":\"Address of the added administrator.\"}},\"addCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x859aa7d6, or in textual repr: addCollectionAdminCross((address,uint256))\",\"params\":{\"newAdmin\":\"Cross account administrator address.\"}},\"addToCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x67844fe6, or in textual repr: addToCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a trusted user.\"}},\"addToCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0xa0184a3a, or in textual repr: addToCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"allowed(address)\":{\"details\":\"EVM selector for this function is: 0xd63a8e11, or in textual repr: allowed(address)\",\"params\":{\"user\":\"User address to check.\"}},\"approve(address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\"},\"balanceOf(address)\":{\"details\":\"RFTs assigned to the zero address are considered invalid, and this function throws for queries about the zero address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"An address for whom to query the balance\"},\"returns\":{\"_0\":\"The number of RFTs owned by `owner`, possibly zero\"}},\"burn(uint256)\":{\"details\":\"Throws unless `msg.sender` is the current RFT owner, or an authorized operator of the current owner.EVM selector for this function is: 0x42966c68, or in textual repr: burn(uint256)\",\"params\":{\"tokenId\":\"The RFT to approve\"}},\"burnFrom(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"from\":\"The current owner of the RFT\",\"tokenId\":\"The RFT to transfer\"}},\"burnFromCross((address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xbb2f5a58, or in textual repr: burnFromCross((address,uint256),uint256)\",\"params\":{\"from\":\"The current owner of the RFT\",\"tokenId\":\"The RFT to transfer\"}},\"changeCollectionOwner(address)\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0x4f53e226, or in textual repr: changeCollectionOwner(address)\",\"params\":{\"newOwner\":\"new owner account\"}},\"collectionAdmins()\":{\"details\":\"EVM selector for this function is: 0x5813216b, or in textual repr: collectionAdmins()\",\"returns\":{\"_0\":\"Vector of tuples with admins address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionOwner()\":{\"details\":\"EVM selector for this function is: 0xdf727d3b, or in textual repr: collectionOwner()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If address is canonical then substrate mirror is zero and vice versa.\"}},\"collectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0x285fb8e6, or in textual repr: collectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys. Empty keys for all propertyes.\"},\"returns\":{\"_0\":\"Vector of properties key/value pairs.\"}},\"collectionProperty(string)\":{\"details\":\"Throws error if key not found.EVM selector for this function is: 0xcf24fd6d, or in textual repr: collectionProperty(string)\",\"params\":{\"key\":\"Property key.\"},\"returns\":{\"_0\":\"bytes The property corresponding to the key.\"}},\"collectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6ec0a9f1, or in textual repr: collectionSponsor()\",\"returns\":{\"_0\":\"Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \\\"Contract has no sponsor\\\" throw.\"}},\"confirmCollectionSponsorship()\":{\"details\":\"After setting the sponsor for the collection, it must be confirmed with this function.EVM selector for this function is: 0x3c50e97a, or in textual repr: confirmCollectionSponsorship()\"},\"contractAddress()\":{\"details\":\"EVM selector for this function is: 0xf6b4dfb4, or in textual repr: contractAddress()\"},\"deleteCollectionProperties(string[])\":{\"details\":\"EVM selector for this function is: 0xee206ee3, or in textual repr: deleteCollectionProperties(string[])\",\"params\":{\"keys\":\"Properties keys.\"}},\"deleteCollectionProperty(string)\":{\"details\":\"EVM selector for this function is: 0x7b7debce, or in textual repr: deleteCollectionProperty(string)\",\"params\":{\"key\":\"Property key.\"}},\"deleteProperty(uint256,string)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x066111d1, or in textual repr: deleteProperty(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"}},\"finishMinting()\":{\"details\":\"Not implementedEVM selector for this function is: 0x7d64bcb4, or in textual repr: finishMinting()\"},\"getApproved(uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x081812fc, or in textual repr: getApproved(uint256)\"},\"hasCollectionPendingSponsor()\":{\"details\":\"EVM selector for this function is: 0x058ac185, or in textual repr: hasCollectionPendingSponsor()\"},\"isApprovedForAll(address,address)\":{\"details\":\"Not implementedEVM selector for this function is: 0xe985e9c5, or in textual repr: isApprovedForAll(address,address)\"},\"isOwnerOrAdmin(address)\":{\"details\":\"EVM selector for this function is: 0x9811b0c7, or in textual repr: isOwnerOrAdmin(address)\",\"params\":{\"user\":\"account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"isOwnerOrAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x3e75a905, or in textual repr: isOwnerOrAdminCross((address,uint256))\",\"params\":{\"user\":\"User cross account to verify\"},\"returns\":{\"_0\":\"\\\"true\\\" if account is the owner or admin\"}},\"mint(address)\":{\"details\":\"EVM selector for this function is: 0x6a627842, or in textual repr: mint(address)\",\"params\":{\"to\":\"The new owner\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintWithTokenURI(address,string)\":{\"details\":\"EVM selector for this function is: 0x45c17782, or in textual repr: mintWithTokenURI(address,string)\",\"params\":{\"to\":\"The new owner\",\"tokenUri\":\"Token URI that would be stored in the NFT properties\"},\"returns\":{\"_0\":\"uint256 The id of the newly minted token\"}},\"mintingFinished()\":{\"details\":\"EVM selector for this function is: 0x05d2035b, or in textual repr: mintingFinished()\"},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\"},\"nextTokenId()\":{\"details\":\"EVM selector for this function is: 0x75794a3c, or in textual repr: nextTokenId()\"},\"ownerOf(uint256)\":{\"details\":\"RFTs assigned to zero address are considered invalid, and queries about them do throw. Returns special 0xffffffffffffffffffffffffffffffffffffffff address for the tokens that are partially owned.EVM selector for this function is: 0x6352211e, or in textual repr: ownerOf(uint256)\",\"params\":{\"tokenId\":\"The identifier for an RFT\"},\"returns\":{\"_0\":\"The address of the owner of the RFT\"}},\"property(uint256,string)\":{\"details\":\"Throws error if key not foundEVM selector for this function is: 0x7228c327, or in textual repr: property(uint256,string)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\"},\"returns\":{\"_0\":\"Property value bytes\"}},\"removeCollectionAdmin(address)\":{\"details\":\"EVM selector for this function is: 0xfafd7b42, or in textual repr: removeCollectionAdmin(address)\",\"params\":{\"admin\":\"Address of the removed administrator.\"}},\"removeCollectionAdminCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x6c0cd173, or in textual repr: removeCollectionAdminCross((address,uint256))\",\"params\":{\"admin\":\"Cross account administrator address.\"}},\"removeCollectionSponsor()\":{\"details\":\"EVM selector for this function is: 0x6e0326a3, or in textual repr: removeCollectionSponsor()\"},\"removeFromCollectionAllowList(address)\":{\"details\":\"EVM selector for this function is: 0x85c51acb, or in textual repr: removeFromCollectionAllowList(address)\",\"params\":{\"user\":\"Address of a removed user.\"}},\"removeFromCollectionAllowListCross((address,uint256))\":{\"details\":\"EVM selector for this function is: 0x09ba452a, or in textual repr: removeFromCollectionAllowListCross((address,uint256))\",\"params\":{\"user\":\"User cross account address.\"}},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Not implementedEVM selector for this function is: 0x42842e0e, or in textual repr: safeTransferFrom(address,address,uint256)\"},\"safeTransferFromWithData(address,address,uint256,bytes)\":{\"details\":\"Not implementedEVM selector for this function is: 0x60a11672, or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Not implementedEVM selector for this function is: 0xa22cb465, or in textual repr: setApprovalForAll(address,bool)\"},\"setCollectionAccess(uint8)\":{\"details\":\"EVM selector for this function is: 0x41835d4c, or in textual repr: setCollectionAccess(uint8)\",\"params\":{\"mode\":\"Access mode \\t0 for Normal \\t1 for AllowList\"}},\"setCollectionLimit(string,bool)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x993b7fba, or in textual repr: setCollectionLimit(string,bool)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"ownerCanTransfer\\\", \\t\\\"ownerCanDestroy\\\", \\t\\\"transfersEnabled\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionLimit(string,uint32)\":{\"details\":\"Throws error if limit not found.EVM selector for this function is: 0x6a3841db, or in textual repr: setCollectionLimit(string,uint32)\",\"params\":{\"limit\":\"Name of the limit. Valid names: \\t\\\"accountTokenOwnershipLimit\\\", \\t\\\"sponsoredDataSize\\\", \\t\\\"sponsoredDataRateLimit\\\", \\t\\\"tokenLimit\\\", \\t\\\"sponsorTransferTimeout\\\", \\t\\\"sponsorApproveTimeout\\\"\",\"value\":\"Value of the limit.\"}},\"setCollectionMintMode(bool)\":{\"details\":\"EVM selector for this function is: 0x00018e84, or in textual repr: setCollectionMintMode(bool)\",\"params\":{\"mode\":\"Enable if \\\"true\\\".\"}},\"setCollectionNesting(bool)\":{\"details\":\"EVM selector for this function is: 0x112d4586, or in textual repr: setCollectionNesting(bool)\",\"params\":{\"enable\":\"If \\\"true\\\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\"}},\"setCollectionNesting(bool,address[])\":{\"details\":\"EVM selector for this function is: 0x64872396, or in textual repr: setCollectionNesting(bool,address[])\",\"params\":{\"collections\":\"Addresses of collections that will be available for nesting.\",\"enable\":\"If \\\"true\\\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\"}},\"setCollectionProperties((string,bytes)[])\":{\"details\":\"EVM selector for this function is: 0x50b26b2a, or in textual repr: setCollectionProperties((string,bytes)[])\",\"params\":{\"properties\":\"Vector of properties key/value pair.\"}},\"setCollectionProperty(string,bytes)\":{\"details\":\"EVM selector for this function is: 0x2f073f66, or in textual repr: setCollectionProperty(string,bytes)\",\"params\":{\"key\":\"Property key.\",\"value\":\"Propery value.\"}},\"setCollectionSponsor(address)\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x7623402e, or in textual repr: setCollectionSponsor(address)\",\"params\":{\"sponsor\":\"Address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setCollectionSponsorCross((address,uint256))\":{\"details\":\"In order for sponsorship to work, it must be confirmed on behalf of the sponsor.EVM selector for this function is: 0x84a1d5a8, or in textual repr: setCollectionSponsorCross((address,uint256))\",\"params\":{\"sponsor\":\"Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\"}},\"setOwnerCross((address,uint256))\":{\"details\":\"Owner can be changed only by current ownerEVM selector for this function is: 0xe5c9913f, or in textual repr: setOwnerCross((address,uint256))\",\"params\":{\"newOwner\":\"new owner cross account\"}},\"setProperties(uint256,(string,bytes)[])\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x14ed3a6e, or in textual repr: setProperties(uint256,(string,bytes)[])\",\"params\":{\"properties\":\"settable properties\",\"tokenId\":\"ID of the token.\"}},\"setProperty(uint256,string,bytes)\":{\"details\":\"Throws error if `msg.sender` has no permission to edit the property.EVM selector for this function is: 0x1752d67b, or in textual repr: setProperty(uint256,string,bytes)\",\"params\":{\"key\":\"Property key.\",\"tokenId\":\"ID of the token.\",\"value\":\"Property value.\"}},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"details\":\"Throws error if `msg.sender` is not admin or owner of the collection.EVM selector for this function is: 0x222d97fa, or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)\",\"params\":{\"collectionAdmin\":\"Permission to mutate property by collection admin if property is mutable.\",\"isMutable\":\"Permission to mutate property.\",\"key\":\"Property key.\",\"tokenOwner\":\"Permission to mutate property by token owner if property is mutable.\"}},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\"},\"tokenByIndex(uint256)\":{\"details\":\"EVM selector for this function is: 0x4f6ccce7, or in textual repr: tokenByIndex(uint256)\",\"params\":{\"index\":\"A counter less than `totalSupply()`\"},\"returns\":{\"_0\":\"The token identifier for the `index`th NFT, (sort order not specified)\"}},\"tokenContractAddress(uint256)\":{\"details\":\"EVM selector for this function is: 0xab76fac6, or in textual repr: tokenContractAddress(uint256)\",\"params\":{\"token\":\"ID of the token\"}},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"EVM selector for this function is: 0x2f745c59, or in textual repr: tokenOfOwnerByIndex(address,uint256)\"},\"tokenURI(uint256)\":{\"details\":\"If the token has a `url` property and it is not empty, it is returned. 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`. If the collection property `baseURI` is empty or absent, return \\\"\\\" (empty string) otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).EVM selector for this function is: 0xc87b56dd, or in textual repr: tokenURI(uint256)\",\"returns\":{\"_0\":\"token's const_metadata\"}},\"totalSupply()\":{\"details\":\"EVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\",\"returns\":{\"_0\":\"A count of valid RFTs tracked by this contract, where each one of them has an assigned and queryable owner not equal to the zero address\"}},\"transfer(address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The RFT to transfer\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner or an authorized operator for this RFT. Throws if `from` is not the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"from\":\"The current owner of the NFT\",\"to\":\"The new owner\",\"tokenId\":\"The NFT to transfer\"}},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"details\":\"Throws unless `msg.sender` is the current owner. Throws if `to` is the zero address. Throws if `tokenId` is not a valid RFT. Throws if RFT pieces have multiple owners.EVM selector for this function is: 0xd5cf430b, or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)\",\"params\":{\"to\":\"The new owner\",\"tokenId\":\"The RFT to transfer\"}},\"uniqueCollectionType()\":{\"details\":\"EVM selector for this function is: 0xd34b55b8, or in textual repr: uniqueCollectionType()\",\"returns\":{\"_0\":\"`Fungible` or `NFT` or `ReFungible`\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addCollectionAdmin(address)\":{\"notice\":\"Add collection admin.\"},\"addCollectionAdminCross((address,uint256))\":{\"notice\":\"Add collection admin.\"},\"addToCollectionAllowList(address)\":{\"notice\":\"Add the user to the allowed list.\"},\"addToCollectionAllowListCross((address,uint256))\":{\"notice\":\"Add user to allowed list.\"},\"allowed(address)\":{\"notice\":\"Checks that user allowed to operate with collection.\"},\"balanceOf(address)\":{\"notice\":\"Count all RFTs assigned to an owner\"},\"burn(uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFrom(address,uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"burnFromCross((address,uint256),uint256)\":{\"notice\":\"Burns a specific ERC721 token.\"},\"changeCollectionOwner(address)\":{\"notice\":\"Changes collection owner to another account\"},\"collectionAdmins()\":{\"notice\":\"Get collection administrators\"},\"collectionOwner()\":{\"notice\":\"Get collection owner.\"},\"collectionProperties(string[])\":{\"notice\":\"Get collection properties.\"},\"collectionProperty(string)\":{\"notice\":\"Get collection property.\"},\"collectionSponsor()\":{\"notice\":\"Get current sponsor.\"},\"confirmCollectionSponsorship()\":{\"notice\":\"Collection sponsorship confirmation.\"},\"contractAddress()\":{\"notice\":\"Get contract address.\"},\"deleteCollectionProperties(string[])\":{\"notice\":\"Delete collection properties.\"},\"deleteCollectionProperty(string)\":{\"notice\":\"Delete collection property.\"},\"deleteProperty(uint256,string)\":{\"notice\":\"Delete token property value.\"},\"hasCollectionPendingSponsor()\":{\"notice\":\"Whether there is a pending sponsor.\"},\"isOwnerOrAdmin(address)\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"isOwnerOrAdminCross((address,uint256))\":{\"notice\":\"Check that account is the owner or admin of the collection\"},\"mint(address)\":{\"notice\":\"Function to mint token.\"},\"mintWithTokenURI(address,string)\":{\"notice\":\"Function to mint token with the given tokenUri.\"},\"name()\":{\"notice\":\"A descriptive name for a collection of NFTs in this contract\"},\"nextTokenId()\":{\"notice\":\"Returns next free RFT ID.\"},\"ownerOf(uint256)\":{\"notice\":\"Find the owner of an RFT\"},\"property(uint256,string)\":{\"notice\":\"Get token property value.\"},\"removeCollectionAdmin(address)\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionAdminCross((address,uint256))\":{\"notice\":\"Remove collection admin.\"},\"removeCollectionSponsor()\":{\"notice\":\"Remove collection sponsor.\"},\"removeFromCollectionAllowList(address)\":{\"notice\":\"Remove the user from the allowed list.\"},\"removeFromCollectionAllowListCross((address,uint256))\":{\"notice\":\"Remove user from allowed list.\"},\"setCollectionAccess(uint8)\":{\"notice\":\"Set the collection access method.\"},\"setCollectionLimit(string,bool)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionLimit(string,uint32)\":{\"notice\":\"Set limits for the collection.\"},\"setCollectionMintMode(bool)\":{\"notice\":\"Switch permission for minting.\"},\"setCollectionNesting(bool)\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionNesting(bool,address[])\":{\"notice\":\"Toggle accessibility of collection nesting.\"},\"setCollectionProperties((string,bytes)[])\":{\"notice\":\"Set collection properties.\"},\"setCollectionProperty(string,bytes)\":{\"notice\":\"Set collection property.\"},\"setCollectionSponsor(address)\":{\"notice\":\"Set the sponsor of the collection.\"},\"setCollectionSponsorCross((address,uint256))\":{\"notice\":\"Set the sponsor of the collection.\"},\"setOwnerCross((address,uint256))\":{\"notice\":\"Changes collection owner to another account\"},\"setProperties(uint256,(string,bytes)[])\":{\"notice\":\"Set token properties value.\"},\"setProperty(uint256,string,bytes)\":{\"notice\":\"Set token property value.\"},\"setTokenPropertyPermission(string,bool,bool,bool)\":{\"notice\":\"Set permissions for token property.\"},\"symbol()\":{\"notice\":\"An abbreviated name for NFTs in this contract\"},\"tokenByIndex(uint256)\":{\"notice\":\"Enumerate valid RFTs\"},\"tokenContractAddress(uint256)\":{\"notice\":\"Returns EVM address for refungible token\"},\"tokenOfOwnerByIndex(address,uint256)\":{\"notice\":\"Not implemented\"},\"tokenURI(uint256)\":{\"notice\":\"A distinct Uniform Resource Identifier (URI) for a given asset.\"},\"totalSupply()\":{\"notice\":\"Count RFTs tracked by this contract\"},\"transfer(address,uint256)\":{\"notice\":\"Transfer ownership of an RFT\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST\"},\"transferFromCross((address,uint256),(address,uint256),uint256)\":{\"notice\":\"Transfer ownership of an RFT\"},\"uniqueCollectionType()\":{\"notice\":\"Returns collection type\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":\"UniqueRefungible\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {
+ "addCollectionAdmin(address)": {
+ "notice": "Add collection admin."
+ },
+ "addCollectionAdminCross((address,uint256))": {
+ "notice": "Add collection admin."
+ },
+ "addToCollectionAllowList(address)": {
+ "notice": "Add the user to the allowed list."
+ },
+ "addToCollectionAllowListCross((address,uint256))": {
+ "notice": "Add user to allowed list."
+ },
+ "allowed(address)": {
+ "notice": "Checks that user allowed to operate with collection."
+ },
+ "balanceOf(address)": {
+ "notice": "Count all RFTs assigned to an owner"
+ },
+ "burn(uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFrom(address,uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "burnFromCross((address,uint256),uint256)": {
+ "notice": "Burns a specific ERC721 token."
+ },
+ "changeCollectionOwner(address)": {
+ "notice": "Changes collection owner to another account"
+ },
+ "collectionAdmins()": {
+ "notice": "Get collection administrators"
+ },
+ "collectionOwner()": {
+ "notice": "Get collection owner."
+ },
+ "collectionProperties(string[])": {
+ "notice": "Get collection properties."
+ },
+ "collectionProperty(string)": {
+ "notice": "Get collection property."
+ },
+ "collectionSponsor()": {
+ "notice": "Get current sponsor."
+ },
+ "confirmCollectionSponsorship()": {
+ "notice": "Collection sponsorship confirmation."
+ },
+ "contractAddress()": {
+ "notice": "Get contract address."
+ },
+ "deleteCollectionProperties(string[])": {
+ "notice": "Delete collection properties."
+ },
+ "deleteCollectionProperty(string)": {
+ "notice": "Delete collection property."
+ },
+ "deleteProperty(uint256,string)": {
+ "notice": "Delete token property value."
+ },
+ "hasCollectionPendingSponsor()": {
+ "notice": "Whether there is a pending sponsor."
+ },
+ "isOwnerOrAdmin(address)": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "isOwnerOrAdminCross((address,uint256))": {
+ "notice": "Check that account is the owner or admin of the collection"
+ },
+ "mint(address)": {
+ "notice": "Function to mint token."
+ },
+ "mintWithTokenURI(address,string)": {
+ "notice": "Function to mint token with the given tokenUri."
+ },
+ "name()": {
+ "notice": "A descriptive name for a collection of NFTs in this contract"
+ },
+ "nextTokenId()": {
+ "notice": "Returns next free RFT ID."
+ },
+ "ownerOf(uint256)": {
+ "notice": "Find the owner of an RFT"
+ },
+ "property(uint256,string)": {
+ "notice": "Get token property value."
+ },
+ "removeCollectionAdmin(address)": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionAdminCross((address,uint256))": {
+ "notice": "Remove collection admin."
+ },
+ "removeCollectionSponsor()": {
+ "notice": "Remove collection sponsor."
+ },
+ "removeFromCollectionAllowList(address)": {
+ "notice": "Remove the user from the allowed list."
+ },
+ "removeFromCollectionAllowListCross((address,uint256))": {
+ "notice": "Remove user from allowed list."
+ },
+ "setCollectionAccess(uint8)": {
+ "notice": "Set the collection access method."
+ },
+ "setCollectionLimit(string,bool)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionLimit(string,uint32)": {
+ "notice": "Set limits for the collection."
+ },
+ "setCollectionMintMode(bool)": {
+ "notice": "Switch permission for minting."
+ },
+ "setCollectionNesting(bool)": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionNesting(bool,address[])": {
+ "notice": "Toggle accessibility of collection nesting."
+ },
+ "setCollectionProperties((string,bytes)[])": {
+ "notice": "Set collection properties."
+ },
+ "setCollectionProperty(string,bytes)": {
+ "notice": "Set collection property."
+ },
+ "setCollectionSponsor(address)": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setCollectionSponsorCross((address,uint256))": {
+ "notice": "Set the sponsor of the collection."
+ },
+ "setOwnerCross((address,uint256))": {
+ "notice": "Changes collection owner to another account"
+ },
+ "setProperties(uint256,(string,bytes)[])": {
+ "notice": "Set token properties value."
+ },
+ "setProperty(uint256,string,bytes)": {
+ "notice": "Set token property value."
+ },
+ "setTokenPropertyPermission(string,bool,bool,bool)": {
+ "notice": "Set permissions for token property."
+ },
+ "symbol()": {
+ "notice": "An abbreviated name for NFTs in this contract"
+ },
+ "tokenByIndex(uint256)": {
+ "notice": "Enumerate valid RFTs"
+ },
+ "tokenContractAddress(uint256)": {
+ "notice": "Returns EVM address for refungible token"
+ },
+ "tokenOfOwnerByIndex(address,uint256)": {
+ "notice": "Not implemented"
+ },
+ "tokenURI(uint256)": {
+ "notice": "A distinct Uniform Resource Identifier (URI) for a given asset."
+ },
+ "totalSupply()": {
+ "notice": "Count RFTs tracked by this contract"
+ },
+ "transfer(address,uint256)": {
+ "notice": "Transfer ownership of an RFT"
+ },
+ "transferFrom(address,address,uint256)": {
+ "notice": "Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST"
+ },
+ "transferFromCross((address,uint256),(address,uint256),uint256)": {
+ "notice": "Transfer ownership of an RFT"
+ },
+ "uniqueCollectionType()": {
+ "notice": "Returns collection type"
+ }
+ },
+ "version": 1
+ }
+ }
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol": {
+ "Dummy": {
+ "abi": [],
+ "devdoc": {
+ "details": "common stubs holder",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"common stubs holder\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"Dummy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC1633": {
+ "abi": [
+ {
+ "inputs": [],
+ "name": "parentToken",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "parentTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0x5755c3f2",
+ "kind": "dev",
+ "methods": {
+ "parentToken()": {
+ "details": "EVM selector for this function is: 0x80a54001, or in textual repr: parentToken()"
+ },
+ "parentTokenId()": {
+ "details": "EVM selector for this function is: 0xd7f083f3, or in textual repr: parentTokenId()"
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "parentToken()": "80a54001",
+ "parentTokenId()": "d7f083f3",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"parentToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"parentTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0x5755c3f2\",\"kind\":\"dev\",\"methods\":{\"parentToken()\":{\"details\":\"EVM selector for this function is: 0x80a54001, or in textual repr: parentToken()\"},\"parentTokenId()\":{\"details\":\"EVM selector for this function is: 0xd7f083f3, or in textual repr: parentTokenId()\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"ERC1633\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC165": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC20": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ }
+ ],
+ "name": "allowance",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "decimals",
+ "outputs": [
+ {
+ "internalType": "uint8",
+ "name": "",
+ "type": "uint8"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "Implementation of the basic standard token. https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.mdthe ERC-165 identifier for this interface is 0x942e8b22",
+ "kind": "dev",
+ "methods": {
+ "allowance(address,address)": {
+ "details": "Function to check the amount of tokens that an owner allowed to a spender.EVM selector for this function is: 0xdd62ed3e, or in textual repr: allowance(address,address)",
+ "params": {
+ "owner": "address The address which owns the funds.",
+ "spender": "address The address which will spend the funds."
+ },
+ "returns": {
+ "_0": "A uint256 specifying the amount of tokens still available for the spender."
+ }
+ },
+ "approve(address,uint256)": {
+ "details": "Approve the passed address to spend the specified amount of tokens on behalf of `msg.sender`. Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)",
+ "params": {
+ "amount": "The amount of tokens to be spent.",
+ "spender": "The address which will spend the funds."
+ }
+ },
+ "balanceOf(address)": {
+ "details": "Gets the balance of the specified address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "The address to query the balance of."
+ },
+ "returns": {
+ "_0": "An uint256 representing the amount owned by the passed address."
+ }
+ },
+ "decimals()": {
+ "details": "Not supportedEVM selector for this function is: 0x313ce567, or in textual repr: decimals()"
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()",
+ "returns": {
+ "_0": "the name of the token."
+ }
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()",
+ "returns": {
+ "_0": "the symbol of the token."
+ }
+ },
+ "totalSupply()": {
+ "details": "Total number of tokens in existenceEVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()"
+ },
+ "transfer(address,uint256)": {
+ "details": "Transfer token for a specified addressEVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "amount": "The amount to be transferred.",
+ "to": "The address to transfer to."
+ }
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Transfer tokens from one address to anotherEVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "amount": "uint256 the amount of tokens to be transferred",
+ "from": "address The address which you want to send tokens from",
+ "to": "address The address which you want to transfer to"
+ }
+ }
+ },
+ "title": "Standard ERC20 token",
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "allowance(address,address)": "dd62ed3e",
+ "approve(address,uint256)": "095ea7b3",
+ "balanceOf(address)": "70a08231",
+ "decimals()": "313ce567",
+ "name()": "06fdde03",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "totalSupply()": "18160ddd",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFrom(address,address,uint256)": "23b872dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the basic standard token. https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.mdthe ERC-165 identifier for this interface is 0x942e8b22\",\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Function to check the amount of tokens that an owner allowed to a spender.EVM selector for this function is: 0xdd62ed3e, or in textual repr: allowance(address,address)\",\"params\":{\"owner\":\"address The address which owns the funds.\",\"spender\":\"address The address which will spend the funds.\"},\"returns\":{\"_0\":\"A uint256 specifying the amount of tokens still available for the spender.\"}},\"approve(address,uint256)\":{\"details\":\"Approve the passed address to spend the specified amount of tokens on behalf of `msg.sender`. Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\",\"params\":{\"amount\":\"The amount of tokens to be spent.\",\"spender\":\"The address which will spend the funds.\"}},\"balanceOf(address)\":{\"details\":\"Gets the balance of the specified address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"The address to query the balance of.\"},\"returns\":{\"_0\":\"An uint256 representing the amount owned by the passed address.\"}},\"decimals()\":{\"details\":\"Not supportedEVM selector for this function is: 0x313ce567, or in textual repr: decimals()\"},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\",\"returns\":{\"_0\":\"the name of the token.\"}},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\",\"returns\":{\"_0\":\"the symbol of the token.\"}},\"totalSupply()\":{\"details\":\"Total number of tokens in existenceEVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\"},\"transfer(address,uint256)\":{\"details\":\"Transfer token for a specified addressEVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"amount\":\"The amount to be transferred.\",\"to\":\"The address to transfer to.\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfer tokens from one address to anotherEVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"amount\":\"uint256 the amount of tokens to be transferred\",\"from\":\"address The address which you want to send tokens from\",\"to\":\"address The address which you want to transfer to\"}}},\"title\":\"Standard ERC20 token\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"ERC20\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC20Events": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ }
+ ],
+ "devdoc": {
+ "details": "inlined interface",
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {}
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"inlined interface\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"ERC20Events\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "ERC20UniqueExtensions": {
+ "abi": [
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "repartition",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "details": "the ERC-165 identifier for this interface is 0xab8deb37",
+ "kind": "dev",
+ "methods": {
+ "burnFrom(address,uint256)": {
+ "details": "Function that burns an amount of the token of a given account, deducting from the sender's allowance for said account.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "amount": "The amount that will be burnt.",
+ "from": "The account whose tokens will be burnt."
+ }
+ },
+ "repartition(uint256)": {
+ "details": "Function that changes total amount of the tokens. Throws if `msg.sender` doesn't owns all of the tokens.EVM selector for this function is: 0xd2418ca7, or in textual repr: repartition(uint256)",
+ "params": {
+ "amount": "New total amount of the tokens."
+ }
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "burnFrom(address,uint256)": "79cc6790",
+ "repartition(uint256)": "d2418ca7",
+ "supportsInterface(bytes4)": "01ffc9a7"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"repartition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"the ERC-165 identifier for this interface is 0xab8deb37\",\"kind\":\"dev\",\"methods\":{\"burnFrom(address,uint256)\":{\"details\":\"Function that burns an amount of the token of a given account, deducting from the sender's allowance for said account.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"amount\":\"The amount that will be burnt.\",\"from\":\"The account whose tokens will be burnt.\"}},\"repartition(uint256)\":{\"details\":\"Function that changes total amount of the tokens. Throws if `msg.sender` doesn't owns all of the tokens.EVM selector for this function is: 0xd2418ca7, or in textual repr: repartition(uint256)\",\"params\":{\"amount\":\"New total amount of the tokens.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"ERC20UniqueExtensions\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ },
+ "UniqueRefungibleToken": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Approval",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "value",
+ "type": "uint256"
+ }
+ ],
+ "name": "Transfer",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ }
+ ],
+ "name": "allowance",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "spender",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "approve",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "owner",
+ "type": "address"
+ }
+ ],
+ "name": "balanceOf",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "burnFrom",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "decimals",
+ "outputs": [
+ {
+ "internalType": "uint8",
+ "name": "",
+ "type": "uint8"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "name",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "parentToken",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "parentTokenId",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "repartition",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceID",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "symbol",
+ "outputs": [
+ {
+ "internalType": "string",
+ "name": "",
+ "type": "string"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalSupply",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "transfer",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "from",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "to",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "transferFrom",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "kind": "dev",
+ "methods": {
+ "allowance(address,address)": {
+ "details": "Function to check the amount of tokens that an owner allowed to a spender.EVM selector for this function is: 0xdd62ed3e, or in textual repr: allowance(address,address)",
+ "params": {
+ "owner": "address The address which owns the funds.",
+ "spender": "address The address which will spend the funds."
+ },
+ "returns": {
+ "_0": "A uint256 specifying the amount of tokens still available for the spender."
+ }
+ },
+ "approve(address,uint256)": {
+ "details": "Approve the passed address to spend the specified amount of tokens on behalf of `msg.sender`. Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)",
+ "params": {
+ "amount": "The amount of tokens to be spent.",
+ "spender": "The address which will spend the funds."
+ }
+ },
+ "balanceOf(address)": {
+ "details": "Gets the balance of the specified address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)",
+ "params": {
+ "owner": "The address to query the balance of."
+ },
+ "returns": {
+ "_0": "An uint256 representing the amount owned by the passed address."
+ }
+ },
+ "burnFrom(address,uint256)": {
+ "details": "Function that burns an amount of the token of a given account, deducting from the sender's allowance for said account.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)",
+ "params": {
+ "amount": "The amount that will be burnt.",
+ "from": "The account whose tokens will be burnt."
+ }
+ },
+ "decimals()": {
+ "details": "Not supportedEVM selector for this function is: 0x313ce567, or in textual repr: decimals()"
+ },
+ "name()": {
+ "details": "EVM selector for this function is: 0x06fdde03, or in textual repr: name()",
+ "returns": {
+ "_0": "the name of the token."
+ }
+ },
+ "parentToken()": {
+ "details": "EVM selector for this function is: 0x80a54001, or in textual repr: parentToken()"
+ },
+ "parentTokenId()": {
+ "details": "EVM selector for this function is: 0xd7f083f3, or in textual repr: parentTokenId()"
+ },
+ "repartition(uint256)": {
+ "details": "Function that changes total amount of the tokens. Throws if `msg.sender` doesn't owns all of the tokens.EVM selector for this function is: 0xd2418ca7, or in textual repr: repartition(uint256)",
+ "params": {
+ "amount": "New total amount of the tokens."
+ }
+ },
+ "symbol()": {
+ "details": "EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()",
+ "returns": {
+ "_0": "the symbol of the token."
+ }
+ },
+ "totalSupply()": {
+ "details": "Total number of tokens in existenceEVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()"
+ },
+ "transfer(address,uint256)": {
+ "details": "Transfer token for a specified addressEVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)",
+ "params": {
+ "amount": "The amount to be transferred.",
+ "to": "The address to transfer to."
+ }
+ },
+ "transferFrom(address,address,uint256)": {
+ "details": "Transfer tokens from one address to anotherEVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)",
+ "params": {
+ "amount": "uint256 the amount of tokens to be transferred",
+ "from": "address The address which you want to send tokens from",
+ "to": "address The address which you want to transfer to"
+ }
+ }
+ },
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "deployedBytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "",
+ "opcodes": "",
+ "sourceMap": ""
+ },
+ "gasEstimates": null,
+ "methodIdentifiers": {
+ "allowance(address,address)": "dd62ed3e",
+ "approve(address,uint256)": "095ea7b3",
+ "balanceOf(address)": "70a08231",
+ "burnFrom(address,uint256)": "79cc6790",
+ "decimals()": "313ce567",
+ "name()": "06fdde03",
+ "parentToken()": "80a54001",
+ "parentTokenId()": "d7f083f3",
+ "repartition(uint256)": "d2418ca7",
+ "supportsInterface(bytes4)": "01ffc9a7",
+ "symbol()": "95d89b41",
+ "totalSupply()": "18160ddd",
+ "transfer(address,uint256)": "a9059cbb",
+ "transferFrom(address,address,uint256)": "23b872dd"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"parentToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"parentTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"repartition\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Function to check the amount of tokens that an owner allowed to a spender.EVM selector for this function is: 0xdd62ed3e, or in textual repr: allowance(address,address)\",\"params\":{\"owner\":\"address The address which owns the funds.\",\"spender\":\"address The address which will spend the funds.\"},\"returns\":{\"_0\":\"A uint256 specifying the amount of tokens still available for the spender.\"}},\"approve(address,uint256)\":{\"details\":\"Approve the passed address to spend the specified amount of tokens on behalf of `msg.sender`. Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729EVM selector for this function is: 0x095ea7b3, or in textual repr: approve(address,uint256)\",\"params\":{\"amount\":\"The amount of tokens to be spent.\",\"spender\":\"The address which will spend the funds.\"}},\"balanceOf(address)\":{\"details\":\"Gets the balance of the specified address.EVM selector for this function is: 0x70a08231, or in textual repr: balanceOf(address)\",\"params\":{\"owner\":\"The address to query the balance of.\"},\"returns\":{\"_0\":\"An uint256 representing the amount owned by the passed address.\"}},\"burnFrom(address,uint256)\":{\"details\":\"Function that burns an amount of the token of a given account, deducting from the sender's allowance for said account.EVM selector for this function is: 0x79cc6790, or in textual repr: burnFrom(address,uint256)\",\"params\":{\"amount\":\"The amount that will be burnt.\",\"from\":\"The account whose tokens will be burnt.\"}},\"decimals()\":{\"details\":\"Not supportedEVM selector for this function is: 0x313ce567, or in textual repr: decimals()\"},\"name()\":{\"details\":\"EVM selector for this function is: 0x06fdde03, or in textual repr: name()\",\"returns\":{\"_0\":\"the name of the token.\"}},\"parentToken()\":{\"details\":\"EVM selector for this function is: 0x80a54001, or in textual repr: parentToken()\"},\"parentTokenId()\":{\"details\":\"EVM selector for this function is: 0xd7f083f3, or in textual repr: parentTokenId()\"},\"repartition(uint256)\":{\"details\":\"Function that changes total amount of the tokens. Throws if `msg.sender` doesn't owns all of the tokens.EVM selector for this function is: 0xd2418ca7, or in textual repr: repartition(uint256)\",\"params\":{\"amount\":\"New total amount of the tokens.\"}},\"symbol()\":{\"details\":\"EVM selector for this function is: 0x95d89b41, or in textual repr: symbol()\",\"returns\":{\"_0\":\"the symbol of the token.\"}},\"totalSupply()\":{\"details\":\"Total number of tokens in existenceEVM selector for this function is: 0x18160ddd, or in textual repr: totalSupply()\"},\"transfer(address,uint256)\":{\"details\":\"Transfer token for a specified addressEVM selector for this function is: 0xa9059cbb, or in textual repr: transfer(address,uint256)\",\"params\":{\"amount\":\"The amount to be transferred.\",\"to\":\"The address to transfer to.\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfer tokens from one address to anotherEVM selector for this function is: 0x23b872dd, or in textual repr: transferFrom(address,address,uint256)\",\"params\":{\"amount\":\"uint256 the amount of tokens to be transferred\",\"from\":\"address The address which you want to send tokens from\",\"to\":\"address The address which you want to transfer to\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":\"UniqueRefungibleToken\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ }
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol": {
+ "EvmToSubstrate": {
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_toEth",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_toSub",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "MintToSub",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "field_0",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "field_1",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Tuple21[]",
+ "name": "_properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "mintToSubstrateBulkProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Property[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "devdoc": {
+ "events": {
+ "MintToSub(address,uint256,address,uint256)": {
+ "details": "This emits when a mint to a substrate address has been made."
+ }
+ },
+ "kind": "dev",
+ "methods": {},
+ "version": 1
+ },
+ "evm": {
+ "bytecode": {
+ "functionDebugData": {},
+ "generatedSources": [],
+ "linkReferences": {},
+ "object": "608060405234801561001057600080fd5b506111d4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633a0dbb1a14610046578063440dff9d1461005b5780637a8d97861461006e575b600080fd5b610059610054366004610d6f565b610081565b005b610059610069366004610d6f565b610472565b61005961007c366004610dc9565b6109fb565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ed9190610df3565b6101125760405162461bcd60e51b815260040161010990610e1c565b60405180910390fd5b82806101555760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c29190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201156104165760408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b81523060048201528a906001600160a01b03821690636a627842906024016020604051808303816000875af11580156102a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c69190610f4c565b604051630a769d3760e11b81529092506001600160a01b038216906314ed3a6e906102f99085908d908d90600401610fd4565b600060405180830381600087803b15801561031357600080fd5b505af1158015610327573d6000803e3d6000fd5b5050604080518082018252308152600060208083018290528351808501855291825281018f9052915163d5cf430b60e01b81526001600160a01b038616945063d5cf430b935061037c92908790600401611088565b600060405180830381600087803b15801561039657600080fd5b505af11580156103aa573d6000803e3d6000fd5b5050505050610416565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b6064820152608401610109565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de9190610df3565b6104fa5760405162461bcd60e51b815260040161010990610e1c565b828061053d5760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610582573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105aa9190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016108065760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610642573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106669190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c85818110610701576107016110c1565b905060200281019061071391906110d7565b61071d90806110f7565b8e8e8781811061072f5761072f6110c1565b905060200281019061074191906110d7565b61074f9060208101906110f7565b6040518663ffffffff1660e01b815260040161076f95949392919061113e565b600060405180830381600087803b15801561078957600080fd5b505af115801561079d573d6000803e3d6000fd5b50505050806107ab90611177565b90506106d7565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b9261037c929091908790600401611088565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b45760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af9190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c8581811061094a5761094a6110c1565b905060200281019061095c91906110d7565b61096690806110f7565b8e8e87818110610978576109786110c1565b905060200281019061098a91906110d7565b6109989060208101906110f7565b6040518663ffffffff1660e01b81526004016109b895949392919061113e565b600060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b50505050806109f490611177565b9050610920565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190610df3565b610a835760405162461bcd60e51b815260040161010990610e1c565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610ac8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610af09190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201610c3e576040516335313c2160e11b815230600482015287906001600160a01b03821690636a627842906024015b6020604051808303816000875af1158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190610f4c565b604080518082018252308152600060208083018290528351808501855291825281018b9052915163d5cf430b60e01b81529294506001600160a01b0384169263d5cf430b92610c0692918790600401611088565b600060405180830381600087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b5050505050610cae565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b815230600482015287906001600160a01b03821690636a62784290602401610b6f565b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610d1e57600080fd5b919050565b60008083601f840112610d3557600080fd5b50813567ffffffffffffffff811115610d4d57600080fd5b6020830191508360208260051b8501011115610d6857600080fd5b9250929050565b60008060008060608587031215610d8557600080fd5b610d8e85610d07565b935060208501359250604085013567ffffffffffffffff811115610db157600080fd5b610dbd87828801610d23565b95989497509550505050565b60008060408385031215610ddc57600080fd5b610de583610d07565b946020939093013593505050565b600060208284031215610e0557600080fd5b81518015158114610e1557600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e9557600080fd5b825167ffffffffffffffff80821115610ead57600080fd5b818501915085601f830112610ec157600080fd5b815181811115610ed357610ed3610e6c565b604051601f8201601f19908116603f01168101908382118183101715610efb57610efb610e6c565b816040528281528886848701011115610f1357600080fd5b600093505b82841015610f355784840186015181850187015292850192610f18565b600086848301015280965050505050505092915050565b600060208284031215610f5e57600080fd5b5051919050565b6000808335601e19843603018112610f7c57600080fd5b830160208101925035905067ffffffffffffffff811115610f9c57600080fd5b803603821315610d6857600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006040808301868452602082818601528186835260608601905060608760051b8701019250876000805b8981101561107857888603605f190184528235368c9003603e19018112611024578283fd5b8b016110308180610f65565b8989526110408a8a018284610fab565b91505061104f87830183610f65565b9250888203888a0152611063828483610fab565b98505050938501935091840191600101610fff565b50939a9950505050505050505050565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a00190565b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126110ed57600080fd5b9190910192915050565b6000808335601e1984360301811261110e57600080fd5b83018035915067ffffffffffffffff82111561112957600080fd5b602001915036819003821315610d6857600080fd5b858152606060208201526000611158606083018688610fab565b828103604084015261116b818587610fab565b98975050505050505050565b60006001820161119757634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212206fee43cab49543809f191e238525b8a47306c665c42f86e318153d2b9e9d1de064736f6c63430008110033",
+ "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x11D4 DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x3A0DBB1A EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x440DFF9D EQ PUSH2 0x5B JUMPI DUP1 PUSH4 0x7A8D9786 EQ PUSH2 0x6E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0x54 CALLDATASIZE PUSH1 0x4 PUSH2 0xD6F JUMP JUMPDEST PUSH2 0x81 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x59 PUSH2 0x69 CALLDATASIZE PUSH1 0x4 PUSH2 0xD6F JUMP JUMPDEST PUSH2 0x472 JUMP JUMPDEST PUSH2 0x59 PUSH2 0x7C CALLDATASIZE PUSH1 0x4 PUSH2 0xDC9 JUMP JUMPDEST PUSH2 0x9FB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP5 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xED SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0x112 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP1 PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x12 PUSH1 0x24 DUP3 ADD MSTORE PUSH18 0x50726F70657269657320697320656D707479 PUSH1 0x70 SHL PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x0 DUP8 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x19A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x1C2 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD ISZERO PUSH2 0x416 JUMPI PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP11 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2A2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2C6 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xA769D37 PUSH1 0xE1 SHL DUP2 MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x14ED3A6E SWAP1 PUSH2 0x2F9 SWAP1 DUP6 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xFD4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x313 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x327 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP16 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND SWAP5 POP PUSH4 0xD5CF430B SWAP4 POP PUSH2 0x37C SWAP3 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x396 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3AA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP PUSH2 0x416 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x31 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x57726F6E6720636F6C6C656374696F6E20747970652E20576F726B73206F6E6C PUSH1 0x44 DUP3 ADD MSTORE PUSH17 0x1E481DDA5D1A08139195081BDC88149195 PUSH1 0x7A SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP12 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP13 AND DUP2 DUP4 ADD MSTORE PUSH1 0x60 DUP2 ADD DUP4 SWAP1 MSTORE SWAP1 MLOAD PUSH32 0xFB3433367F20C42151D30B3D2C634726A94C4F9FA7D45120606029741AEB7535 SWAP2 DUP2 SWAP1 SUB PUSH1 0x80 ADD SWAP1 LOG1 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP5 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4BA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4DE SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0x4FA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST DUP3 DUP1 PUSH2 0x53D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x12 PUSH1 0x24 DUP3 ADD MSTORE PUSH18 0x50726F70657269657320697320656D707479 PUSH1 0x70 SHL PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x0 DUP8 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x582 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x5AA SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD PUSH2 0x806 JUMPI PUSH1 0x0 DUP11 SWAP1 POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x75794A3C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x642 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x666 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x6AF JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x6D3 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7B2 JUMPI DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1752D67B DUP5 DUP13 DUP13 DUP6 DUP2 DUP2 LT PUSH2 0x701 JUMPI PUSH2 0x701 PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x713 SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x71D SWAP1 DUP1 PUSH2 0x10F7 JUMP JUMPDEST DUP15 DUP15 DUP8 DUP2 DUP2 LT PUSH2 0x72F JUMPI PUSH2 0x72F PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x741 SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x74F SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x10F7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x76F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x113E JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x79D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH2 0x7AB SWAP1 PUSH2 0x1177 JUMP JUMPDEST SWAP1 POP PUSH2 0x6D7 JUMP JUMPDEST POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP14 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP3 PUSH4 0xD5CF430B SWAP3 PUSH2 0x37C SWAP3 SWAP1 SWAP2 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x0 DUP11 SWAP1 POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x75794A3C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x88B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8AF SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x8F8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x91C SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7B2 JUMPI DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1752D67B DUP5 DUP13 DUP13 DUP6 DUP2 DUP2 LT PUSH2 0x94A JUMPI PUSH2 0x94A PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x95C SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x966 SWAP1 DUP1 PUSH2 0x10F7 JUMP JUMPDEST DUP15 DUP15 DUP8 DUP2 DUP2 LT PUSH2 0x978 JUMPI PUSH2 0x978 PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x98A SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x998 SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x10F7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9B8 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x113E JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x9E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH2 0x9F4 SWAP1 PUSH2 0x1177 JUMP JUMPDEST SWAP1 POP PUSH2 0x920 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP3 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xA43 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA67 SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0xA83 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST PUSH1 0x0 DUP5 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xAC8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xAF0 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD PUSH2 0xC3E JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP8 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB8E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBB2 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP12 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE SWAP3 SWAP5 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP3 PUSH4 0xD5CF430B SWAP3 PUSH2 0xC06 SWAP3 SWAP2 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC20 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xC34 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP PUSH2 0xCAE JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP8 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH2 0xB6F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP9 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND DUP2 DUP4 ADD MSTORE PUSH1 0x60 DUP2 ADD DUP4 SWAP1 MSTORE SWAP1 MLOAD PUSH32 0xFB3433367F20C42151D30B3D2C634726A94C4F9FA7D45120606029741AEB7535 SWAP2 DUP2 SWAP1 SUB PUSH1 0x80 ADD SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xD1E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD4D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 PUSH1 0x5 SHL DUP6 ADD ADD GT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xD85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD8E DUP6 PUSH2 0xD07 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP3 POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xDB1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDBD DUP8 DUP3 DUP9 ADD PUSH2 0xD23 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xDDC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDE5 DUP4 PUSH2 0xD07 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xE05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xE15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x30 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F6E6C7920636F6C6C656374696F6E2061646D696E2F6F776E65722063616E20 PUSH1 0x40 DUP3 ADD MSTORE PUSH16 0x18D85B1B081D1A1A5CC81B595D1A1BD9 PUSH1 0x82 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xE95 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xEAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xEC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0xED3 JUMPI PUSH2 0xED3 PUSH2 0xE6C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0xEFB JUMPI PUSH2 0xEFB PUSH2 0xE6C JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP9 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH2 0xF13 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH2 0xF35 JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH2 0xF18 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xF5E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0xF7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ADD PUSH1 0x20 DUP2 ADD SWAP3 POP CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xF9C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 CALLDATASIZE SUB DUP3 SGT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 DUP3 DUP3 ADD PUSH1 0x20 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP2 ADD PUSH1 0x1F NOT AND SWAP1 SWAP2 ADD ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP1 DUP4 ADD DUP7 DUP5 MSTORE PUSH1 0x20 DUP3 DUP2 DUP7 ADD MSTORE DUP2 DUP7 DUP4 MSTORE PUSH1 0x60 DUP7 ADD SWAP1 POP PUSH1 0x60 DUP8 PUSH1 0x5 SHL DUP8 ADD ADD SWAP3 POP DUP8 PUSH1 0x0 DUP1 JUMPDEST DUP10 DUP2 LT ISZERO PUSH2 0x1078 JUMPI DUP9 DUP7 SUB PUSH1 0x5F NOT ADD DUP5 MSTORE DUP3 CALLDATALOAD CALLDATASIZE DUP13 SWAP1 SUB PUSH1 0x3E NOT ADD DUP2 SLT PUSH2 0x1024 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP12 ADD PUSH2 0x1030 DUP2 DUP1 PUSH2 0xF65 JUMP JUMPDEST DUP10 DUP10 MSTORE PUSH2 0x1040 DUP11 DUP11 ADD DUP3 DUP5 PUSH2 0xFAB JUMP JUMPDEST SWAP2 POP POP PUSH2 0x104F DUP8 DUP4 ADD DUP4 PUSH2 0xF65 JUMP JUMPDEST SWAP3 POP DUP9 DUP3 SUB DUP9 DUP11 ADD MSTORE PUSH2 0x1063 DUP3 DUP5 DUP4 PUSH2 0xFAB JUMP JUMPDEST SWAP9 POP POP POP SWAP4 DUP6 ADD SWAP4 POP SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0xFFF JUMP JUMPDEST POP SWAP4 SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x20 SWAP5 DUP6 ADD MLOAD DUP6 DUP4 ADD MSTORE DUP4 MLOAD AND PUSH1 0x40 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 ADD MLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0xA0 ADD SWAP1 JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0x3E NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x10ED JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x110E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ADD DUP1 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1129 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 ADD SWAP2 POP CALLDATASIZE DUP2 SWAP1 SUB DUP3 SGT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP6 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1158 PUSH1 0x60 DUP4 ADD DUP7 DUP9 PUSH2 0xFAB JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x116B DUP2 DUP6 DUP8 PUSH2 0xFAB JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x1197 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH16 0xEE43CAB49543809F191E238525B8A473 MOD 0xC6 PUSH6 0xC42F86E31815 RETURNDATASIZE 0x2B SWAP15 SWAP14 SAR 0xE0 PUSH5 0x736F6C6343 STOP ADDMOD GT STOP CALLER ",
+ "sourceMap": "673:5833:5:-:0;;;;;;;;;;;;;;;;;;;"
+ },
+ "deployedBytecode": {
+ "functionDebugData": {
+ "@mintToSubstrateBulkProperty_2268": {
+ "entryPoint": 129,
+ "id": 2268,
+ "parameterSlots": 4,
+ "returnSlots": 0
+ },
+ "@mintToSubstrateWithProperty_2151": {
+ "entryPoint": 1138,
+ "id": 2151,
+ "parameterSlots": 4,
+ "returnSlots": 0
+ },
+ "@mintToSubstrate_1942": {
+ "entryPoint": 2555,
+ "id": 1942,
+ "parameterSlots": 2,
+ "returnSlots": 0
+ },
+ "abi_decode_address": {
+ "entryPoint": 3335,
+ "id": null,
+ "parameterSlots": 1,
+ "returnSlots": 1
+ },
+ "abi_decode_array_struct_Tuple21_calldata_dyn_calldata": {
+ "entryPoint": 3363,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 2
+ },
+ "abi_decode_tuple_t_addresst_uint256": {
+ "entryPoint": 3529,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 2
+ },
+ "abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 4
+ },
+ "abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr": {
+ "entryPoint": 3439,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 4
+ },
+ "abi_decode_tuple_t_bool_fromMemory": {
+ "entryPoint": 3571,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 1
+ },
+ "abi_decode_tuple_t_string_memory_ptr_fromMemory": {
+ "entryPoint": 3714,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 1
+ },
+ "abi_decode_tuple_t_uint256_fromMemory": {
+ "entryPoint": 3916,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 1
+ },
+ "abi_encode_string_calldata": {
+ "entryPoint": 4011,
+ "id": null,
+ "parameterSlots": 3,
+ "returnSlots": 1
+ },
+ "abi_encode_struct_EthCrossAccount": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 0
+ },
+ "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_address_t_uint256_t_address_t_uint256__to_t_address_t_uint256_t_address_t_uint256__fromStack_reversed": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 5,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1__to_t_string_memory_ptr__fromStack_reversed": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 1,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3__to_t_string_memory_ptr__fromStack_reversed": {
+ "entryPoint": 3612,
+ "id": null,
+ "parameterSlots": 1,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a__to_t_string_memory_ptr__fromStack_reversed": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 1,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__fromStack_reversed": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 4,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__fromStack_reversed": {
+ "entryPoint": 4232,
+ "id": null,
+ "parameterSlots": 4,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_uint256_t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr__to_t_uint256_t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr__fromStack_reversed": {
+ "entryPoint": 4052,
+ "id": null,
+ "parameterSlots": 4,
+ "returnSlots": 1
+ },
+ "abi_encode_tuple_t_uint256_t_string_calldata_ptr_t_bytes_calldata_ptr__to_t_uint256_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": {
+ "entryPoint": 4414,
+ "id": null,
+ "parameterSlots": 6,
+ "returnSlots": 1
+ },
+ "access_calldata_tail_t_bytes_calldata_ptr": {
+ "entryPoint": null,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 2
+ },
+ "access_calldata_tail_t_string_calldata_ptr": {
+ "entryPoint": 4343,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 2
+ },
+ "access_calldata_tail_t_struct$_Property_$1762_calldata_ptr": {
+ "entryPoint": 4311,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 1
+ },
+ "calldata_access_string_calldata": {
+ "entryPoint": 3941,
+ "id": null,
+ "parameterSlots": 2,
+ "returnSlots": 2
+ },
+ "increment_t_uint256": {
+ "entryPoint": 4471,
+ "id": null,
+ "parameterSlots": 1,
+ "returnSlots": 1
+ },
+ "panic_error_0x32": {
+ "entryPoint": 4289,
+ "id": null,
+ "parameterSlots": 0,
+ "returnSlots": 0
+ },
+ "panic_error_0x41": {
+ "entryPoint": 3692,
+ "id": null,
+ "parameterSlots": 0,
+ "returnSlots": 0
+ }
+ },
+ "generatedSources": [
+ {
+ "ast": {
+ "nodeType": "YulBlock",
+ "src": "0:11384:6",
+ "statements": [
+ {
+ "nodeType": "YulBlock",
+ "src": "6:3:6",
+ "statements": []
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "63:124:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "73:29:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "95:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "82:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "82:20:6"
+ },
+ "variableNames": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "73:5:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "165:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "174:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "177:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "167:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "167:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "167:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "124:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "135:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "150:3:6",
+ "type": "",
+ "value": "160"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "155:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "146:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "146:11:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "159:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "142:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "142:19:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "131:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "131:31:6"
+ }
+ ],
+ "functionName": {
+ "name": "eq",
+ "nodeType": "YulIdentifier",
+ "src": "121:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "121:42:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "114:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "114:50:6"
+ },
+ "nodeType": "YulIf",
+ "src": "111:70:6"
+ }
+ ]
+ },
+ "name": "abi_decode_address",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "offset",
+ "nodeType": "YulTypedName",
+ "src": "42:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "53:5:6",
+ "type": ""
+ }
+ ],
+ "src": "14:173:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "292:283:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "341:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "350:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "353:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "343:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "343:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "343:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "320:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "328:4:6",
+ "type": "",
+ "value": "0x1f"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "316:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "316:17:6"
+ },
+ {
+ "name": "end",
+ "nodeType": "YulIdentifier",
+ "src": "335:3:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "312:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "312:27:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "305:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "305:35:6"
+ },
+ "nodeType": "YulIf",
+ "src": "302:55:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "366:30:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "389:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "376:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "376:20:6"
+ },
+ "variableNames": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "366:6:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "439:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "448:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "451:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "441:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "441:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "441:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "411:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "419:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "408:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "408:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "405:50:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "464:29:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "480:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "488:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "476:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "476:17:6"
+ },
+ "variableNames": [
+ {
+ "name": "arrayPos",
+ "nodeType": "YulIdentifier",
+ "src": "464:8:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "553:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "562:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "565:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "555:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "555:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "555:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "516:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "528:1:6",
+ "type": "",
+ "value": "5"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "531:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "524:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "524:14:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "512:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "512:27:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "541:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "508:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "508:38:6"
+ },
+ {
+ "name": "end",
+ "nodeType": "YulIdentifier",
+ "src": "548:3:6"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "505:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "505:47:6"
+ },
+ "nodeType": "YulIf",
+ "src": "502:67:6"
+ }
+ ]
+ },
+ "name": "abi_decode_array_struct_Tuple21_calldata_dyn_calldata",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "offset",
+ "nodeType": "YulTypedName",
+ "src": "255:6:6",
+ "type": ""
+ },
+ {
+ "name": "end",
+ "nodeType": "YulTypedName",
+ "src": "263:3:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "arrayPos",
+ "nodeType": "YulTypedName",
+ "src": "271:8:6",
+ "type": ""
+ },
+ {
+ "name": "length",
+ "nodeType": "YulTypedName",
+ "src": "281:6:6",
+ "type": ""
+ }
+ ],
+ "src": "192:383:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "745:456:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "791:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "800:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "803:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "793:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "793:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "793:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "766:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "775:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "762:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "762:23:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "787:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "758:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "758:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "755:52:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "816:39:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "845:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_decode_address",
+ "nodeType": "YulIdentifier",
+ "src": "826:18:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "826:29:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "816:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "864:42:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "891:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "902:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "887:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "887:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "874:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "874:32:6"
+ },
+ "variableNames": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "864:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "915:46:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "946:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "957:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "942:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "942:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "929:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "929:32:6"
+ },
+ "variables": [
+ {
+ "name": "offset",
+ "nodeType": "YulTypedName",
+ "src": "919:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1004:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1013:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1016:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "1006:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1006:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "1006:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "976:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "984:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "973:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "973:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "970:50:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "1029:112:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1113:9:6"
+ },
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "1124:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "1109:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1109:22:6"
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "1133:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_decode_array_struct_Tuple21_calldata_dyn_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "1055:53:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1055:86:6"
+ },
+ "variables": [
+ {
+ "name": "value2_1",
+ "nodeType": "YulTypedName",
+ "src": "1033:8:6",
+ "type": ""
+ },
+ {
+ "name": "value3_1",
+ "nodeType": "YulTypedName",
+ "src": "1043:8:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1150:18:6",
+ "value": {
+ "name": "value2_1",
+ "nodeType": "YulIdentifier",
+ "src": "1160:8:6"
+ },
+ "variableNames": [
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "1150:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1177:18:6",
+ "value": {
+ "name": "value3_1",
+ "nodeType": "YulIdentifier",
+ "src": "1187:8:6"
+ },
+ "variableNames": [
+ {
+ "name": "value3",
+ "nodeType": "YulIdentifier",
+ "src": "1177:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "687:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "698:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "710:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "718:6:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "726:6:6",
+ "type": ""
+ },
+ {
+ "name": "value3",
+ "nodeType": "YulTypedName",
+ "src": "734:6:6",
+ "type": ""
+ }
+ ],
+ "src": "580:621:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1373:456:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1419:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1428:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1431:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "1421:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1421:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "1421:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "1394:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1403:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "1390:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1390:23:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1415:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "1386:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1386:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "1383:52:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1444:39:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1473:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_decode_address",
+ "nodeType": "YulIdentifier",
+ "src": "1454:18:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1454:29:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "1444:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1492:42:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1519:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1530:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "1515:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1515:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "1502:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1502:32:6"
+ },
+ "variableNames": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "1492:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "1543:46:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1574:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1585:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "1570:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1570:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "1557:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1557:32:6"
+ },
+ "variables": [
+ {
+ "name": "offset",
+ "nodeType": "YulTypedName",
+ "src": "1547:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1632:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1641:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1644:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "1634:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1634:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "1634:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "1604:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1612:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "1601:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1601:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "1598:50:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "1657:112:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1741:9:6"
+ },
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "1752:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "1737:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1737:22:6"
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "1761:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_decode_array_struct_Tuple21_calldata_dyn_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "1683:53:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1683:86:6"
+ },
+ "variables": [
+ {
+ "name": "value2_1",
+ "nodeType": "YulTypedName",
+ "src": "1661:8:6",
+ "type": ""
+ },
+ {
+ "name": "value3_1",
+ "nodeType": "YulTypedName",
+ "src": "1671:8:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1778:18:6",
+ "value": {
+ "name": "value2_1",
+ "nodeType": "YulIdentifier",
+ "src": "1788:8:6"
+ },
+ "variableNames": [
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "1778:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1805:18:6",
+ "value": {
+ "name": "value3_1",
+ "nodeType": "YulIdentifier",
+ "src": "1815:8:6"
+ },
+ "variableNames": [
+ {
+ "name": "value3",
+ "nodeType": "YulIdentifier",
+ "src": "1805:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "1315:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "1326:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "1338:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "1346:6:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "1354:6:6",
+ "type": ""
+ },
+ {
+ "name": "value3",
+ "nodeType": "YulTypedName",
+ "src": "1362:6:6",
+ "type": ""
+ }
+ ],
+ "src": "1206:623:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1921:167:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "1967:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1976:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1979:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "1969:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1969:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "1969:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "1942:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "1951:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "1938:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1938:23:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "1963:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "1934:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "1934:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "1931:52:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "1992:39:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2021:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_decode_address",
+ "nodeType": "YulIdentifier",
+ "src": "2002:18:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2002:29:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "1992:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "2040:42:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2067:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2078:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2063:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2063:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "2050:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2050:32:6"
+ },
+ "variableNames": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "2040:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_addresst_uint256",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "1879:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "1890:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "1902:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "1910:6:6",
+ "type": ""
+ }
+ ],
+ "src": "1834:254:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "2194:102:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "2204:26:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2216:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2227:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2212:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2212:18:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "2204:4:6"
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2246:9:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "2261:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2277:3:6",
+ "type": "",
+ "value": "160"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2282:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "2273:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2273:11:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2286:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "2269:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2269:19:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "2257:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2257:32:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "2239:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2239:51:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2239:51:6"
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "2163:9:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "2174:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "2185:4:6",
+ "type": ""
+ }
+ ],
+ "src": "2093:203:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "2379:199:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "2425:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2434:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2437:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "2427:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2427:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2427:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "2400:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2409:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "2396:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2396:23:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2421:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "2392:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2392:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "2389:52:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "2450:29:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2469:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "2463:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2463:16:6"
+ },
+ "variables": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "2454:5:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "2532:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2541:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2544:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "2534:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2534:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2534:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "2501:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "2522:5:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "2515:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2515:13:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "2508:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2508:21:6"
+ }
+ ],
+ "functionName": {
+ "name": "eq",
+ "nodeType": "YulIdentifier",
+ "src": "2498:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2498:32:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "2491:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2491:40:6"
+ },
+ "nodeType": "YulIf",
+ "src": "2488:60:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "2557:15:6",
+ "value": {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "2567:5:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "2557:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_bool_fromMemory",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "2345:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "2356:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "2368:6:6",
+ "type": ""
+ }
+ ],
+ "src": "2301:277:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "2757:238:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2774:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2785:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "2767:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2767:21:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2767:21:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2808:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2819:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2804:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2804:18:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2824:2:6",
+ "type": "",
+ "value": "48"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "2797:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2797:30:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2797:30:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2847:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2858:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2843:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2843:18:6"
+ },
+ {
+ "hexValue": "4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e20",
+ "kind": "string",
+ "nodeType": "YulLiteral",
+ "src": "2863:34:6",
+ "type": "",
+ "value": "Only collection admin/owner can "
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "2836:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2836:62:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2836:62:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2918:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2929:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2914:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2914:18:6"
+ },
+ {
+ "hexValue": "63616c6c2074686973206d6574686f64",
+ "kind": "string",
+ "nodeType": "YulLiteral",
+ "src": "2934:18:6",
+ "type": "",
+ "value": "call this method"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "2907:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2907:46:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "2907:46:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "2962:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "2974:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "2985:3:6",
+ "type": "",
+ "value": "128"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "2970:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "2970:19:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "2962:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3__to_t_string_memory_ptr__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "2734:9:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "2748:4:6",
+ "type": ""
+ }
+ ],
+ "src": "2583:412:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3174:168:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3191:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3202:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "3184:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3184:21:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3184:21:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3225:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3236:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "3221:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3221:18:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3241:2:6",
+ "type": "",
+ "value": "18"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "3214:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3214:30:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3214:30:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3264:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3275:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "3260:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3260:18:6"
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "kind": "string",
+ "nodeType": "YulLiteral",
+ "src": "3280:20:6",
+ "type": "",
+ "value": "Properies is empty"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "3253:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3253:48:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3253:48:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "3310:26:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3322:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3333:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "3318:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3318:18:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "3310:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1__to_t_string_memory_ptr__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "3151:9:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "3165:4:6",
+ "type": ""
+ }
+ ],
+ "src": "3000:342:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3379:95:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3396:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3403:3:6",
+ "type": "",
+ "value": "224"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3408:10:6",
+ "type": "",
+ "value": "0x4e487b71"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "3399:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3399:20:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "3389:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3389:31:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3389:31:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3436:1:6",
+ "type": "",
+ "value": "4"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3439:4:6",
+ "type": "",
+ "value": "0x41"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "3429:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3429:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3429:15:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3460:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3463:4:6",
+ "type": "",
+ "value": "0x24"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "3453:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3453:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3453:15:6"
+ }
+ ]
+ },
+ "name": "panic_error_0x41",
+ "nodeType": "YulFunctionDefinition",
+ "src": "3347:127:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3570:951:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3580:12:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3590:2:6",
+ "type": "",
+ "value": "32"
+ },
+ "variables": [
+ {
+ "name": "_1",
+ "nodeType": "YulTypedName",
+ "src": "3584:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3637:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3646:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3649:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "3639:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3639:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3639:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "3612:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3621:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "3608:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3608:23:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "3633:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "3604:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3604:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "3601:52:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3662:30:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3682:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "3676:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3676:16:6"
+ },
+ "variables": [
+ {
+ "name": "offset",
+ "nodeType": "YulTypedName",
+ "src": "3666:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3701:28:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3711:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ },
+ "variables": [
+ {
+ "name": "_2",
+ "nodeType": "YulTypedName",
+ "src": "3705:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3756:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3765:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3768:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "3758:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3758:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3758:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "3744:6:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "3752:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "3741:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3741:14:6"
+ },
+ "nodeType": "YulIf",
+ "src": "3738:34:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3781:32:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "3795:9:6"
+ },
+ {
+ "name": "offset",
+ "nodeType": "YulIdentifier",
+ "src": "3806:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "3791:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3791:22:6"
+ },
+ "variables": [
+ {
+ "name": "_3",
+ "nodeType": "YulTypedName",
+ "src": "3785:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3861:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3870:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3873:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "3863:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3863:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3863:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "_3",
+ "nodeType": "YulIdentifier",
+ "src": "3840:2:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3844:4:6",
+ "type": "",
+ "value": "0x1f"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "3836:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3836:13:6"
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "3851:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "3832:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3832:27:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "3825:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3825:35:6"
+ },
+ "nodeType": "YulIf",
+ "src": "3822:55:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3886:19:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "_3",
+ "nodeType": "YulIdentifier",
+ "src": "3902:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "3896:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3896:9:6"
+ },
+ "variables": [
+ {
+ "name": "_4",
+ "nodeType": "YulTypedName",
+ "src": "3890:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "3928:22:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [],
+ "functionName": {
+ "name": "panic_error_0x41",
+ "nodeType": "YulIdentifier",
+ "src": "3930:16:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3930:18:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "3930:18:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "3920:2:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "3924:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "3917:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3917:10:6"
+ },
+ "nodeType": "YulIf",
+ "src": "3914:36:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3959:17:6",
+ "value": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "3973:2:6",
+ "type": "",
+ "value": "31"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "3969:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3969:7:6"
+ },
+ "variables": [
+ {
+ "name": "_5",
+ "nodeType": "YulTypedName",
+ "src": "3963:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "3985:23:6",
+ "value": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4005:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "3999:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "3999:9:6"
+ },
+ "variables": [
+ {
+ "name": "memPtr",
+ "nodeType": "YulTypedName",
+ "src": "3989:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "4017:71:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4039:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "4063:2:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4067:4:6",
+ "type": "",
+ "value": "0x1f"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4059:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4059:13:6"
+ },
+ {
+ "name": "_5",
+ "nodeType": "YulIdentifier",
+ "src": "4074:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "4055:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4055:22:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4079:2:6",
+ "type": "",
+ "value": "63"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4051:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4051:31:6"
+ },
+ {
+ "name": "_5",
+ "nodeType": "YulIdentifier",
+ "src": "4084:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "4047:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4047:40:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4035:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4035:53:6"
+ },
+ "variables": [
+ {
+ "name": "newFreePtr",
+ "nodeType": "YulTypedName",
+ "src": "4021:10:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4147:22:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [],
+ "functionName": {
+ "name": "panic_error_0x41",
+ "nodeType": "YulIdentifier",
+ "src": "4149:16:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4149:18:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4149:18:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "newFreePtr",
+ "nodeType": "YulIdentifier",
+ "src": "4106:10:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "4118:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "4103:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4103:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "newFreePtr",
+ "nodeType": "YulIdentifier",
+ "src": "4126:10:6"
+ },
+ {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4138:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "lt",
+ "nodeType": "YulIdentifier",
+ "src": "4123:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4123:22:6"
+ }
+ ],
+ "functionName": {
+ "name": "or",
+ "nodeType": "YulIdentifier",
+ "src": "4100:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4100:46:6"
+ },
+ "nodeType": "YulIf",
+ "src": "4097:72:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4185:2:6",
+ "type": "",
+ "value": "64"
+ },
+ {
+ "name": "newFreePtr",
+ "nodeType": "YulIdentifier",
+ "src": "4189:10:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "4178:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4178:22:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4178:22:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4216:6:6"
+ },
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "4224:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "4209:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4209:18:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4209:18:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4273:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4282:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4285:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "4275:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4275:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4275:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "_3",
+ "nodeType": "YulIdentifier",
+ "src": "4250:2:6"
+ },
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "4254:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4246:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4246:11:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "4259:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4242:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4242:20:6"
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "4264:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "4239:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4239:33:6"
+ },
+ "nodeType": "YulIf",
+ "src": "4236:53:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "4298:10:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4307:1:6",
+ "type": "",
+ "value": "0"
+ },
+ "variables": [
+ {
+ "name": "i",
+ "nodeType": "YulTypedName",
+ "src": "4302:1:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4363:83:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4392:6:6"
+ },
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "4400:1:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4388:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4388:14:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "4404:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4384:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4384:23:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "_3",
+ "nodeType": "YulIdentifier",
+ "src": "4423:2:6"
+ },
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "4427:1:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4419:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4419:10:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "4431:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4415:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4415:19:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "4409:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4409:26:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "4377:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4377:59:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4377:59:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "4328:1:6"
+ },
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "4331:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "lt",
+ "nodeType": "YulIdentifier",
+ "src": "4325:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4325:9:6"
+ },
+ "nodeType": "YulForLoop",
+ "post": {
+ "nodeType": "YulBlock",
+ "src": "4335:19:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "4337:15:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "4346:1:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "4349:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4342:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4342:10:6"
+ },
+ "variableNames": [
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "4337:1:6"
+ }
+ ]
+ }
+ ]
+ },
+ "pre": {
+ "nodeType": "YulBlock",
+ "src": "4321:3:6",
+ "statements": []
+ },
+ "src": "4317:129:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4470:6:6"
+ },
+ {
+ "name": "_4",
+ "nodeType": "YulIdentifier",
+ "src": "4478:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4466:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4466:15:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "4483:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4462:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4462:24:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4488:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "4455:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4455:35:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4455:35:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "4499:16:6",
+ "value": {
+ "name": "memPtr",
+ "nodeType": "YulIdentifier",
+ "src": "4509:6:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "4499:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_string_memory_ptr_fromMemory",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "3536:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "3547:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "3559:6:6",
+ "type": ""
+ }
+ ],
+ "src": "3479:1042:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4607:103:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4653:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4662:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4665:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "4655:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4655:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4655:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "dataEnd",
+ "nodeType": "YulIdentifier",
+ "src": "4628:7:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "4637:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "4624:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4624:23:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4649:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "4620:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4620:32:6"
+ },
+ "nodeType": "YulIf",
+ "src": "4617:52:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "4678:26:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "4694:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "4688:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4688:16:6"
+ },
+ "variableNames": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "4678:6:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_decode_tuple_t_uint256_fromMemory",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "4573:9:6",
+ "type": ""
+ },
+ {
+ "name": "dataEnd",
+ "nodeType": "YulTypedName",
+ "src": "4584:7:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "4596:6:6",
+ "type": ""
+ }
+ ],
+ "src": "4526:184:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4792:424:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "4802:43:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "ptr",
+ "nodeType": "YulIdentifier",
+ "src": "4841:3:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "4828:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4828:17:6"
+ },
+ "variables": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulTypedName",
+ "src": "4806:18:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "4934:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4943:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4946:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "4936:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4936:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "4936:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "4868:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "4896:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4896:14:6"
+ },
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "4912:8:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "4892:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4892:29:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "4927:2:6",
+ "type": "",
+ "value": "30"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "4923:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4923:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4888:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4888:43:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "4864:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4864:68:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "4857:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4857:76:6"
+ },
+ "nodeType": "YulIf",
+ "src": "4854:96:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "4959:48:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "4978:18:6"
+ },
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "4998:8:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "4974:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "4974:33:6"
+ },
+ "variables": [
+ {
+ "name": "value_1",
+ "nodeType": "YulTypedName",
+ "src": "4963:7:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "5016:31:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value_1",
+ "nodeType": "YulIdentifier",
+ "src": "5039:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "5026:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5026:21:6"
+ },
+ "variableNames": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5016:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "5056:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value_1",
+ "nodeType": "YulIdentifier",
+ "src": "5069:7:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5078:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5065:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5065:18:6"
+ },
+ "variableNames": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "5056:5:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "5126:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5135:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5138:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "5128:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5128:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5128:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5098:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5106:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "5095:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5095:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "5092:50:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "5194:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5203:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5206:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "5196:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5196:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5196:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "5158:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "5169:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5169:14:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5185:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "5165:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5165:27:6"
+ }
+ ],
+ "functionName": {
+ "name": "sgt",
+ "nodeType": "YulIdentifier",
+ "src": "5154:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5154:39:6"
+ },
+ "nodeType": "YulIf",
+ "src": "5151:59:6"
+ }
+ ]
+ },
+ "name": "calldata_access_string_calldata",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulTypedName",
+ "src": "4756:8:6",
+ "type": ""
+ },
+ {
+ "name": "ptr",
+ "nodeType": "YulTypedName",
+ "src": "4766:3:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "4774:5:6",
+ "type": ""
+ },
+ {
+ "name": "length",
+ "nodeType": "YulTypedName",
+ "src": "4781:6:6",
+ "type": ""
+ }
+ ],
+ "src": "4715:501:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "5288:200:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "5305:3:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5310:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "5298:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5298:19:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5298:19:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "5343:3:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5348:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5339:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5339:14:6"
+ },
+ {
+ "name": "start",
+ "nodeType": "YulIdentifier",
+ "src": "5355:5:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5362:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldatacopy",
+ "nodeType": "YulIdentifier",
+ "src": "5326:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5326:43:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5326:43:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "5393:3:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5398:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5389:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5389:16:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5407:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5385:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5385:27:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5414:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "5378:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5378:38:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5378:38:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "5425:57:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "5440:3:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "5453:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5461:2:6",
+ "type": "",
+ "value": "31"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5449:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5449:15:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5470:2:6",
+ "type": "",
+ "value": "31"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "5466:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5466:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "5445:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5445:29:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5436:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5436:39:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5477:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5432:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5432:50:6"
+ },
+ "variableNames": [
+ {
+ "name": "end",
+ "nodeType": "YulIdentifier",
+ "src": "5425:3:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_string_calldata",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "start",
+ "nodeType": "YulTypedName",
+ "src": "5257:5:6",
+ "type": ""
+ },
+ {
+ "name": "length",
+ "nodeType": "YulTypedName",
+ "src": "5264:6:6",
+ "type": ""
+ },
+ {
+ "name": "pos",
+ "nodeType": "YulTypedName",
+ "src": "5272:3:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "end",
+ "nodeType": "YulTypedName",
+ "src": "5280:3:6",
+ "type": ""
+ }
+ ],
+ "src": "5221:267:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "5732:1310:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "5742:12:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5752:2:6",
+ "type": "",
+ "value": "64"
+ },
+ "variables": [
+ {
+ "name": "_1",
+ "nodeType": "YulTypedName",
+ "src": "5746:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "5763:32:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "5781:9:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "5792:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5777:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5777:18:6"
+ },
+ "variables": [
+ {
+ "name": "tail_1",
+ "nodeType": "YulTypedName",
+ "src": "5767:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "5811:9:6"
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "5822:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "5804:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5804:25:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5804:25:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "5838:12:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5848:2:6",
+ "type": "",
+ "value": "32"
+ },
+ "variables": [
+ {
+ "name": "_2",
+ "nodeType": "YulTypedName",
+ "src": "5842:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "5870:9:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "5881:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5866:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5866:18:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "5886:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "5859:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5859:30:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5859:30:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "5898:17:6",
+ "value": {
+ "name": "tail_1",
+ "nodeType": "YulIdentifier",
+ "src": "5909:6:6"
+ },
+ "variables": [
+ {
+ "name": "pos",
+ "nodeType": "YulTypedName",
+ "src": "5902:3:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "tail_1",
+ "nodeType": "YulIdentifier",
+ "src": "5931:6:6"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "5939:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "5924:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5924:22:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "5924:22:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "5955:25:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "5966:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "5977:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "5962:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "5962:18:6"
+ },
+ "variableNames": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "5955:3:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "5989:53:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "6011:9:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6026:1:6",
+ "type": "",
+ "value": "5"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "6029:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "6022:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6022:14:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6007:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6007:30:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6039:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6003:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6003:39:6"
+ },
+ "variables": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulTypedName",
+ "src": "5993:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6051:20:6",
+ "value": {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "6065:6:6"
+ },
+ "variables": [
+ {
+ "name": "srcPtr",
+ "nodeType": "YulTypedName",
+ "src": "6055:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6080:10:6",
+ "value": {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6089:1:6",
+ "type": "",
+ "value": "0"
+ },
+ "variables": [
+ {
+ "name": "i",
+ "nodeType": "YulTypedName",
+ "src": "6084:1:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6099:12:6",
+ "value": {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "6110:1:6"
+ },
+ "variables": [
+ {
+ "name": "i_1",
+ "nodeType": "YulTypedName",
+ "src": "6103:3:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "6175:838:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "6196:3:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6209:6:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "6217:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "6205:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6205:22:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6233:2:6",
+ "type": "",
+ "value": "95"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "6229:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6229:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6201:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6201:36:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "6189:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6189:49:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "6189:49:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6251:46:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "srcPtr",
+ "nodeType": "YulIdentifier",
+ "src": "6290:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "6277:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6277:20:6"
+ },
+ "variables": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulTypedName",
+ "src": "6255:18:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "6388:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "6397:1:6"
+ },
+ {
+ "name": "i",
+ "nodeType": "YulIdentifier",
+ "src": "6400:1:6"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "6390:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6390:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "6390:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "6324:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "6352:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6352:14:6"
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "6368:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "6348:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6348:27:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6381:2:6",
+ "type": "",
+ "value": "62"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "6377:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6377:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6344:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6344:41:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "6320:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6320:66:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "6313:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6313:74:6"
+ },
+ "nodeType": "YulIf",
+ "src": "6310:94:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6417:44:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "6434:18:6"
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "6454:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6430:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6430:31:6"
+ },
+ "variables": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "6421:5:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6474:79:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "6540:5:6"
+ },
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "6547:5:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldata_access_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "6508:31:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6508:45:6"
+ },
+ "variables": [
+ {
+ "name": "memberValue0",
+ "nodeType": "YulTypedName",
+ "src": "6478:12:6",
+ "type": ""
+ },
+ {
+ "name": "memberValue1",
+ "nodeType": "YulTypedName",
+ "src": "6492:12:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6573:6:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "6581:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "6566:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6566:18:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "6566:18:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6597:85:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "memberValue0",
+ "nodeType": "YulIdentifier",
+ "src": "6638:12:6"
+ },
+ {
+ "name": "memberValue1",
+ "nodeType": "YulIdentifier",
+ "src": "6652:12:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6670:6:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "6678:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6666:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6666:15:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "6611:26:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6611:71:6"
+ },
+ "variables": [
+ {
+ "name": "tail_3",
+ "nodeType": "YulTypedName",
+ "src": "6601:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "6695:92:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "6765:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "6776:5:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "6783:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6772:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6772:14:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldata_access_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "6733:31:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6733:54:6"
+ },
+ "variables": [
+ {
+ "name": "memberValue0_1",
+ "nodeType": "YulTypedName",
+ "src": "6699:14:6",
+ "type": ""
+ },
+ {
+ "name": "memberValue1_1",
+ "nodeType": "YulTypedName",
+ "src": "6715:14:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6811:6:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "6819:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6807:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6807:15:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "tail_3",
+ "nodeType": "YulIdentifier",
+ "src": "6828:6:6"
+ },
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6836:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "6824:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6824:19:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "6800:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6800:44:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "6800:44:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "6857:76:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "memberValue0_1",
+ "nodeType": "YulIdentifier",
+ "src": "6894:14:6"
+ },
+ {
+ "name": "memberValue1_1",
+ "nodeType": "YulIdentifier",
+ "src": "6910:14:6"
+ },
+ {
+ "name": "tail_3",
+ "nodeType": "YulIdentifier",
+ "src": "6926:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "6867:26:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6867:66:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "6857:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "6946:25:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "srcPtr",
+ "nodeType": "YulIdentifier",
+ "src": "6960:6:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "6968:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6956:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6956:15:6"
+ },
+ "variableNames": [
+ {
+ "name": "srcPtr",
+ "nodeType": "YulIdentifier",
+ "src": "6946:6:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "6984:19:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "6995:3:6"
+ },
+ {
+ "name": "_2",
+ "nodeType": "YulIdentifier",
+ "src": "7000:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6991:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6991:12:6"
+ },
+ "variableNames": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "6984:3:6"
+ }
+ ]
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "i_1",
+ "nodeType": "YulIdentifier",
+ "src": "6131:3:6"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "6136:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "lt",
+ "nodeType": "YulIdentifier",
+ "src": "6128:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6128:15:6"
+ },
+ "nodeType": "YulForLoop",
+ "post": {
+ "nodeType": "YulBlock",
+ "src": "6144:22:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "6146:18:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "i_1",
+ "nodeType": "YulIdentifier",
+ "src": "6157:3:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "6162:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "6153:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "6153:11:6"
+ },
+ "variableNames": [
+ {
+ "name": "i_1",
+ "nodeType": "YulIdentifier",
+ "src": "6146:3:6"
+ }
+ ]
+ }
+ ]
+ },
+ "pre": {
+ "nodeType": "YulBlock",
+ "src": "6124:3:6",
+ "statements": []
+ },
+ "src": "6120:893:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "7022:14:6",
+ "value": {
+ "name": "tail_2",
+ "nodeType": "YulIdentifier",
+ "src": "7030:6:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "7022:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_uint256_t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr__to_t_uint256_t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "5685:9:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "5696:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "5704:6:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "5712:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "5723:4:6",
+ "type": ""
+ }
+ ],
+ "src": "5493:1549:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "7106:123:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "7123:3:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "7138:5:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "7132:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7132:12:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7154:3:6",
+ "type": "",
+ "value": "160"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7159:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "7150:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7150:11:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7163:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "7146:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7146:19:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "7128:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7128:38:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7116:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7116:51:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7116:51:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "pos",
+ "nodeType": "YulIdentifier",
+ "src": "7187:3:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7192:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7183:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7183:14:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "7209:5:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7216:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7205:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7205:16:6"
+ }
+ ],
+ "functionName": {
+ "name": "mload",
+ "nodeType": "YulIdentifier",
+ "src": "7199:5:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7199:23:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7176:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7176:47:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7176:47:6"
+ }
+ ]
+ },
+ "name": "abi_encode_struct_EthCrossAccount",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "7090:5:6",
+ "type": ""
+ },
+ {
+ "name": "pos",
+ "nodeType": "YulTypedName",
+ "src": "7097:3:6",
+ "type": ""
+ }
+ ],
+ "src": "7047:182:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "7519:218:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "7529:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7541:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7552:3:6",
+ "type": "",
+ "value": "160"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7537:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7537:19:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "7529:4:6"
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "7599:6:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7607:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_struct_EthCrossAccount",
+ "nodeType": "YulIdentifier",
+ "src": "7565:33:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7565:52:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7565:52:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "7660:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7672:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7683:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7668:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7668:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_struct_EthCrossAccount",
+ "nodeType": "YulIdentifier",
+ "src": "7626:33:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7626:61:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7626:61:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7707:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7718:3:6",
+ "type": "",
+ "value": "128"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7703:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7703:19:6"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "7724:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7696:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7696:35:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7696:35:6"
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "7472:9:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "7483:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "7491:6:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "7499:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "7510:4:6",
+ "type": ""
+ }
+ ],
+ "src": "7234:503:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "7916:239:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7933:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7944:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7926:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7926:21:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7926:21:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "7967:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7978:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "7963:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7963:18:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "7983:2:6",
+ "type": "",
+ "value": "49"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7956:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7956:30:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7956:30:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8006:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8017:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8002:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8002:18:6"
+ },
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c",
+ "kind": "string",
+ "nodeType": "YulLiteral",
+ "src": "8022:34:6",
+ "type": "",
+ "value": "Wrong collection type. Works onl"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "7995:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "7995:62:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "7995:62:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8077:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8088:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8073:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8073:18:6"
+ },
+ {
+ "hexValue": "792077697468204e4654206f7220524654",
+ "kind": "string",
+ "nodeType": "YulLiteral",
+ "src": "8093:19:6",
+ "type": "",
+ "value": "y with NFT or RFT"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8066:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8066:47:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8066:47:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "8122:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8134:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8145:3:6",
+ "type": "",
+ "value": "128"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8130:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8130:19:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "8122:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a__to_t_string_memory_ptr__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "7893:9:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "7907:4:6",
+ "type": ""
+ }
+ ],
+ "src": "7742:413:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "8345:262:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "8355:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8367:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8378:3:6",
+ "type": "",
+ "value": "128"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8363:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8363:19:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "8355:4:6"
+ }
+ ]
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "8391:29:6",
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8409:3:6",
+ "type": "",
+ "value": "160"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8414:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "8405:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8405:11:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8418:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "8401:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8401:19:6"
+ },
+ "variables": [
+ {
+ "name": "_1",
+ "nodeType": "YulTypedName",
+ "src": "8395:2:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8436:9:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "8451:6:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "8459:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "8447:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8447:15:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8429:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8429:34:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8429:34:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8483:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8494:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8479:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8479:18:6"
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "8499:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8472:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8472:34:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8472:34:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8526:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8537:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8522:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8522:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "8546:6:6"
+ },
+ {
+ "name": "_1",
+ "nodeType": "YulIdentifier",
+ "src": "8554:2:6"
+ }
+ ],
+ "functionName": {
+ "name": "and",
+ "nodeType": "YulIdentifier",
+ "src": "8542:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8542:15:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8515:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8515:43:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8515:43:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "8578:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8589:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8574:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8574:18:6"
+ },
+ {
+ "name": "value3",
+ "nodeType": "YulIdentifier",
+ "src": "8594:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8567:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8567:34:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8567:34:6"
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_address_t_uint256_t_address_t_uint256__to_t_address_t_uint256_t_address_t_uint256__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "8290:9:6",
+ "type": ""
+ },
+ {
+ "name": "value3",
+ "nodeType": "YulTypedName",
+ "src": "8301:6:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "8309:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "8317:6:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "8325:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "8336:4:6",
+ "type": ""
+ }
+ ],
+ "src": "8160:447:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "8644:95:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8661:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8668:3:6",
+ "type": "",
+ "value": "224"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8673:10:6",
+ "type": "",
+ "value": "0x4e487b71"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "8664:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8664:20:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8654:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8654:31:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8654:31:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8701:1:6",
+ "type": "",
+ "value": "4"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8704:4:6",
+ "type": "",
+ "value": "0x32"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "8694:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8694:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8694:15:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8725:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8728:4:6",
+ "type": "",
+ "value": "0x24"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "8718:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8718:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8718:15:6"
+ }
+ ]
+ },
+ "name": "panic_error_0x32",
+ "nodeType": "YulFunctionDefinition",
+ "src": "8612:127:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "8847:222:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "8857:51:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulIdentifier",
+ "src": "8896:11:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "8883:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8883:25:6"
+ },
+ "variables": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulTypedName",
+ "src": "8861:18:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "8997:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9006:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9009:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "8999:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8999:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "8999:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "8931:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "8959:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8959:14:6"
+ },
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "8975:8:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "8955:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8955:29:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "8990:2:6",
+ "type": "",
+ "value": "62"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "8986:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8986:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "8951:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8951:43:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "8927:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8927:68:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "8920:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "8920:76:6"
+ },
+ "nodeType": "YulIf",
+ "src": "8917:96:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "9022:41:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "9034:8:6"
+ },
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9044:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9030:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9030:33:6"
+ },
+ "variableNames": [
+ {
+ "name": "addr",
+ "nodeType": "YulIdentifier",
+ "src": "9022:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "access_calldata_tail_t_struct$_Property_$1762_calldata_ptr",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulTypedName",
+ "src": "8812:8:6",
+ "type": ""
+ },
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulTypedName",
+ "src": "8822:11:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "addr",
+ "nodeType": "YulTypedName",
+ "src": "8838:4:6",
+ "type": ""
+ }
+ ],
+ "src": "8744:325:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9169:427:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "9179:51:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9218:11:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "9205:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9205:25:6"
+ },
+ "variables": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulTypedName",
+ "src": "9183:18:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9319:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9328:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9331:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "9321:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9321:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "9321:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9253:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "9281:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9281:14:6"
+ },
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "9297:8:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "9277:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9277:29:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9312:2:6",
+ "type": "",
+ "value": "30"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "9308:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9308:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9273:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9273:43:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "9249:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9249:68:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "9242:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9242:76:6"
+ },
+ "nodeType": "YulIf",
+ "src": "9239:96:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "9344:47:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "9362:8:6"
+ },
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9372:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9358:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9358:33:6"
+ },
+ "variables": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulTypedName",
+ "src": "9348:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "9400:30:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulIdentifier",
+ "src": "9423:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "9410:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9410:20:6"
+ },
+ "variableNames": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "9400:6:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9473:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9482:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9485:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "9475:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9475:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "9475:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "9445:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9453:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "9442:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9442:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "9439:50:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "9498:25:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulIdentifier",
+ "src": "9510:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9518:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9506:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9506:17:6"
+ },
+ "variableNames": [
+ {
+ "name": "addr",
+ "nodeType": "YulIdentifier",
+ "src": "9498:4:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9574:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9583:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9586:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "9576:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9576:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "9576:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "addr",
+ "nodeType": "YulIdentifier",
+ "src": "9539:4:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "9549:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9549:14:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "9565:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "9545:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9545:27:6"
+ }
+ ],
+ "functionName": {
+ "name": "sgt",
+ "nodeType": "YulIdentifier",
+ "src": "9535:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9535:38:6"
+ },
+ "nodeType": "YulIf",
+ "src": "9532:58:6"
+ }
+ ]
+ },
+ "name": "access_calldata_tail_t_string_calldata_ptr",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulTypedName",
+ "src": "9126:8:6",
+ "type": ""
+ },
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulTypedName",
+ "src": "9136:11:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "addr",
+ "nodeType": "YulTypedName",
+ "src": "9152:4:6",
+ "type": ""
+ },
+ {
+ "name": "length",
+ "nodeType": "YulTypedName",
+ "src": "9158:6:6",
+ "type": ""
+ }
+ ],
+ "src": "9074:522:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9695:427:6",
+ "statements": [
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "9705:51:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9744:11:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "9731:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9731:25:6"
+ },
+ "variables": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulTypedName",
+ "src": "9709:18:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9845:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9854:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9857:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "9847:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9847:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "9847:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9779:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "9807:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9807:14:6"
+ },
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "9823:8:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "9803:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9803:29:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9838:2:6",
+ "type": "",
+ "value": "30"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "9834:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9834:7:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9799:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9799:43:6"
+ }
+ ],
+ "functionName": {
+ "name": "slt",
+ "nodeType": "YulIdentifier",
+ "src": "9775:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9775:68:6"
+ }
+ ],
+ "functionName": {
+ "name": "iszero",
+ "nodeType": "YulIdentifier",
+ "src": "9768:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9768:76:6"
+ },
+ "nodeType": "YulIf",
+ "src": "9765:96:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "9870:47:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulIdentifier",
+ "src": "9888:8:6"
+ },
+ {
+ "name": "rel_offset_of_tail",
+ "nodeType": "YulIdentifier",
+ "src": "9898:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "9884:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9884:33:6"
+ },
+ "variables": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulTypedName",
+ "src": "9874:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "9926:30:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulIdentifier",
+ "src": "9949:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "calldataload",
+ "nodeType": "YulIdentifier",
+ "src": "9936:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9936:20:6"
+ },
+ "variableNames": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "9926:6:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "9999:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10008:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10011:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "10001:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10001:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10001:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "9971:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "9979:18:6",
+ "type": "",
+ "value": "0xffffffffffffffff"
+ }
+ ],
+ "functionName": {
+ "name": "gt",
+ "nodeType": "YulIdentifier",
+ "src": "9968:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "9968:30:6"
+ },
+ "nodeType": "YulIf",
+ "src": "9965:50:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "10024:25:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "addr_1",
+ "nodeType": "YulIdentifier",
+ "src": "10036:6:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10044:4:6",
+ "type": "",
+ "value": "0x20"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "10032:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10032:17:6"
+ },
+ "variableNames": [
+ {
+ "name": "addr",
+ "nodeType": "YulIdentifier",
+ "src": "10024:4:6"
+ }
+ ]
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "10100:16:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10109:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10112:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "10102:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10102:12:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10102:12:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "addr",
+ "nodeType": "YulIdentifier",
+ "src": "10065:4:6"
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "functionName": {
+ "name": "calldatasize",
+ "nodeType": "YulIdentifier",
+ "src": "10075:12:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10075:14:6"
+ },
+ {
+ "name": "length",
+ "nodeType": "YulIdentifier",
+ "src": "10091:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "10071:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10071:27:6"
+ }
+ ],
+ "functionName": {
+ "name": "sgt",
+ "nodeType": "YulIdentifier",
+ "src": "10061:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10061:38:6"
+ },
+ "nodeType": "YulIf",
+ "src": "10058:58:6"
+ }
+ ]
+ },
+ "name": "access_calldata_tail_t_bytes_calldata_ptr",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "base_ref",
+ "nodeType": "YulTypedName",
+ "src": "9652:8:6",
+ "type": ""
+ },
+ {
+ "name": "ptr_to_tail",
+ "nodeType": "YulTypedName",
+ "src": "9662:11:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "addr",
+ "nodeType": "YulTypedName",
+ "src": "9678:4:6",
+ "type": ""
+ },
+ {
+ "name": "length",
+ "nodeType": "YulTypedName",
+ "src": "9684:6:6",
+ "type": ""
+ }
+ ],
+ "src": "9601:521:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "10342:291:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "10359:9:6"
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "10370:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "10352:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10352:25:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10352:25:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "10397:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10408:2:6",
+ "type": "",
+ "value": "32"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "10393:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10393:18:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10413:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "10386:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10386:30:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10386:30:6"
+ },
+ {
+ "nodeType": "YulVariableDeclaration",
+ "src": "10425:76:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "10466:6:6"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "10474:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "10486:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10497:2:6",
+ "type": "",
+ "value": "96"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "10482:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10482:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "10439:26:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10439:62:6"
+ },
+ "variables": [
+ {
+ "name": "tail_1",
+ "nodeType": "YulTypedName",
+ "src": "10429:6:6",
+ "type": ""
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "10521:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10532:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "10517:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10517:18:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "tail_1",
+ "nodeType": "YulIdentifier",
+ "src": "10541:6:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "10549:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "sub",
+ "nodeType": "YulIdentifier",
+ "src": "10537:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10537:22:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "10510:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10510:50:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10510:50:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "10569:58:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value3",
+ "nodeType": "YulIdentifier",
+ "src": "10604:6:6"
+ },
+ {
+ "name": "value4",
+ "nodeType": "YulIdentifier",
+ "src": "10612:6:6"
+ },
+ {
+ "name": "tail_1",
+ "nodeType": "YulIdentifier",
+ "src": "10620:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_string_calldata",
+ "nodeType": "YulIdentifier",
+ "src": "10577:26:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10577:50:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "10569:4:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_uint256_t_string_calldata_ptr_t_bytes_calldata_ptr__to_t_uint256_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "10279:9:6",
+ "type": ""
+ },
+ {
+ "name": "value4",
+ "nodeType": "YulTypedName",
+ "src": "10290:6:6",
+ "type": ""
+ },
+ {
+ "name": "value3",
+ "nodeType": "YulTypedName",
+ "src": "10298:6:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "10306:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "10314:6:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "10322:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "10333:4:6",
+ "type": ""
+ }
+ ],
+ "src": "10127:506:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "10685:185:6",
+ "statements": [
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "10724:111:6",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10745:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10752:3:6",
+ "type": "",
+ "value": "224"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10757:10:6",
+ "type": "",
+ "value": "0x4e487b71"
+ }
+ ],
+ "functionName": {
+ "name": "shl",
+ "nodeType": "YulIdentifier",
+ "src": "10748:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10748:20:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "10738:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10738:31:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10738:31:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10789:1:6",
+ "type": "",
+ "value": "4"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10792:4:6",
+ "type": "",
+ "value": "0x11"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "10782:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10782:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10782:15:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10817:1:6",
+ "type": "",
+ "value": "0"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10820:4:6",
+ "type": "",
+ "value": "0x24"
+ }
+ ],
+ "functionName": {
+ "name": "revert",
+ "nodeType": "YulIdentifier",
+ "src": "10810:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10810:15:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "10810:15:6"
+ }
+ ]
+ },
+ "condition": {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "10701:5:6"
+ },
+ {
+ "arguments": [
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10712:1:6",
+ "type": "",
+ "value": "0"
+ }
+ ],
+ "functionName": {
+ "name": "not",
+ "nodeType": "YulIdentifier",
+ "src": "10708:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10708:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "eq",
+ "nodeType": "YulIdentifier",
+ "src": "10698:2:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10698:17:6"
+ },
+ "nodeType": "YulIf",
+ "src": "10695:140:6"
+ },
+ {
+ "nodeType": "YulAssignment",
+ "src": "10844:20:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "value",
+ "nodeType": "YulIdentifier",
+ "src": "10855:5:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "10862:1:6",
+ "type": "",
+ "value": "1"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "10851:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "10851:13:6"
+ },
+ "variableNames": [
+ {
+ "name": "ret",
+ "nodeType": "YulIdentifier",
+ "src": "10844:3:6"
+ }
+ ]
+ }
+ ]
+ },
+ "name": "increment_t_uint256",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "value",
+ "nodeType": "YulTypedName",
+ "src": "10667:5:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "ret",
+ "nodeType": "YulTypedName",
+ "src": "10677:3:6",
+ "type": ""
+ }
+ ],
+ "src": "10638:232:6"
+ },
+ {
+ "body": {
+ "nodeType": "YulBlock",
+ "src": "11164:218:6",
+ "statements": [
+ {
+ "nodeType": "YulAssignment",
+ "src": "11174:27:6",
+ "value": {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "11186:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "11197:3:6",
+ "type": "",
+ "value": "160"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "11182:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11182:19:6"
+ },
+ "variableNames": [
+ {
+ "name": "tail",
+ "nodeType": "YulIdentifier",
+ "src": "11174:4:6"
+ }
+ ]
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "value0",
+ "nodeType": "YulIdentifier",
+ "src": "11244:6:6"
+ },
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "11252:9:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_struct_EthCrossAccount",
+ "nodeType": "YulIdentifier",
+ "src": "11210:33:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11210:52:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "11210:52:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "name": "value1",
+ "nodeType": "YulIdentifier",
+ "src": "11305:6:6"
+ },
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "11317:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "11328:2:6",
+ "type": "",
+ "value": "64"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "11313:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11313:18:6"
+ }
+ ],
+ "functionName": {
+ "name": "abi_encode_struct_EthCrossAccount",
+ "nodeType": "YulIdentifier",
+ "src": "11271:33:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11271:61:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "11271:61:6"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "name": "headStart",
+ "nodeType": "YulIdentifier",
+ "src": "11352:9:6"
+ },
+ {
+ "kind": "number",
+ "nodeType": "YulLiteral",
+ "src": "11363:3:6",
+ "type": "",
+ "value": "128"
+ }
+ ],
+ "functionName": {
+ "name": "add",
+ "nodeType": "YulIdentifier",
+ "src": "11348:3:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11348:19:6"
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulIdentifier",
+ "src": "11369:6:6"
+ }
+ ],
+ "functionName": {
+ "name": "mstore",
+ "nodeType": "YulIdentifier",
+ "src": "11341:6:6"
+ },
+ "nodeType": "YulFunctionCall",
+ "src": "11341:35:6"
+ },
+ "nodeType": "YulExpressionStatement",
+ "src": "11341:35:6"
+ }
+ ]
+ },
+ "name": "abi_encode_tuple_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__fromStack_reversed",
+ "nodeType": "YulFunctionDefinition",
+ "parameters": [
+ {
+ "name": "headStart",
+ "nodeType": "YulTypedName",
+ "src": "11117:9:6",
+ "type": ""
+ },
+ {
+ "name": "value2",
+ "nodeType": "YulTypedName",
+ "src": "11128:6:6",
+ "type": ""
+ },
+ {
+ "name": "value1",
+ "nodeType": "YulTypedName",
+ "src": "11136:6:6",
+ "type": ""
+ },
+ {
+ "name": "value0",
+ "nodeType": "YulTypedName",
+ "src": "11144:6:6",
+ "type": ""
+ }
+ ],
+ "returnVariables": [
+ {
+ "name": "tail",
+ "nodeType": "YulTypedName",
+ "src": "11155:4:6",
+ "type": ""
+ }
+ ],
+ "src": "10875:507:6"
+ }
+ ]
+ },
+ "contents": "{\n { }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_array_struct_Tuple21_calldata_dyn_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, shl(5, length)), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_struct_Tuple21_calldata_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_decode_tuple_t_addresst_uint256t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_array_struct_Tuple21_calldata_dyn_calldata(add(headStart, offset), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 48)\n mstore(add(headStart, 64), \"Only collection admin/owner can \")\n mstore(add(headStart, 96), \"call this method\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 18)\n mstore(add(headStart, 64), \"Properies is empty\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\n let _2 := 0xffffffffffffffff\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_4, 0x1f), _5), 63), _5))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _4)\n if gt(add(add(_3, _4), _1), dataEnd) { revert(0, 0) }\n let i := 0\n for { } lt(i, _4) { i := add(i, _1) }\n {\n mstore(add(add(memPtr, i), _1), mload(add(add(_3, i), _1)))\n }\n mstore(add(add(memPtr, _4), _1), 0)\n value0 := memPtr\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function calldata_access_string_calldata(base_ref, ptr) -> value, length\n {\n let rel_offset_of_tail := calldataload(ptr)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(30)))) { revert(0, 0) }\n let value_1 := add(rel_offset_of_tail, base_ref)\n length := calldataload(value_1)\n value := add(value_1, 0x20)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n if sgt(value, sub(calldatasize(), length)) { revert(0, 0) }\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_uint256_t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr__to_t_uint256_t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n let _1 := 64\n let tail_1 := add(headStart, _1)\n mstore(headStart, value0)\n let _2 := 32\n mstore(add(headStart, _2), _1)\n let pos := tail_1\n mstore(tail_1, value2)\n pos := add(headStart, 96)\n let tail_2 := add(add(headStart, shl(5, value2)), 96)\n let srcPtr := value1\n let i := 0\n let i_1 := i\n for { } lt(i_1, value2) { i_1 := add(i_1, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(95)))\n let rel_offset_of_tail := calldataload(srcPtr)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), value1), not(62)))) { revert(i, i) }\n let value := add(rel_offset_of_tail, value1)\n let memberValue0, memberValue1 := calldata_access_string_calldata(value, value)\n mstore(tail_2, _1)\n let tail_3 := abi_encode_string_calldata(memberValue0, memberValue1, add(tail_2, _1))\n let memberValue0_1, memberValue1_1 := calldata_access_string_calldata(value, add(value, _2))\n mstore(add(tail_2, _2), sub(tail_3, tail_2))\n tail_2 := abi_encode_string_calldata(memberValue0_1, memberValue1_1, tail_3)\n srcPtr := add(srcPtr, _2)\n pos := add(pos, _2)\n }\n tail := tail_2\n }\n function abi_encode_struct_EthCrossAccount(value, pos)\n {\n mstore(pos, and(mload(value), sub(shl(160, 1), 1)))\n mstore(add(pos, 0x20), mload(add(value, 0x20)))\n }\n function abi_encode_tuple_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$610_memory_ptr_t_struct$_EthCrossAccount_$610_memory_ptr_t_uint256__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 160)\n abi_encode_struct_EthCrossAccount(value0, headStart)\n abi_encode_struct_EthCrossAccount(value1, add(headStart, 64))\n mstore(add(headStart, 128), value2)\n }\n function abi_encode_tuple_t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 49)\n mstore(add(headStart, 64), \"Wrong collection type. Works onl\")\n mstore(add(headStart, 96), \"y with NFT or RFT\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_address_t_uint256_t_address_t_uint256__to_t_address_t_uint256_t_address_t_uint256__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), and(value2, _1))\n mstore(add(headStart, 96), value3)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function access_calldata_tail_t_struct$_Property_$1762_calldata_ptr(base_ref, ptr_to_tail) -> addr\n {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(62)))) { revert(0, 0) }\n addr := add(base_ref, rel_offset_of_tail)\n }\n function access_calldata_tail_t_string_calldata_ptr(base_ref, ptr_to_tail) -> addr, length\n {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(30)))) { revert(0, 0) }\n let addr_1 := add(base_ref, rel_offset_of_tail)\n length := calldataload(addr_1)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n addr := add(addr_1, 0x20)\n if sgt(addr, sub(calldatasize(), length)) { revert(0, 0) }\n }\n function access_calldata_tail_t_bytes_calldata_ptr(base_ref, ptr_to_tail) -> addr, length\n {\n let rel_offset_of_tail := calldataload(ptr_to_tail)\n if iszero(slt(rel_offset_of_tail, add(sub(calldatasize(), base_ref), not(30)))) { revert(0, 0) }\n let addr_1 := add(base_ref, rel_offset_of_tail)\n length := calldataload(addr_1)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n addr := add(addr_1, 0x20)\n if sgt(addr, sub(calldatasize(), length)) { revert(0, 0) }\n }\n function abi_encode_tuple_t_uint256_t_string_calldata_ptr_t_bytes_calldata_ptr__to_t_uint256_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 96)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 96))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__to_t_struct$_EthCrossAccount_$1253_memory_ptr_t_struct$_EthCrossAccount_$1253_memory_ptr_t_uint256__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 160)\n abi_encode_struct_EthCrossAccount(value0, headStart)\n abi_encode_struct_EthCrossAccount(value1, add(headStart, 64))\n mstore(add(headStart, 128), value2)\n }\n}",
+ "id": 6,
+ "language": "Yul",
+ "name": "#utility.yul"
+ }
+ ],
+ "immutableReferences": {},
+ "linkReferences": {},
+ "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c80633a0dbb1a14610046578063440dff9d1461005b5780637a8d97861461006e575b600080fd5b610059610054366004610d6f565b610081565b005b610059610069366004610d6f565b610472565b61005961007c366004610dc9565b6109fb565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ed9190610df3565b6101125760405162461bcd60e51b815260040161010990610e1c565b60405180910390fd5b82806101555760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c29190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201156104165760408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b81523060048201528a906001600160a01b03821690636a627842906024016020604051808303816000875af11580156102a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c69190610f4c565b604051630a769d3760e11b81529092506001600160a01b038216906314ed3a6e906102f99085908d908d90600401610fd4565b600060405180830381600087803b15801561031357600080fd5b505af1158015610327573d6000803e3d6000fd5b5050604080518082018252308152600060208083018290528351808501855291825281018f9052915163d5cf430b60e01b81526001600160a01b038616945063d5cf430b935061037c92908790600401611088565b600060405180830381600087803b15801561039657600080fd5b505af11580156103aa573d6000803e3d6000fd5b5050505050610416565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b6064820152608401610109565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de9190610df3565b6104fa5760405162461bcd60e51b815260040161010990610e1c565b828061053d5760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b6044820152606401610109565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610582573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105aa9190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016108065760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610642573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106669190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c85818110610701576107016110c1565b905060200281019061071391906110d7565b61071d90806110f7565b8e8e8781811061072f5761072f6110c1565b905060200281019061074191906110d7565b61074f9060208101906110f7565b6040518663ffffffff1660e01b815260040161076f95949392919061113e565b600060405180830381600087803b15801561078957600080fd5b505af115801561079d573d6000803e3d6000fd5b50505050806107ab90611177565b90506106d7565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b9261037c929091908790600401611088565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b45760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af9190610f4c565b6040516335313c2160e11b81523060048201529092506001600160a01b03821690636a627842906024016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190610f4c565b5060005b858110156107b257816001600160a01b0316631752d67b848c8c8581811061094a5761094a6110c1565b905060200281019061095c91906110d7565b61096690806110f7565b8e8e87818110610978576109786110c1565b905060200281019061098a91906110d7565b6109989060208101906110f7565b6040518663ffffffff1660e01b81526004016109b895949392919061113e565b600060405180830381600087803b1580156109d257600080fd5b505af11580156109e6573d6000803e3d6000fd5b50505050806109f490611177565b9050610920565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a679190610df3565b610a835760405162461bcd60e51b815260040161010990610e1c565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa158015610ac8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610af09190810190610e82565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b2958201610c3e576040516335313c2160e11b815230600482015287906001600160a01b03821690636a627842906024015b6020604051808303816000875af1158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190610f4c565b604080518082018252308152600060208083018290528351808501855291825281018b9052915163d5cf430b60e01b81529294506001600160a01b0384169263d5cf430b92610c0692918790600401611088565b600060405180830381600087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b5050505050610cae565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe9682016103b4576040516335313c2160e11b815230600482015287906001600160a01b03821690636a62784290602401610b6f565b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610d1e57600080fd5b919050565b60008083601f840112610d3557600080fd5b50813567ffffffffffffffff811115610d4d57600080fd5b6020830191508360208260051b8501011115610d6857600080fd5b9250929050565b60008060008060608587031215610d8557600080fd5b610d8e85610d07565b935060208501359250604085013567ffffffffffffffff811115610db157600080fd5b610dbd87828801610d23565b95989497509550505050565b60008060408385031215610ddc57600080fd5b610de583610d07565b946020939093013593505050565b600060208284031215610e0557600080fd5b81518015158114610e1557600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e9557600080fd5b825167ffffffffffffffff80821115610ead57600080fd5b818501915085601f830112610ec157600080fd5b815181811115610ed357610ed3610e6c565b604051601f8201601f19908116603f01168101908382118183101715610efb57610efb610e6c565b816040528281528886848701011115610f1357600080fd5b600093505b82841015610f355784840186015181850187015292850192610f18565b600086848301015280965050505050505092915050565b600060208284031215610f5e57600080fd5b5051919050565b6000808335601e19843603018112610f7c57600080fd5b830160208101925035905067ffffffffffffffff811115610f9c57600080fd5b803603821315610d6857600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006040808301868452602082818601528186835260608601905060608760051b8701019250876000805b8981101561107857888603605f190184528235368c9003603e19018112611024578283fd5b8b016110308180610f65565b8989526110408a8a018284610fab565b91505061104f87830183610f65565b9250888203888a0152611063828483610fab565b98505050938501935091840191600101610fff565b50939a9950505050505050505050565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a00190565b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126110ed57600080fd5b9190910192915050565b6000808335601e1984360301811261110e57600080fd5b83018035915067ffffffffffffffff82111561112957600080fd5b602001915036819003821315610d6857600080fd5b858152606060208201526000611158606083018688610fab565b828103604084015261116b818587610fab565b98975050505050505050565b60006001820161119757634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212206fee43cab49543809f191e238525b8a47306c665c42f86e318153d2b9e9d1de064736f6c63430008110033",
+ "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x3A0DBB1A EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x440DFF9D EQ PUSH2 0x5B JUMPI DUP1 PUSH4 0x7A8D9786 EQ PUSH2 0x6E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0x54 CALLDATASIZE PUSH1 0x4 PUSH2 0xD6F JUMP JUMPDEST PUSH2 0x81 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x59 PUSH2 0x69 CALLDATASIZE PUSH1 0x4 PUSH2 0xD6F JUMP JUMPDEST PUSH2 0x472 JUMP JUMPDEST PUSH2 0x59 PUSH2 0x7C CALLDATASIZE PUSH1 0x4 PUSH2 0xDC9 JUMP JUMPDEST PUSH2 0x9FB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP5 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC9 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xED SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0x112 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP1 PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x12 PUSH1 0x24 DUP3 ADD MSTORE PUSH18 0x50726F70657269657320697320656D707479 PUSH1 0x70 SHL PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x0 DUP8 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x19A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x1C2 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD ISZERO PUSH2 0x416 JUMPI PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP11 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2A2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2C6 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xA769D37 PUSH1 0xE1 SHL DUP2 MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x14ED3A6E SWAP1 PUSH2 0x2F9 SWAP1 DUP6 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xFD4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x313 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x327 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP16 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND SWAP5 POP PUSH4 0xD5CF430B SWAP4 POP PUSH2 0x37C SWAP3 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x396 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3AA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP PUSH2 0x416 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x31 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x57726F6E6720636F6C6C656374696F6E20747970652E20576F726B73206F6E6C PUSH1 0x44 DUP3 ADD MSTORE PUSH17 0x1E481DDA5D1A08139195081BDC88149195 PUSH1 0x7A SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP12 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP13 AND DUP2 DUP4 ADD MSTORE PUSH1 0x60 DUP2 ADD DUP4 SWAP1 MSTORE SWAP1 MLOAD PUSH32 0xFB3433367F20C42151D30B3D2C634726A94C4F9FA7D45120606029741AEB7535 SWAP2 DUP2 SWAP1 SUB PUSH1 0x80 ADD SWAP1 LOG1 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP5 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4BA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x4DE SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0x4FA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST DUP3 DUP1 PUSH2 0x53D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x12 PUSH1 0x24 DUP3 ADD MSTORE PUSH18 0x50726F70657269657320697320656D707479 PUSH1 0x70 SHL PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x109 JUMP JUMPDEST PUSH1 0x0 DUP8 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x582 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x5AA SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD PUSH2 0x806 JUMPI PUSH1 0x0 DUP11 SWAP1 POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x75794A3C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x642 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x666 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x6AF JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x6D3 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7B2 JUMPI DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1752D67B DUP5 DUP13 DUP13 DUP6 DUP2 DUP2 LT PUSH2 0x701 JUMPI PUSH2 0x701 PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x713 SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x71D SWAP1 DUP1 PUSH2 0x10F7 JUMP JUMPDEST DUP15 DUP15 DUP8 DUP2 DUP2 LT PUSH2 0x72F JUMPI PUSH2 0x72F PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x741 SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x74F SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x10F7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x76F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x113E JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x79D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH2 0x7AB SWAP1 PUSH2 0x1177 JUMP JUMPDEST SWAP1 POP PUSH2 0x6D7 JUMP JUMPDEST POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP14 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP3 PUSH4 0xD5CF430B SWAP3 PUSH2 0x37C SWAP3 SWAP1 SWAP2 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x0 DUP11 SWAP1 POP DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x75794A3C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x88B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8AF SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x8F8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x91C SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7B2 JUMPI DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1752D67B DUP5 DUP13 DUP13 DUP6 DUP2 DUP2 LT PUSH2 0x94A JUMPI PUSH2 0x94A PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x95C SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x966 SWAP1 DUP1 PUSH2 0x10F7 JUMP JUMPDEST DUP15 DUP15 DUP8 DUP2 DUP2 LT PUSH2 0x978 JUMPI PUSH2 0x978 PUSH2 0x10C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x98A SWAP2 SWAP1 PUSH2 0x10D7 JUMP JUMPDEST PUSH2 0x998 SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x10F7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9B8 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x113E JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x9E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH2 0x9F4 SWAP1 PUSH2 0x1177 JUMP JUMPDEST SWAP1 POP PUSH2 0x920 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x9811B0C7 PUSH1 0xE0 SHL DUP2 MSTORE CALLER PUSH1 0x4 DUP3 ADD MSTORE DUP3 SWAP1 DUP2 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x9811B0C7 SWAP1 PUSH1 0x24 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xA43 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA67 SWAP2 SWAP1 PUSH2 0xDF3 JUMP JUMPDEST PUSH2 0xA83 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x109 SWAP1 PUSH2 0xE1C JUMP JUMPDEST PUSH1 0x0 DUP5 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD34B55B8 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xAC8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xAF0 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0xE82 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 SWAP2 DUP3 ADD KECCAK256 PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0xA DUP2 MSTORE PUSH10 0x526546756E6769626C65 PUSH1 0xB0 SHL SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 POP PUSH1 0x0 PUSH32 0x3248D02B1E2F292B1142854EBDEEC13D4B4F9224DBCDB24A3D7810FE54B7B295 DUP3 ADD PUSH2 0xC3E JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP8 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB8E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBB2 SWAP2 SWAP1 PUSH2 0xF4C JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE ADDRESS DUP2 MSTORE PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP3 SWAP1 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE SWAP2 DUP3 MSTORE DUP2 ADD DUP12 SWAP1 MSTORE SWAP2 MLOAD PUSH4 0xD5CF430B PUSH1 0xE0 SHL DUP2 MSTORE SWAP3 SWAP5 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP3 PUSH4 0xD5CF430B SWAP3 PUSH2 0xC06 SWAP3 SWAP2 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x1088 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC20 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xC34 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP PUSH2 0xCAE JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x3 DUP2 MSTORE PUSH3 0x139195 PUSH1 0xEA SHL PUSH1 0x20 SWAP1 SWAP2 ADD MSTORE PUSH32 0x63BEC732F5ECEE1B8B708F2F01C23AA0F0A08A1F0DF248CEDDA343C476EBFE96 DUP3 ADD PUSH2 0x3B4 JUMPI PUSH1 0x40 MLOAD PUSH4 0x35313C21 PUSH1 0xE1 SHL DUP2 MSTORE ADDRESS PUSH1 0x4 DUP3 ADD MSTORE DUP8 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0x6A627842 SWAP1 PUSH1 0x24 ADD PUSH2 0xB6F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP9 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND DUP2 DUP4 ADD MSTORE PUSH1 0x60 DUP2 ADD DUP4 SWAP1 MSTORE SWAP1 MLOAD PUSH32 0xFB3433367F20C42151D30B3D2C634726A94C4F9FA7D45120606029741AEB7535 SWAP2 DUP2 SWAP1 SUB PUSH1 0x80 ADD SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xD1E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD4D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 PUSH1 0x5 SHL DUP6 ADD ADD GT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xD85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD8E DUP6 PUSH2 0xD07 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP3 POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xDB1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDBD DUP8 DUP3 DUP9 ADD PUSH2 0xD23 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xDDC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDE5 DUP4 PUSH2 0xD07 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xE05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xE15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x30 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F6E6C7920636F6C6C656374696F6E2061646D696E2F6F776E65722063616E20 PUSH1 0x40 DUP3 ADD MSTORE PUSH16 0x18D85B1B081D1A1A5CC81B595D1A1BD9 PUSH1 0x82 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xE95 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xEAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xEC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0xED3 JUMPI PUSH2 0xED3 PUSH2 0xE6C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0xEFB JUMPI PUSH2 0xEFB PUSH2 0xE6C JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP9 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH2 0xF13 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH2 0xF35 JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH2 0xF18 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xF5E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0xF7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ADD PUSH1 0x20 DUP2 ADD SWAP3 POP CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xF9C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 CALLDATASIZE SUB DUP3 SGT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 DUP3 DUP3 ADD PUSH1 0x20 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP2 ADD PUSH1 0x1F NOT AND SWAP1 SWAP2 ADD ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP1 DUP4 ADD DUP7 DUP5 MSTORE PUSH1 0x20 DUP3 DUP2 DUP7 ADD MSTORE DUP2 DUP7 DUP4 MSTORE PUSH1 0x60 DUP7 ADD SWAP1 POP PUSH1 0x60 DUP8 PUSH1 0x5 SHL DUP8 ADD ADD SWAP3 POP DUP8 PUSH1 0x0 DUP1 JUMPDEST DUP10 DUP2 LT ISZERO PUSH2 0x1078 JUMPI DUP9 DUP7 SUB PUSH1 0x5F NOT ADD DUP5 MSTORE DUP3 CALLDATALOAD CALLDATASIZE DUP13 SWAP1 SUB PUSH1 0x3E NOT ADD DUP2 SLT PUSH2 0x1024 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP12 ADD PUSH2 0x1030 DUP2 DUP1 PUSH2 0xF65 JUMP JUMPDEST DUP10 DUP10 MSTORE PUSH2 0x1040 DUP11 DUP11 ADD DUP3 DUP5 PUSH2 0xFAB JUMP JUMPDEST SWAP2 POP POP PUSH2 0x104F DUP8 DUP4 ADD DUP4 PUSH2 0xF65 JUMP JUMPDEST SWAP3 POP DUP9 DUP3 SUB DUP9 DUP11 ADD MSTORE PUSH2 0x1063 DUP3 DUP5 DUP4 PUSH2 0xFAB JUMP JUMPDEST SWAP9 POP POP POP SWAP4 DUP6 ADD SWAP4 POP SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0xFFF JUMP JUMPDEST POP SWAP4 SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND DUP3 MSTORE PUSH1 0x20 SWAP5 DUP6 ADD MLOAD DUP6 DUP4 ADD MSTORE DUP4 MLOAD AND PUSH1 0x40 DUP3 ADD MSTORE SWAP2 SWAP1 SWAP3 ADD MLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0xA0 ADD SWAP1 JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0x3E NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x10ED JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x110E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ADD DUP1 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x1129 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 ADD SWAP2 POP CALLDATASIZE DUP2 SWAP1 SUB DUP3 SGT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP6 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1158 PUSH1 0x60 DUP4 ADD DUP7 DUP9 PUSH2 0xFAB JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x116B DUP2 DUP6 DUP8 PUSH2 0xFAB JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x1197 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH16 0xEE43CAB49543809F191E238525B8A473 MOD 0xC6 PUSH6 0xC42F86E31815 RETURNDATASIZE 0x2B SWAP15 SWAP14 SAR 0xE0 PUSH5 0x736F6C6343 STOP ADDMOD GT STOP CALLER ",
+ "sourceMap": "673:5833:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5448:1056;;;;;;:::i;:::-;;:::i;:::-;;3688:1757;;;;;;:::i;:::-;;:::i;2212:1473::-;;;;;;:::i;:::-;;:::i;5448:1056::-;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;5606:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;;;;;;;;;5650:11;5680:20;5672:51:::1;;;::::0;-1:-1:-1;;;5672:51:5;;3202:2:6;5672:51:5::1;::::0;::::1;3184:21:6::0;3241:2;3221:18;;;3214:30;-1:-1:-1;;;3260:18:6;;;3253:48;3318:18;;5672:51:5::1;3000:342:6::0;5672:51:5::1;5728:25;5767:11;5728:51;;5783:22;5824:14;-1:-1:-1::0;;;;;5824:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;5824:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;5808:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;5808:55;-1:-1:-1;5867:15:5::1;5891:44:::0;;;5887:541;::::1;;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;5949:45;;;5945:483:::1;;6109:33;::::0;-1:-1:-1;;;6109:33:5;;6136:4:::1;6109:33;::::0;::::1;2239:51:6::0;6037:11:5;;-1:-1:-1;;;;;6109:18:5;::::1;::::0;::::1;::::0;2212::6;;6109:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6148:49;::::0;-1:-1:-1;;;6148:49:5;;6099:43;;-1:-1:-1;;;;;;6148:27:5;::::1;::::0;::::1;::::0;:49:::1;::::0;6099:43;;6185:11;;;;6148:49:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6240:35:5::1;::::0;;;;::::1;::::0;;6266:4:::1;6240:35:::0;;-1:-1:-1;6240:35:5::1;::::0;;::::1;::::0;;;6281:49;;;;::::1;::::0;;;;;;::::1;::::0;;;6203:145;;-1:-1:-1;;;6203:145:5;;-1:-1:-1;;;;;6203:31:5;::::1;::::0;-1:-1:-1;6203:31:5::1;::::0;-1:-1:-1;6203:145:5::1;::::0;6281:49;6336:7;;6203:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;5996:357;5945:483;;;6364:59;::::0;-1:-1:-1;;;6364:59:5;;7944:2:6;6364:59:5::1;::::0;::::1;7926:21:6::0;7983:2;7963:18;;;7956:30;8022:34;8002:18;;;7995:62;-1:-1:-1;;;8073:18:6;;;8066:47;8130:19;;6364:59:5::1;7742:413:6::0;5945:483:5::1;6437:63;::::0;;6455:1:::1;8429:34:6::0;;8494:2;8479:18;;8472:34;;;-1:-1:-1;;;;;8542:15:6;;8522:18;;;8515:43;8589:2;8574:18;;8567:34;;;6437:63:5;;::::1;::::0;;;;8378:3:6;6437:63:5;;::::1;5619:885;;;;1159:889:::0;5448:1056;;;;;:::o;3688:1757::-;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;3842:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;4035:10;4064:20;4056:51:::1;;;::::0;-1:-1:-1;;;4056:51:5;;3202:2:6;4056:51:5::1;::::0;::::1;3184:21:6::0;3241:2;3221:18;;;3214:30;-1:-1:-1;;;3260:18:6;;;3253:48;3318:18;;4056:51:5::1;3000:342:6::0;4056:51:5::1;4112:25;4151:11;4112:51;;4167:22;4208:14;-1:-1:-1::0;;;;;4208:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;4208:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;4192:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;4192:55;-1:-1:-1;4251:15:5::1;4275:44:::0;;;4271:1046:::1;;4326:30;4376:11;4326:62;;4403:13;-1:-1:-1::0;;;;;4403:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4435:33;::::0;-1:-1:-1;;;4435:33:5;;4462:4:::1;4435:33;::::0;::::1;2239:51:6::0;4393:37:5;;-1:-1:-1;;;;;;4435:18:5;::::1;::::0;::::1;::::0;2212::6;;4435:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4478:9;4473:133;4497:16;4493:1;:20;4473:133;;;4526:13;-1:-1:-1::0;;;;;4526:25:5::1;;4552:7;4561:10;;4572:1;4561:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;4580:10;;4591:1;4580:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;4526:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4515:3;;;;:::i;:::-;;;4473:133;;;-1:-1:-1::0;4647:35:5::1;::::0;;;;::::1;::::0;;4673:4:::1;4647:35:::0;;-1:-1:-1;4647:35:5::1;::::0;;::::1;::::0;;;4688:49;;;;::::1;::::0;;;;;;::::1;::::0;;;4610:145;;-1:-1:-1;;;4610:145:5;;-1:-1:-1;;;;;4610:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;4647:35;;4688:49;4743:7;;4610:145:::1;;;:::i;4271:1046::-;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;4770:45;;;4766:551:::1;;4822:23;4858:11;4822:48;;4885:13;-1:-1:-1::0;;;;;4885:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4917:33;::::0;-1:-1:-1;;;4917:33:5;;4944:4:::1;4917:33;::::0;::::1;2239:51:6::0;4875:37:5;;-1:-1:-1;;;;;;4917:18:5;::::1;::::0;::::1;::::0;2212::6;;4917:33:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4960:9;4955:133;4979:16;4975:1;:20;4955:133;;;5008:13;-1:-1:-1::0;;;;;5008:25:5::1;;5034:7;5043:10;;5054:1;5043:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;5062:10;;5073:1;5062:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5008:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4997:3;;;;:::i;:::-;;;4955:133;;2212:1473:::0;1226:41;;-1:-1:-1;;;1226:41:5;;1256:10;1226:41;;;2239:51:6;2313:11:5;;;;-1:-1:-1;;;;;1226:29:5;;;;;2212:18:6;;1226:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1218:102;;;;-1:-1:-1;;;1218:102:5;;;;;;;:::i;:::-;2476:25:::1;2515:11;2476:51;;2531:22;2572:14;-1:-1:-1::0;;;;;2572:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;2572:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;2556:55:::0;;::::1;::::0;;::::1;::::0;756:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;756:19:5;::::1;::::0;;;;2556:55;-1:-1:-1;2615:15:5::1;2639:44:::0;;;2635:759:::1;;2771:33;::::0;-1:-1:-1;;;2771:33:5;;2798:4:::1;2771:33;::::0;::::1;2239:51:6::0;2740:11:5;;-1:-1:-1;;;;;2771:18:5;::::1;::::0;::::1;::::0;2212::6;;2771:33:5::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2847:35;::::0;;;;::::1;::::0;;2873:4:::1;2847:35:::0;;-1:-1:-1;2847:35:5::1;::::0;;::::1;::::0;;;2888:49;;;;::::1;::::0;;;;;;::::1;::::0;;;2810:145;;-1:-1:-1;;;2810:145:5;;2761:43;;-1:-1:-1;;;;;;2810:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;2847:35;2761:43;;2810:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2685:275;2635:759;;;836:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;836:12:5::1;::::0;;::::1;::::0;2970:45;;;2966:428:::1;;3130:33;::::0;-1:-1:-1;;;3130:33:5;;3157:4:::1;3130:33;::::0;::::1;2239:51:6::0;3058:11:5;;-1:-1:-1;;;;;3130:18:5;::::1;::::0;::::1;::::0;2212::6;;3130:33:5::1;2093:203:6::0;2966:428:5::1;3618:63;::::0;;3636:1:::1;8429:34:6::0;;8494:2;8479:18;;8472:34;;;-1:-1:-1;;;;;8542:15:6;;8522:18;;;8515:43;8589:2;8574:18;;8567:34;;;3618:63:5;;::::1;::::0;;;;8378:3:6;3618:63:5;;::::1;2326:1359;;;1159:889:::0;2212:1473;;;:::o;14:173:6:-;82:20;;-1:-1:-1;;;;;131:31:6;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:383::-;271:8;281:6;335:3;328:4;320:6;316:17;312:27;302:55;;353:1;350;343:12;302:55;-1:-1:-1;376:20:6;;419:18;408:30;;405:50;;;451:1;448;441:12;405:50;488:4;480:6;476:17;464:29;;548:3;541:4;531:6;528:1;524:14;516:6;512:27;508:38;505:47;502:67;;;565:1;562;555:12;502:67;192:383;;;;;:::o;580:621::-;710:6;718;726;734;787:2;775:9;766:7;762:23;758:32;755:52;;;803:1;800;793:12;755:52;826:29;845:9;826:29;:::i;:::-;816:39;;902:2;891:9;887:18;874:32;864:42;;957:2;946:9;942:18;929:32;984:18;976:6;973:30;970:50;;;1016:1;1013;1006:12;970:50;1055:86;1133:7;1124:6;1113:9;1109:22;1055:86;:::i;:::-;580:621;;;;-1:-1:-1;1160:8:6;-1:-1:-1;;;;580:621:6:o;1834:254::-;1902:6;1910;1963:2;1951:9;1942:7;1938:23;1934:32;1931:52;;;1979:1;1976;1969:12;1931:52;2002:29;2021:9;2002:29;:::i;:::-;1992:39;2078:2;2063:18;;;;2050:32;;-1:-1:-1;;;1834:254:6:o;2301:277::-;2368:6;2421:2;2409:9;2400:7;2396:23;2392:32;2389:52;;;2437:1;2434;2427:12;2389:52;2469:9;2463:16;2522:5;2515:13;2508:21;2501:5;2498:32;2488:60;;2544:1;2541;2534:12;2488:60;2567:5;2301:277;-1:-1:-1;;;2301:277:6:o;2583:412::-;2785:2;2767:21;;;2824:2;2804:18;;;2797:30;2863:34;2858:2;2843:18;;2836:62;-1:-1:-1;;;2929:2:6;2914:18;;2907:46;2985:3;2970:19;;2583:412::o;3347:127::-;3408:10;3403:3;3399:20;3396:1;3389:31;3439:4;3436:1;3429:15;3463:4;3460:1;3453:15;3479:1042;3559:6;3590:2;3633;3621:9;3612:7;3608:23;3604:32;3601:52;;;3649:1;3646;3639:12;3601:52;3682:9;3676:16;3711:18;3752:2;3744:6;3741:14;3738:34;;;3768:1;3765;3758:12;3738:34;3806:6;3795:9;3791:22;3781:32;;3851:7;3844:4;3840:2;3836:13;3832:27;3822:55;;3873:1;3870;3863:12;3822:55;3902:2;3896:9;3924:2;3920;3917:10;3914:36;;;3930:18;;:::i;:::-;4005:2;3999:9;3973:2;4059:13;;-1:-1:-1;;4055:22:6;;;4079:2;4051:31;4047:40;4035:53;;;4103:18;;;4123:22;;;4100:46;4097:72;;;4149:18;;:::i;:::-;4189:10;4185:2;4178:22;4224:2;4216:6;4209:18;4264:7;4259:2;4254;4250;4246:11;4242:20;4239:33;4236:53;;;4285:1;4282;4275:12;4236:53;4307:1;4298:10;;4317:129;4331:2;4328:1;4325:9;4317:129;;;4419:10;;;4415:19;;4409:26;4388:14;;;4384:23;;4377:59;4342:10;;;;4317:129;;;4488:1;4483:2;4478;4470:6;4466:15;4462:24;4455:35;4509:6;4499:16;;;;;;;;3479:1042;;;;:::o;4526:184::-;4596:6;4649:2;4637:9;4628:7;4624:23;4620:32;4617:52;;;4665:1;4662;4655:12;4617:52;-1:-1:-1;4688:16:6;;4526:184;-1:-1:-1;4526:184:6:o;4715:501::-;4774:5;4781:6;4841:3;4828:17;4927:2;4923:7;4912:8;4896:14;4892:29;4888:43;4868:18;4864:68;4854:96;;4946:1;4943;4936:12;4854:96;4974:33;;5078:4;5065:18;;;-1:-1:-1;5026:21:6;;-1:-1:-1;5106:18:6;5095:30;;5092:50;;;5138:1;5135;5128:12;5092:50;5185:6;5169:14;5165:27;5158:5;5154:39;5151:59;;;5206:1;5203;5196:12;5221:267;5310:6;5305:3;5298:19;5362:6;5355:5;5348:4;5343:3;5339:14;5326:43;-1:-1:-1;5414:1:6;5389:16;;;5407:4;5385:27;;;5378:38;;;;5470:2;5449:15;;;-1:-1:-1;;5445:29:6;5436:39;;;5432:50;;5221:267::o;5493:1549::-;5723:4;5752:2;5792;5781:9;5777:18;5822:6;5811:9;5804:25;5848:2;5886;5881;5870:9;5866:18;5859:30;5909:6;5939;5931;5924:22;5977:2;5966:9;5962:18;5955:25;;6039:2;6029:6;6026:1;6022:14;6011:9;6007:30;6003:39;5989:53;;6065:6;6089:1;6110;6120:893;6136:6;6131:3;6128:15;6120:893;;;6205:22;;;-1:-1:-1;;6201:36:6;6189:49;;6277:20;;6352:14;6348:27;;;-1:-1:-1;;6344:41:6;6320:66;;6310:94;;6400:1;6397;6390:12;6310:94;6430:31;;6508:45;6430:31;;6508:45;:::i;:::-;6581:2;6573:6;6566:18;6611:71;6678:2;6670:6;6666:15;6652:12;6638;6611:71;:::i;:::-;6597:85;;;6733:54;6783:2;6776:5;6772:14;6765:5;6733:54;:::i;:::-;6695:92;;6836:6;6828;6824:19;6819:2;6811:6;6807:15;6800:44;6867:66;6926:6;6910:14;6894;6867:66;:::i;:::-;6857:76;-1:-1:-1;;;6991:12:6;;;;-1:-1:-1;6956:15:6;;;;6162:1;6153:11;6120:893;;;-1:-1:-1;7030:6:6;;5493:1549;-1:-1:-1;;;;;;;;;;5493:1549:6:o;7234:503::-;7132:12;;-1:-1:-1;;;;;7128:38:6;;;7116:51;;7216:4;7205:16;;;7199:23;7183:14;;;7176:47;7132:12;;7128:38;7683:2;7668:18;;7116:51;7205:16;;;;7199:23;7183:14;;;7176:47;7718:3;7703:19;;7696:35;;;;7552:3;7537:19;;7234:503::o;8612:127::-;8673:10;8668:3;8664:20;8661:1;8654:31;8704:4;8701:1;8694:15;8728:4;8725:1;8718:15;8744:325;8838:4;8896:11;8883:25;8990:2;8986:7;8975:8;8959:14;8955:29;8951:43;8931:18;8927:68;8917:96;;9009:1;9006;8999:12;8917:96;9030:33;;;;;8744:325;-1:-1:-1;;8744:325:6:o;9074:522::-;9152:4;9158:6;9218:11;9205:25;9312:2;9308:7;9297:8;9281:14;9277:29;9273:43;9253:18;9249:68;9239:96;;9331:1;9328;9321:12;9239:96;9358:33;;9410:20;;;-1:-1:-1;9453:18:6;9442:30;;9439:50;;;9485:1;9482;9475:12;9439:50;9518:4;9506:17;;-1:-1:-1;9549:14:6;9545:27;;;9535:38;;9532:58;;;9586:1;9583;9576:12;10127:506;10370:6;10359:9;10352:25;10413:2;10408;10397:9;10393:18;10386:30;10333:4;10439:62;10497:2;10486:9;10482:18;10474:6;10466;10439:62;:::i;:::-;10549:9;10541:6;10537:22;10532:2;10521:9;10517:18;10510:50;10577;10620:6;10612;10604;10577:50;:::i;:::-;10569:58;10127:506;-1:-1:-1;;;;;;;;10127:506:6:o;10638:232::-;10677:3;10698:17;;;10695:140;;10757:10;10752:3;10748:20;10745:1;10738:31;10792:4;10789:1;10782:15;10820:4;10817:1;10810:15;10695:140;-1:-1:-1;10862:1:6;10851:13;;10638:232::o"
+ },
+ "gasEstimates": {
+ "creation": {
+ "codeDepositCost": "912800",
+ "executionCost": "948",
+ "totalCost": "913748"
+ },
+ "external": {
+ "mintToSubstrate(address,uint256)": "infinite",
+ "mintToSubstrateBulkProperty(address,uint256,(string,bytes)[])": "infinite",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "infinite"
+ }
+ },
+ "methodIdentifiers": {
+ "mintToSubstrate(address,uint256)": "7a8d9786",
+ "mintToSubstrateBulkProperty(address,uint256,(string,bytes)[])": "3a0dbb1a",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "440dff9d"
+ }
+ },
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_toEth\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_toSub\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"MintToSub\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"}],\"name\":\"mintToSubstrate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"field_0\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"field_1\",\"type\":\"bytes\"}],\"internalType\":\"struct Tuple21[]\",\"name\":\"_properties\",\"type\":\"tuple[]\"}],\"name\":\"mintToSubstrateBulkProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"internalType\":\"struct Property[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"mintToSubstrateWithProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"MintToSub(address,uint256,address,uint256)\":{\"details\":\"This emits when a mint to a substrate address has been made.\"}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":\"EvmToSubstrate\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0x7ded5e99243528ed63a0986417ad670c277ad42d348bf06f407fd06a12cc08a3\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://43a6299b0510c8feb55800153cee0ea845f7b06a4002bb122d99c6cc938f93c2\",\"dweb:/ipfs/QmPcgPtBkeyMe6LkTYcT6xD5WJhw8nLGaCrbEu2kUHGjgu\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x4ea6c5371aadbfd3e928377a01f5d3c72906286e0fd544a1391d7e362a131164\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://9a6c96c943b3e49bae15ad680883f197445d25f7207fbc6142d4271e1e4029b6\",\"dweb:/ipfs/QmNb1vMoHALNcrF3pZYCJ3Y9VQjfm9Ee8osrHvyjx5Q5yj\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x43f6d5e7e68be2a64b49dd44b1f40758b9aa37cf3bf01225d1ddfc98619ef4d2\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://45d55a2b15d867662783e015bef922daf59f40734d3bf668ddfa2373731589ac\",\"dweb:/ipfs/QmaF69m8kBKzJ8Av6jmYruhRySMcLtv1myeHjeHuN3gSvG\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":{\"keccak256\":\"0x36f13dcad1a598bad13e4019319da9ca6161782448bd7fc698c1e265140e5460\",\"license\":\"Apache License\",\"urls\":[\"bzz-raw://2e32be5bdb8265a44cbdb50306ea53fb56c52dbbe7b8d742af30f46e48133e13\",\"dweb:/ipfs/QmZfaDgiXDvyERJvYuvGXWT5FeRpPSdH5UuGgDnDxP5RVk\"]}},\"version\":1}",
+ "storageLayout": {
+ "storage": [],
+ "types": null
+ },
+ "userdoc": {
+ "kind": "user",
+ "methods": {},
+ "version": 1
+ }
+ }
+ }
+ },
+ "sources": {
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol",
+ "exportedSymbols": {
+ "CollectionHelpers": [
+ 99
+ ],
+ "CollectionHelpersEvents": [
+ 25
+ ],
+ "Dummy": [
+ 3
+ ],
+ "ERC165": [
+ 13
+ ]
+ },
+ "id": 100,
+ "license": "OTHER",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 1,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0",
+ "<",
+ "0.9",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "75:31:0"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "Dummy",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 2,
+ "nodeType": "StructuredDocumentation",
+ "src": "108:29:0",
+ "text": "@dev common stubs holder"
+ },
+ "fullyImplemented": true,
+ "id": 3,
+ "linearizedBaseContracts": [
+ 3
+ ],
+ "name": "Dummy",
+ "nameLocation": "147:5:0",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 100,
+ "src": "137:20:0",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 4,
+ "name": "Dummy",
+ "nameLocations": [
+ "179:5:0"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 3,
+ "src": "179:5:0"
+ },
+ "id": 5,
+ "nodeType": "InheritanceSpecifier",
+ "src": "179:5:0"
+ }
+ ],
+ "canonicalName": "ERC165",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 13,
+ "linearizedBaseContracts": [
+ 13,
+ 3
+ ],
+ "name": "ERC165",
+ "nameLocation": "169:6:0",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "functionSelector": "01ffc9a7",
+ "id": 12,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "supportsInterface",
+ "nameLocation": "197:17:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 8,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 7,
+ "mutability": "mutable",
+ "name": "interfaceID",
+ "nameLocation": "222:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 12,
+ "src": "215:18:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ },
+ "typeName": {
+ "id": 6,
+ "name": "bytes4",
+ "nodeType": "ElementaryTypeName",
+ "src": "215:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "214:20:0"
+ },
+ "returnParameters": {
+ "id": 11,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 10,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 12,
+ "src": "258:4:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 9,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "258:4:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "257:6:0"
+ },
+ "scope": 13,
+ "src": "188:76:0",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 100,
+ "src": "159:107:0",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "CollectionHelpersEvents",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 14,
+ "nodeType": "StructuredDocumentation",
+ "src": "268:27:0",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 25,
+ "linearizedBaseContracts": [
+ 25
+ ],
+ "name": "CollectionHelpersEvents",
+ "nameLocation": "305:23:0",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c7",
+ "id": 20,
+ "name": "CollectionCreated",
+ "nameLocation": "338:17:0",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 19,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 16,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "372:5:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 20,
+ "src": "356:21:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 15,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "356:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 18,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "collectionId",
+ "nameLocation": "395:12:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 20,
+ "src": "379:28:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 17,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "379:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "355:53:0"
+ },
+ "src": "332:77:0"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "196b128b0e7d555858ba17c2a76be0a94558be342698cd6c02837195e0b0bcbc",
+ "id": 24,
+ "name": "CollectionDestroyed",
+ "nameLocation": "417:19:0",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 23,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 22,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "collectionId",
+ "nameLocation": "453:12:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 24,
+ "src": "437:28:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 21,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "437:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "436:30:0"
+ },
+ "src": "411:56:0"
+ }
+ ],
+ "scope": 100,
+ "src": "295:174:0",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 27,
+ "name": "Dummy",
+ "nameLocations": [
+ "635:5:0"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 3,
+ "src": "635:5:0"
+ },
+ "id": 28,
+ "nodeType": "InheritanceSpecifier",
+ "src": "635:5:0"
+ },
+ {
+ "baseName": {
+ "id": 29,
+ "name": "ERC165",
+ "nameLocations": [
+ "642:6:0"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 13,
+ "src": "642:6:0"
+ },
+ "id": 30,
+ "nodeType": "InheritanceSpecifier",
+ "src": "642:6:0"
+ },
+ {
+ "baseName": {
+ "id": 31,
+ "name": "CollectionHelpersEvents",
+ "nameLocations": [
+ "650:23:0"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 25,
+ "src": "650:23:0"
+ },
+ "id": 32,
+ "nodeType": "InheritanceSpecifier",
+ "src": "650:23:0"
+ }
+ ],
+ "canonicalName": "CollectionHelpers",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 26,
+ "nodeType": "StructuredDocumentation",
+ "src": "471:133:0",
+ "text": "@title Contract, which allows users to operate with collections\n @dev the ERC-165 identifier for this interface is 0x7dea03b1"
+ },
+ "fullyImplemented": false,
+ "id": 99,
+ "linearizedBaseContracts": [
+ 99,
+ 25,
+ 13,
+ 3
+ ],
+ "name": "CollectionHelpers",
+ "nameLocation": "614:17:0",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 33,
+ "nodeType": "StructuredDocumentation",
+ "src": "677:420:0",
+ "text": "Create an NFT collection\n @param name Name of the collection\n @param description Informative description of the collection\n @param tokenPrefix Token prefix to represent the collection tokens in UI and user applications\n @return address Address of the newly created collection\n @dev EVM selector for this function is: 0x844af658,\n or in textual repr: createNFTCollection(string,string,string)"
+ },
+ "functionSelector": "844af658",
+ "id": 44,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "createNFTCollection",
+ "nameLocation": "1108:19:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 40,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 35,
+ "mutability": "mutable",
+ "name": "name",
+ "nameLocation": "1145:4:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 44,
+ "src": "1131:18:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 34,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1131:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 37,
+ "mutability": "mutable",
+ "name": "description",
+ "nameLocation": "1167:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 44,
+ "src": "1153:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 36,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1153:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 39,
+ "mutability": "mutable",
+ "name": "tokenPrefix",
+ "nameLocation": "1196:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 44,
+ "src": "1182:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 38,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1182:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1127:83:0"
+ },
+ "returnParameters": {
+ "id": 43,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 42,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 44,
+ "src": "1237:7:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 41,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1237:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1236:9:0"
+ },
+ "scope": 99,
+ "src": "1099:147:0",
+ "stateMutability": "payable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 45,
+ "nodeType": "StructuredDocumentation",
+ "src": "1852:123:0",
+ "text": "@dev EVM selector for this function is: 0xab173450,\n or in textual repr: createRFTCollection(string,string,string)"
+ },
+ "functionSelector": "ab173450",
+ "id": 56,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "createRFTCollection",
+ "nameLocation": "1986:19:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 52,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 47,
+ "mutability": "mutable",
+ "name": "name",
+ "nameLocation": "2023:4:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 56,
+ "src": "2009:18:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 46,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2009:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 49,
+ "mutability": "mutable",
+ "name": "description",
+ "nameLocation": "2045:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 56,
+ "src": "2031:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 48,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2031:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 51,
+ "mutability": "mutable",
+ "name": "tokenPrefix",
+ "nameLocation": "2074:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 56,
+ "src": "2060:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 50,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2060:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2005:83:0"
+ },
+ "returnParameters": {
+ "id": 55,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 54,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 56,
+ "src": "2115:7:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 53,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2115:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2114:9:0"
+ },
+ "scope": 99,
+ "src": "1977:147:0",
+ "stateMutability": "payable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 57,
+ "nodeType": "StructuredDocumentation",
+ "src": "2127:128:0",
+ "text": "@dev EVM selector for this function is: 0x7335b79f,\n or in textual repr: createFTCollection(string,uint8,string,string)"
+ },
+ "functionSelector": "7335b79f",
+ "id": 70,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "createFTCollection",
+ "nameLocation": "2266:18:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 66,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 59,
+ "mutability": "mutable",
+ "name": "name",
+ "nameLocation": "2302:4:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 70,
+ "src": "2288:18:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 58,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2288:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 61,
+ "mutability": "mutable",
+ "name": "decimals",
+ "nameLocation": "2316:8:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 70,
+ "src": "2310:14:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ },
+ "typeName": {
+ "id": 60,
+ "name": "uint8",
+ "nodeType": "ElementaryTypeName",
+ "src": "2310:5:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 63,
+ "mutability": "mutable",
+ "name": "description",
+ "nameLocation": "2342:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 70,
+ "src": "2328:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 62,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2328:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 65,
+ "mutability": "mutable",
+ "name": "tokenPrefix",
+ "nameLocation": "2371:11:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 70,
+ "src": "2357:25:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 64,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2357:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2284:101:0"
+ },
+ "returnParameters": {
+ "id": 69,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 68,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 70,
+ "src": "2412:7:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 67,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2412:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2411:9:0"
+ },
+ "scope": 99,
+ "src": "2257:164:0",
+ "stateMutability": "payable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 71,
+ "nodeType": "StructuredDocumentation",
+ "src": "2424:136:0",
+ "text": "@dev EVM selector for this function is: 0x85624258,\n or in textual repr: makeCollectionERC721MetadataCompatible(address,string)"
+ },
+ "functionSelector": "85624258",
+ "id": 78,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "makeCollectionERC721MetadataCompatible",
+ "nameLocation": "2571:38:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 76,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 73,
+ "mutability": "mutable",
+ "name": "collection",
+ "nameLocation": "2618:10:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 78,
+ "src": "2610:18:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 72,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2610:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 75,
+ "mutability": "mutable",
+ "name": "baseUri",
+ "nameLocation": "2644:7:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 78,
+ "src": "2630:21:0",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 74,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2630:6:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2609:43:0"
+ },
+ "returnParameters": {
+ "id": 77,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2661:0:0"
+ },
+ "scope": 99,
+ "src": "2562:100:0",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 79,
+ "nodeType": "StructuredDocumentation",
+ "src": "2665:108:0",
+ "text": "@dev EVM selector for this function is: 0x564e321f,\n or in textual repr: destroyCollection(address)"
+ },
+ "functionSelector": "564e321f",
+ "id": 84,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "destroyCollection",
+ "nameLocation": "2784:17:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 82,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 81,
+ "mutability": "mutable",
+ "name": "collectionAddress",
+ "nameLocation": "2810:17:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 84,
+ "src": "2802:25:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 80,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2802:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2801:27:0"
+ },
+ "returnParameters": {
+ "id": 83,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2837:0:0"
+ },
+ "scope": 99,
+ "src": "2775:63:0",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 85,
+ "nodeType": "StructuredDocumentation",
+ "src": "2841:255:0",
+ "text": "Check if a collection exists\n @param collectionAddress Address of the collection in question\n @return bool Does the collection exist?\n @dev EVM selector for this function is: 0xc3de1494,\n or in textual repr: isCollectionExist(address)"
+ },
+ "functionSelector": "c3de1494",
+ "id": 92,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isCollectionExist",
+ "nameLocation": "3107:17:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 88,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 87,
+ "mutability": "mutable",
+ "name": "collectionAddress",
+ "nameLocation": "3133:17:0",
+ "nodeType": "VariableDeclaration",
+ "scope": 92,
+ "src": "3125:25:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 86,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3125:7:0",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3124:27:0"
+ },
+ "returnParameters": {
+ "id": 91,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 90,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 92,
+ "src": "3175:4:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 89,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3175:4:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3174:6:0"
+ },
+ "scope": 99,
+ "src": "3098:83:0",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 93,
+ "nodeType": "StructuredDocumentation",
+ "src": "3184:105:0",
+ "text": "@dev EVM selector for this function is: 0xd23a7ab1,\n or in textual repr: collectionCreationFee()"
+ },
+ "functionSelector": "d23a7ab1",
+ "id": 98,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionCreationFee",
+ "nameLocation": "3300:21:0",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 94,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3321:2:0"
+ },
+ "returnParameters": {
+ "id": 97,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 96,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 98,
+ "src": "3347:7:0",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 95,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3347:7:0",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3346:9:0"
+ },
+ "scope": 99,
+ "src": "3291:65:0",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 100,
+ "src": "604:2754:0",
+ "usedErrors": []
+ }
+ ],
+ "src": "75:3284:0"
+ },
+ "id": 0
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol",
+ "exportedSymbols": {
+ "ContractHelpers": [
+ 282
+ ],
+ "ContractHelpersEvents": [
+ 131
+ ],
+ "Dummy": [
+ 103
+ ],
+ "ERC165": [
+ 113
+ ],
+ "Tuple0": [
+ 287
+ ]
+ },
+ "id": 288,
+ "license": "OTHER",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 101,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0",
+ "<",
+ "0.9",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "75:31:1"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "Dummy",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 102,
+ "nodeType": "StructuredDocumentation",
+ "src": "108:29:1",
+ "text": "@dev common stubs holder"
+ },
+ "fullyImplemented": true,
+ "id": 103,
+ "linearizedBaseContracts": [
+ 103
+ ],
+ "name": "Dummy",
+ "nameLocation": "147:5:1",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 288,
+ "src": "137:20:1",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 104,
+ "name": "Dummy",
+ "nameLocations": [
+ "179:5:1"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 103,
+ "src": "179:5:1"
+ },
+ "id": 105,
+ "nodeType": "InheritanceSpecifier",
+ "src": "179:5:1"
+ }
+ ],
+ "canonicalName": "ERC165",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 113,
+ "linearizedBaseContracts": [
+ 113,
+ 103
+ ],
+ "name": "ERC165",
+ "nameLocation": "169:6:1",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "functionSelector": "01ffc9a7",
+ "id": 112,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "supportsInterface",
+ "nameLocation": "197:17:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 108,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 107,
+ "mutability": "mutable",
+ "name": "interfaceID",
+ "nameLocation": "222:11:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 112,
+ "src": "215:18:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ },
+ "typeName": {
+ "id": 106,
+ "name": "bytes4",
+ "nodeType": "ElementaryTypeName",
+ "src": "215:6:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "214:20:1"
+ },
+ "returnParameters": {
+ "id": 111,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 110,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 112,
+ "src": "258:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 109,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "258:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "257:6:1"
+ },
+ "scope": 113,
+ "src": "188:76:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 288,
+ "src": "159:107:1",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ContractHelpersEvents",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 114,
+ "nodeType": "StructuredDocumentation",
+ "src": "268:27:1",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 131,
+ "linearizedBaseContracts": [
+ 131
+ ],
+ "name": "ContractHelpersEvents",
+ "nameLocation": "305:21:1",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "1a1c87da5016fa729dc202aa81e8d0a809b34bf7fcb57a99caddc101f4001ad0",
+ "id": 120,
+ "name": "ContractSponsorSet",
+ "nameLocation": "336:18:1",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 119,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 116,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "371:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 120,
+ "src": "355:31:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 115,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "355:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 118,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "396:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 120,
+ "src": "388:15:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 117,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "388:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "354:50:1"
+ },
+ "src": "330:75:1"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "76acd7576df9f9a27aef2632090837bda53ceafa4f2cb770de453088279f5f2b",
+ "id": 126,
+ "name": "ContractSponsorshipConfirmed",
+ "nameLocation": "413:28:1",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 125,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 122,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "458:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 126,
+ "src": "442:31:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 121,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "442:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 124,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "483:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 126,
+ "src": "475:15:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 123,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "475:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "441:50:1"
+ },
+ "src": "407:85:1"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "764fe8f3a546c4830e1e035cce906bbd280fc109199af66d7b5f1d7a793bed54",
+ "id": 130,
+ "name": "ContractSponsorRemoved",
+ "nameLocation": "500:22:1",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 129,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 128,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "539:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 130,
+ "src": "523:31:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 127,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "523:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "522:33:1"
+ },
+ "src": "494:62:1"
+ }
+ ],
+ "scope": 288,
+ "src": "295:263:1",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 133,
+ "name": "Dummy",
+ "nameLocations": [
+ "731:5:1"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 103,
+ "src": "731:5:1"
+ },
+ "id": 134,
+ "nodeType": "InheritanceSpecifier",
+ "src": "731:5:1"
+ },
+ {
+ "baseName": {
+ "id": 135,
+ "name": "ERC165",
+ "nameLocations": [
+ "738:6:1"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 113,
+ "src": "738:6:1"
+ },
+ "id": 136,
+ "nodeType": "InheritanceSpecifier",
+ "src": "738:6:1"
+ },
+ {
+ "baseName": {
+ "id": 137,
+ "name": "ContractHelpersEvents",
+ "nameLocations": [
+ "746:21:1"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 131,
+ "src": "746:21:1"
+ },
+ "id": 138,
+ "nodeType": "InheritanceSpecifier",
+ "src": "746:21:1"
+ }
+ ],
+ "canonicalName": "ContractHelpers",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 132,
+ "nodeType": "StructuredDocumentation",
+ "src": "560:142:1",
+ "text": "@title Magic contract, which allows users to reconfigure other contracts\n @dev the ERC-165 identifier for this interface is 0x30afad04"
+ },
+ "fullyImplemented": false,
+ "id": 282,
+ "linearizedBaseContracts": [
+ 282,
+ 131,
+ 113,
+ 103
+ ],
+ "name": "ContractHelpers",
+ "nameLocation": "712:15:1",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 139,
+ "nodeType": "StructuredDocumentation",
+ "src": "771:472:1",
+ "text": "Get user, which deployed specified contract\n @dev May return zero address in case if contract is deployed\n using uniquenetwork evm-migration pallet, or using other terms not\n intended by pallet-evm\n @dev Returns zero address if contract does not exists\n @param contractAddress Contract to get owner of\n @return address Owner of contract\n @dev EVM selector for this function is: 0x5152b14c,\n or in textual repr: contractOwner(address)"
+ },
+ "functionSelector": "5152b14c",
+ "id": 146,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "contractOwner",
+ "nameLocation": "1254:13:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 142,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 141,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "1276:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 146,
+ "src": "1268:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 140,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1268:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1267:25:1"
+ },
+ "returnParameters": {
+ "id": 145,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 144,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 146,
+ "src": "1316:7:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 143,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1316:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1315:9:1"
+ },
+ "scope": 282,
+ "src": "1245:80:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 147,
+ "nodeType": "StructuredDocumentation",
+ "src": "1328:267:1",
+ "text": "Set sponsor.\n @param contractAddress Contract for which a sponsor is being established.\n @param sponsor User address who set as pending sponsor.\n @dev EVM selector for this function is: 0xf01fba93,\n or in textual repr: setSponsor(address,address)"
+ },
+ "functionSelector": "f01fba93",
+ "id": 154,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setSponsor",
+ "nameLocation": "1606:10:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 152,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 149,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "1625:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 154,
+ "src": "1617:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 148,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1617:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 151,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "1650:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 154,
+ "src": "1642:15:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 150,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1642:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1616:42:1"
+ },
+ "returnParameters": {
+ "id": 153,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1667:0:1"
+ },
+ "scope": 282,
+ "src": "1597:71:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 155,
+ "nodeType": "StructuredDocumentation",
+ "src": "1671:235:1",
+ "text": "Set contract as self sponsored.\n @param contractAddress Contract for which a self sponsoring is being enabled.\n @dev EVM selector for this function is: 0x89f7d9ae,\n or in textual repr: selfSponsoredEnable(address)"
+ },
+ "functionSelector": "89f7d9ae",
+ "id": 160,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "selfSponsoredEnable",
+ "nameLocation": "1917:19:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 158,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 157,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "1945:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 160,
+ "src": "1937:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 156,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1937:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1936:25:1"
+ },
+ "returnParameters": {
+ "id": 159,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1970:0:1"
+ },
+ "scope": 282,
+ "src": "1908:63:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 161,
+ "nodeType": "StructuredDocumentation",
+ "src": "1974:209:1",
+ "text": "Remove sponsor.\n @param contractAddress Contract for which a sponsorship is being removed.\n @dev EVM selector for this function is: 0xef784250,\n or in textual repr: removeSponsor(address)"
+ },
+ "functionSelector": "ef784250",
+ "id": 166,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeSponsor",
+ "nameLocation": "2194:13:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 164,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 163,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "2216:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 166,
+ "src": "2208:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 162,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2208:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2207:25:1"
+ },
+ "returnParameters": {
+ "id": 165,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2241:0:1"
+ },
+ "scope": 282,
+ "src": "2185:57:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 167,
+ "nodeType": "StructuredDocumentation",
+ "src": "2245:281:1",
+ "text": "Confirm sponsorship.\n @dev Caller must be same that set via [`setSponsor`].\n @param contractAddress Сontract for which need to confirm sponsorship.\n @dev EVM selector for this function is: 0xabc00001,\n or in textual repr: confirmSponsorship(address)"
+ },
+ "functionSelector": "abc00001",
+ "id": 172,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "confirmSponsorship",
+ "nameLocation": "2537:18:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 170,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 169,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "2564:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 172,
+ "src": "2556:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 168,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2556:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2555:25:1"
+ },
+ "returnParameters": {
+ "id": 171,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2589:0:1"
+ },
+ "scope": 282,
+ "src": "2528:62:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 173,
+ "nodeType": "StructuredDocumentation",
+ "src": "2593:342:1",
+ "text": "Get current sponsor.\n @param contractAddress The contract for which a sponsor is requested.\n @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw.\n @dev EVM selector for this function is: 0x766c4f37,\n or in textual repr: sponsor(address)"
+ },
+ "functionSelector": "766c4f37",
+ "id": 181,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "sponsor",
+ "nameLocation": "2946:7:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 176,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 175,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "2962:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 181,
+ "src": "2954:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 174,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2954:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2953:25:1"
+ },
+ "returnParameters": {
+ "id": 180,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 179,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 181,
+ "src": "3002:13:1",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple0_$287_memory_ptr",
+ "typeString": "struct Tuple0"
+ },
+ "typeName": {
+ "id": 178,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 177,
+ "name": "Tuple0",
+ "nameLocations": [
+ "3002:6:1"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 287,
+ "src": "3002:6:1"
+ },
+ "referencedDeclaration": 287,
+ "src": "3002:6:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple0_$287_storage_ptr",
+ "typeString": "struct Tuple0"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3001:15:1"
+ },
+ "scope": 282,
+ "src": "2937:80:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 182,
+ "nodeType": "StructuredDocumentation",
+ "src": "3020:309:1",
+ "text": "Check tat contract has confirmed sponsor.\n @param contractAddress The contract for which the presence of a confirmed sponsor is checked.\n @return **true** if contract has confirmed sponsor.\n @dev EVM selector for this function is: 0x97418603,\n or in textual repr: hasSponsor(address)"
+ },
+ "functionSelector": "97418603",
+ "id": 189,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "hasSponsor",
+ "nameLocation": "3340:10:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 185,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 184,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "3359:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 189,
+ "src": "3351:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 183,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3351:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3350:25:1"
+ },
+ "returnParameters": {
+ "id": 188,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 187,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 189,
+ "src": "3399:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 186,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3399:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3398:6:1"
+ },
+ "scope": 282,
+ "src": "3331:74:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 190,
+ "nodeType": "StructuredDocumentation",
+ "src": "3408:310:1",
+ "text": "Check tat contract has pending sponsor.\n @param contractAddress The contract for which the presence of a pending sponsor is checked.\n @return **true** if contract has pending sponsor.\n @dev EVM selector for this function is: 0x39b9b242,\n or in textual repr: hasPendingSponsor(address)"
+ },
+ "functionSelector": "39b9b242",
+ "id": 197,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "hasPendingSponsor",
+ "nameLocation": "3729:17:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 193,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 192,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "3755:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 197,
+ "src": "3747:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 191,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3747:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3746:25:1"
+ },
+ "returnParameters": {
+ "id": 196,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 195,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 197,
+ "src": "3795:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 194,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3795:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3794:6:1"
+ },
+ "scope": 282,
+ "src": "3720:81:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 198,
+ "nodeType": "StructuredDocumentation",
+ "src": "3804:108:1",
+ "text": "@dev EVM selector for this function is: 0x6027dc61,\n or in textual repr: sponsoringEnabled(address)"
+ },
+ "functionSelector": "6027dc61",
+ "id": 205,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "sponsoringEnabled",
+ "nameLocation": "3923:17:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 201,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 200,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "3949:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 205,
+ "src": "3941:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 199,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3941:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3940:25:1"
+ },
+ "returnParameters": {
+ "id": 204,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 203,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 205,
+ "src": "3989:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 202,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3989:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3988:6:1"
+ },
+ "scope": 282,
+ "src": "3914:81:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 206,
+ "nodeType": "StructuredDocumentation",
+ "src": "3998:114:1",
+ "text": "@dev EVM selector for this function is: 0xfde8a560,\n or in textual repr: setSponsoringMode(address,uint8)"
+ },
+ "functionSelector": "fde8a560",
+ "id": 213,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setSponsoringMode",
+ "nameLocation": "4123:17:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 211,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 208,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "4149:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 213,
+ "src": "4141:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 207,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4141:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 210,
+ "mutability": "mutable",
+ "name": "mode",
+ "nameLocation": "4172:4:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 213,
+ "src": "4166:10:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ },
+ "typeName": {
+ "id": 209,
+ "name": "uint8",
+ "nodeType": "ElementaryTypeName",
+ "src": "4166:5:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4140:37:1"
+ },
+ "returnParameters": {
+ "id": 212,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "4186:0:1"
+ },
+ "scope": 282,
+ "src": "4114:73:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 214,
+ "nodeType": "StructuredDocumentation",
+ "src": "4190:299:1",
+ "text": "Get current contract sponsoring rate limit\n @param contractAddress Contract to get sponsoring rate limit of\n @return uint32 Amount of blocks between two sponsored transactions\n @dev EVM selector for this function is: 0xf29694d8,\n or in textual repr: sponsoringRateLimit(address)"
+ },
+ "functionSelector": "f29694d8",
+ "id": 221,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "sponsoringRateLimit",
+ "nameLocation": "4500:19:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 217,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 216,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "4528:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 221,
+ "src": "4520:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 215,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4520:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4519:25:1"
+ },
+ "returnParameters": {
+ "id": 220,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 219,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 221,
+ "src": "4568:6:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ },
+ "typeName": {
+ "id": 218,
+ "name": "uint32",
+ "nodeType": "ElementaryTypeName",
+ "src": "4568:6:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4567:8:1"
+ },
+ "scope": 282,
+ "src": "4491:85:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 222,
+ "nodeType": "StructuredDocumentation",
+ "src": "4579:448:1",
+ "text": "Set contract sponsoring rate limit\n @dev Sponsoring rate limit - is a minimum amount of blocks that should\n pass between two sponsored transactions\n @param contractAddress Contract to change sponsoring rate limit of\n @param rateLimit Target rate limit\n @dev Only contract owner can change this setting\n @dev EVM selector for this function is: 0x77b6c908,\n or in textual repr: setSponsoringRateLimit(address,uint32)"
+ },
+ "functionSelector": "77b6c908",
+ "id": 229,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setSponsoringRateLimit",
+ "nameLocation": "5038:22:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 227,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 224,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "5069:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 229,
+ "src": "5061:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 223,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5061:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 226,
+ "mutability": "mutable",
+ "name": "rateLimit",
+ "nameLocation": "5093:9:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 229,
+ "src": "5086:16:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ },
+ "typeName": {
+ "id": 225,
+ "name": "uint32",
+ "nodeType": "ElementaryTypeName",
+ "src": "5086:6:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5060:43:1"
+ },
+ "returnParameters": {
+ "id": 228,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5112:0:1"
+ },
+ "scope": 282,
+ "src": "5029:84:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 230,
+ "nodeType": "StructuredDocumentation",
+ "src": "5116:411:1",
+ "text": "Set contract sponsoring fee limit\n @dev Sponsoring fee limit - is maximum fee that could be spent by\n single transaction\n @param contractAddress Contract to change sponsoring fee limit of\n @param feeLimit Fee limit\n @dev Only contract owner can change this setting\n @dev EVM selector for this function is: 0x03aed665,\n or in textual repr: setSponsoringFeeLimit(address,uint256)"
+ },
+ "functionSelector": "03aed665",
+ "id": 237,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setSponsoringFeeLimit",
+ "nameLocation": "5538:21:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 235,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 232,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "5568:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 237,
+ "src": "5560:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 231,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5560:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 234,
+ "mutability": "mutable",
+ "name": "feeLimit",
+ "nameLocation": "5593:8:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 237,
+ "src": "5585:16:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 233,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5585:7:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5559:43:1"
+ },
+ "returnParameters": {
+ "id": 236,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5611:0:1"
+ },
+ "scope": 282,
+ "src": "5529:83:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 238,
+ "nodeType": "StructuredDocumentation",
+ "src": "5615:315:1",
+ "text": "Get current contract sponsoring fee limit\n @param contractAddress Contract to get sponsoring fee limit of\n @return uint256 Maximum amount of fee that could be spent by single\n transaction\n @dev EVM selector for this function is: 0x75b73606,\n or in textual repr: sponsoringFeeLimit(address)"
+ },
+ "functionSelector": "75b73606",
+ "id": 245,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "sponsoringFeeLimit",
+ "nameLocation": "5941:18:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 241,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 240,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "5968:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 245,
+ "src": "5960:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 239,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5960:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5959:25:1"
+ },
+ "returnParameters": {
+ "id": 244,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 243,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 245,
+ "src": "6008:7:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 242,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "6008:7:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6007:9:1"
+ },
+ "scope": 282,
+ "src": "5932:85:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 246,
+ "nodeType": "StructuredDocumentation",
+ "src": "6020:368:1",
+ "text": "Is specified user present in contract allow list\n @dev Contract owner always implicitly included\n @param contractAddress Contract to check allowlist of\n @param user User to check\n @return bool Is specified users exists in contract allowlist\n @dev EVM selector for this function is: 0x5c658165,\n or in textual repr: allowed(address,address)"
+ },
+ "functionSelector": "5c658165",
+ "id": 255,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "allowed",
+ "nameLocation": "6399:7:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 251,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 248,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "6415:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 255,
+ "src": "6407:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 247,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6407:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 250,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "6440:4:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 255,
+ "src": "6432:12:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 249,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6432:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6406:39:1"
+ },
+ "returnParameters": {
+ "id": 254,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 253,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 255,
+ "src": "6469:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 252,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "6469:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6468:6:1"
+ },
+ "scope": 282,
+ "src": "6390:85:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 256,
+ "nodeType": "StructuredDocumentation",
+ "src": "6478:452:1",
+ "text": "Toggle user presence in contract allowlist\n @param contractAddress Contract to change allowlist of\n @param user Which user presence should be toggled\n @param isAllowed `true` if user should be allowed to be sponsored\n or call this contract, `false` otherwise\n @dev Only contract owner can change this setting\n @dev EVM selector for this function is: 0x4706cc1c,\n or in textual repr: toggleAllowed(address,address,bool)"
+ },
+ "functionSelector": "4706cc1c",
+ "id": 265,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "toggleAllowed",
+ "nameLocation": "6941:13:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 263,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 258,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "6966:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 265,
+ "src": "6958:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 257,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6958:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 260,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "6993:4:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 265,
+ "src": "6985:12:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 259,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6985:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 262,
+ "mutability": "mutable",
+ "name": "isAllowed",
+ "nameLocation": "7006:9:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 265,
+ "src": "7001:14:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 261,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "7001:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6954:64:1"
+ },
+ "returnParameters": {
+ "id": 264,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7027:0:1"
+ },
+ "scope": 282,
+ "src": "6932:96:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 266,
+ "nodeType": "StructuredDocumentation",
+ "src": "7031:554:1",
+ "text": "Is this contract has allowlist access enabled\n @dev Allowlist always can have users, and it is used for two purposes:\n in case of allowlist sponsoring mode, users will be sponsored if they exist in allowlist\n in case of allowlist access enabled, only users from allowlist may call this contract\n @param contractAddress Contract to get allowlist access of\n @return bool Is specified contract has allowlist access enabled\n @dev EVM selector for this function is: 0xc772ef6c,\n or in textual repr: allowlistEnabled(address)"
+ },
+ "functionSelector": "c772ef6c",
+ "id": 273,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "allowlistEnabled",
+ "nameLocation": "7596:16:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 269,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 268,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "7621:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 273,
+ "src": "7613:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 267,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "7613:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7612:25:1"
+ },
+ "returnParameters": {
+ "id": 272,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 271,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 273,
+ "src": "7661:4:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 270,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "7661:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7660:6:1"
+ },
+ "scope": 282,
+ "src": "7587:80:1",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 274,
+ "nodeType": "StructuredDocumentation",
+ "src": "7670:275:1",
+ "text": "Toggle contract allowlist access\n @param contractAddress Contract to change allowlist access of\n @param enabled Should allowlist access to be enabled?\n @dev EVM selector for this function is: 0x36de20f5,\n or in textual repr: toggleAllowlist(address,bool)"
+ },
+ "functionSelector": "36de20f5",
+ "id": 281,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "toggleAllowlist",
+ "nameLocation": "7956:15:1",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 279,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 276,
+ "mutability": "mutable",
+ "name": "contractAddress",
+ "nameLocation": "7980:15:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 281,
+ "src": "7972:23:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 275,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "7972:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 278,
+ "mutability": "mutable",
+ "name": "enabled",
+ "nameLocation": "8002:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 281,
+ "src": "7997:12:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 277,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "7997:4:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7971:39:1"
+ },
+ "returnParameters": {
+ "id": 280,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8019:0:1"
+ },
+ "scope": 282,
+ "src": "7947:73:1",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 288,
+ "src": "702:7320:1",
+ "usedErrors": []
+ },
+ {
+ "canonicalName": "Tuple0",
+ "id": 287,
+ "members": [
+ {
+ "constant": false,
+ "id": 284,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "8075:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 287,
+ "src": "8067:15:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 283,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "8067:7:1",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 286,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "8093:7:1",
+ "nodeType": "VariableDeclaration",
+ "scope": 287,
+ "src": "8085:15:1",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 285,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "8085:7:1",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple0",
+ "nameLocation": "8057:6:1",
+ "nodeType": "StructDefinition",
+ "scope": 288,
+ "src": "8050:53:1",
+ "visibility": "public"
+ }
+ ],
+ "src": "75:8029:1"
+ },
+ "id": 1
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol",
+ "exportedSymbols": {
+ "Collection": [
+ 605
+ ],
+ "Dummy": [
+ 291
+ ],
+ "ERC165": [
+ 301
+ ],
+ "ERC721": [
+ 909
+ ],
+ "ERC721Burnable": [
+ 646
+ ],
+ "ERC721Enumerable": [
+ 793
+ ],
+ "ERC721Events": [
+ 819
+ ],
+ "ERC721Metadata": [
+ 634
+ ],
+ "ERC721UniqueExtensions": [
+ 758
+ ],
+ "ERC721UniqueMintable": [
+ 688
+ ],
+ "ERC721UniqueMintableEvents": [
+ 650
+ ],
+ "EthCrossAccount": [
+ 610
+ ],
+ "TokenProperties": [
+ 357
+ ],
+ "Tuple10": [
+ 763
+ ],
+ "Tuple21": [
+ 620
+ ],
+ "Tuple24": [
+ 615
+ ],
+ "UniqueNFT": [
+ 930
+ ]
+ },
+ "id": 931,
+ "license": "OTHER",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 289,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0",
+ "<",
+ "0.9",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "75:31:2"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "Dummy",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 290,
+ "nodeType": "StructuredDocumentation",
+ "src": "108:29:2",
+ "text": "@dev common stubs holder"
+ },
+ "fullyImplemented": true,
+ "id": 291,
+ "linearizedBaseContracts": [
+ 291
+ ],
+ "name": "Dummy",
+ "nameLocation": "147:5:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 931,
+ "src": "137:20:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 292,
+ "name": "Dummy",
+ "nameLocations": [
+ "179:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "179:5:2"
+ },
+ "id": 293,
+ "nodeType": "InheritanceSpecifier",
+ "src": "179:5:2"
+ }
+ ],
+ "canonicalName": "ERC165",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 301,
+ "linearizedBaseContracts": [
+ 301,
+ 291
+ ],
+ "name": "ERC165",
+ "nameLocation": "169:6:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "functionSelector": "01ffc9a7",
+ "id": 300,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "supportsInterface",
+ "nameLocation": "197:17:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 296,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 295,
+ "mutability": "mutable",
+ "name": "interfaceID",
+ "nameLocation": "222:11:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 300,
+ "src": "215:18:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ },
+ "typeName": {
+ "id": 294,
+ "name": "bytes4",
+ "nodeType": "ElementaryTypeName",
+ "src": "215:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "214:20:2"
+ },
+ "returnParameters": {
+ "id": 299,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 298,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 300,
+ "src": "258:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 297,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "258:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "257:6:2"
+ },
+ "scope": 301,
+ "src": "188:76:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "159:107:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 303,
+ "name": "Dummy",
+ "nameLocations": [
+ "470:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "470:5:2"
+ },
+ "id": 304,
+ "nodeType": "InheritanceSpecifier",
+ "src": "470:5:2"
+ },
+ {
+ "baseName": {
+ "id": 305,
+ "name": "ERC165",
+ "nameLocations": [
+ "477:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "477:6:2"
+ },
+ "id": 306,
+ "nodeType": "InheritanceSpecifier",
+ "src": "477:6:2"
+ }
+ ],
+ "canonicalName": "TokenProperties",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 302,
+ "nodeType": "StructuredDocumentation",
+ "src": "268:173:2",
+ "text": "@title A contract that allows to set and delete token properties and change token property permissions.\n @dev the ERC-165 identifier for this interface is 0x55dba919"
+ },
+ "fullyImplemented": false,
+ "id": 357,
+ "linearizedBaseContracts": [
+ 357,
+ 301,
+ 291
+ ],
+ "name": "TokenProperties",
+ "nameLocation": "451:15:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 307,
+ "nodeType": "StructuredDocumentation",
+ "src": "487:537:2",
+ "text": "@notice Set permissions for token property.\n @dev Throws error if `msg.sender` is not admin or owner of the collection.\n @param key Property key.\n @param isMutable Permission to mutate property.\n @param collectionAdmin Permission to mutate property by collection admin if property is mutable.\n @param tokenOwner Permission to mutate property by token owner if property is mutable.\n @dev EVM selector for this function is: 0x222d97fa,\n or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)"
+ },
+ "functionSelector": "222d97fa",
+ "id": 318,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setTokenPropertyPermission",
+ "nameLocation": "1035:26:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 316,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 309,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "1079:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 318,
+ "src": "1065:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 308,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1065:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 311,
+ "mutability": "mutable",
+ "name": "isMutable",
+ "nameLocation": "1091:9:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 318,
+ "src": "1086:14:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 310,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1086:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 313,
+ "mutability": "mutable",
+ "name": "collectionAdmin",
+ "nameLocation": "1109:15:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 318,
+ "src": "1104:20:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 312,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1104:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 315,
+ "mutability": "mutable",
+ "name": "tokenOwner",
+ "nameLocation": "1133:10:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 318,
+ "src": "1128:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 314,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1128:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1061:85:2"
+ },
+ "returnParameters": {
+ "id": 317,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1155:0:2"
+ },
+ "scope": 357,
+ "src": "1026:130:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 319,
+ "nodeType": "StructuredDocumentation",
+ "src": "1159:334:2",
+ "text": "@notice Set token property value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param key Property key.\n @param value Property value.\n @dev EVM selector for this function is: 0x1752d67b,\n or in textual repr: setProperty(uint256,string,bytes)"
+ },
+ "functionSelector": "1752d67b",
+ "id": 328,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setProperty",
+ "nameLocation": "1504:11:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 326,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 321,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "1527:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 328,
+ "src": "1519:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 320,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1519:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 323,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "1552:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 328,
+ "src": "1538:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 322,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1538:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 325,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "1572:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 328,
+ "src": "1559:18:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 324,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "1559:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1515:65:2"
+ },
+ "returnParameters": {
+ "id": 327,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1589:0:2"
+ },
+ "scope": 357,
+ "src": "1495:95:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 329,
+ "nodeType": "StructuredDocumentation",
+ "src": "1593:321:2",
+ "text": "@notice Set token properties value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param properties settable properties\n @dev EVM selector for this function is: 0x14ed3a6e,\n or in textual repr: setProperties(uint256,(string,bytes)[])"
+ },
+ "functionSelector": "14ed3a6e",
+ "id": 338,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setProperties",
+ "nameLocation": "1925:13:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 336,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 331,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "1947:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 338,
+ "src": "1939:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 330,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1939:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 335,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "1973:10:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 338,
+ "src": "1956:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple21[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 333,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 332,
+ "name": "Tuple21",
+ "nameLocations": [
+ "1956:7:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 620,
+ "src": "1956:7:2"
+ },
+ "referencedDeclaration": 620,
+ "src": "1956:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple21_$620_storage_ptr",
+ "typeString": "struct Tuple21"
+ }
+ },
+ "id": 334,
+ "nodeType": "ArrayTypeName",
+ "src": "1956:9:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple21[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1938:46:2"
+ },
+ "returnParameters": {
+ "id": 337,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1993:0:2"
+ },
+ "scope": 357,
+ "src": "1916:78:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 339,
+ "nodeType": "StructuredDocumentation",
+ "src": "1997:300:2",
+ "text": "@notice Delete token property value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param key Property key.\n @dev EVM selector for this function is: 0x066111d1,\n or in textual repr: deleteProperty(uint256,string)"
+ },
+ "functionSelector": "066111d1",
+ "id": 346,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteProperty",
+ "nameLocation": "2308:14:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 344,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 341,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2331:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 346,
+ "src": "2323:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 340,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2323:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 343,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "2354:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 346,
+ "src": "2340:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 342,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2340:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2322:36:2"
+ },
+ "returnParameters": {
+ "id": 345,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2367:0:2"
+ },
+ "scope": 357,
+ "src": "2299:69:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 347,
+ "nodeType": "StructuredDocumentation",
+ "src": "2371:286:2",
+ "text": "@notice Get token property value.\n @dev Throws error if key not found\n @param tokenId ID of the token.\n @param key Property key.\n @return Property value bytes\n @dev EVM selector for this function is: 0x7228c327,\n or in textual repr: property(uint256,string)"
+ },
+ "functionSelector": "7228c327",
+ "id": 356,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "property",
+ "nameLocation": "2668:8:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 352,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 349,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2685:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 356,
+ "src": "2677:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 348,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2677:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 351,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "2708:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 356,
+ "src": "2694:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 350,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2694:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2676:36:2"
+ },
+ "returnParameters": {
+ "id": 355,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 354,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 356,
+ "src": "2736:12:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 353,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "2736:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2735:14:2"
+ },
+ "scope": 357,
+ "src": "2659:91:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "441:2311:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 359,
+ "name": "Dummy",
+ "nameLocations": [
+ "2907:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "2907:5:2"
+ },
+ "id": 360,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2907:5:2"
+ },
+ {
+ "baseName": {
+ "id": 361,
+ "name": "ERC165",
+ "nameLocations": [
+ "2914:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "2914:6:2"
+ },
+ "id": 362,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2914:6:2"
+ }
+ ],
+ "canonicalName": "Collection",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 358,
+ "nodeType": "StructuredDocumentation",
+ "src": "2754:129:2",
+ "text": "@title A contract that allows you to work with collections.\n @dev the ERC-165 identifier for this interface is 0xb3152af3"
+ },
+ "fullyImplemented": false,
+ "id": 605,
+ "linearizedBaseContracts": [
+ 605,
+ 301,
+ 291
+ ],
+ "name": "Collection",
+ "nameLocation": "2893:10:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 363,
+ "nodeType": "StructuredDocumentation",
+ "src": "2924:215:2",
+ "text": "Set collection property.\n @param key Property key.\n @param value Propery value.\n @dev EVM selector for this function is: 0x2f073f66,\n or in textual repr: setCollectionProperty(string,bytes)"
+ },
+ "functionSelector": "2f073f66",
+ "id": 370,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionProperty",
+ "nameLocation": "3150:21:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 368,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 365,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "3186:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 370,
+ "src": "3172:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 364,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3172:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 367,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "3204:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 370,
+ "src": "3191:18:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 366,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "3191:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3171:39:2"
+ },
+ "returnParameters": {
+ "id": 369,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3219:0:2"
+ },
+ "scope": 605,
+ "src": "3141:79:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 371,
+ "nodeType": "StructuredDocumentation",
+ "src": "3223:220:2",
+ "text": "Set collection properties.\n @param properties Vector of properties key/value pair.\n @dev EVM selector for this function is: 0x50b26b2a,\n or in textual repr: setCollectionProperties((string,bytes)[])"
+ },
+ "functionSelector": "50b26b2a",
+ "id": 378,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionProperties",
+ "nameLocation": "3454:23:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 376,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 375,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "3495:10:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 378,
+ "src": "3478:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple21[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 373,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 372,
+ "name": "Tuple21",
+ "nameLocations": [
+ "3478:7:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 620,
+ "src": "3478:7:2"
+ },
+ "referencedDeclaration": 620,
+ "src": "3478:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple21_$620_storage_ptr",
+ "typeString": "struct Tuple21"
+ }
+ },
+ "id": 374,
+ "nodeType": "ArrayTypeName",
+ "src": "3478:9:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple21[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3477:29:2"
+ },
+ "returnParameters": {
+ "id": 377,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3515:0:2"
+ },
+ "scope": 605,
+ "src": "3445:71:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 379,
+ "nodeType": "StructuredDocumentation",
+ "src": "3519:182:2",
+ "text": "Delete collection property.\n @param key Property key.\n @dev EVM selector for this function is: 0x7b7debce,\n or in textual repr: deleteCollectionProperty(string)"
+ },
+ "functionSelector": "7b7debce",
+ "id": 384,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteCollectionProperty",
+ "nameLocation": "3712:24:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 382,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 381,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "3751:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 384,
+ "src": "3737:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 380,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3737:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3736:19:2"
+ },
+ "returnParameters": {
+ "id": 383,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3764:0:2"
+ },
+ "scope": 605,
+ "src": "3703:62:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 385,
+ "nodeType": "StructuredDocumentation",
+ "src": "3768:192:2",
+ "text": "Delete collection properties.\n @param keys Properties keys.\n @dev EVM selector for this function is: 0xee206ee3,\n or in textual repr: deleteCollectionProperties(string[])"
+ },
+ "functionSelector": "ee206ee3",
+ "id": 391,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteCollectionProperties",
+ "nameLocation": "3971:26:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 389,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 388,
+ "mutability": "mutable",
+ "name": "keys",
+ "nameLocation": "4014:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 391,
+ "src": "3998:20:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
+ "typeString": "string[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 386,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3998:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "id": 387,
+ "nodeType": "ArrayTypeName",
+ "src": "3998:8:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
+ "typeString": "string[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3997:22:2"
+ },
+ "returnParameters": {
+ "id": 390,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "4028:0:2"
+ },
+ "scope": 605,
+ "src": "3962:67:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 392,
+ "nodeType": "StructuredDocumentation",
+ "src": "4032:277:2",
+ "text": "Get collection property.\n @dev Throws error if key not found.\n @param key Property key.\n @return bytes The property corresponding to the key.\n @dev EVM selector for this function is: 0xcf24fd6d,\n or in textual repr: collectionProperty(string)"
+ },
+ "functionSelector": "cf24fd6d",
+ "id": 399,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionProperty",
+ "nameLocation": "4320:18:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 395,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 394,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "4353:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 399,
+ "src": "4339:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 393,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "4339:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4338:19:2"
+ },
+ "returnParameters": {
+ "id": 398,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 397,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 399,
+ "src": "4381:12:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 396,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "4381:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4380:14:2"
+ },
+ "scope": 605,
+ "src": "4311:84:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 400,
+ "nodeType": "StructuredDocumentation",
+ "src": "4398:265:2",
+ "text": "Get collection properties.\n @param keys Properties keys. Empty keys for all propertyes.\n @return Vector of properties key/value pairs.\n @dev EVM selector for this function is: 0x285fb8e6,\n or in textual repr: collectionProperties(string[])"
+ },
+ "functionSelector": "285fb8e6",
+ "id": 410,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionProperties",
+ "nameLocation": "4674:20:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 404,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 403,
+ "mutability": "mutable",
+ "name": "keys",
+ "nameLocation": "4711:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 410,
+ "src": "4695:20:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
+ "typeString": "string[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 401,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "4695:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "id": 402,
+ "nodeType": "ArrayTypeName",
+ "src": "4695:8:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
+ "typeString": "string[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4694:22:2"
+ },
+ "returnParameters": {
+ "id": 409,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 408,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 410,
+ "src": "4740:16:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple21[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 406,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 405,
+ "name": "Tuple21",
+ "nameLocations": [
+ "4740:7:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 620,
+ "src": "4740:7:2"
+ },
+ "referencedDeclaration": 620,
+ "src": "4740:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple21_$620_storage_ptr",
+ "typeString": "struct Tuple21"
+ }
+ },
+ "id": 407,
+ "nodeType": "ArrayTypeName",
+ "src": "4740:9:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple21[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4739:18:2"
+ },
+ "scope": 605,
+ "src": "4665:93:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 411,
+ "nodeType": "StructuredDocumentation",
+ "src": "4761:370:2",
+ "text": "Set the sponsor of the collection.\n @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.\n @param sponsor Address of the sponsor from whose account funds will be debited for operations with the contract.\n @dev EVM selector for this function is: 0x7623402e,\n or in textual repr: setCollectionSponsor(address)"
+ },
+ "functionSelector": "7623402e",
+ "id": 416,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionSponsor",
+ "nameLocation": "5142:20:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 414,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 413,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "5171:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 416,
+ "src": "5163:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 412,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5163:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5162:17:2"
+ },
+ "returnParameters": {
+ "id": 415,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5188:0:2"
+ },
+ "scope": 605,
+ "src": "5133:56:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 417,
+ "nodeType": "StructuredDocumentation",
+ "src": "5192:399:2",
+ "text": "Set the sponsor of the collection.\n @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.\n @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\n @dev EVM selector for this function is: 0x84a1d5a8,\n or in textual repr: setCollectionSponsorCross((address,uint256))"
+ },
+ "functionSelector": "84a1d5a8",
+ "id": 423,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionSponsorCross",
+ "nameLocation": "5602:25:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 421,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 420,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "5651:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 423,
+ "src": "5628:30:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 419,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 418,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "5628:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "5628:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "5628:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5627:32:2"
+ },
+ "returnParameters": {
+ "id": 422,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5668:0:2"
+ },
+ "scope": 605,
+ "src": "5593:76:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 424,
+ "nodeType": "StructuredDocumentation",
+ "src": "5672:152:2",
+ "text": "Whether there is a pending sponsor.\n @dev EVM selector for this function is: 0x058ac185,\n or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "functionSelector": "058ac185",
+ "id": 429,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "hasCollectionPendingSponsor",
+ "nameLocation": "5835:27:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 425,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5862:2:2"
+ },
+ "returnParameters": {
+ "id": 428,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 427,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 429,
+ "src": "5888:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 426,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "5888:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5887:6:2"
+ },
+ "scope": 605,
+ "src": "5826:68:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 430,
+ "nodeType": "StructuredDocumentation",
+ "src": "5897:256:2",
+ "text": "Collection sponsorship confirmation.\n @dev After setting the sponsor for the collection, it must be confirmed with this function.\n @dev EVM selector for this function is: 0x3c50e97a,\n or in textual repr: confirmCollectionSponsorship()"
+ },
+ "functionSelector": "3c50e97a",
+ "id": 433,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "confirmCollectionSponsorship",
+ "nameLocation": "6164:28:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 431,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6192:2:2"
+ },
+ "returnParameters": {
+ "id": 432,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6203:0:2"
+ },
+ "scope": 605,
+ "src": "6155:49:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 434,
+ "nodeType": "StructuredDocumentation",
+ "src": "6207:139:2",
+ "text": "Remove collection sponsor.\n @dev EVM selector for this function is: 0x6e0326a3,\n or in textual repr: removeCollectionSponsor()"
+ },
+ "functionSelector": "6e0326a3",
+ "id": 437,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionSponsor",
+ "nameLocation": "6357:23:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 435,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6380:2:2"
+ },
+ "returnParameters": {
+ "id": 436,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6391:0:2"
+ },
+ "scope": 605,
+ "src": "6348:44:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 438,
+ "nodeType": "StructuredDocumentation",
+ "src": "6395:270:2",
+ "text": "Get current sponsor.\n @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw.\n @dev EVM selector for this function is: 0x6ec0a9f1,\n or in textual repr: collectionSponsor()"
+ },
+ "functionSelector": "6ec0a9f1",
+ "id": 444,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionSponsor",
+ "nameLocation": "6676:17:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 439,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6693:2:2"
+ },
+ "returnParameters": {
+ "id": 443,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 442,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 444,
+ "src": "6719:14:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple24_$615_memory_ptr",
+ "typeString": "struct Tuple24"
+ },
+ "typeName": {
+ "id": 441,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 440,
+ "name": "Tuple24",
+ "nameLocations": [
+ "6719:7:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 615,
+ "src": "6719:7:2"
+ },
+ "referencedDeclaration": 615,
+ "src": "6719:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple24_$615_storage_ptr",
+ "typeString": "struct Tuple24"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6718:16:2"
+ },
+ "scope": 605,
+ "src": "6667:68:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 445,
+ "nodeType": "StructuredDocumentation",
+ "src": "6738:459:2",
+ "text": "Set limits for the collection.\n @dev Throws error if limit not found.\n @param limit Name of the limit. Valid names:\n \t\"accountTokenOwnershipLimit\",\n \t\"sponsoredDataSize\",\n \t\"sponsoredDataRateLimit\",\n \t\"tokenLimit\",\n \t\"sponsorTransferTimeout\",\n \t\"sponsorApproveTimeout\"\n @param value Value of the limit.\n @dev EVM selector for this function is: 0x6a3841db,\n or in textual repr: setCollectionLimit(string,uint32)"
+ },
+ "functionSelector": "6a3841db",
+ "id": 452,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionLimit",
+ "nameLocation": "7208:18:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 450,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 447,
+ "mutability": "mutable",
+ "name": "limit",
+ "nameLocation": "7241:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 452,
+ "src": "7227:19:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 446,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "7227:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 449,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "7255:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 452,
+ "src": "7248:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ },
+ "typeName": {
+ "id": 448,
+ "name": "uint32",
+ "nodeType": "ElementaryTypeName",
+ "src": "7248:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7226:35:2"
+ },
+ "returnParameters": {
+ "id": 451,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7270:0:2"
+ },
+ "scope": 605,
+ "src": "7199:72:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 453,
+ "nodeType": "StructuredDocumentation",
+ "src": "7274:356:2",
+ "text": "Set limits for the collection.\n @dev Throws error if limit not found.\n @param limit Name of the limit. Valid names:\n \t\"ownerCanTransfer\",\n \t\"ownerCanDestroy\",\n \t\"transfersEnabled\"\n @param value Value of the limit.\n @dev EVM selector for this function is: 0x993b7fba,\n or in textual repr: setCollectionLimit(string,bool)"
+ },
+ "functionSelector": "993b7fba",
+ "id": 460,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionLimit",
+ "nameLocation": "7641:18:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 458,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 455,
+ "mutability": "mutable",
+ "name": "limit",
+ "nameLocation": "7674:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 460,
+ "src": "7660:19:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 454,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "7660:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 457,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "7686:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 460,
+ "src": "7681:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 456,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "7681:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7659:33:2"
+ },
+ "returnParameters": {
+ "id": 459,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7701:0:2"
+ },
+ "scope": 605,
+ "src": "7632:70:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 461,
+ "nodeType": "StructuredDocumentation",
+ "src": "7705:126:2",
+ "text": "Get contract address.\n @dev EVM selector for this function is: 0xf6b4dfb4,\n or in textual repr: contractAddress()"
+ },
+ "functionSelector": "f6b4dfb4",
+ "id": 466,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "contractAddress",
+ "nameLocation": "7842:15:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 462,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7857:2:2"
+ },
+ "returnParameters": {
+ "id": 465,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 464,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 466,
+ "src": "7883:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 463,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "7883:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7882:9:2"
+ },
+ "scope": 605,
+ "src": "7833:59:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 467,
+ "nodeType": "StructuredDocumentation",
+ "src": "7895:209:2",
+ "text": "Add collection admin.\n @param newAdmin Cross account administrator address.\n @dev EVM selector for this function is: 0x859aa7d6,\n or in textual repr: addCollectionAdminCross((address,uint256))"
+ },
+ "functionSelector": "859aa7d6",
+ "id": 473,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addCollectionAdminCross",
+ "nameLocation": "8115:23:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 471,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 470,
+ "mutability": "mutable",
+ "name": "newAdmin",
+ "nameLocation": "8162:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 473,
+ "src": "8139:31:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 469,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 468,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "8139:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "8139:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "8139:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8138:33:2"
+ },
+ "returnParameters": {
+ "id": 472,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8180:0:2"
+ },
+ "scope": 605,
+ "src": "8106:75:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 474,
+ "nodeType": "StructuredDocumentation",
+ "src": "8184:212:2",
+ "text": "Remove collection admin.\n @param admin Cross account administrator address.\n @dev EVM selector for this function is: 0x6c0cd173,\n or in textual repr: removeCollectionAdminCross((address,uint256))"
+ },
+ "functionSelector": "6c0cd173",
+ "id": 480,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionAdminCross",
+ "nameLocation": "8407:26:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 478,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 477,
+ "mutability": "mutable",
+ "name": "admin",
+ "nameLocation": "8457:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 480,
+ "src": "8434:28:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 476,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 475,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "8434:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "8434:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "8434:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8433:30:2"
+ },
+ "returnParameters": {
+ "id": 479,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8472:0:2"
+ },
+ "scope": 605,
+ "src": "8398:75:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 481,
+ "nodeType": "StructuredDocumentation",
+ "src": "8476:193:2",
+ "text": "Add collection admin.\n @param newAdmin Address of the added administrator.\n @dev EVM selector for this function is: 0x92e462c7,\n or in textual repr: addCollectionAdmin(address)"
+ },
+ "functionSelector": "92e462c7",
+ "id": 486,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addCollectionAdmin",
+ "nameLocation": "8680:18:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 484,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 483,
+ "mutability": "mutable",
+ "name": "newAdmin",
+ "nameLocation": "8707:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 486,
+ "src": "8699:16:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 482,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "8699:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8698:18:2"
+ },
+ "returnParameters": {
+ "id": 485,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8725:0:2"
+ },
+ "scope": 605,
+ "src": "8671:55:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 487,
+ "nodeType": "StructuredDocumentation",
+ "src": "8729:203:2",
+ "text": "Remove collection admin.\n @param admin Address of the removed administrator.\n @dev EVM selector for this function is: 0xfafd7b42,\n or in textual repr: removeCollectionAdmin(address)"
+ },
+ "functionSelector": "fafd7b42",
+ "id": 492,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionAdmin",
+ "nameLocation": "8943:21:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 490,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 489,
+ "mutability": "mutable",
+ "name": "admin",
+ "nameLocation": "8973:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 492,
+ "src": "8965:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 488,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "8965:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8964:15:2"
+ },
+ "returnParameters": {
+ "id": 491,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8988:0:2"
+ },
+ "scope": 605,
+ "src": "8934:55:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 493,
+ "nodeType": "StructuredDocumentation",
+ "src": "8992:251:2",
+ "text": "Toggle accessibility of collection nesting.\n @param enable If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\n @dev EVM selector for this function is: 0x112d4586,\n or in textual repr: setCollectionNesting(bool)"
+ },
+ "functionSelector": "112d4586",
+ "id": 498,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionNesting",
+ "nameLocation": "9254:20:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 496,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 495,
+ "mutability": "mutable",
+ "name": "enable",
+ "nameLocation": "9280:6:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 498,
+ "src": "9275:11:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 494,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "9275:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "9274:13:2"
+ },
+ "returnParameters": {
+ "id": 497,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "9296:0:2"
+ },
+ "scope": 605,
+ "src": "9245:52:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 499,
+ "nodeType": "StructuredDocumentation",
+ "src": "9300:367:2",
+ "text": "Toggle accessibility of collection nesting.\n @param enable If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\n @param collections Addresses of collections that will be available for nesting.\n @dev EVM selector for this function is: 0x64872396,\n or in textual repr: setCollectionNesting(bool,address[])"
+ },
+ "functionSelector": "64872396",
+ "id": 507,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionNesting",
+ "nameLocation": "9678:20:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 505,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 501,
+ "mutability": "mutable",
+ "name": "enable",
+ "nameLocation": "9704:6:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 507,
+ "src": "9699:11:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 500,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "9699:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 504,
+ "mutability": "mutable",
+ "name": "collections",
+ "nameLocation": "9729:11:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 507,
+ "src": "9712:28:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
+ "typeString": "address[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 502,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "9712:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "id": 503,
+ "nodeType": "ArrayTypeName",
+ "src": "9712:9:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
+ "typeString": "address[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "9698:43:2"
+ },
+ "returnParameters": {
+ "id": 506,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "9750:0:2"
+ },
+ "scope": 605,
+ "src": "9669:82:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 508,
+ "nodeType": "StructuredDocumentation",
+ "src": "9754:217:2",
+ "text": "Set the collection access method.\n @param mode Access mode\n \t0 for Normal\n \t1 for AllowList\n @dev EVM selector for this function is: 0x41835d4c,\n or in textual repr: setCollectionAccess(uint8)"
+ },
+ "functionSelector": "41835d4c",
+ "id": 513,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionAccess",
+ "nameLocation": "9982:19:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 511,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 510,
+ "mutability": "mutable",
+ "name": "mode",
+ "nameLocation": "10008:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 513,
+ "src": "10002:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ },
+ "typeName": {
+ "id": 509,
+ "name": "uint8",
+ "nodeType": "ElementaryTypeName",
+ "src": "10002:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10001:12:2"
+ },
+ "returnParameters": {
+ "id": 512,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10022:0:2"
+ },
+ "scope": 605,
+ "src": "9973:50:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 514,
+ "nodeType": "StructuredDocumentation",
+ "src": "10026:201:2",
+ "text": "Checks that user allowed to operate with collection.\n @param user User address to check.\n @dev EVM selector for this function is: 0xd63a8e11,\n or in textual repr: allowed(address)"
+ },
+ "functionSelector": "d63a8e11",
+ "id": 521,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "allowed",
+ "nameLocation": "10238:7:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 517,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 516,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10254:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 521,
+ "src": "10246:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 515,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "10246:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10245:14:2"
+ },
+ "returnParameters": {
+ "id": 520,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 519,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 521,
+ "src": "10283:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 518,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "10283:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10282:6:2"
+ },
+ "scope": 605,
+ "src": "10229:60:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 522,
+ "nodeType": "StructuredDocumentation",
+ "src": "10292:203:2",
+ "text": "Add the user to the allowed list.\n @param user Address of a trusted user.\n @dev EVM selector for this function is: 0x67844fe6,\n or in textual repr: addToCollectionAllowList(address)"
+ },
+ "functionSelector": "67844fe6",
+ "id": 527,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addToCollectionAllowList",
+ "nameLocation": "10506:24:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 525,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 524,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10539:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 527,
+ "src": "10531:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 523,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "10531:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10530:14:2"
+ },
+ "returnParameters": {
+ "id": 526,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10553:0:2"
+ },
+ "scope": 605,
+ "src": "10497:57:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 528,
+ "nodeType": "StructuredDocumentation",
+ "src": "10557:211:2",
+ "text": "Add user to allowed list.\n @param user User cross account address.\n @dev EVM selector for this function is: 0xa0184a3a,\n or in textual repr: addToCollectionAllowListCross((address,uint256))"
+ },
+ "functionSelector": "a0184a3a",
+ "id": 534,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addToCollectionAllowListCross",
+ "nameLocation": "10779:29:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 532,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 531,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10832:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 534,
+ "src": "10809:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 530,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 529,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "10809:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "10809:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "10809:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10808:29:2"
+ },
+ "returnParameters": {
+ "id": 533,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10846:0:2"
+ },
+ "scope": 605,
+ "src": "10770:77:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 535,
+ "nodeType": "StructuredDocumentation",
+ "src": "10850:213:2",
+ "text": "Remove the user from the allowed list.\n @param user Address of a removed user.\n @dev EVM selector for this function is: 0x85c51acb,\n or in textual repr: removeFromCollectionAllowList(address)"
+ },
+ "functionSelector": "85c51acb",
+ "id": 540,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeFromCollectionAllowList",
+ "nameLocation": "11074:29:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 538,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 537,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11112:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 540,
+ "src": "11104:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 536,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "11104:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11103:14:2"
+ },
+ "returnParameters": {
+ "id": 539,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11126:0:2"
+ },
+ "scope": 605,
+ "src": "11065:62:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 541,
+ "nodeType": "StructuredDocumentation",
+ "src": "11130:221:2",
+ "text": "Remove user from allowed list.\n @param user User cross account address.\n @dev EVM selector for this function is: 0x09ba452a,\n or in textual repr: removeFromCollectionAllowListCross((address,uint256))"
+ },
+ "functionSelector": "09ba452a",
+ "id": 547,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeFromCollectionAllowListCross",
+ "nameLocation": "11362:34:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 545,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 544,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11420:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 547,
+ "src": "11397:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 543,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 542,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "11397:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "11397:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "11397:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11396:29:2"
+ },
+ "returnParameters": {
+ "id": 546,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11434:0:2"
+ },
+ "scope": 605,
+ "src": "11353:82:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 548,
+ "nodeType": "StructuredDocumentation",
+ "src": "11438:185:2",
+ "text": "Switch permission for minting.\n @param mode Enable if \"true\".\n @dev EVM selector for this function is: 0x00018e84,\n or in textual repr: setCollectionMintMode(bool)"
+ },
+ "functionSelector": "00018e84",
+ "id": 553,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionMintMode",
+ "nameLocation": "11634:21:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 551,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 550,
+ "mutability": "mutable",
+ "name": "mode",
+ "nameLocation": "11661:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 553,
+ "src": "11656:9:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 549,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "11656:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11655:11:2"
+ },
+ "returnParameters": {
+ "id": 552,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11675:0:2"
+ },
+ "scope": 605,
+ "src": "11625:51:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 554,
+ "nodeType": "StructuredDocumentation",
+ "src": "11679:262:2",
+ "text": "Check that account is the owner or admin of the collection\n @param user account to verify\n @return \"true\" if account is the owner or admin\n @dev EVM selector for this function is: 0x9811b0c7,\n or in textual repr: isOwnerOrAdmin(address)"
+ },
+ "functionSelector": "9811b0c7",
+ "id": 561,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isOwnerOrAdmin",
+ "nameLocation": "11952:14:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 557,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 556,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11975:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 561,
+ "src": "11967:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 555,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "11967:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11966:14:2"
+ },
+ "returnParameters": {
+ "id": 560,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 559,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 561,
+ "src": "12004:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 558,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "12004:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12003:6:2"
+ },
+ "scope": 605,
+ "src": "11943:67:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 562,
+ "nodeType": "StructuredDocumentation",
+ "src": "12013:288:2",
+ "text": "Check that account is the owner or admin of the collection\n @param user User cross account to verify\n @return \"true\" if account is the owner or admin\n @dev EVM selector for this function is: 0x3e75a905,\n or in textual repr: isOwnerOrAdminCross((address,uint256))"
+ },
+ "functionSelector": "3e75a905",
+ "id": 570,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isOwnerOrAdminCross",
+ "nameLocation": "12312:19:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 566,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 565,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "12355:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 570,
+ "src": "12332:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 564,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 563,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "12332:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "12332:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "12332:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12331:29:2"
+ },
+ "returnParameters": {
+ "id": 569,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 568,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 570,
+ "src": "12384:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 567,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "12384:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12383:6:2"
+ },
+ "scope": 605,
+ "src": "12303:87:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 571,
+ "nodeType": "StructuredDocumentation",
+ "src": "12393:187:2",
+ "text": "Returns collection type\n @return `Fungible` or `NFT` or `ReFungible`\n @dev EVM selector for this function is: 0xd34b55b8,\n or in textual repr: uniqueCollectionType()"
+ },
+ "functionSelector": "d34b55b8",
+ "id": 576,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "uniqueCollectionType",
+ "nameLocation": "12591:20:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 572,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "12611:2:2"
+ },
+ "returnParameters": {
+ "id": 575,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 574,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 576,
+ "src": "12637:13:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 573,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "12637:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12636:15:2"
+ },
+ "scope": 605,
+ "src": "12582:70:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 577,
+ "nodeType": "StructuredDocumentation",
+ "src": "12655:272:2",
+ "text": "Get collection owner.\n @return Tuble with sponsor address and his substrate mirror.\n If address is canonical then substrate mirror is zero and vice versa.\n @dev EVM selector for this function is: 0xdf727d3b,\n or in textual repr: collectionOwner()"
+ },
+ "functionSelector": "df727d3b",
+ "id": 583,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionOwner",
+ "nameLocation": "12938:15:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 578,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "12953:2:2"
+ },
+ "returnParameters": {
+ "id": 582,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 581,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 583,
+ "src": "12979:22:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 580,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 579,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "12979:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "12979:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "12979:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12978:24:2"
+ },
+ "scope": 605,
+ "src": "12929:74:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 584,
+ "nodeType": "StructuredDocumentation",
+ "src": "13006:258:2",
+ "text": "Changes collection owner to another account\n @dev Owner can be changed only by current owner\n @param newOwner new owner account\n @dev EVM selector for this function is: 0x4f53e226,\n or in textual repr: changeCollectionOwner(address)"
+ },
+ "functionSelector": "4f53e226",
+ "id": 589,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "changeCollectionOwner",
+ "nameLocation": "13275:21:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 587,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 586,
+ "mutability": "mutable",
+ "name": "newOwner",
+ "nameLocation": "13305:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 589,
+ "src": "13297:16:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 585,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "13297:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13296:18:2"
+ },
+ "returnParameters": {
+ "id": 588,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "13323:0:2"
+ },
+ "scope": 605,
+ "src": "13266:58:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 590,
+ "nodeType": "StructuredDocumentation",
+ "src": "13327:291:2",
+ "text": "Get collection administrators\n @return Vector of tuples with admins address and his substrate mirror.\n If address is canonical then substrate mirror is zero and vice versa.\n @dev EVM selector for this function is: 0x5813216b,\n or in textual repr: collectionAdmins()"
+ },
+ "functionSelector": "5813216b",
+ "id": 597,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionAdmins",
+ "nameLocation": "13629:16:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 591,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "13645:2:2"
+ },
+ "returnParameters": {
+ "id": 596,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 595,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 597,
+ "src": "13671:24:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_EthCrossAccount_$610_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct EthCrossAccount[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 593,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 592,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "13671:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "13671:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "13671:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "id": 594,
+ "nodeType": "ArrayTypeName",
+ "src": "13671:17:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_EthCrossAccount_$610_storage_$dyn_storage_ptr",
+ "typeString": "struct EthCrossAccount[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13670:26:2"
+ },
+ "scope": 605,
+ "src": "13620:77:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 598,
+ "nodeType": "StructuredDocumentation",
+ "src": "13700:266:2",
+ "text": "Changes collection owner to another account\n @dev Owner can be changed only by current owner\n @param newOwner new owner cross account\n @dev EVM selector for this function is: 0xe5c9913f,\n or in textual repr: setOwnerCross((address,uint256))"
+ },
+ "functionSelector": "e5c9913f",
+ "id": 604,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setOwnerCross",
+ "nameLocation": "13977:13:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 602,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 601,
+ "mutability": "mutable",
+ "name": "newOwner",
+ "nameLocation": "14014:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 604,
+ "src": "13991:31:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 600,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 599,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "13991:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "13991:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "13991:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13990:33:2"
+ },
+ "returnParameters": {
+ "id": 603,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "14032:0:2"
+ },
+ "scope": 605,
+ "src": "13968:65:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "2883:11152:2",
+ "usedErrors": []
+ },
+ {
+ "canonicalName": "EthCrossAccount",
+ "id": 610,
+ "members": [
+ {
+ "constant": false,
+ "id": 607,
+ "mutability": "mutable",
+ "name": "eth",
+ "nameLocation": "14101:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 610,
+ "src": "14093:11:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 606,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "14093:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 609,
+ "mutability": "mutable",
+ "name": "sub",
+ "nameLocation": "14115:3:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 610,
+ "src": "14107:11:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 608,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "14107:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "EthCrossAccount",
+ "nameLocation": "14074:15:2",
+ "nodeType": "StructDefinition",
+ "scope": 931,
+ "src": "14067:54:2",
+ "visibility": "public"
+ },
+ {
+ "canonicalName": "Tuple24",
+ "id": 615,
+ "members": [
+ {
+ "constant": false,
+ "id": 612,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "14175:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 615,
+ "src": "14167:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 611,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "14167:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 614,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "14193:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 615,
+ "src": "14185:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 613,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "14185:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple24",
+ "nameLocation": "14156:7:2",
+ "nodeType": "StructDefinition",
+ "scope": 931,
+ "src": "14149:54:2",
+ "visibility": "public"
+ },
+ {
+ "canonicalName": "Tuple21",
+ "id": 620,
+ "members": [
+ {
+ "constant": false,
+ "id": 617,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "14256:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 620,
+ "src": "14249:14:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 616,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "14249:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 619,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "14272:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 620,
+ "src": "14266:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 618,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "14266:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple21",
+ "nameLocation": "14238:7:2",
+ "nodeType": "StructDefinition",
+ "scope": 931,
+ "src": "14231:51:2",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 622,
+ "name": "Dummy",
+ "nameLocations": [
+ "14505:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "14505:5:2"
+ },
+ "id": 623,
+ "nodeType": "InheritanceSpecifier",
+ "src": "14505:5:2"
+ },
+ {
+ "baseName": {
+ "id": 624,
+ "name": "ERC165",
+ "nameLocations": [
+ "14512:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "14512:6:2"
+ },
+ "id": 625,
+ "nodeType": "InheritanceSpecifier",
+ "src": "14512:6:2"
+ }
+ ],
+ "canonicalName": "ERC721Metadata",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 621,
+ "nodeType": "StructuredDocumentation",
+ "src": "14284:193:2",
+ "text": "@title ERC-721 Non-Fungible Token Standard, optional metadata extension\n @dev See https://eips.ethereum.org/EIPS/eip-721\n @dev the ERC-165 identifier for this interface is 0x5b5e139f"
+ },
+ "fullyImplemented": false,
+ "id": 634,
+ "linearizedBaseContracts": [
+ 634,
+ 301,
+ 291
+ ],
+ "name": "ERC721Metadata",
+ "nameLocation": "14487:14:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 626,
+ "nodeType": "StructuredDocumentation",
+ "src": "15143:784:2",
+ "text": "@notice A distinct Uniform Resource Identifier (URI) for a given asset.\n @dev If the token has a `url` property and it is not empty, it is returned.\n 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`.\n If the collection property `baseURI` is empty or absent, return \"\" (empty string)\n otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix\n otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).\n @return token's const_metadata\n @dev EVM selector for this function is: 0xc87b56dd,\n or in textual repr: tokenURI(uint256)"
+ },
+ "functionSelector": "c87b56dd",
+ "id": 633,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenURI",
+ "nameLocation": "15938:8:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 629,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 628,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "15955:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 633,
+ "src": "15947:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 627,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "15947:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "15946:17:2"
+ },
+ "returnParameters": {
+ "id": 632,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 631,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 633,
+ "src": "15987:13:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 630,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "15987:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "15986:15:2"
+ },
+ "scope": 634,
+ "src": "15929:73:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "14477:1527:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 636,
+ "name": "Dummy",
+ "nameLocations": [
+ "16168:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "16168:5:2"
+ },
+ "id": 637,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16168:5:2"
+ },
+ {
+ "baseName": {
+ "id": 638,
+ "name": "ERC165",
+ "nameLocations": [
+ "16175:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "16175:6:2"
+ },
+ "id": 639,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16175:6:2"
+ }
+ ],
+ "canonicalName": "ERC721Burnable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 635,
+ "nodeType": "StructuredDocumentation",
+ "src": "16006:134:2",
+ "text": "@title ERC721 Token that can be irreversibly burned (destroyed).\n @dev the ERC-165 identifier for this interface is 0x42966c68"
+ },
+ "fullyImplemented": false,
+ "id": 646,
+ "linearizedBaseContracts": [
+ 646,
+ 301,
+ 291
+ ],
+ "name": "ERC721Burnable",
+ "nameLocation": "16150:14:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 640,
+ "nodeType": "StructuredDocumentation",
+ "src": "16185:295:2",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current NFT owner, or an authorized\n operator of the current owner.\n @param tokenId The NFT to approve\n @dev EVM selector for this function is: 0x42966c68,\n or in textual repr: burn(uint256)"
+ },
+ "functionSelector": "42966c68",
+ "id": 645,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burn",
+ "nameLocation": "16491:4:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 643,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 642,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "16504:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 645,
+ "src": "16496:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 641,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "16496:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "16495:17:2"
+ },
+ "returnParameters": {
+ "id": 644,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16521:0:2"
+ },
+ "scope": 646,
+ "src": "16482:40:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "16140:384:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ERC721UniqueMintableEvents",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 647,
+ "nodeType": "StructuredDocumentation",
+ "src": "16526:27:2",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 650,
+ "linearizedBaseContracts": [
+ 650
+ ],
+ "name": "ERC721UniqueMintableEvents",
+ "nameLocation": "16563:26:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "b828d9b5c78095deeeeff2eca2e5d4fe046ce3feb4c99702624a3fd384ad2dbc",
+ "id": 649,
+ "name": "MintingFinished",
+ "nameLocation": "16599:15:2",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 648,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16614:2:2"
+ },
+ "src": "16593:24:2"
+ }
+ ],
+ "scope": 931,
+ "src": "16553:66:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 652,
+ "name": "Dummy",
+ "nameLocations": [
+ "16753:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "16753:5:2"
+ },
+ "id": 653,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16753:5:2"
+ },
+ {
+ "baseName": {
+ "id": 654,
+ "name": "ERC165",
+ "nameLocations": [
+ "16760:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "16760:6:2"
+ },
+ "id": 655,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16760:6:2"
+ },
+ {
+ "baseName": {
+ "id": 656,
+ "name": "ERC721UniqueMintableEvents",
+ "nameLocations": [
+ "16768:26:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 650,
+ "src": "16768:26:2"
+ },
+ "id": 657,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16768:26:2"
+ }
+ ],
+ "canonicalName": "ERC721UniqueMintable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 651,
+ "nodeType": "StructuredDocumentation",
+ "src": "16621:98:2",
+ "text": "@title ERC721 minting logic.\n @dev the ERC-165 identifier for this interface is 0x476ff149"
+ },
+ "fullyImplemented": false,
+ "id": 688,
+ "linearizedBaseContracts": [
+ 688,
+ 650,
+ 301,
+ 291
+ ],
+ "name": "ERC721UniqueMintable",
+ "nameLocation": "16729:20:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 658,
+ "nodeType": "StructuredDocumentation",
+ "src": "16798:99:2",
+ "text": "@dev EVM selector for this function is: 0x05d2035b,\n or in textual repr: mintingFinished()"
+ },
+ "functionSelector": "05d2035b",
+ "id": 663,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mintingFinished",
+ "nameLocation": "16908:15:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 659,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16923:2:2"
+ },
+ "returnParameters": {
+ "id": 662,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 661,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 663,
+ "src": "16949:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 660,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "16949:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "16948:6:2"
+ },
+ "scope": 688,
+ "src": "16899:56:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 664,
+ "nodeType": "StructuredDocumentation",
+ "src": "16958:215:2",
+ "text": "@notice Function to mint token.\n @param to The new owner\n @return uint256 The id of the newly minted token\n @dev EVM selector for this function is: 0x6a627842,\n or in textual repr: mint(address)"
+ },
+ "functionSelector": "6a627842",
+ "id": 671,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mint",
+ "nameLocation": "17184:4:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 667,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 666,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "17197:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 671,
+ "src": "17189:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 665,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "17189:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17188:12:2"
+ },
+ "returnParameters": {
+ "id": 670,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 669,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 671,
+ "src": "17219:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 668,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "17219:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17218:9:2"
+ },
+ "scope": 688,
+ "src": "17175:53:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 672,
+ "nodeType": "StructuredDocumentation",
+ "src": "17656:332:2",
+ "text": "@notice Function to mint token with the given tokenUri.\n @param to The new owner\n @param tokenUri Token URI that would be stored in the NFT properties\n @return uint256 The id of the newly minted token\n @dev EVM selector for this function is: 0x45c17782,\n or in textual repr: mintWithTokenURI(address,string)"
+ },
+ "functionSelector": "45c17782",
+ "id": 681,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mintWithTokenURI",
+ "nameLocation": "17999:16:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 677,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 674,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "18024:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 681,
+ "src": "18016:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 673,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "18016:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 676,
+ "mutability": "mutable",
+ "name": "tokenUri",
+ "nameLocation": "18042:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 681,
+ "src": "18028:22:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 675,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "18028:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "18015:36:2"
+ },
+ "returnParameters": {
+ "id": 680,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 679,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 681,
+ "src": "18070:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 678,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "18070:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "18069:9:2"
+ },
+ "scope": 688,
+ "src": "17990:89:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 682,
+ "nodeType": "StructuredDocumentation",
+ "src": "18663:123:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x7d64bcb4,\n or in textual repr: finishMinting()"
+ },
+ "functionSelector": "7d64bcb4",
+ "id": 687,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "finishMinting",
+ "nameLocation": "18797:13:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 683,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "18810:2:2"
+ },
+ "returnParameters": {
+ "id": 686,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 685,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 687,
+ "src": "18831:4:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 684,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "18831:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "18830:6:2"
+ },
+ "scope": 688,
+ "src": "18788:49:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "16719:2120:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 690,
+ "name": "Dummy",
+ "nameLocations": [
+ "18983:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "18983:5:2"
+ },
+ "id": 691,
+ "nodeType": "InheritanceSpecifier",
+ "src": "18983:5:2"
+ },
+ {
+ "baseName": {
+ "id": 692,
+ "name": "ERC165",
+ "nameLocations": [
+ "18990:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "18990:6:2"
+ },
+ "id": 693,
+ "nodeType": "InheritanceSpecifier",
+ "src": "18990:6:2"
+ }
+ ],
+ "canonicalName": "ERC721UniqueExtensions",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 689,
+ "nodeType": "StructuredDocumentation",
+ "src": "18841:106:2",
+ "text": "@title Unique extensions for ERC721.\n @dev the ERC-165 identifier for this interface is 0x244543ee"
+ },
+ "fullyImplemented": false,
+ "id": 758,
+ "linearizedBaseContracts": [
+ 758,
+ 301,
+ 291
+ ],
+ "name": "ERC721UniqueExtensions",
+ "nameLocation": "18957:22:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 694,
+ "nodeType": "StructuredDocumentation",
+ "src": "19000:162:2",
+ "text": "@notice A descriptive name for a collection of NFTs in this contract\n @dev EVM selector for this function is: 0x06fdde03,\n or in textual repr: name()"
+ },
+ "functionSelector": "06fdde03",
+ "id": 699,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "name",
+ "nameLocation": "19173:4:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 695,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19177:2:2"
+ },
+ "returnParameters": {
+ "id": 698,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 697,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 699,
+ "src": "19203:13:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 696,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "19203:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19202:15:2"
+ },
+ "scope": 758,
+ "src": "19164:54:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 700,
+ "nodeType": "StructuredDocumentation",
+ "src": "19221:149:2",
+ "text": "@notice An abbreviated name for NFTs in this contract\n @dev EVM selector for this function is: 0x95d89b41,\n or in textual repr: symbol()"
+ },
+ "functionSelector": "95d89b41",
+ "id": 705,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "symbol",
+ "nameLocation": "19381:6:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 701,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19387:2:2"
+ },
+ "returnParameters": {
+ "id": 704,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 703,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 705,
+ "src": "19413:13:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 702,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "19413:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19412:15:2"
+ },
+ "scope": 758,
+ "src": "19372:56:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 706,
+ "nodeType": "StructuredDocumentation",
+ "src": "19431:476:2",
+ "text": "@notice Set or reaffirm the approved address for an NFT\n @dev The zero address indicates there is no approved address.\n @dev Throws unless `msg.sender` is the current NFT owner, or an authorized\n operator of the current owner.\n @param approved The new substrate address approved NFT controller\n @param tokenId The NFT to approve\n @dev EVM selector for this function is: 0x0ecd0ab0,\n or in textual repr: approveCross((address,uint256),uint256)"
+ },
+ "functionSelector": "0ecd0ab0",
+ "id": 714,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "approveCross",
+ "nameLocation": "19918:12:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 712,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 709,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "19954:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 714,
+ "src": "19931:31:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 708,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 707,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "19931:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "19931:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "19931:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 711,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "19972:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 714,
+ "src": "19964:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 710,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "19964:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19930:50:2"
+ },
+ "returnParameters": {
+ "id": 713,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19989:0:2"
+ },
+ "scope": 758,
+ "src": "19909:81:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 715,
+ "nodeType": "StructuredDocumentation",
+ "src": "19993:359:2",
+ "text": "@notice Transfer ownership of an NFT\n @dev Throws unless `msg.sender` is the current owner. Throws if `to`\n is the zero address. Throws if `tokenId` is not a valid NFT.\n @param to The new owner\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0xa9059cbb,\n or in textual repr: transfer(address,uint256)"
+ },
+ "functionSelector": "a9059cbb",
+ "id": 722,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transfer",
+ "nameLocation": "20363:8:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 720,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 717,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "20380:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 722,
+ "src": "20372:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 716,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "20372:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 719,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "20392:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 722,
+ "src": "20384:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 718,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "20384:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "20371:29:2"
+ },
+ "returnParameters": {
+ "id": 721,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "20409:0:2"
+ },
+ "scope": 758,
+ "src": "20354:56:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 723,
+ "nodeType": "StructuredDocumentation",
+ "src": "20413:527:2",
+ "text": "@notice Transfer ownership of an NFT from cross account address to cross account address\n @dev Throws unless `msg.sender` is the current owner. Throws if `to`\n is the zero address. Throws if `tokenId` is not a valid NFT.\n @param from Cross acccount address of current owner\n @param to Cross acccount address of new owner\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0xd5cf430b,\n or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)"
+ },
+ "functionSelector": "d5cf430b",
+ "id": 734,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transferFromCross",
+ "nameLocation": "20951:17:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 732,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 726,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "20995:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 734,
+ "src": "20972:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 725,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 724,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "20972:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "20972:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "20972:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 729,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "21026:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 734,
+ "src": "21003:25:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 728,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 727,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "21003:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "21003:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "21003:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 731,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "21040:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 734,
+ "src": "21032:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 730,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "21032:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "20968:82:2"
+ },
+ "returnParameters": {
+ "id": 733,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "21059:0:2"
+ },
+ "scope": 758,
+ "src": "20942:118:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 735,
+ "nodeType": "StructuredDocumentation",
+ "src": "21063:466:2",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this NFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid NFT.\n @param from The current owner of the NFT\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0x79cc6790,\n or in textual repr: burnFrom(address,uint256)"
+ },
+ "functionSelector": "79cc6790",
+ "id": 742,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burnFrom",
+ "nameLocation": "21540:8:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 740,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 737,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "21557:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 742,
+ "src": "21549:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 736,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "21549:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 739,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "21571:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 742,
+ "src": "21563:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 738,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "21563:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "21548:31:2"
+ },
+ "returnParameters": {
+ "id": 741,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "21588:0:2"
+ },
+ "scope": 758,
+ "src": "21531:58:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 743,
+ "nodeType": "StructuredDocumentation",
+ "src": "21592:481:2",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this NFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid NFT.\n @param from The current owner of the NFT\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0xbb2f5a58,\n or in textual repr: burnFromCross((address,uint256),uint256)"
+ },
+ "functionSelector": "bb2f5a58",
+ "id": 751,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burnFromCross",
+ "nameLocation": "22084:13:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 749,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 746,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "22121:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 751,
+ "src": "22098:27:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 745,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 744,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "22098:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 610,
+ "src": "22098:15:2"
+ },
+ "referencedDeclaration": 610,
+ "src": "22098:15:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 748,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "22135:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 751,
+ "src": "22127:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 747,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "22127:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "22097:46:2"
+ },
+ "returnParameters": {
+ "id": 750,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "22152:0:2"
+ },
+ "scope": 758,
+ "src": "22075:78:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 752,
+ "nodeType": "StructuredDocumentation",
+ "src": "22156:134:2",
+ "text": "@notice Returns next free NFT ID.\n @dev EVM selector for this function is: 0x75794a3c,\n or in textual repr: nextTokenId()"
+ },
+ "functionSelector": "75794a3c",
+ "id": 757,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "nextTokenId",
+ "nameLocation": "22301:11:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 753,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "22312:2:2"
+ },
+ "returnParameters": {
+ "id": 756,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 755,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 757,
+ "src": "22338:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 754,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "22338:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "22337:9:2"
+ },
+ "scope": 758,
+ "src": "22292:55:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "18947:4475:2",
+ "usedErrors": []
+ },
+ {
+ "canonicalName": "Tuple10",
+ "id": 763,
+ "members": [
+ {
+ "constant": false,
+ "id": 760,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "23476:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 763,
+ "src": "23468:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 759,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23468:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 762,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "23493:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 763,
+ "src": "23486:14:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 761,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "23486:6:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple10",
+ "nameLocation": "23457:7:2",
+ "nodeType": "StructDefinition",
+ "scope": 931,
+ "src": "23450:53:2",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 765,
+ "name": "Dummy",
+ "nameLocations": [
+ "23731:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "23731:5:2"
+ },
+ "id": 766,
+ "nodeType": "InheritanceSpecifier",
+ "src": "23731:5:2"
+ },
+ {
+ "baseName": {
+ "id": 767,
+ "name": "ERC165",
+ "nameLocations": [
+ "23738:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "23738:6:2"
+ },
+ "id": 768,
+ "nodeType": "InheritanceSpecifier",
+ "src": "23738:6:2"
+ }
+ ],
+ "canonicalName": "ERC721Enumerable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 764,
+ "nodeType": "StructuredDocumentation",
+ "src": "23505:196:2",
+ "text": "@title ERC-721 Non-Fungible Token Standard, optional enumeration extension\n @dev See https://eips.ethereum.org/EIPS/eip-721\n @dev the ERC-165 identifier for this interface is 0x780e9d63"
+ },
+ "fullyImplemented": false,
+ "id": 793,
+ "linearizedBaseContracts": [
+ 793,
+ 301,
+ 291
+ ],
+ "name": "ERC721Enumerable",
+ "nameLocation": "23711:16:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 769,
+ "nodeType": "StructuredDocumentation",
+ "src": "23748:281:2",
+ "text": "@notice Enumerate valid NFTs\n @param index A counter less than `totalSupply()`\n @return The token identifier for the `index`th NFT,\n (sort order not specified)\n @dev EVM selector for this function is: 0x4f6ccce7,\n or in textual repr: tokenByIndex(uint256)"
+ },
+ "functionSelector": "4f6ccce7",
+ "id": 776,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenByIndex",
+ "nameLocation": "24040:12:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 772,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 771,
+ "mutability": "mutable",
+ "name": "index",
+ "nameLocation": "24061:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 776,
+ "src": "24053:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 770,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24053:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24052:15:2"
+ },
+ "returnParameters": {
+ "id": 775,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 774,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 776,
+ "src": "24091:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 773,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24091:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24090:9:2"
+ },
+ "scope": 793,
+ "src": "24031:69:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 777,
+ "nodeType": "StructuredDocumentation",
+ "src": "24103:144:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x2f745c59,\n or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "functionSelector": "2f745c59",
+ "id": 786,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenOfOwnerByIndex",
+ "nameLocation": "24258:19:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 782,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 779,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "24286:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 786,
+ "src": "24278:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 778,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24278:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 781,
+ "mutability": "mutable",
+ "name": "index",
+ "nameLocation": "24301:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 786,
+ "src": "24293:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 780,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24293:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24277:30:2"
+ },
+ "returnParameters": {
+ "id": 785,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 784,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 786,
+ "src": "24331:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 783,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24331:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24330:9:2"
+ },
+ "scope": 793,
+ "src": "24249:91:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 787,
+ "nodeType": "StructuredDocumentation",
+ "src": "24343:300:2",
+ "text": "@notice Count NFTs tracked by this contract\n @return A count of valid NFTs tracked by this contract, where each one of\n them has an assigned and queryable owner not equal to the zero address\n @dev EVM selector for this function is: 0x18160ddd,\n or in textual repr: totalSupply()"
+ },
+ "functionSelector": "18160ddd",
+ "id": 792,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "totalSupply",
+ "nameLocation": "24654:11:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 788,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "24665:2:2"
+ },
+ "returnParameters": {
+ "id": 791,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 790,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 792,
+ "src": "24691:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 789,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24691:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24690:9:2"
+ },
+ "scope": 793,
+ "src": "24645:55:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "23701:1001:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ERC721Events",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 794,
+ "nodeType": "StructuredDocumentation",
+ "src": "24704:27:2",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 819,
+ "linearizedBaseContracts": [
+ 819
+ ],
+ "name": "ERC721Events",
+ "nameLocation": "24741:12:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
+ "id": 802,
+ "name": "Transfer",
+ "nameLocation": "24763:8:2",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 801,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 796,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "24788:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 802,
+ "src": "24772:20:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 795,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24772:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 798,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "24810:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 802,
+ "src": "24794:18:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 797,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24794:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 800,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "24830:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 802,
+ "src": "24814:23:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 799,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24814:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24771:67:2"
+ },
+ "src": "24757:82:2"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925",
+ "id": 810,
+ "name": "Approval",
+ "nameLocation": "24847:8:2",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 809,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 804,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "24872:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 810,
+ "src": "24856:21:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 803,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24856:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 806,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "24895:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 810,
+ "src": "24879:24:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 805,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24879:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 808,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "24921:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 810,
+ "src": "24905:23:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 807,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24905:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24855:74:2"
+ },
+ "src": "24841:89:2"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31",
+ "id": 818,
+ "name": "ApprovalForAll",
+ "nameLocation": "24938:14:2",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 817,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 812,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "24969:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 818,
+ "src": "24953:21:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 811,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24953:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 814,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "24992:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 818,
+ "src": "24976:24:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 813,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24976:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 816,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "25007:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 818,
+ "src": "25002:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 815,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "25002:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24952:64:2"
+ },
+ "src": "24932:85:2"
+ }
+ ],
+ "scope": 931,
+ "src": "24731:288:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 821,
+ "name": "Dummy",
+ "nameLocations": [
+ "25227:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "25227:5:2"
+ },
+ "id": 822,
+ "nodeType": "InheritanceSpecifier",
+ "src": "25227:5:2"
+ },
+ {
+ "baseName": {
+ "id": 823,
+ "name": "ERC165",
+ "nameLocations": [
+ "25234:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "25234:6:2"
+ },
+ "id": 824,
+ "nodeType": "InheritanceSpecifier",
+ "src": "25234:6:2"
+ },
+ {
+ "baseName": {
+ "id": 825,
+ "name": "ERC721Events",
+ "nameLocations": [
+ "25242:12:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 819,
+ "src": "25242:12:2"
+ },
+ "id": 826,
+ "nodeType": "InheritanceSpecifier",
+ "src": "25242:12:2"
+ }
+ ],
+ "canonicalName": "ERC721",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 820,
+ "nodeType": "StructuredDocumentation",
+ "src": "25021:186:2",
+ "text": "@title ERC-721 Non-Fungible Token Standard\n @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md\n @dev the ERC-165 identifier for this interface is 0x80ac58cd"
+ },
+ "fullyImplemented": false,
+ "id": 909,
+ "linearizedBaseContracts": [
+ 909,
+ 819,
+ 301,
+ 291
+ ],
+ "name": "ERC721",
+ "nameLocation": "25217:6:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 827,
+ "nodeType": "StructuredDocumentation",
+ "src": "25258:407:2",
+ "text": "@notice Count all NFTs assigned to an owner\n @dev NFTs assigned to the zero address are considered invalid, and this\n function throws for queries about the zero address.\n @param owner An address for whom to query the balance\n @return The number of NFTs owned by `owner`, possibly zero\n @dev EVM selector for this function is: 0x70a08231,\n or in textual repr: balanceOf(address)"
+ },
+ "functionSelector": "70a08231",
+ "id": 834,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "balanceOf",
+ "nameLocation": "25676:9:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 830,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 829,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "25694:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 834,
+ "src": "25686:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 828,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "25686:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25685:15:2"
+ },
+ "returnParameters": {
+ "id": 833,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 832,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 834,
+ "src": "25724:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 831,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "25724:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25723:9:2"
+ },
+ "scope": 909,
+ "src": "25667:66:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 835,
+ "nodeType": "StructuredDocumentation",
+ "src": "25736:334:2",
+ "text": "@notice Find the owner of an NFT\n @dev NFTs assigned to zero address are considered invalid, and queries\n about them do throw.\n @param tokenId The identifier for an NFT\n @return The address of the owner of the NFT\n @dev EVM selector for this function is: 0x6352211e,\n or in textual repr: ownerOf(uint256)"
+ },
+ "functionSelector": "6352211e",
+ "id": 842,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "ownerOf",
+ "nameLocation": "26081:7:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 838,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 837,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "26097:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 842,
+ "src": "26089:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 836,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "26089:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26088:17:2"
+ },
+ "returnParameters": {
+ "id": 841,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 840,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 842,
+ "src": "26129:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 839,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26129:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26128:9:2"
+ },
+ "scope": 909,
+ "src": "26072:66:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 843,
+ "nodeType": "StructuredDocumentation",
+ "src": "26141:155:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0xb88d4fde,\n or in textual repr: safeTransferFrom(address,address,uint256,bytes)"
+ },
+ "functionSelector": "b88d4fde",
+ "id": 854,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "safeTransferFrom",
+ "nameLocation": "26307:16:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 852,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 845,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "26335:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 854,
+ "src": "26327:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 844,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26327:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 847,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "26351:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 854,
+ "src": "26343:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 846,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26343:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 849,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "26365:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 854,
+ "src": "26357:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 848,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "26357:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 851,
+ "mutability": "mutable",
+ "name": "data",
+ "nameLocation": "26389:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 854,
+ "src": "26376:17:2",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 850,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "26376:5:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26323:73:2"
+ },
+ "returnParameters": {
+ "id": 853,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "26405:0:2"
+ },
+ "scope": 909,
+ "src": "26298:108:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 855,
+ "nodeType": "StructuredDocumentation",
+ "src": "26409:149:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x42842e0e,\n or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "functionSelector": "42842e0e",
+ "id": 864,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "safeTransferFrom",
+ "nameLocation": "26569:16:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 862,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 857,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "26597:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 864,
+ "src": "26589:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 856,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26589:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 859,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "26613:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 864,
+ "src": "26605:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 858,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26605:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 861,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "26627:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 864,
+ "src": "26619:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 860,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "26619:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26585:52:2"
+ },
+ "returnParameters": {
+ "id": 863,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "26646:0:2"
+ },
+ "scope": 909,
+ "src": "26560:87:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 865,
+ "nodeType": "StructuredDocumentation",
+ "src": "26650:633:2",
+ "text": "@notice Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE\n TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE\n THEY MAY BE PERMANENTLY LOST\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this NFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid NFT.\n @param from The current owner of the NFT\n @param to The new owner\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0x23b872dd,\n or in textual repr: transferFrom(address,address,uint256)"
+ },
+ "functionSelector": "23b872dd",
+ "id": 874,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transferFrom",
+ "nameLocation": "27294:12:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 872,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 867,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "27318:4:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 874,
+ "src": "27310:12:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 866,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27310:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 869,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "27334:2:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 874,
+ "src": "27326:10:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 868,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27326:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 871,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "27348:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 874,
+ "src": "27340:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 870,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "27340:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27306:52:2"
+ },
+ "returnParameters": {
+ "id": 873,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "27367:0:2"
+ },
+ "scope": 909,
+ "src": "27285:83:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 875,
+ "nodeType": "StructuredDocumentation",
+ "src": "27371:443:2",
+ "text": "@notice Set or reaffirm the approved address for an NFT\n @dev The zero address indicates there is no approved address.\n @dev Throws unless `msg.sender` is the current NFT owner, or an authorized\n operator of the current owner.\n @param approved The new approved NFT controller\n @param tokenId The NFT to approve\n @dev EVM selector for this function is: 0x095ea7b3,\n or in textual repr: approve(address,uint256)"
+ },
+ "functionSelector": "095ea7b3",
+ "id": 882,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "approve",
+ "nameLocation": "27825:7:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 880,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 877,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "27841:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 882,
+ "src": "27833:16:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 876,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27833:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 879,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "27859:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 882,
+ "src": "27851:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 878,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "27851:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27832:35:2"
+ },
+ "returnParameters": {
+ "id": 881,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "27876:0:2"
+ },
+ "scope": 909,
+ "src": "27816:61:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 883,
+ "nodeType": "StructuredDocumentation",
+ "src": "27880:139:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0xa22cb465,\n or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "functionSelector": "a22cb465",
+ "id": 890,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setApprovalForAll",
+ "nameLocation": "28030:17:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 888,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 885,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "28056:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 890,
+ "src": "28048:16:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 884,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28048:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 887,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "28071:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 890,
+ "src": "28066:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 886,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "28066:4:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28047:33:2"
+ },
+ "returnParameters": {
+ "id": 889,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "28089:0:2"
+ },
+ "scope": 909,
+ "src": "28021:69:2",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 891,
+ "nodeType": "StructuredDocumentation",
+ "src": "28093:128:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x081812fc,\n or in textual repr: getApproved(uint256)"
+ },
+ "functionSelector": "081812fc",
+ "id": 898,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "getApproved",
+ "nameLocation": "28232:11:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 894,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 893,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "28252:7:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 898,
+ "src": "28244:15:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 892,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "28244:7:2",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28243:17:2"
+ },
+ "returnParameters": {
+ "id": 897,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 896,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 898,
+ "src": "28284:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 895,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28284:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28283:9:2"
+ },
+ "scope": 909,
+ "src": "28223:70:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 899,
+ "nodeType": "StructuredDocumentation",
+ "src": "28296:141:2",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0xe985e9c5,\n or in textual repr: isApprovedForAll(address,address)"
+ },
+ "functionSelector": "e985e9c5",
+ "id": 908,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isApprovedForAll",
+ "nameLocation": "28448:16:2",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 904,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 901,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "28473:5:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 908,
+ "src": "28465:13:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 900,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28465:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 903,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "28488:8:2",
+ "nodeType": "VariableDeclaration",
+ "scope": 908,
+ "src": "28480:16:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 902,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28480:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28464:33:2"
+ },
+ "returnParameters": {
+ "id": 907,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 906,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 908,
+ "src": "28521:7:2",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 905,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28521:7:2",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28520:9:2"
+ },
+ "scope": 909,
+ "src": "28439:91:2",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 931,
+ "src": "25207:3325:2",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 910,
+ "name": "Dummy",
+ "nameLocations": [
+ "28558:5:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 291,
+ "src": "28558:5:2"
+ },
+ "id": 911,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28558:5:2"
+ },
+ {
+ "baseName": {
+ "id": 912,
+ "name": "ERC165",
+ "nameLocations": [
+ "28566:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 301,
+ "src": "28566:6:2"
+ },
+ "id": 913,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28566:6:2"
+ },
+ {
+ "baseName": {
+ "id": 914,
+ "name": "ERC721",
+ "nameLocations": [
+ "28575:6:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 909,
+ "src": "28575:6:2"
+ },
+ "id": 915,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28575:6:2"
+ },
+ {
+ "baseName": {
+ "id": 916,
+ "name": "ERC721Enumerable",
+ "nameLocations": [
+ "28584:16:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 793,
+ "src": "28584:16:2"
+ },
+ "id": 917,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28584:16:2"
+ },
+ {
+ "baseName": {
+ "id": 918,
+ "name": "ERC721UniqueExtensions",
+ "nameLocations": [
+ "28603:22:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 758,
+ "src": "28603:22:2"
+ },
+ "id": 919,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28603:22:2"
+ },
+ {
+ "baseName": {
+ "id": 920,
+ "name": "ERC721UniqueMintable",
+ "nameLocations": [
+ "28628:20:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 688,
+ "src": "28628:20:2"
+ },
+ "id": 921,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28628:20:2"
+ },
+ {
+ "baseName": {
+ "id": 922,
+ "name": "ERC721Burnable",
+ "nameLocations": [
+ "28651:14:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 646,
+ "src": "28651:14:2"
+ },
+ "id": 923,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28651:14:2"
+ },
+ {
+ "baseName": {
+ "id": 924,
+ "name": "ERC721Metadata",
+ "nameLocations": [
+ "28668:14:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 634,
+ "src": "28668:14:2"
+ },
+ "id": 925,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28668:14:2"
+ },
+ {
+ "baseName": {
+ "id": 926,
+ "name": "Collection",
+ "nameLocations": [
+ "28685:10:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 605,
+ "src": "28685:10:2"
+ },
+ "id": 927,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28685:10:2"
+ },
+ {
+ "baseName": {
+ "id": 928,
+ "name": "TokenProperties",
+ "nameLocations": [
+ "28698:15:2"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 357,
+ "src": "28698:15:2"
+ },
+ "id": 929,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28698:15:2"
+ }
+ ],
+ "canonicalName": "UniqueNFT",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 930,
+ "linearizedBaseContracts": [
+ 930,
+ 357,
+ 605,
+ 634,
+ 646,
+ 688,
+ 650,
+ 758,
+ 793,
+ 909,
+ 819,
+ 301,
+ 291
+ ],
+ "name": "UniqueNFT",
+ "nameLocation": "28544:9:2",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 931,
+ "src": "28534:182:2",
+ "usedErrors": []
+ }
+ ],
+ "src": "75:28642:2"
+ },
+ "id": 2
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol",
+ "exportedSymbols": {
+ "Collection": [
+ 1248
+ ],
+ "Dummy": [
+ 934
+ ],
+ "ERC165": [
+ 944
+ ],
+ "ERC721": [
+ 1551
+ ],
+ "ERC721Burnable": [
+ 1289
+ ],
+ "ERC721Enumerable": [
+ 1435
+ ],
+ "ERC721Events": [
+ 1461
+ ],
+ "ERC721Metadata": [
+ 1277
+ ],
+ "ERC721UniqueExtensions": [
+ 1400
+ ],
+ "ERC721UniqueMintable": [
+ 1331
+ ],
+ "ERC721UniqueMintableEvents": [
+ 1293
+ ],
+ "EthCrossAccount": [
+ 1253
+ ],
+ "TokenProperties": [
+ 1000
+ ],
+ "Tuple20": [
+ 1263
+ ],
+ "Tuple23": [
+ 1258
+ ],
+ "Tuple9": [
+ 1405
+ ],
+ "UniqueRefungible": [
+ 1572
+ ]
+ },
+ "id": 1573,
+ "license": "OTHER",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 932,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0",
+ "<",
+ "0.9",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "75:31:3"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "Dummy",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 933,
+ "nodeType": "StructuredDocumentation",
+ "src": "108:29:3",
+ "text": "@dev common stubs holder"
+ },
+ "fullyImplemented": true,
+ "id": 934,
+ "linearizedBaseContracts": [
+ 934
+ ],
+ "name": "Dummy",
+ "nameLocation": "147:5:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 1573,
+ "src": "137:20:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 935,
+ "name": "Dummy",
+ "nameLocations": [
+ "179:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "179:5:3"
+ },
+ "id": 936,
+ "nodeType": "InheritanceSpecifier",
+ "src": "179:5:3"
+ }
+ ],
+ "canonicalName": "ERC165",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 944,
+ "linearizedBaseContracts": [
+ 944,
+ 934
+ ],
+ "name": "ERC165",
+ "nameLocation": "169:6:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "functionSelector": "01ffc9a7",
+ "id": 943,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "supportsInterface",
+ "nameLocation": "197:17:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 939,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 938,
+ "mutability": "mutable",
+ "name": "interfaceID",
+ "nameLocation": "222:11:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 943,
+ "src": "215:18:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ },
+ "typeName": {
+ "id": 937,
+ "name": "bytes4",
+ "nodeType": "ElementaryTypeName",
+ "src": "215:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "214:20:3"
+ },
+ "returnParameters": {
+ "id": 942,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 941,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 943,
+ "src": "258:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 940,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "258:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "257:6:3"
+ },
+ "scope": 944,
+ "src": "188:76:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "159:107:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 946,
+ "name": "Dummy",
+ "nameLocations": [
+ "470:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "470:5:3"
+ },
+ "id": 947,
+ "nodeType": "InheritanceSpecifier",
+ "src": "470:5:3"
+ },
+ {
+ "baseName": {
+ "id": 948,
+ "name": "ERC165",
+ "nameLocations": [
+ "477:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "477:6:3"
+ },
+ "id": 949,
+ "nodeType": "InheritanceSpecifier",
+ "src": "477:6:3"
+ }
+ ],
+ "canonicalName": "TokenProperties",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 945,
+ "nodeType": "StructuredDocumentation",
+ "src": "268:173:3",
+ "text": "@title A contract that allows to set and delete token properties and change token property permissions.\n @dev the ERC-165 identifier for this interface is 0x55dba919"
+ },
+ "fullyImplemented": false,
+ "id": 1000,
+ "linearizedBaseContracts": [
+ 1000,
+ 944,
+ 934
+ ],
+ "name": "TokenProperties",
+ "nameLocation": "451:15:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 950,
+ "nodeType": "StructuredDocumentation",
+ "src": "487:537:3",
+ "text": "@notice Set permissions for token property.\n @dev Throws error if `msg.sender` is not admin or owner of the collection.\n @param key Property key.\n @param isMutable Permission to mutate property.\n @param collectionAdmin Permission to mutate property by collection admin if property is mutable.\n @param tokenOwner Permission to mutate property by token owner if property is mutable.\n @dev EVM selector for this function is: 0x222d97fa,\n or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)"
+ },
+ "functionSelector": "222d97fa",
+ "id": 961,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setTokenPropertyPermission",
+ "nameLocation": "1035:26:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 959,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 952,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "1079:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 961,
+ "src": "1065:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 951,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1065:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 954,
+ "mutability": "mutable",
+ "name": "isMutable",
+ "nameLocation": "1091:9:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 961,
+ "src": "1086:14:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 953,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1086:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 956,
+ "mutability": "mutable",
+ "name": "collectionAdmin",
+ "nameLocation": "1109:15:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 961,
+ "src": "1104:20:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 955,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1104:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 958,
+ "mutability": "mutable",
+ "name": "tokenOwner",
+ "nameLocation": "1133:10:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 961,
+ "src": "1128:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 957,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1128:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1061:85:3"
+ },
+ "returnParameters": {
+ "id": 960,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1155:0:3"
+ },
+ "scope": 1000,
+ "src": "1026:130:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 962,
+ "nodeType": "StructuredDocumentation",
+ "src": "1159:334:3",
+ "text": "@notice Set token property value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param key Property key.\n @param value Property value.\n @dev EVM selector for this function is: 0x1752d67b,\n or in textual repr: setProperty(uint256,string,bytes)"
+ },
+ "functionSelector": "1752d67b",
+ "id": 971,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setProperty",
+ "nameLocation": "1504:11:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 969,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 964,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "1527:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 971,
+ "src": "1519:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 963,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1519:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 966,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "1552:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 971,
+ "src": "1538:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 965,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "1538:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 968,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "1572:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 971,
+ "src": "1559:18:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 967,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "1559:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1515:65:3"
+ },
+ "returnParameters": {
+ "id": 970,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1589:0:3"
+ },
+ "scope": 1000,
+ "src": "1495:95:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 972,
+ "nodeType": "StructuredDocumentation",
+ "src": "1593:321:3",
+ "text": "@notice Set token properties value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param properties settable properties\n @dev EVM selector for this function is: 0x14ed3a6e,\n or in textual repr: setProperties(uint256,(string,bytes)[])"
+ },
+ "functionSelector": "14ed3a6e",
+ "id": 981,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setProperties",
+ "nameLocation": "1925:13:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 979,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 974,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "1947:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 981,
+ "src": "1939:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 973,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1939:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 978,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "1973:10:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 981,
+ "src": "1956:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple20[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 976,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 975,
+ "name": "Tuple20",
+ "nameLocations": [
+ "1956:7:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1263,
+ "src": "1956:7:3"
+ },
+ "referencedDeclaration": 1263,
+ "src": "1956:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple20_$1263_storage_ptr",
+ "typeString": "struct Tuple20"
+ }
+ },
+ "id": 977,
+ "nodeType": "ArrayTypeName",
+ "src": "1956:9:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple20[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1938:46:3"
+ },
+ "returnParameters": {
+ "id": 980,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "1993:0:3"
+ },
+ "scope": 1000,
+ "src": "1916:78:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 982,
+ "nodeType": "StructuredDocumentation",
+ "src": "1997:300:3",
+ "text": "@notice Delete token property value.\n @dev Throws error if `msg.sender` has no permission to edit the property.\n @param tokenId ID of the token.\n @param key Property key.\n @dev EVM selector for this function is: 0x066111d1,\n or in textual repr: deleteProperty(uint256,string)"
+ },
+ "functionSelector": "066111d1",
+ "id": 989,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteProperty",
+ "nameLocation": "2308:14:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 987,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 984,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2331:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 989,
+ "src": "2323:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 983,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2323:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 986,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "2354:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 989,
+ "src": "2340:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 985,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2340:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2322:36:3"
+ },
+ "returnParameters": {
+ "id": 988,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2367:0:3"
+ },
+ "scope": 1000,
+ "src": "2299:69:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 990,
+ "nodeType": "StructuredDocumentation",
+ "src": "2371:286:3",
+ "text": "@notice Get token property value.\n @dev Throws error if key not found\n @param tokenId ID of the token.\n @param key Property key.\n @return Property value bytes\n @dev EVM selector for this function is: 0x7228c327,\n or in textual repr: property(uint256,string)"
+ },
+ "functionSelector": "7228c327",
+ "id": 999,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "property",
+ "nameLocation": "2668:8:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 995,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 992,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2685:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 999,
+ "src": "2677:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 991,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2677:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 994,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "2708:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 999,
+ "src": "2694:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 993,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2694:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2676:36:3"
+ },
+ "returnParameters": {
+ "id": 998,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 997,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 999,
+ "src": "2736:12:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 996,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "2736:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2735:14:3"
+ },
+ "scope": 1000,
+ "src": "2659:91:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "441:2311:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1002,
+ "name": "Dummy",
+ "nameLocations": [
+ "2907:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "2907:5:3"
+ },
+ "id": 1003,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2907:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1004,
+ "name": "ERC165",
+ "nameLocations": [
+ "2914:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "2914:6:3"
+ },
+ "id": 1005,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2914:6:3"
+ }
+ ],
+ "canonicalName": "Collection",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1001,
+ "nodeType": "StructuredDocumentation",
+ "src": "2754:129:3",
+ "text": "@title A contract that allows you to work with collections.\n @dev the ERC-165 identifier for this interface is 0xb3152af3"
+ },
+ "fullyImplemented": false,
+ "id": 1248,
+ "linearizedBaseContracts": [
+ 1248,
+ 944,
+ 934
+ ],
+ "name": "Collection",
+ "nameLocation": "2893:10:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1006,
+ "nodeType": "StructuredDocumentation",
+ "src": "2924:215:3",
+ "text": "Set collection property.\n @param key Property key.\n @param value Propery value.\n @dev EVM selector for this function is: 0x2f073f66,\n or in textual repr: setCollectionProperty(string,bytes)"
+ },
+ "functionSelector": "2f073f66",
+ "id": 1013,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionProperty",
+ "nameLocation": "3150:21:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1011,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1008,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "3186:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1013,
+ "src": "3172:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1007,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3172:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1010,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "3204:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1013,
+ "src": "3191:18:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1009,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "3191:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3171:39:3"
+ },
+ "returnParameters": {
+ "id": 1012,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3219:0:3"
+ },
+ "scope": 1248,
+ "src": "3141:79:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1014,
+ "nodeType": "StructuredDocumentation",
+ "src": "3223:220:3",
+ "text": "Set collection properties.\n @param properties Vector of properties key/value pair.\n @dev EVM selector for this function is: 0x50b26b2a,\n or in textual repr: setCollectionProperties((string,bytes)[])"
+ },
+ "functionSelector": "50b26b2a",
+ "id": 1021,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionProperties",
+ "nameLocation": "3454:23:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1019,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1018,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "3495:10:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1021,
+ "src": "3478:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple20[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1016,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1015,
+ "name": "Tuple20",
+ "nameLocations": [
+ "3478:7:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1263,
+ "src": "3478:7:3"
+ },
+ "referencedDeclaration": 1263,
+ "src": "3478:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple20_$1263_storage_ptr",
+ "typeString": "struct Tuple20"
+ }
+ },
+ "id": 1017,
+ "nodeType": "ArrayTypeName",
+ "src": "3478:9:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple20[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3477:29:3"
+ },
+ "returnParameters": {
+ "id": 1020,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3515:0:3"
+ },
+ "scope": 1248,
+ "src": "3445:71:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1022,
+ "nodeType": "StructuredDocumentation",
+ "src": "3519:182:3",
+ "text": "Delete collection property.\n @param key Property key.\n @dev EVM selector for this function is: 0x7b7debce,\n or in textual repr: deleteCollectionProperty(string)"
+ },
+ "functionSelector": "7b7debce",
+ "id": 1027,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteCollectionProperty",
+ "nameLocation": "3712:24:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1025,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1024,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "3751:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1027,
+ "src": "3737:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1023,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3737:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3736:19:3"
+ },
+ "returnParameters": {
+ "id": 1026,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3764:0:3"
+ },
+ "scope": 1248,
+ "src": "3703:62:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1028,
+ "nodeType": "StructuredDocumentation",
+ "src": "3768:192:3",
+ "text": "Delete collection properties.\n @param keys Properties keys.\n @dev EVM selector for this function is: 0xee206ee3,\n or in textual repr: deleteCollectionProperties(string[])"
+ },
+ "functionSelector": "ee206ee3",
+ "id": 1034,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "deleteCollectionProperties",
+ "nameLocation": "3971:26:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1032,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1031,
+ "mutability": "mutable",
+ "name": "keys",
+ "nameLocation": "4014:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1034,
+ "src": "3998:20:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
+ "typeString": "string[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1029,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "3998:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "id": 1030,
+ "nodeType": "ArrayTypeName",
+ "src": "3998:8:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
+ "typeString": "string[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3997:22:3"
+ },
+ "returnParameters": {
+ "id": 1033,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "4028:0:3"
+ },
+ "scope": 1248,
+ "src": "3962:67:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1035,
+ "nodeType": "StructuredDocumentation",
+ "src": "4032:277:3",
+ "text": "Get collection property.\n @dev Throws error if key not found.\n @param key Property key.\n @return bytes The property corresponding to the key.\n @dev EVM selector for this function is: 0xcf24fd6d,\n or in textual repr: collectionProperty(string)"
+ },
+ "functionSelector": "cf24fd6d",
+ "id": 1042,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionProperty",
+ "nameLocation": "4320:18:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1038,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1037,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "4353:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1042,
+ "src": "4339:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1036,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "4339:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4338:19:3"
+ },
+ "returnParameters": {
+ "id": 1041,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1040,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1042,
+ "src": "4381:12:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1039,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "4381:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4380:14:3"
+ },
+ "scope": 1248,
+ "src": "4311:84:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1043,
+ "nodeType": "StructuredDocumentation",
+ "src": "4398:265:3",
+ "text": "Get collection properties.\n @param keys Properties keys. Empty keys for all propertyes.\n @return Vector of properties key/value pairs.\n @dev EVM selector for this function is: 0x285fb8e6,\n or in textual repr: collectionProperties(string[])"
+ },
+ "functionSelector": "285fb8e6",
+ "id": 1053,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionProperties",
+ "nameLocation": "4674:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1047,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1046,
+ "mutability": "mutable",
+ "name": "keys",
+ "nameLocation": "4711:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1053,
+ "src": "4695:20:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
+ "typeString": "string[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1044,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "4695:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "id": 1045,
+ "nodeType": "ArrayTypeName",
+ "src": "4695:8:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
+ "typeString": "string[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4694:22:3"
+ },
+ "returnParameters": {
+ "id": 1052,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1051,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1053,
+ "src": "4740:16:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct Tuple20[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1049,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1048,
+ "name": "Tuple20",
+ "nameLocations": [
+ "4740:7:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1263,
+ "src": "4740:7:3"
+ },
+ "referencedDeclaration": 1263,
+ "src": "4740:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple20_$1263_storage_ptr",
+ "typeString": "struct Tuple20"
+ }
+ },
+ "id": 1050,
+ "nodeType": "ArrayTypeName",
+ "src": "4740:9:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple20_$1263_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple20[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4739:18:3"
+ },
+ "scope": 1248,
+ "src": "4665:93:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1054,
+ "nodeType": "StructuredDocumentation",
+ "src": "4761:370:3",
+ "text": "Set the sponsor of the collection.\n @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.\n @param sponsor Address of the sponsor from whose account funds will be debited for operations with the contract.\n @dev EVM selector for this function is: 0x7623402e,\n or in textual repr: setCollectionSponsor(address)"
+ },
+ "functionSelector": "7623402e",
+ "id": 1059,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionSponsor",
+ "nameLocation": "5142:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1057,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1056,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "5171:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1059,
+ "src": "5163:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1055,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5163:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5162:17:3"
+ },
+ "returnParameters": {
+ "id": 1058,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5188:0:3"
+ },
+ "scope": 1248,
+ "src": "5133:56:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1060,
+ "nodeType": "StructuredDocumentation",
+ "src": "5192:399:3",
+ "text": "Set the sponsor of the collection.\n @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.\n @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.\n @dev EVM selector for this function is: 0x84a1d5a8,\n or in textual repr: setCollectionSponsorCross((address,uint256))"
+ },
+ "functionSelector": "84a1d5a8",
+ "id": 1066,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionSponsorCross",
+ "nameLocation": "5602:25:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1064,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1063,
+ "mutability": "mutable",
+ "name": "sponsor",
+ "nameLocation": "5651:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1066,
+ "src": "5628:30:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1062,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1061,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "5628:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "5628:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "5628:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5627:32:3"
+ },
+ "returnParameters": {
+ "id": 1065,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5668:0:3"
+ },
+ "scope": 1248,
+ "src": "5593:76:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1067,
+ "nodeType": "StructuredDocumentation",
+ "src": "5672:152:3",
+ "text": "Whether there is a pending sponsor.\n @dev EVM selector for this function is: 0x058ac185,\n or in textual repr: hasCollectionPendingSponsor()"
+ },
+ "functionSelector": "058ac185",
+ "id": 1072,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "hasCollectionPendingSponsor",
+ "nameLocation": "5835:27:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1068,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5862:2:3"
+ },
+ "returnParameters": {
+ "id": 1071,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1070,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1072,
+ "src": "5888:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1069,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "5888:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5887:6:3"
+ },
+ "scope": 1248,
+ "src": "5826:68:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1073,
+ "nodeType": "StructuredDocumentation",
+ "src": "5897:256:3",
+ "text": "Collection sponsorship confirmation.\n @dev After setting the sponsor for the collection, it must be confirmed with this function.\n @dev EVM selector for this function is: 0x3c50e97a,\n or in textual repr: confirmCollectionSponsorship()"
+ },
+ "functionSelector": "3c50e97a",
+ "id": 1076,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "confirmCollectionSponsorship",
+ "nameLocation": "6164:28:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1074,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6192:2:3"
+ },
+ "returnParameters": {
+ "id": 1075,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6203:0:3"
+ },
+ "scope": 1248,
+ "src": "6155:49:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1077,
+ "nodeType": "StructuredDocumentation",
+ "src": "6207:139:3",
+ "text": "Remove collection sponsor.\n @dev EVM selector for this function is: 0x6e0326a3,\n or in textual repr: removeCollectionSponsor()"
+ },
+ "functionSelector": "6e0326a3",
+ "id": 1080,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionSponsor",
+ "nameLocation": "6357:23:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1078,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6380:2:3"
+ },
+ "returnParameters": {
+ "id": 1079,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6391:0:3"
+ },
+ "scope": 1248,
+ "src": "6348:44:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1081,
+ "nodeType": "StructuredDocumentation",
+ "src": "6395:270:3",
+ "text": "Get current sponsor.\n @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error \"Contract has no sponsor\" throw.\n @dev EVM selector for this function is: 0x6ec0a9f1,\n or in textual repr: collectionSponsor()"
+ },
+ "functionSelector": "6ec0a9f1",
+ "id": 1087,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionSponsor",
+ "nameLocation": "6676:17:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1082,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "6693:2:3"
+ },
+ "returnParameters": {
+ "id": 1086,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1085,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1087,
+ "src": "6719:14:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple23_$1258_memory_ptr",
+ "typeString": "struct Tuple23"
+ },
+ "typeName": {
+ "id": 1084,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1083,
+ "name": "Tuple23",
+ "nameLocations": [
+ "6719:7:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1258,
+ "src": "6719:7:3"
+ },
+ "referencedDeclaration": 1258,
+ "src": "6719:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple23_$1258_storage_ptr",
+ "typeString": "struct Tuple23"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "6718:16:3"
+ },
+ "scope": 1248,
+ "src": "6667:68:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1088,
+ "nodeType": "StructuredDocumentation",
+ "src": "6738:459:3",
+ "text": "Set limits for the collection.\n @dev Throws error if limit not found.\n @param limit Name of the limit. Valid names:\n \t\"accountTokenOwnershipLimit\",\n \t\"sponsoredDataSize\",\n \t\"sponsoredDataRateLimit\",\n \t\"tokenLimit\",\n \t\"sponsorTransferTimeout\",\n \t\"sponsorApproveTimeout\"\n @param value Value of the limit.\n @dev EVM selector for this function is: 0x6a3841db,\n or in textual repr: setCollectionLimit(string,uint32)"
+ },
+ "functionSelector": "6a3841db",
+ "id": 1095,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionLimit",
+ "nameLocation": "7208:18:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1093,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1090,
+ "mutability": "mutable",
+ "name": "limit",
+ "nameLocation": "7241:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1095,
+ "src": "7227:19:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1089,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "7227:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1092,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "7255:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1095,
+ "src": "7248:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ },
+ "typeName": {
+ "id": 1091,
+ "name": "uint32",
+ "nodeType": "ElementaryTypeName",
+ "src": "7248:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint32",
+ "typeString": "uint32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7226:35:3"
+ },
+ "returnParameters": {
+ "id": 1094,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7270:0:3"
+ },
+ "scope": 1248,
+ "src": "7199:72:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1096,
+ "nodeType": "StructuredDocumentation",
+ "src": "7274:356:3",
+ "text": "Set limits for the collection.\n @dev Throws error if limit not found.\n @param limit Name of the limit. Valid names:\n \t\"ownerCanTransfer\",\n \t\"ownerCanDestroy\",\n \t\"transfersEnabled\"\n @param value Value of the limit.\n @dev EVM selector for this function is: 0x993b7fba,\n or in textual repr: setCollectionLimit(string,bool)"
+ },
+ "functionSelector": "993b7fba",
+ "id": 1103,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionLimit",
+ "nameLocation": "7641:18:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1101,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1098,
+ "mutability": "mutable",
+ "name": "limit",
+ "nameLocation": "7674:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1103,
+ "src": "7660:19:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1097,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "7660:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1100,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "7686:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1103,
+ "src": "7681:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1099,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "7681:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7659:33:3"
+ },
+ "returnParameters": {
+ "id": 1102,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7701:0:3"
+ },
+ "scope": 1248,
+ "src": "7632:70:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1104,
+ "nodeType": "StructuredDocumentation",
+ "src": "7705:126:3",
+ "text": "Get contract address.\n @dev EVM selector for this function is: 0xf6b4dfb4,\n or in textual repr: contractAddress()"
+ },
+ "functionSelector": "f6b4dfb4",
+ "id": 1109,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "contractAddress",
+ "nameLocation": "7842:15:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1105,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "7857:2:3"
+ },
+ "returnParameters": {
+ "id": 1108,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1107,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1109,
+ "src": "7883:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1106,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "7883:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "7882:9:3"
+ },
+ "scope": 1248,
+ "src": "7833:59:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1110,
+ "nodeType": "StructuredDocumentation",
+ "src": "7895:209:3",
+ "text": "Add collection admin.\n @param newAdmin Cross account administrator address.\n @dev EVM selector for this function is: 0x859aa7d6,\n or in textual repr: addCollectionAdminCross((address,uint256))"
+ },
+ "functionSelector": "859aa7d6",
+ "id": 1116,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addCollectionAdminCross",
+ "nameLocation": "8115:23:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1114,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1113,
+ "mutability": "mutable",
+ "name": "newAdmin",
+ "nameLocation": "8162:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1116,
+ "src": "8139:31:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1112,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1111,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "8139:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "8139:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "8139:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8138:33:3"
+ },
+ "returnParameters": {
+ "id": 1115,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8180:0:3"
+ },
+ "scope": 1248,
+ "src": "8106:75:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1117,
+ "nodeType": "StructuredDocumentation",
+ "src": "8184:212:3",
+ "text": "Remove collection admin.\n @param admin Cross account administrator address.\n @dev EVM selector for this function is: 0x6c0cd173,\n or in textual repr: removeCollectionAdminCross((address,uint256))"
+ },
+ "functionSelector": "6c0cd173",
+ "id": 1123,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionAdminCross",
+ "nameLocation": "8407:26:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1121,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1120,
+ "mutability": "mutable",
+ "name": "admin",
+ "nameLocation": "8457:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1123,
+ "src": "8434:28:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1119,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1118,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "8434:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "8434:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "8434:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8433:30:3"
+ },
+ "returnParameters": {
+ "id": 1122,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8472:0:3"
+ },
+ "scope": 1248,
+ "src": "8398:75:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1124,
+ "nodeType": "StructuredDocumentation",
+ "src": "8476:193:3",
+ "text": "Add collection admin.\n @param newAdmin Address of the added administrator.\n @dev EVM selector for this function is: 0x92e462c7,\n or in textual repr: addCollectionAdmin(address)"
+ },
+ "functionSelector": "92e462c7",
+ "id": 1129,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addCollectionAdmin",
+ "nameLocation": "8680:18:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1127,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1126,
+ "mutability": "mutable",
+ "name": "newAdmin",
+ "nameLocation": "8707:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1129,
+ "src": "8699:16:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1125,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "8699:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8698:18:3"
+ },
+ "returnParameters": {
+ "id": 1128,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8725:0:3"
+ },
+ "scope": 1248,
+ "src": "8671:55:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1130,
+ "nodeType": "StructuredDocumentation",
+ "src": "8729:203:3",
+ "text": "Remove collection admin.\n @param admin Address of the removed administrator.\n @dev EVM selector for this function is: 0xfafd7b42,\n or in textual repr: removeCollectionAdmin(address)"
+ },
+ "functionSelector": "fafd7b42",
+ "id": 1135,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeCollectionAdmin",
+ "nameLocation": "8943:21:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1133,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1132,
+ "mutability": "mutable",
+ "name": "admin",
+ "nameLocation": "8973:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1135,
+ "src": "8965:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1131,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "8965:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "8964:15:3"
+ },
+ "returnParameters": {
+ "id": 1134,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "8988:0:3"
+ },
+ "scope": 1248,
+ "src": "8934:55:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1136,
+ "nodeType": "StructuredDocumentation",
+ "src": "8992:251:3",
+ "text": "Toggle accessibility of collection nesting.\n @param enable If \"true\" degenerates to nesting: 'Owner' else to nesting: 'Disabled'\n @dev EVM selector for this function is: 0x112d4586,\n or in textual repr: setCollectionNesting(bool)"
+ },
+ "functionSelector": "112d4586",
+ "id": 1141,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionNesting",
+ "nameLocation": "9254:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1139,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1138,
+ "mutability": "mutable",
+ "name": "enable",
+ "nameLocation": "9280:6:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1141,
+ "src": "9275:11:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1137,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "9275:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "9274:13:3"
+ },
+ "returnParameters": {
+ "id": 1140,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "9296:0:3"
+ },
+ "scope": 1248,
+ "src": "9245:52:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1142,
+ "nodeType": "StructuredDocumentation",
+ "src": "9300:367:3",
+ "text": "Toggle accessibility of collection nesting.\n @param enable If \"true\" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'\n @param collections Addresses of collections that will be available for nesting.\n @dev EVM selector for this function is: 0x64872396,\n or in textual repr: setCollectionNesting(bool,address[])"
+ },
+ "functionSelector": "64872396",
+ "id": 1150,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionNesting",
+ "nameLocation": "9678:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1148,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1144,
+ "mutability": "mutable",
+ "name": "enable",
+ "nameLocation": "9704:6:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1150,
+ "src": "9699:11:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1143,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "9699:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1147,
+ "mutability": "mutable",
+ "name": "collections",
+ "nameLocation": "9729:11:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1150,
+ "src": "9712:28:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
+ "typeString": "address[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1145,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "9712:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "id": 1146,
+ "nodeType": "ArrayTypeName",
+ "src": "9712:9:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
+ "typeString": "address[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "9698:43:3"
+ },
+ "returnParameters": {
+ "id": 1149,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "9750:0:3"
+ },
+ "scope": 1248,
+ "src": "9669:82:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1151,
+ "nodeType": "StructuredDocumentation",
+ "src": "9754:217:3",
+ "text": "Set the collection access method.\n @param mode Access mode\n \t0 for Normal\n \t1 for AllowList\n @dev EVM selector for this function is: 0x41835d4c,\n or in textual repr: setCollectionAccess(uint8)"
+ },
+ "functionSelector": "41835d4c",
+ "id": 1156,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionAccess",
+ "nameLocation": "9982:19:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1154,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1153,
+ "mutability": "mutable",
+ "name": "mode",
+ "nameLocation": "10008:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1156,
+ "src": "10002:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ },
+ "typeName": {
+ "id": 1152,
+ "name": "uint8",
+ "nodeType": "ElementaryTypeName",
+ "src": "10002:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10001:12:3"
+ },
+ "returnParameters": {
+ "id": 1155,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10022:0:3"
+ },
+ "scope": 1248,
+ "src": "9973:50:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1157,
+ "nodeType": "StructuredDocumentation",
+ "src": "10026:201:3",
+ "text": "Checks that user allowed to operate with collection.\n @param user User address to check.\n @dev EVM selector for this function is: 0xd63a8e11,\n or in textual repr: allowed(address)"
+ },
+ "functionSelector": "d63a8e11",
+ "id": 1164,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "allowed",
+ "nameLocation": "10238:7:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1160,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1159,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10254:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1164,
+ "src": "10246:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1158,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "10246:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10245:14:3"
+ },
+ "returnParameters": {
+ "id": 1163,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1162,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1164,
+ "src": "10283:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1161,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "10283:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10282:6:3"
+ },
+ "scope": 1248,
+ "src": "10229:60:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1165,
+ "nodeType": "StructuredDocumentation",
+ "src": "10292:203:3",
+ "text": "Add the user to the allowed list.\n @param user Address of a trusted user.\n @dev EVM selector for this function is: 0x67844fe6,\n or in textual repr: addToCollectionAllowList(address)"
+ },
+ "functionSelector": "67844fe6",
+ "id": 1170,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addToCollectionAllowList",
+ "nameLocation": "10506:24:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1168,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1167,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10539:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1170,
+ "src": "10531:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1166,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "10531:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10530:14:3"
+ },
+ "returnParameters": {
+ "id": 1169,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10553:0:3"
+ },
+ "scope": 1248,
+ "src": "10497:57:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1171,
+ "nodeType": "StructuredDocumentation",
+ "src": "10557:211:3",
+ "text": "Add user to allowed list.\n @param user User cross account address.\n @dev EVM selector for this function is: 0xa0184a3a,\n or in textual repr: addToCollectionAllowListCross((address,uint256))"
+ },
+ "functionSelector": "a0184a3a",
+ "id": 1177,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "addToCollectionAllowListCross",
+ "nameLocation": "10779:29:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1175,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1174,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "10832:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1177,
+ "src": "10809:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1173,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1172,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "10809:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "10809:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "10809:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "10808:29:3"
+ },
+ "returnParameters": {
+ "id": 1176,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "10846:0:3"
+ },
+ "scope": 1248,
+ "src": "10770:77:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1178,
+ "nodeType": "StructuredDocumentation",
+ "src": "10850:213:3",
+ "text": "Remove the user from the allowed list.\n @param user Address of a removed user.\n @dev EVM selector for this function is: 0x85c51acb,\n or in textual repr: removeFromCollectionAllowList(address)"
+ },
+ "functionSelector": "85c51acb",
+ "id": 1183,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeFromCollectionAllowList",
+ "nameLocation": "11074:29:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1181,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1180,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11112:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1183,
+ "src": "11104:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1179,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "11104:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11103:14:3"
+ },
+ "returnParameters": {
+ "id": 1182,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11126:0:3"
+ },
+ "scope": 1248,
+ "src": "11065:62:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1184,
+ "nodeType": "StructuredDocumentation",
+ "src": "11130:221:3",
+ "text": "Remove user from allowed list.\n @param user User cross account address.\n @dev EVM selector for this function is: 0x09ba452a,\n or in textual repr: removeFromCollectionAllowListCross((address,uint256))"
+ },
+ "functionSelector": "09ba452a",
+ "id": 1190,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "removeFromCollectionAllowListCross",
+ "nameLocation": "11362:34:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1188,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1187,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11420:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1190,
+ "src": "11397:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1186,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1185,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "11397:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "11397:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "11397:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11396:29:3"
+ },
+ "returnParameters": {
+ "id": 1189,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11434:0:3"
+ },
+ "scope": 1248,
+ "src": "11353:82:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1191,
+ "nodeType": "StructuredDocumentation",
+ "src": "11438:185:3",
+ "text": "Switch permission for minting.\n @param mode Enable if \"true\".\n @dev EVM selector for this function is: 0x00018e84,\n or in textual repr: setCollectionMintMode(bool)"
+ },
+ "functionSelector": "00018e84",
+ "id": 1196,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setCollectionMintMode",
+ "nameLocation": "11634:21:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1194,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1193,
+ "mutability": "mutable",
+ "name": "mode",
+ "nameLocation": "11661:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1196,
+ "src": "11656:9:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1192,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "11656:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11655:11:3"
+ },
+ "returnParameters": {
+ "id": 1195,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "11675:0:3"
+ },
+ "scope": 1248,
+ "src": "11625:51:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1197,
+ "nodeType": "StructuredDocumentation",
+ "src": "11679:262:3",
+ "text": "Check that account is the owner or admin of the collection\n @param user account to verify\n @return \"true\" if account is the owner or admin\n @dev EVM selector for this function is: 0x9811b0c7,\n or in textual repr: isOwnerOrAdmin(address)"
+ },
+ "functionSelector": "9811b0c7",
+ "id": 1204,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isOwnerOrAdmin",
+ "nameLocation": "11952:14:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1200,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1199,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "11975:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1204,
+ "src": "11967:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1198,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "11967:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "11966:14:3"
+ },
+ "returnParameters": {
+ "id": 1203,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1202,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1204,
+ "src": "12004:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1201,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "12004:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12003:6:3"
+ },
+ "scope": 1248,
+ "src": "11943:67:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1205,
+ "nodeType": "StructuredDocumentation",
+ "src": "12013:288:3",
+ "text": "Check that account is the owner or admin of the collection\n @param user User cross account to verify\n @return \"true\" if account is the owner or admin\n @dev EVM selector for this function is: 0x3e75a905,\n or in textual repr: isOwnerOrAdminCross((address,uint256))"
+ },
+ "functionSelector": "3e75a905",
+ "id": 1213,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isOwnerOrAdminCross",
+ "nameLocation": "12312:19:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1209,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1208,
+ "mutability": "mutable",
+ "name": "user",
+ "nameLocation": "12355:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1213,
+ "src": "12332:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1207,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1206,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "12332:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "12332:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "12332:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12331:29:3"
+ },
+ "returnParameters": {
+ "id": 1212,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1211,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1213,
+ "src": "12384:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1210,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "12384:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12383:6:3"
+ },
+ "scope": 1248,
+ "src": "12303:87:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1214,
+ "nodeType": "StructuredDocumentation",
+ "src": "12393:187:3",
+ "text": "Returns collection type\n @return `Fungible` or `NFT` or `ReFungible`\n @dev EVM selector for this function is: 0xd34b55b8,\n or in textual repr: uniqueCollectionType()"
+ },
+ "functionSelector": "d34b55b8",
+ "id": 1219,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "uniqueCollectionType",
+ "nameLocation": "12591:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1215,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "12611:2:3"
+ },
+ "returnParameters": {
+ "id": 1218,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1217,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1219,
+ "src": "12637:13:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1216,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "12637:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12636:15:3"
+ },
+ "scope": 1248,
+ "src": "12582:70:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1220,
+ "nodeType": "StructuredDocumentation",
+ "src": "12655:272:3",
+ "text": "Get collection owner.\n @return Tuble with sponsor address and his substrate mirror.\n If address is canonical then substrate mirror is zero and vice versa.\n @dev EVM selector for this function is: 0xdf727d3b,\n or in textual repr: collectionOwner()"
+ },
+ "functionSelector": "df727d3b",
+ "id": 1226,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionOwner",
+ "nameLocation": "12938:15:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1221,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "12953:2:3"
+ },
+ "returnParameters": {
+ "id": 1225,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1224,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1226,
+ "src": "12979:22:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1223,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1222,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "12979:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "12979:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "12979:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "12978:24:3"
+ },
+ "scope": 1248,
+ "src": "12929:74:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1227,
+ "nodeType": "StructuredDocumentation",
+ "src": "13006:258:3",
+ "text": "Changes collection owner to another account\n @dev Owner can be changed only by current owner\n @param newOwner new owner account\n @dev EVM selector for this function is: 0x4f53e226,\n or in textual repr: changeCollectionOwner(address)"
+ },
+ "functionSelector": "4f53e226",
+ "id": 1232,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "changeCollectionOwner",
+ "nameLocation": "13275:21:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1230,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1229,
+ "mutability": "mutable",
+ "name": "newOwner",
+ "nameLocation": "13305:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1232,
+ "src": "13297:16:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1228,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "13297:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13296:18:3"
+ },
+ "returnParameters": {
+ "id": 1231,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "13323:0:3"
+ },
+ "scope": 1248,
+ "src": "13266:58:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1233,
+ "nodeType": "StructuredDocumentation",
+ "src": "13327:291:3",
+ "text": "Get collection administrators\n @return Vector of tuples with admins address and his substrate mirror.\n If address is canonical then substrate mirror is zero and vice versa.\n @dev EVM selector for this function is: 0x5813216b,\n or in textual repr: collectionAdmins()"
+ },
+ "functionSelector": "5813216b",
+ "id": 1240,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "collectionAdmins",
+ "nameLocation": "13629:16:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1234,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "13645:2:3"
+ },
+ "returnParameters": {
+ "id": 1239,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1238,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1240,
+ "src": "13671:24:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_EthCrossAccount_$1253_memory_ptr_$dyn_memory_ptr",
+ "typeString": "struct EthCrossAccount[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1236,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1235,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "13671:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "13671:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "13671:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "id": 1237,
+ "nodeType": "ArrayTypeName",
+ "src": "13671:17:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_EthCrossAccount_$1253_storage_$dyn_storage_ptr",
+ "typeString": "struct EthCrossAccount[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13670:26:3"
+ },
+ "scope": 1248,
+ "src": "13620:77:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1241,
+ "nodeType": "StructuredDocumentation",
+ "src": "13700:266:3",
+ "text": "Changes collection owner to another account\n @dev Owner can be changed only by current owner\n @param newOwner new owner cross account\n @dev EVM selector for this function is: 0xe5c9913f,\n or in textual repr: setOwnerCross((address,uint256))"
+ },
+ "functionSelector": "e5c9913f",
+ "id": 1247,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setOwnerCross",
+ "nameLocation": "13977:13:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1245,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1244,
+ "mutability": "mutable",
+ "name": "newOwner",
+ "nameLocation": "14014:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1247,
+ "src": "13991:31:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1243,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1242,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "13991:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "13991:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "13991:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "13990:33:3"
+ },
+ "returnParameters": {
+ "id": 1246,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "14032:0:3"
+ },
+ "scope": 1248,
+ "src": "13968:65:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "2883:11152:3",
+ "usedErrors": []
+ },
+ {
+ "canonicalName": "EthCrossAccount",
+ "id": 1253,
+ "members": [
+ {
+ "constant": false,
+ "id": 1250,
+ "mutability": "mutable",
+ "name": "eth",
+ "nameLocation": "14101:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1253,
+ "src": "14093:11:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1249,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "14093:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1252,
+ "mutability": "mutable",
+ "name": "sub",
+ "nameLocation": "14115:3:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1253,
+ "src": "14107:11:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1251,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "14107:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "EthCrossAccount",
+ "nameLocation": "14074:15:3",
+ "nodeType": "StructDefinition",
+ "scope": 1573,
+ "src": "14067:54:3",
+ "visibility": "public"
+ },
+ {
+ "canonicalName": "Tuple23",
+ "id": 1258,
+ "members": [
+ {
+ "constant": false,
+ "id": 1255,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "14175:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1258,
+ "src": "14167:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1254,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "14167:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1257,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "14193:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1258,
+ "src": "14185:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1256,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "14185:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple23",
+ "nameLocation": "14156:7:3",
+ "nodeType": "StructDefinition",
+ "scope": 1573,
+ "src": "14149:54:3",
+ "visibility": "public"
+ },
+ {
+ "canonicalName": "Tuple20",
+ "id": 1263,
+ "members": [
+ {
+ "constant": false,
+ "id": 1260,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "14256:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1263,
+ "src": "14249:14:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1259,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "14249:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1262,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "14272:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1263,
+ "src": "14266:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1261,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "14266:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple20",
+ "nameLocation": "14238:7:3",
+ "nodeType": "StructDefinition",
+ "scope": 1573,
+ "src": "14231:51:3",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1265,
+ "name": "Dummy",
+ "nameLocations": [
+ "14377:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "14377:5:3"
+ },
+ "id": 1266,
+ "nodeType": "InheritanceSpecifier",
+ "src": "14377:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1267,
+ "name": "ERC165",
+ "nameLocations": [
+ "14384:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "14384:6:3"
+ },
+ "id": 1268,
+ "nodeType": "InheritanceSpecifier",
+ "src": "14384:6:3"
+ }
+ ],
+ "canonicalName": "ERC721Metadata",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1264,
+ "nodeType": "StructuredDocumentation",
+ "src": "14284:65:3",
+ "text": "@dev the ERC-165 identifier for this interface is 0x5b5e139f"
+ },
+ "fullyImplemented": false,
+ "id": 1277,
+ "linearizedBaseContracts": [
+ 1277,
+ 944,
+ 934
+ ],
+ "name": "ERC721Metadata",
+ "nameLocation": "14359:14:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1269,
+ "nodeType": "StructuredDocumentation",
+ "src": "15015:784:3",
+ "text": "@notice A distinct Uniform Resource Identifier (URI) for a given asset.\n @dev If the token has a `url` property and it is not empty, it is returned.\n 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`.\n If the collection property `baseURI` is empty or absent, return \"\" (empty string)\n otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix\n otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).\n @return token's const_metadata\n @dev EVM selector for this function is: 0xc87b56dd,\n or in textual repr: tokenURI(uint256)"
+ },
+ "functionSelector": "c87b56dd",
+ "id": 1276,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenURI",
+ "nameLocation": "15810:8:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1272,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1271,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "15827:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1276,
+ "src": "15819:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1270,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "15819:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "15818:17:3"
+ },
+ "returnParameters": {
+ "id": 1275,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1274,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1276,
+ "src": "15859:13:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1273,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "15859:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "15858:15:3"
+ },
+ "scope": 1277,
+ "src": "15801:73:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "14349:1527:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1279,
+ "name": "Dummy",
+ "nameLocations": [
+ "16040:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "16040:5:3"
+ },
+ "id": 1280,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16040:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1281,
+ "name": "ERC165",
+ "nameLocations": [
+ "16047:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "16047:6:3"
+ },
+ "id": 1282,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16047:6:3"
+ }
+ ],
+ "canonicalName": "ERC721Burnable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1278,
+ "nodeType": "StructuredDocumentation",
+ "src": "15878:134:3",
+ "text": "@title ERC721 Token that can be irreversibly burned (destroyed).\n @dev the ERC-165 identifier for this interface is 0x42966c68"
+ },
+ "fullyImplemented": false,
+ "id": 1289,
+ "linearizedBaseContracts": [
+ 1289,
+ 944,
+ 934
+ ],
+ "name": "ERC721Burnable",
+ "nameLocation": "16022:14:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1283,
+ "nodeType": "StructuredDocumentation",
+ "src": "16057:295:3",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current RFT owner, or an authorized\n operator of the current owner.\n @param tokenId The RFT to approve\n @dev EVM selector for this function is: 0x42966c68,\n or in textual repr: burn(uint256)"
+ },
+ "functionSelector": "42966c68",
+ "id": 1288,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burn",
+ "nameLocation": "16363:4:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1286,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1285,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "16376:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1288,
+ "src": "16368:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1284,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "16368:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "16367:17:3"
+ },
+ "returnParameters": {
+ "id": 1287,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16393:0:3"
+ },
+ "scope": 1289,
+ "src": "16354:40:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "16012:384:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ERC721UniqueMintableEvents",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1290,
+ "nodeType": "StructuredDocumentation",
+ "src": "16398:27:3",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 1293,
+ "linearizedBaseContracts": [
+ 1293
+ ],
+ "name": "ERC721UniqueMintableEvents",
+ "nameLocation": "16435:26:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "b828d9b5c78095deeeeff2eca2e5d4fe046ce3feb4c99702624a3fd384ad2dbc",
+ "id": 1292,
+ "name": "MintingFinished",
+ "nameLocation": "16471:15:3",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1291,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16486:2:3"
+ },
+ "src": "16465:24:3"
+ }
+ ],
+ "scope": 1573,
+ "src": "16425:66:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1295,
+ "name": "Dummy",
+ "nameLocations": [
+ "16625:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "16625:5:3"
+ },
+ "id": 1296,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16625:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1297,
+ "name": "ERC165",
+ "nameLocations": [
+ "16632:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "16632:6:3"
+ },
+ "id": 1298,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16632:6:3"
+ },
+ {
+ "baseName": {
+ "id": 1299,
+ "name": "ERC721UniqueMintableEvents",
+ "nameLocations": [
+ "16640:26:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1293,
+ "src": "16640:26:3"
+ },
+ "id": 1300,
+ "nodeType": "InheritanceSpecifier",
+ "src": "16640:26:3"
+ }
+ ],
+ "canonicalName": "ERC721UniqueMintable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1294,
+ "nodeType": "StructuredDocumentation",
+ "src": "16493:98:3",
+ "text": "@title ERC721 minting logic.\n @dev the ERC-165 identifier for this interface is 0x476ff149"
+ },
+ "fullyImplemented": false,
+ "id": 1331,
+ "linearizedBaseContracts": [
+ 1331,
+ 1293,
+ 944,
+ 934
+ ],
+ "name": "ERC721UniqueMintable",
+ "nameLocation": "16601:20:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1301,
+ "nodeType": "StructuredDocumentation",
+ "src": "16670:99:3",
+ "text": "@dev EVM selector for this function is: 0x05d2035b,\n or in textual repr: mintingFinished()"
+ },
+ "functionSelector": "05d2035b",
+ "id": 1306,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mintingFinished",
+ "nameLocation": "16780:15:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1302,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "16795:2:3"
+ },
+ "returnParameters": {
+ "id": 1305,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1304,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1306,
+ "src": "16821:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1303,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "16821:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "16820:6:3"
+ },
+ "scope": 1331,
+ "src": "16771:56:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1307,
+ "nodeType": "StructuredDocumentation",
+ "src": "16830:215:3",
+ "text": "@notice Function to mint token.\n @param to The new owner\n @return uint256 The id of the newly minted token\n @dev EVM selector for this function is: 0x6a627842,\n or in textual repr: mint(address)"
+ },
+ "functionSelector": "6a627842",
+ "id": 1314,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mint",
+ "nameLocation": "17056:4:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1310,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1309,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "17069:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1314,
+ "src": "17061:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1308,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "17061:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17060:12:3"
+ },
+ "returnParameters": {
+ "id": 1313,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1312,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1314,
+ "src": "17091:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1311,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "17091:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17090:9:3"
+ },
+ "scope": 1331,
+ "src": "17047:53:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1315,
+ "nodeType": "StructuredDocumentation",
+ "src": "17528:332:3",
+ "text": "@notice Function to mint token with the given tokenUri.\n @param to The new owner\n @param tokenUri Token URI that would be stored in the NFT properties\n @return uint256 The id of the newly minted token\n @dev EVM selector for this function is: 0x45c17782,\n or in textual repr: mintWithTokenURI(address,string)"
+ },
+ "functionSelector": "45c17782",
+ "id": 1324,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "mintWithTokenURI",
+ "nameLocation": "17871:16:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1320,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1317,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "17896:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1324,
+ "src": "17888:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1316,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "17888:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1319,
+ "mutability": "mutable",
+ "name": "tokenUri",
+ "nameLocation": "17914:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1324,
+ "src": "17900:22:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1318,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "17900:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17887:36:3"
+ },
+ "returnParameters": {
+ "id": 1323,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1322,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1324,
+ "src": "17942:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1321,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "17942:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "17941:9:3"
+ },
+ "scope": 1331,
+ "src": "17862:89:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1325,
+ "nodeType": "StructuredDocumentation",
+ "src": "18535:123:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x7d64bcb4,\n or in textual repr: finishMinting()"
+ },
+ "functionSelector": "7d64bcb4",
+ "id": 1330,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "finishMinting",
+ "nameLocation": "18669:13:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1326,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "18682:2:3"
+ },
+ "returnParameters": {
+ "id": 1329,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1328,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1330,
+ "src": "18703:4:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1327,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "18703:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "18702:6:3"
+ },
+ "scope": 1331,
+ "src": "18660:49:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "16591:2120:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1333,
+ "name": "Dummy",
+ "nameLocations": [
+ "18855:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "18855:5:3"
+ },
+ "id": 1334,
+ "nodeType": "InheritanceSpecifier",
+ "src": "18855:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1335,
+ "name": "ERC165",
+ "nameLocations": [
+ "18862:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "18862:6:3"
+ },
+ "id": 1336,
+ "nodeType": "InheritanceSpecifier",
+ "src": "18862:6:3"
+ }
+ ],
+ "canonicalName": "ERC721UniqueExtensions",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1332,
+ "nodeType": "StructuredDocumentation",
+ "src": "18713:106:3",
+ "text": "@title Unique extensions for ERC721.\n @dev the ERC-165 identifier for this interface is 0x81feb398"
+ },
+ "fullyImplemented": false,
+ "id": 1400,
+ "linearizedBaseContracts": [
+ 1400,
+ 944,
+ 934
+ ],
+ "name": "ERC721UniqueExtensions",
+ "nameLocation": "18829:22:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1337,
+ "nodeType": "StructuredDocumentation",
+ "src": "18872:162:3",
+ "text": "@notice A descriptive name for a collection of NFTs in this contract\n @dev EVM selector for this function is: 0x06fdde03,\n or in textual repr: name()"
+ },
+ "functionSelector": "06fdde03",
+ "id": 1342,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "name",
+ "nameLocation": "19045:4:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1338,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19049:2:3"
+ },
+ "returnParameters": {
+ "id": 1341,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1340,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1342,
+ "src": "19075:13:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1339,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "19075:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19074:15:3"
+ },
+ "scope": 1400,
+ "src": "19036:54:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1343,
+ "nodeType": "StructuredDocumentation",
+ "src": "19093:149:3",
+ "text": "@notice An abbreviated name for NFTs in this contract\n @dev EVM selector for this function is: 0x95d89b41,\n or in textual repr: symbol()"
+ },
+ "functionSelector": "95d89b41",
+ "id": 1348,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "symbol",
+ "nameLocation": "19253:6:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1344,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19259:2:3"
+ },
+ "returnParameters": {
+ "id": 1347,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1346,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1348,
+ "src": "19285:13:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1345,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "19285:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19284:15:3"
+ },
+ "scope": 1400,
+ "src": "19244:56:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1349,
+ "nodeType": "StructuredDocumentation",
+ "src": "19303:408:3",
+ "text": "@notice Transfer ownership of an RFT\n @dev Throws unless `msg.sender` is the current owner. Throws if `to`\n is the zero address. Throws if `tokenId` is not a valid RFT.\n Throws if RFT pieces have multiple owners.\n @param to The new owner\n @param tokenId The RFT to transfer\n @dev EVM selector for this function is: 0xa9059cbb,\n or in textual repr: transfer(address,uint256)"
+ },
+ "functionSelector": "a9059cbb",
+ "id": 1356,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transfer",
+ "nameLocation": "19722:8:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1354,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1351,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "19739:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1356,
+ "src": "19731:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1350,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "19731:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1353,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "19751:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1356,
+ "src": "19743:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1352,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "19743:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "19730:29:3"
+ },
+ "returnParameters": {
+ "id": 1355,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "19768:0:3"
+ },
+ "scope": 1400,
+ "src": "19713:56:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1357,
+ "nodeType": "StructuredDocumentation",
+ "src": "19772:445:3",
+ "text": "@notice Transfer ownership of an RFT\n @dev Throws unless `msg.sender` is the current owner. Throws if `to`\n is the zero address. Throws if `tokenId` is not a valid RFT.\n Throws if RFT pieces have multiple owners.\n @param to The new owner\n @param tokenId The RFT to transfer\n @dev EVM selector for this function is: 0xd5cf430b,\n or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)"
+ },
+ "functionSelector": "d5cf430b",
+ "id": 1368,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transferFromCross",
+ "nameLocation": "20228:17:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1366,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1360,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "20272:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1368,
+ "src": "20249:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1359,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1358,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "20249:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "20249:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "20249:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1363,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "20303:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1368,
+ "src": "20280:25:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1362,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1361,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "20280:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "20280:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "20280:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1365,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "20317:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1368,
+ "src": "20309:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1364,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "20309:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "20245:82:3"
+ },
+ "returnParameters": {
+ "id": 1367,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "20336:0:3"
+ },
+ "scope": 1400,
+ "src": "20219:118:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1369,
+ "nodeType": "StructuredDocumentation",
+ "src": "20340:515:3",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this RFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid RFT.\n Throws if RFT pieces have multiple owners.\n @param from The current owner of the RFT\n @param tokenId The RFT to transfer\n @dev EVM selector for this function is: 0x79cc6790,\n or in textual repr: burnFrom(address,uint256)"
+ },
+ "functionSelector": "79cc6790",
+ "id": 1376,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burnFrom",
+ "nameLocation": "20866:8:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1374,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1371,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "20883:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1376,
+ "src": "20875:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1370,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "20875:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1373,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "20897:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1376,
+ "src": "20889:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1372,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "20889:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "20874:31:3"
+ },
+ "returnParameters": {
+ "id": 1375,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "20914:0:3"
+ },
+ "scope": 1400,
+ "src": "20857:58:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1377,
+ "nodeType": "StructuredDocumentation",
+ "src": "20918:530:3",
+ "text": "@notice Burns a specific ERC721 token.\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this RFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid RFT.\n Throws if RFT pieces have multiple owners.\n @param from The current owner of the RFT\n @param tokenId The RFT to transfer\n @dev EVM selector for this function is: 0xbb2f5a58,\n or in textual repr: burnFromCross((address,uint256),uint256)"
+ },
+ "functionSelector": "bb2f5a58",
+ "id": 1385,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burnFromCross",
+ "nameLocation": "21459:13:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1383,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1380,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "21496:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1385,
+ "src": "21473:27:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount"
+ },
+ "typeName": {
+ "id": 1379,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1378,
+ "name": "EthCrossAccount",
+ "nameLocations": [
+ "21473:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1253,
+ "src": "21473:15:3"
+ },
+ "referencedDeclaration": 1253,
+ "src": "21473:15:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_storage_ptr",
+ "typeString": "struct EthCrossAccount"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1382,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "21510:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1385,
+ "src": "21502:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1381,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "21502:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "21472:46:3"
+ },
+ "returnParameters": {
+ "id": 1384,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "21527:0:3"
+ },
+ "scope": 1400,
+ "src": "21450:78:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1386,
+ "nodeType": "StructuredDocumentation",
+ "src": "21531:134:3",
+ "text": "@notice Returns next free RFT ID.\n @dev EVM selector for this function is: 0x75794a3c,\n or in textual repr: nextTokenId()"
+ },
+ "functionSelector": "75794a3c",
+ "id": 1391,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "nextTokenId",
+ "nameLocation": "21676:11:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1387,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "21687:2:3"
+ },
+ "returnParameters": {
+ "id": 1390,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1389,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1391,
+ "src": "21713:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1388,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "21713:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "21712:9:3"
+ },
+ "scope": 1400,
+ "src": "21667:55:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1392,
+ "nodeType": "StructuredDocumentation",
+ "src": "22797:196:3",
+ "text": "Returns EVM address for refungible token\n @param token ID of the token\n @dev EVM selector for this function is: 0xab76fac6,\n or in textual repr: tokenContractAddress(uint256)"
+ },
+ "functionSelector": "ab76fac6",
+ "id": 1399,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenContractAddress",
+ "nameLocation": "23004:20:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1395,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1394,
+ "mutability": "mutable",
+ "name": "token",
+ "nameLocation": "23033:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1399,
+ "src": "23025:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1393,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23025:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23024:15:3"
+ },
+ "returnParameters": {
+ "id": 1398,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1397,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1399,
+ "src": "23063:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1396,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "23063:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23062:9:3"
+ },
+ "scope": 1400,
+ "src": "22995:77:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "18819:4255:3",
+ "usedErrors": []
+ },
+ {
+ "canonicalName": "Tuple9",
+ "id": 1405,
+ "members": [
+ {
+ "constant": false,
+ "id": 1402,
+ "mutability": "mutable",
+ "name": "field_0",
+ "nameLocation": "23127:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1405,
+ "src": "23119:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1401,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23119:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1404,
+ "mutability": "mutable",
+ "name": "field_1",
+ "nameLocation": "23144:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1405,
+ "src": "23137:14:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1403,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "23137:6:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Tuple9",
+ "nameLocation": "23109:6:3",
+ "nodeType": "StructDefinition",
+ "scope": 1573,
+ "src": "23102:52:3",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1407,
+ "name": "Dummy",
+ "nameLocations": [
+ "23382:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "23382:5:3"
+ },
+ "id": 1408,
+ "nodeType": "InheritanceSpecifier",
+ "src": "23382:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1409,
+ "name": "ERC165",
+ "nameLocations": [
+ "23389:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "23389:6:3"
+ },
+ "id": 1410,
+ "nodeType": "InheritanceSpecifier",
+ "src": "23389:6:3"
+ }
+ ],
+ "canonicalName": "ERC721Enumerable",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1406,
+ "nodeType": "StructuredDocumentation",
+ "src": "23156:196:3",
+ "text": "@title ERC-721 Non-Fungible Token Standard, optional enumeration extension\n @dev See https://eips.ethereum.org/EIPS/eip-721\n @dev the ERC-165 identifier for this interface is 0x780e9d63"
+ },
+ "fullyImplemented": false,
+ "id": 1435,
+ "linearizedBaseContracts": [
+ 1435,
+ 944,
+ 934
+ ],
+ "name": "ERC721Enumerable",
+ "nameLocation": "23362:16:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1411,
+ "nodeType": "StructuredDocumentation",
+ "src": "23399:281:3",
+ "text": "@notice Enumerate valid RFTs\n @param index A counter less than `totalSupply()`\n @return The token identifier for the `index`th NFT,\n (sort order not specified)\n @dev EVM selector for this function is: 0x4f6ccce7,\n or in textual repr: tokenByIndex(uint256)"
+ },
+ "functionSelector": "4f6ccce7",
+ "id": 1418,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenByIndex",
+ "nameLocation": "23691:12:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1414,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1413,
+ "mutability": "mutable",
+ "name": "index",
+ "nameLocation": "23712:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1418,
+ "src": "23704:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1412,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23704:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23703:15:3"
+ },
+ "returnParameters": {
+ "id": 1417,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1416,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1418,
+ "src": "23742:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1415,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23742:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23741:9:3"
+ },
+ "scope": 1435,
+ "src": "23682:69:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1419,
+ "nodeType": "StructuredDocumentation",
+ "src": "23754:139:3",
+ "text": "Not implemented\n @dev EVM selector for this function is: 0x2f745c59,\n or in textual repr: tokenOfOwnerByIndex(address,uint256)"
+ },
+ "functionSelector": "2f745c59",
+ "id": 1428,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "tokenOfOwnerByIndex",
+ "nameLocation": "23904:19:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1424,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1421,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "23932:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1428,
+ "src": "23924:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1420,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "23924:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1423,
+ "mutability": "mutable",
+ "name": "index",
+ "nameLocation": "23947:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1428,
+ "src": "23939:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1422,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23939:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23923:30:3"
+ },
+ "returnParameters": {
+ "id": 1427,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1426,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1428,
+ "src": "23977:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1425,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "23977:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "23976:9:3"
+ },
+ "scope": 1435,
+ "src": "23895:91:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1429,
+ "nodeType": "StructuredDocumentation",
+ "src": "23989:300:3",
+ "text": "@notice Count RFTs tracked by this contract\n @return A count of valid RFTs tracked by this contract, where each one of\n them has an assigned and queryable owner not equal to the zero address\n @dev EVM selector for this function is: 0x18160ddd,\n or in textual repr: totalSupply()"
+ },
+ "functionSelector": "18160ddd",
+ "id": 1434,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "totalSupply",
+ "nameLocation": "24300:11:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1430,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "24311:2:3"
+ },
+ "returnParameters": {
+ "id": 1433,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1432,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1434,
+ "src": "24337:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1431,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24337:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24336:9:3"
+ },
+ "scope": 1435,
+ "src": "24291:55:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "23352:996:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ERC721Events",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1436,
+ "nodeType": "StructuredDocumentation",
+ "src": "24350:27:3",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 1461,
+ "linearizedBaseContracts": [
+ 1461
+ ],
+ "name": "ERC721Events",
+ "nameLocation": "24387:12:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
+ "id": 1444,
+ "name": "Transfer",
+ "nameLocation": "24409:8:3",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1443,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1438,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "24434:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1444,
+ "src": "24418:20:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1437,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24418:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1440,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "24456:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1444,
+ "src": "24440:18:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1439,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24440:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1442,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "24476:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1444,
+ "src": "24460:23:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1441,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24460:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24417:67:3"
+ },
+ "src": "24403:82:3"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925",
+ "id": 1452,
+ "name": "Approval",
+ "nameLocation": "24493:8:3",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1451,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1446,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "24518:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1452,
+ "src": "24502:21:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1445,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24502:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1448,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "24541:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1452,
+ "src": "24525:24:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1447,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24525:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1450,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "24567:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1452,
+ "src": "24551:23:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1449,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "24551:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24501:74:3"
+ },
+ "src": "24487:89:3"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31",
+ "id": 1460,
+ "name": "ApprovalForAll",
+ "nameLocation": "24584:14:3",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1459,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1454,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "24615:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1460,
+ "src": "24599:21:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1453,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24599:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1456,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "24638:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1460,
+ "src": "24622:24:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1455,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "24622:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1458,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "24653:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1460,
+ "src": "24648:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1457,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "24648:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "24598:64:3"
+ },
+ "src": "24578:85:3"
+ }
+ ],
+ "scope": 1573,
+ "src": "24377:288:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1463,
+ "name": "Dummy",
+ "nameLocations": [
+ "24873:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "24873:5:3"
+ },
+ "id": 1464,
+ "nodeType": "InheritanceSpecifier",
+ "src": "24873:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1465,
+ "name": "ERC165",
+ "nameLocations": [
+ "24880:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "24880:6:3"
+ },
+ "id": 1466,
+ "nodeType": "InheritanceSpecifier",
+ "src": "24880:6:3"
+ },
+ {
+ "baseName": {
+ "id": 1467,
+ "name": "ERC721Events",
+ "nameLocations": [
+ "24888:12:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1461,
+ "src": "24888:12:3"
+ },
+ "id": 1468,
+ "nodeType": "InheritanceSpecifier",
+ "src": "24888:12:3"
+ }
+ ],
+ "canonicalName": "ERC721",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1462,
+ "nodeType": "StructuredDocumentation",
+ "src": "24667:186:3",
+ "text": "@title ERC-721 Non-Fungible Token Standard\n @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md\n @dev the ERC-165 identifier for this interface is 0x58800161"
+ },
+ "fullyImplemented": false,
+ "id": 1551,
+ "linearizedBaseContracts": [
+ 1551,
+ 1461,
+ 944,
+ 934
+ ],
+ "name": "ERC721",
+ "nameLocation": "24863:6:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1469,
+ "nodeType": "StructuredDocumentation",
+ "src": "24904:407:3",
+ "text": "@notice Count all RFTs assigned to an owner\n @dev RFTs assigned to the zero address are considered invalid, and this\n function throws for queries about the zero address.\n @param owner An address for whom to query the balance\n @return The number of RFTs owned by `owner`, possibly zero\n @dev EVM selector for this function is: 0x70a08231,\n or in textual repr: balanceOf(address)"
+ },
+ "functionSelector": "70a08231",
+ "id": 1476,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "balanceOf",
+ "nameLocation": "25322:9:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1472,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1471,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "25340:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1476,
+ "src": "25332:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1470,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "25332:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25331:15:3"
+ },
+ "returnParameters": {
+ "id": 1475,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1474,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1476,
+ "src": "25370:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1473,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "25370:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25369:9:3"
+ },
+ "scope": 1551,
+ "src": "25313:66:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1477,
+ "nodeType": "StructuredDocumentation",
+ "src": "25382:454:3",
+ "text": "@notice Find the owner of an RFT\n @dev RFTs assigned to zero address are considered invalid, and queries\n about them do throw.\n Returns special 0xffffffffffffffffffffffffffffffffffffffff address for\n the tokens that are partially owned.\n @param tokenId The identifier for an RFT\n @return The address of the owner of the RFT\n @dev EVM selector for this function is: 0x6352211e,\n or in textual repr: ownerOf(uint256)"
+ },
+ "functionSelector": "6352211e",
+ "id": 1484,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "ownerOf",
+ "nameLocation": "25847:7:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1480,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1479,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "25863:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1484,
+ "src": "25855:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1478,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "25855:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25854:17:3"
+ },
+ "returnParameters": {
+ "id": 1483,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1482,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1484,
+ "src": "25895:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1481,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "25895:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "25894:9:3"
+ },
+ "scope": 1551,
+ "src": "25838:66:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1485,
+ "nodeType": "StructuredDocumentation",
+ "src": "25907:163:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x60a11672,\n or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)"
+ },
+ "functionSelector": "60a11672",
+ "id": 1496,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "safeTransferFromWithData",
+ "nameLocation": "26081:24:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1494,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1487,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "26117:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1496,
+ "src": "26109:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1486,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26109:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1489,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "26133:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1496,
+ "src": "26125:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1488,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26125:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1491,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "26147:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1496,
+ "src": "26139:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1490,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "26139:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1493,
+ "mutability": "mutable",
+ "name": "data",
+ "nameLocation": "26171:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1496,
+ "src": "26158:17:3",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1492,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "26158:5:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26105:73:3"
+ },
+ "returnParameters": {
+ "id": 1495,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "26187:0:3"
+ },
+ "scope": 1551,
+ "src": "26072:116:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1497,
+ "nodeType": "StructuredDocumentation",
+ "src": "26191:149:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x42842e0e,\n or in textual repr: safeTransferFrom(address,address,uint256)"
+ },
+ "functionSelector": "42842e0e",
+ "id": 1506,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "safeTransferFrom",
+ "nameLocation": "26351:16:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1504,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1499,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "26379:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1506,
+ "src": "26371:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1498,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26371:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1501,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "26395:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1506,
+ "src": "26387:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1500,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "26387:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1503,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "26409:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1506,
+ "src": "26401:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1502,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "26401:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "26367:52:3"
+ },
+ "returnParameters": {
+ "id": 1505,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "26428:0:3"
+ },
+ "scope": 1551,
+ "src": "26342:87:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1507,
+ "nodeType": "StructuredDocumentation",
+ "src": "26432:682:3",
+ "text": "@notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE\n TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE\n THEY MAY BE PERMANENTLY LOST\n @dev Throws unless `msg.sender` is the current owner or an authorized\n operator for this RFT. Throws if `from` is not the current owner. Throws\n if `to` is the zero address. Throws if `tokenId` is not a valid RFT.\n Throws if RFT pieces have multiple owners.\n @param from The current owner of the NFT\n @param to The new owner\n @param tokenId The NFT to transfer\n @dev EVM selector for this function is: 0x23b872dd,\n or in textual repr: transferFrom(address,address,uint256)"
+ },
+ "functionSelector": "23b872dd",
+ "id": 1516,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transferFrom",
+ "nameLocation": "27125:12:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1514,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1509,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "27149:4:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1516,
+ "src": "27141:12:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1508,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27141:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1511,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "27165:2:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1516,
+ "src": "27157:10:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1510,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27157:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1513,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "27179:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1516,
+ "src": "27171:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1512,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "27171:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27137:52:3"
+ },
+ "returnParameters": {
+ "id": 1515,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "27198:0:3"
+ },
+ "scope": 1551,
+ "src": "27116:83:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1517,
+ "nodeType": "StructuredDocumentation",
+ "src": "27202:132:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x095ea7b3,\n or in textual repr: approve(address,uint256)"
+ },
+ "functionSelector": "095ea7b3",
+ "id": 1524,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "approve",
+ "nameLocation": "27345:7:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1522,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1519,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "27361:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1524,
+ "src": "27353:16:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1518,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27353:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1521,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "27379:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1524,
+ "src": "27371:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1520,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "27371:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27352:35:3"
+ },
+ "returnParameters": {
+ "id": 1523,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "27396:0:3"
+ },
+ "scope": 1551,
+ "src": "27336:61:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1525,
+ "nodeType": "StructuredDocumentation",
+ "src": "27400:139:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0xa22cb465,\n or in textual repr: setApprovalForAll(address,bool)"
+ },
+ "functionSelector": "a22cb465",
+ "id": 1532,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "setApprovalForAll",
+ "nameLocation": "27550:17:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1530,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1527,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "27576:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1532,
+ "src": "27568:16:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1526,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27568:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1529,
+ "mutability": "mutable",
+ "name": "approved",
+ "nameLocation": "27591:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1532,
+ "src": "27586:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1528,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "27586:4:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27567:33:3"
+ },
+ "returnParameters": {
+ "id": 1531,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "27609:0:3"
+ },
+ "scope": 1551,
+ "src": "27541:69:3",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1533,
+ "nodeType": "StructuredDocumentation",
+ "src": "27613:128:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0x081812fc,\n or in textual repr: getApproved(uint256)"
+ },
+ "functionSelector": "081812fc",
+ "id": 1540,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "getApproved",
+ "nameLocation": "27752:11:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1536,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1535,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "27772:7:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1540,
+ "src": "27764:15:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1534,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "27764:7:3",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27763:17:3"
+ },
+ "returnParameters": {
+ "id": 1539,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1538,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1540,
+ "src": "27804:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1537,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27804:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27803:9:3"
+ },
+ "scope": 1551,
+ "src": "27743:70:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1541,
+ "nodeType": "StructuredDocumentation",
+ "src": "27816:141:3",
+ "text": "@dev Not implemented\n @dev EVM selector for this function is: 0xe985e9c5,\n or in textual repr: isApprovedForAll(address,address)"
+ },
+ "functionSelector": "e985e9c5",
+ "id": 1550,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "isApprovedForAll",
+ "nameLocation": "27968:16:3",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1546,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1543,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "27993:5:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1550,
+ "src": "27985:13:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1542,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "27985:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1545,
+ "mutability": "mutable",
+ "name": "operator",
+ "nameLocation": "28008:8:3",
+ "nodeType": "VariableDeclaration",
+ "scope": 1550,
+ "src": "28000:16:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1544,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28000:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "27984:33:3"
+ },
+ "returnParameters": {
+ "id": 1549,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1548,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1550,
+ "src": "28041:7:3",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1547,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "28041:7:3",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "28040:9:3"
+ },
+ "scope": 1551,
+ "src": "27959:91:3",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1573,
+ "src": "24853:3199:3",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1552,
+ "name": "Dummy",
+ "nameLocations": [
+ "28085:5:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 934,
+ "src": "28085:5:3"
+ },
+ "id": 1553,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28085:5:3"
+ },
+ {
+ "baseName": {
+ "id": 1554,
+ "name": "ERC165",
+ "nameLocations": [
+ "28093:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 944,
+ "src": "28093:6:3"
+ },
+ "id": 1555,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28093:6:3"
+ },
+ {
+ "baseName": {
+ "id": 1556,
+ "name": "ERC721",
+ "nameLocations": [
+ "28102:6:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1551,
+ "src": "28102:6:3"
+ },
+ "id": 1557,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28102:6:3"
+ },
+ {
+ "baseName": {
+ "id": 1558,
+ "name": "ERC721Enumerable",
+ "nameLocations": [
+ "28111:16:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1435,
+ "src": "28111:16:3"
+ },
+ "id": 1559,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28111:16:3"
+ },
+ {
+ "baseName": {
+ "id": 1560,
+ "name": "ERC721UniqueExtensions",
+ "nameLocations": [
+ "28130:22:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1400,
+ "src": "28130:22:3"
+ },
+ "id": 1561,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28130:22:3"
+ },
+ {
+ "baseName": {
+ "id": 1562,
+ "name": "ERC721UniqueMintable",
+ "nameLocations": [
+ "28155:20:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1331,
+ "src": "28155:20:3"
+ },
+ "id": 1563,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28155:20:3"
+ },
+ {
+ "baseName": {
+ "id": 1564,
+ "name": "ERC721Burnable",
+ "nameLocations": [
+ "28178:14:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1289,
+ "src": "28178:14:3"
+ },
+ "id": 1565,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28178:14:3"
+ },
+ {
+ "baseName": {
+ "id": 1566,
+ "name": "ERC721Metadata",
+ "nameLocations": [
+ "28195:14:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1277,
+ "src": "28195:14:3"
+ },
+ "id": 1567,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28195:14:3"
+ },
+ {
+ "baseName": {
+ "id": 1568,
+ "name": "Collection",
+ "nameLocations": [
+ "28212:10:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "28212:10:3"
+ },
+ "id": 1569,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28212:10:3"
+ },
+ {
+ "baseName": {
+ "id": 1570,
+ "name": "TokenProperties",
+ "nameLocations": [
+ "28225:15:3"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1000,
+ "src": "28225:15:3"
+ },
+ "id": 1571,
+ "nodeType": "InheritanceSpecifier",
+ "src": "28225:15:3"
+ }
+ ],
+ "canonicalName": "UniqueRefungible",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 1572,
+ "linearizedBaseContracts": [
+ 1572,
+ 1000,
+ 1248,
+ 1277,
+ 1289,
+ 1331,
+ 1293,
+ 1400,
+ 1435,
+ 1551,
+ 1461,
+ 944,
+ 934
+ ],
+ "name": "UniqueRefungible",
+ "nameLocation": "28064:16:3",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 1573,
+ "src": "28054:189:3",
+ "usedErrors": []
+ }
+ ],
+ "src": "75:28169:3"
+ },
+ "id": 3
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol",
+ "exportedSymbols": {
+ "Dummy": [
+ 1576
+ ],
+ "ERC1633": [
+ 1604
+ ],
+ "ERC165": [
+ 1586
+ ],
+ "ERC20": [
+ 1728
+ ],
+ "ERC20Events": [
+ 1646
+ ],
+ "ERC20UniqueExtensions": [
+ 1628
+ ],
+ "UniqueRefungibleToken": [
+ 1739
+ ]
+ },
+ "id": 1740,
+ "license": "OTHER",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 1574,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0",
+ "<",
+ "0.9",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "75:31:4"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "Dummy",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1575,
+ "nodeType": "StructuredDocumentation",
+ "src": "108:29:4",
+ "text": "@dev common stubs holder"
+ },
+ "fullyImplemented": true,
+ "id": 1576,
+ "linearizedBaseContracts": [
+ 1576
+ ],
+ "name": "Dummy",
+ "nameLocation": "147:5:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 1740,
+ "src": "137:20:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1577,
+ "name": "Dummy",
+ "nameLocations": [
+ "179:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1576,
+ "src": "179:5:4"
+ },
+ "id": 1578,
+ "nodeType": "InheritanceSpecifier",
+ "src": "179:5:4"
+ }
+ ],
+ "canonicalName": "ERC165",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 1586,
+ "linearizedBaseContracts": [
+ 1586,
+ 1576
+ ],
+ "name": "ERC165",
+ "nameLocation": "169:6:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "functionSelector": "01ffc9a7",
+ "id": 1585,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "supportsInterface",
+ "nameLocation": "197:17:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1581,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1580,
+ "mutability": "mutable",
+ "name": "interfaceID",
+ "nameLocation": "222:11:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1585,
+ "src": "215:18:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ },
+ "typeName": {
+ "id": 1579,
+ "name": "bytes4",
+ "nodeType": "ElementaryTypeName",
+ "src": "215:6:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes4",
+ "typeString": "bytes4"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "214:20:4"
+ },
+ "returnParameters": {
+ "id": 1584,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1583,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1585,
+ "src": "258:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1582,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "258:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "257:6:4"
+ },
+ "scope": 1586,
+ "src": "188:76:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1740,
+ "src": "159:107:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1588,
+ "name": "Dummy",
+ "nameLocations": [
+ "354:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1576,
+ "src": "354:5:4"
+ },
+ "id": 1589,
+ "nodeType": "InheritanceSpecifier",
+ "src": "354:5:4"
+ },
+ {
+ "baseName": {
+ "id": 1590,
+ "name": "ERC165",
+ "nameLocations": [
+ "361:6:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1586,
+ "src": "361:6:4"
+ },
+ "id": 1591,
+ "nodeType": "InheritanceSpecifier",
+ "src": "361:6:4"
+ }
+ ],
+ "canonicalName": "ERC1633",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1587,
+ "nodeType": "StructuredDocumentation",
+ "src": "268:65:4",
+ "text": "@dev the ERC-165 identifier for this interface is 0x5755c3f2"
+ },
+ "fullyImplemented": false,
+ "id": 1604,
+ "linearizedBaseContracts": [
+ 1604,
+ 1586,
+ 1576
+ ],
+ "name": "ERC1633",
+ "nameLocation": "343:7:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1592,
+ "nodeType": "StructuredDocumentation",
+ "src": "371:95:4",
+ "text": "@dev EVM selector for this function is: 0x80a54001,\n or in textual repr: parentToken()"
+ },
+ "functionSelector": "80a54001",
+ "id": 1597,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "parentToken",
+ "nameLocation": "477:11:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1593,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "488:2:4"
+ },
+ "returnParameters": {
+ "id": 1596,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1595,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1597,
+ "src": "514:7:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1594,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "514:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "513:9:4"
+ },
+ "scope": 1604,
+ "src": "468:55:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1598,
+ "nodeType": "StructuredDocumentation",
+ "src": "526:97:4",
+ "text": "@dev EVM selector for this function is: 0xd7f083f3,\n or in textual repr: parentTokenId()"
+ },
+ "functionSelector": "d7f083f3",
+ "id": 1603,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "parentTokenId",
+ "nameLocation": "634:13:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1599,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "647:2:4"
+ },
+ "returnParameters": {
+ "id": 1602,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1601,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1603,
+ "src": "673:7:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1600,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "673:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "672:9:4"
+ },
+ "scope": 1604,
+ "src": "625:57:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1740,
+ "src": "333:351:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1606,
+ "name": "Dummy",
+ "nameLocations": [
+ "786:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1576,
+ "src": "786:5:4"
+ },
+ "id": 1607,
+ "nodeType": "InheritanceSpecifier",
+ "src": "786:5:4"
+ },
+ {
+ "baseName": {
+ "id": 1608,
+ "name": "ERC165",
+ "nameLocations": [
+ "793:6:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1586,
+ "src": "793:6:4"
+ },
+ "id": 1609,
+ "nodeType": "InheritanceSpecifier",
+ "src": "793:6:4"
+ }
+ ],
+ "canonicalName": "ERC20UniqueExtensions",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1605,
+ "nodeType": "StructuredDocumentation",
+ "src": "686:65:4",
+ "text": "@dev the ERC-165 identifier for this interface is 0xab8deb37"
+ },
+ "fullyImplemented": false,
+ "id": 1628,
+ "linearizedBaseContracts": [
+ 1628,
+ 1586,
+ 1576
+ ],
+ "name": "ERC20UniqueExtensions",
+ "nameLocation": "761:21:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1610,
+ "nodeType": "StructuredDocumentation",
+ "src": "803:348:4",
+ "text": "@dev Function that burns an amount of the token of a given account,\n deducting from the sender's allowance for said account.\n @param from The account whose tokens will be burnt.\n @param amount The amount that will be burnt.\n @dev EVM selector for this function is: 0x79cc6790,\n or in textual repr: burnFrom(address,uint256)"
+ },
+ "functionSelector": "79cc6790",
+ "id": 1619,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "burnFrom",
+ "nameLocation": "1162:8:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1615,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1612,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "1179:4:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1619,
+ "src": "1171:12:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1611,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1171:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1614,
+ "mutability": "mutable",
+ "name": "amount",
+ "nameLocation": "1193:6:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1619,
+ "src": "1185:14:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1613,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1185:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1170:30:4"
+ },
+ "returnParameters": {
+ "id": 1618,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1617,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1619,
+ "src": "1219:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1616,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1219:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1218:6:4"
+ },
+ "scope": 1628,
+ "src": "1153:72:4",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1620,
+ "nodeType": "StructuredDocumentation",
+ "src": "1228:274:4",
+ "text": "@dev Function that changes total amount of the tokens.\n Throws if `msg.sender` doesn't owns all of the tokens.\n @param amount New total amount of the tokens.\n @dev EVM selector for this function is: 0xd2418ca7,\n or in textual repr: repartition(uint256)"
+ },
+ "functionSelector": "d2418ca7",
+ "id": 1627,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "repartition",
+ "nameLocation": "1513:11:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1623,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1622,
+ "mutability": "mutable",
+ "name": "amount",
+ "nameLocation": "1533:6:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1627,
+ "src": "1525:14:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1621,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1525:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1524:16:4"
+ },
+ "returnParameters": {
+ "id": 1626,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1625,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1627,
+ "src": "1559:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1624,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "1559:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1558:6:4"
+ },
+ "scope": 1628,
+ "src": "1504:61:4",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1740,
+ "src": "751:816:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "ERC20Events",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1629,
+ "nodeType": "StructuredDocumentation",
+ "src": "1569:27:4",
+ "text": "@dev inlined interface"
+ },
+ "fullyImplemented": true,
+ "id": 1646,
+ "linearizedBaseContracts": [
+ 1646
+ ],
+ "name": "ERC20Events",
+ "nameLocation": "1606:11:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "anonymous": false,
+ "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
+ "id": 1637,
+ "name": "Transfer",
+ "nameLocation": "1627:8:4",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1636,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1631,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "1652:4:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1637,
+ "src": "1636:20:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1630,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1636:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1633,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "1674:2:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1637,
+ "src": "1658:18:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1632,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1658:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1635,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "1686:5:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1637,
+ "src": "1678:13:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1634,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1678:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1635:57:4"
+ },
+ "src": "1621:72:4"
+ },
+ {
+ "anonymous": false,
+ "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925",
+ "id": 1645,
+ "name": "Approval",
+ "nameLocation": "1701:8:4",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1644,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1639,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "1726:5:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1645,
+ "src": "1710:21:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1638,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1710:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1641,
+ "indexed": true,
+ "mutability": "mutable",
+ "name": "spender",
+ "nameLocation": "1749:7:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1645,
+ "src": "1733:23:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1640,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1733:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1643,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "1766:5:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1645,
+ "src": "1758:13:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1642,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1758:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1709:63:4"
+ },
+ "src": "1695:78:4"
+ }
+ ],
+ "scope": 1740,
+ "src": "1596:179:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1648,
+ "name": "Dummy",
+ "nameLocations": [
+ "2014:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1576,
+ "src": "2014:5:4"
+ },
+ "id": 1649,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2014:5:4"
+ },
+ {
+ "baseName": {
+ "id": 1650,
+ "name": "ERC165",
+ "nameLocations": [
+ "2021:6:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1586,
+ "src": "2021:6:4"
+ },
+ "id": 1651,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2021:6:4"
+ },
+ {
+ "baseName": {
+ "id": 1652,
+ "name": "ERC20Events",
+ "nameLocations": [
+ "2029:11:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1646,
+ "src": "2029:11:4"
+ },
+ "id": 1653,
+ "nodeType": "InheritanceSpecifier",
+ "src": "2029:11:4"
+ }
+ ],
+ "canonicalName": "ERC20",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "documentation": {
+ "id": 1647,
+ "nodeType": "StructuredDocumentation",
+ "src": "1777:218:4",
+ "text": "@title Standard ERC20 token\n @dev Implementation of the basic standard token.\n https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md\n @dev the ERC-165 identifier for this interface is 0x942e8b22"
+ },
+ "fullyImplemented": false,
+ "id": 1728,
+ "linearizedBaseContracts": [
+ 1728,
+ 1646,
+ 1586,
+ 1576
+ ],
+ "name": "ERC20",
+ "nameLocation": "2005:5:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "documentation": {
+ "id": 1654,
+ "nodeType": "StructuredDocumentation",
+ "src": "2044:124:4",
+ "text": "@return the name of the token.\n @dev EVM selector for this function is: 0x06fdde03,\n or in textual repr: name()"
+ },
+ "functionSelector": "06fdde03",
+ "id": 1659,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "name",
+ "nameLocation": "2179:4:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1655,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2183:2:4"
+ },
+ "returnParameters": {
+ "id": 1658,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1657,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1659,
+ "src": "2209:13:4",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1656,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2209:6:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2208:15:4"
+ },
+ "scope": 1728,
+ "src": "2170:54:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1660,
+ "nodeType": "StructuredDocumentation",
+ "src": "2227:128:4",
+ "text": "@return the symbol of the token.\n @dev EVM selector for this function is: 0x95d89b41,\n or in textual repr: symbol()"
+ },
+ "functionSelector": "95d89b41",
+ "id": 1665,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "symbol",
+ "nameLocation": "2366:6:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1661,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2372:2:4"
+ },
+ "returnParameters": {
+ "id": 1664,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1663,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1665,
+ "src": "2398:13:4",
+ "stateVariable": false,
+ "storageLocation": "memory",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1662,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "2398:6:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2397:15:4"
+ },
+ "scope": 1728,
+ "src": "2357:56:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1666,
+ "nodeType": "StructuredDocumentation",
+ "src": "2416:141:4",
+ "text": "@dev Total number of tokens in existence\n @dev EVM selector for this function is: 0x18160ddd,\n or in textual repr: totalSupply()"
+ },
+ "functionSelector": "18160ddd",
+ "id": 1671,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "totalSupply",
+ "nameLocation": "2568:11:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1667,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2579:2:4"
+ },
+ "returnParameters": {
+ "id": 1670,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1669,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1671,
+ "src": "2605:7:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1668,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2605:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2604:9:4"
+ },
+ "scope": 1728,
+ "src": "2559:55:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1672,
+ "nodeType": "StructuredDocumentation",
+ "src": "2617:116:4",
+ "text": "@dev Not supported\n @dev EVM selector for this function is: 0x313ce567,\n or in textual repr: decimals()"
+ },
+ "functionSelector": "313ce567",
+ "id": 1677,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "decimals",
+ "nameLocation": "2744:8:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1673,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2752:2:4"
+ },
+ "returnParameters": {
+ "id": 1676,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1675,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1677,
+ "src": "2778:5:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ },
+ "typeName": {
+ "id": 1674,
+ "name": "uint8",
+ "nodeType": "ElementaryTypeName",
+ "src": "2778:5:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint8",
+ "typeString": "uint8"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2777:7:4"
+ },
+ "scope": 1728,
+ "src": "2735:50:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1678,
+ "nodeType": "StructuredDocumentation",
+ "src": "2788:285:4",
+ "text": "@dev Gets the balance of the specified address.\n @param owner The address to query the balance of.\n @return An uint256 representing the amount owned by the passed address.\n @dev EVM selector for this function is: 0x70a08231,\n or in textual repr: balanceOf(address)"
+ },
+ "functionSelector": "70a08231",
+ "id": 1685,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "balanceOf",
+ "nameLocation": "3084:9:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1681,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1680,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "3102:5:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1685,
+ "src": "3094:13:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1679,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3094:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3093:15:4"
+ },
+ "returnParameters": {
+ "id": 1684,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1683,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1685,
+ "src": "3132:7:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1682,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3132:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3131:9:4"
+ },
+ "scope": 1728,
+ "src": "3075:66:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1686,
+ "nodeType": "StructuredDocumentation",
+ "src": "3144:248:4",
+ "text": "@dev Transfer token for a specified address\n @param to The address to transfer to.\n @param amount The amount to be transferred.\n @dev EVM selector for this function is: 0xa9059cbb,\n or in textual repr: transfer(address,uint256)"
+ },
+ "functionSelector": "a9059cbb",
+ "id": 1695,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transfer",
+ "nameLocation": "3403:8:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1691,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1688,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "3420:2:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1695,
+ "src": "3412:10:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1687,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3412:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1690,
+ "mutability": "mutable",
+ "name": "amount",
+ "nameLocation": "3432:6:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1695,
+ "src": "3424:14:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1689,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3424:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3411:28:4"
+ },
+ "returnParameters": {
+ "id": 1694,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1693,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1695,
+ "src": "3458:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1692,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3458:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3457:6:4"
+ },
+ "scope": 1728,
+ "src": "3394:70:4",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1696,
+ "nodeType": "StructuredDocumentation",
+ "src": "3467:376:4",
+ "text": "@dev Transfer tokens from one address to another\n @param from address The address which you want to send tokens from\n @param to address The address which you want to transfer to\n @param amount uint256 the amount of tokens to be transferred\n @dev EVM selector for this function is: 0x23b872dd,\n or in textual repr: transferFrom(address,address,uint256)"
+ },
+ "functionSelector": "23b872dd",
+ "id": 1707,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "transferFrom",
+ "nameLocation": "3854:12:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1703,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1698,
+ "mutability": "mutable",
+ "name": "from",
+ "nameLocation": "3878:4:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1707,
+ "src": "3870:12:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1697,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3870:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1700,
+ "mutability": "mutable",
+ "name": "to",
+ "nameLocation": "3894:2:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1707,
+ "src": "3886:10:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1699,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3886:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1702,
+ "mutability": "mutable",
+ "name": "amount",
+ "nameLocation": "3908:6:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1707,
+ "src": "3900:14:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1701,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3900:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3866:51:4"
+ },
+ "returnParameters": {
+ "id": 1706,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1705,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1707,
+ "src": "3936:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1704,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "3936:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3935:6:4"
+ },
+ "scope": 1728,
+ "src": "3845:97:4",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1708,
+ "nodeType": "StructuredDocumentation",
+ "src": "3945:709:4",
+ "text": "@dev Approve the passed address to spend the specified amount of tokens on behalf of `msg.sender`.\n Beware that changing an allowance with this method brings the risk that someone may use both the old\n and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\n race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n @param spender The address which will spend the funds.\n @param amount The amount of tokens to be spent.\n @dev EVM selector for this function is: 0x095ea7b3,\n or in textual repr: approve(address,uint256)"
+ },
+ "functionSelector": "095ea7b3",
+ "id": 1717,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "approve",
+ "nameLocation": "4665:7:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1713,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1710,
+ "mutability": "mutable",
+ "name": "spender",
+ "nameLocation": "4681:7:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1717,
+ "src": "4673:15:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1709,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4673:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1712,
+ "mutability": "mutable",
+ "name": "amount",
+ "nameLocation": "4698:6:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1717,
+ "src": "4690:14:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1711,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4690:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4672:33:4"
+ },
+ "returnParameters": {
+ "id": 1716,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1715,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1717,
+ "src": "4724:4:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ "typeName": {
+ "id": 1714,
+ "name": "bool",
+ "nodeType": "ElementaryTypeName",
+ "src": "4724:4:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4723:6:4"
+ },
+ "scope": 1728,
+ "src": "4656:74:4",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "documentation": {
+ "id": 1718,
+ "nodeType": "StructuredDocumentation",
+ "src": "4733:409:4",
+ "text": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n @param owner address The address which owns the funds.\n @param spender address The address which will spend the funds.\n @return A uint256 specifying the amount of tokens still available for the spender.\n @dev EVM selector for this function is: 0xdd62ed3e,\n or in textual repr: allowance(address,address)"
+ },
+ "functionSelector": "dd62ed3e",
+ "id": 1727,
+ "implemented": false,
+ "kind": "function",
+ "modifiers": [],
+ "name": "allowance",
+ "nameLocation": "5153:9:4",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1723,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1720,
+ "mutability": "mutable",
+ "name": "owner",
+ "nameLocation": "5171:5:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1727,
+ "src": "5163:13:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1719,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5163:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1722,
+ "mutability": "mutable",
+ "name": "spender",
+ "nameLocation": "5186:7:4",
+ "nodeType": "VariableDeclaration",
+ "scope": 1727,
+ "src": "5178:15:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1721,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5178:7:4",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5162:32:4"
+ },
+ "returnParameters": {
+ "id": 1726,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1725,
+ "mutability": "mutable",
+ "name": "",
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "VariableDeclaration",
+ "scope": 1727,
+ "src": "5218:7:4",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1724,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5218:7:4",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5217:9:4"
+ },
+ "scope": 1728,
+ "src": "5144:83:4",
+ "stateMutability": "view",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 1740,
+ "src": "1995:3234:4",
+ "usedErrors": []
+ },
+ {
+ "abstract": false,
+ "baseContracts": [
+ {
+ "baseName": {
+ "id": 1729,
+ "name": "Dummy",
+ "nameLocations": [
+ "5266:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1576,
+ "src": "5266:5:4"
+ },
+ "id": 1730,
+ "nodeType": "InheritanceSpecifier",
+ "src": "5266:5:4"
+ },
+ {
+ "baseName": {
+ "id": 1731,
+ "name": "ERC165",
+ "nameLocations": [
+ "5273:6:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1586,
+ "src": "5273:6:4"
+ },
+ "id": 1732,
+ "nodeType": "InheritanceSpecifier",
+ "src": "5273:6:4"
+ },
+ {
+ "baseName": {
+ "id": 1733,
+ "name": "ERC20",
+ "nameLocations": [
+ "5281:5:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1728,
+ "src": "5281:5:4"
+ },
+ "id": 1734,
+ "nodeType": "InheritanceSpecifier",
+ "src": "5281:5:4"
+ },
+ {
+ "baseName": {
+ "id": 1735,
+ "name": "ERC20UniqueExtensions",
+ "nameLocations": [
+ "5288:21:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1628,
+ "src": "5288:21:4"
+ },
+ "id": 1736,
+ "nodeType": "InheritanceSpecifier",
+ "src": "5288:21:4"
+ },
+ {
+ "baseName": {
+ "id": 1737,
+ "name": "ERC1633",
+ "nameLocations": [
+ "5311:7:4"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1604,
+ "src": "5311:7:4"
+ },
+ "id": 1738,
+ "nodeType": "InheritanceSpecifier",
+ "src": "5311:7:4"
+ }
+ ],
+ "canonicalName": "UniqueRefungibleToken",
+ "contractDependencies": [],
+ "contractKind": "interface",
+ "fullyImplemented": false,
+ "id": 1739,
+ "linearizedBaseContracts": [
+ 1739,
+ 1604,
+ 1628,
+ 1728,
+ 1646,
+ 1586,
+ 1576
+ ],
+ "name": "UniqueRefungibleToken",
+ "nameLocation": "5241:21:4",
+ "nodeType": "ContractDefinition",
+ "nodes": [],
+ "scope": 1740,
+ "src": "5231:90:4",
+ "usedErrors": []
+ }
+ ],
+ "src": "75:5247:4"
+ },
+ "id": 4
+ },
+ "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol": {
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",
+ "exportedSymbols": {
+ "Collection": [
+ 1248
+ ],
+ "CollectionHelpers": [
+ 99
+ ],
+ "ContractHelpers": [
+ 282
+ ],
+ "EvmToSubstrate": [
+ 2269
+ ],
+ "NftCrossAccountId": [
+ 610
+ ],
+ "NftProperty": [
+ 620
+ ],
+ "Property": [
+ 1762
+ ],
+ "RftCrossAccountId": [
+ 1253
+ ],
+ "RftProperties": [
+ 1263
+ ],
+ "TokenProperties": [
+ 357
+ ],
+ "UniqueNFT": [
+ 930
+ ],
+ "UniqueRefungible": [
+ 1572
+ ],
+ "UniqueRefungibleToken": [
+ 1739
+ ]
+ },
+ "id": 2270,
+ "license": "Apache License",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 1741,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "44:24:5"
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol",
+ "file": "../api/CollectionHelpers.sol",
+ "id": 1743,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 100,
+ "src": "69:63:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1742,
+ "name": "CollectionHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 99,
+ "src": "77:17:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol",
+ "file": "../api/ContractHelpers.sol",
+ "id": 1745,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 288,
+ "src": "133:59:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1744,
+ "name": "ContractHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 282,
+ "src": "141:15:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol",
+ "file": "../api/UniqueRefungibleToken.sol",
+ "id": 1747,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 1740,
+ "src": "193:71:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1746,
+ "name": "UniqueRefungibleToken",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1739,
+ "src": "201:21:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol",
+ "file": "../api/UniqueRefungible.sol",
+ "id": 1752,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 1573,
+ "src": "265:137:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1748,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "273:16:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1749,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "291:10:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1750,
+ "name": "EthCrossAccount",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "303:15:5",
+ "typeDescriptions": {}
+ },
+ "local": "RftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1751,
+ "name": "Tuple20",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1263,
+ "src": "341:7:5",
+ "typeDescriptions": {}
+ },
+ "local": "RftProperties",
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol",
+ "file": "../api/UniqueNFT.sol",
+ "id": 1757,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2270,
+ "sourceUnit": 931,
+ "src": "403:126:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1753,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "411:9:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1754,
+ "name": "EthCrossAccount",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "422:15:5",
+ "typeDescriptions": {}
+ },
+ "local": "NftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1755,
+ "name": "Tuple21",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 620,
+ "src": "460:7:5",
+ "typeDescriptions": {}
+ },
+ "local": "NftProperty",
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1756,
+ "name": "TokenProperties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 357,
+ "src": "484:15:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "canonicalName": "Property",
+ "id": 1762,
+ "members": [
+ {
+ "constant": false,
+ "id": 1759,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "557:3:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1762,
+ "src": "550:10:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1758,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "550:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1761,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "569:5:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1762,
+ "src": "563:11:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1760,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "563:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Property",
+ "nameLocation": "538:8:5",
+ "nodeType": "StructDefinition",
+ "scope": 2270,
+ "src": "531:46:5",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "EvmToSubstrate",
+ "contractDependencies": [],
+ "contractKind": "contract",
+ "fullyImplemented": true,
+ "id": 2269,
+ "linearizedBaseContracts": [
+ 2269
+ ],
+ "name": "EvmToSubstrate",
+ "nameLocation": "682:14:5",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "constant": true,
+ "id": 1770,
+ "mutability": "constant",
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "717:26:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2269,
+ "src": "700:76:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1763,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "700:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "526546756e6769626c65",
+ "id": 1767,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "762:12:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ },
+ "value": "ReFungible"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ }
+ ],
+ "id": 1766,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "756:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1765,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "756:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1768,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "756:19:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1764,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "746:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1769,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "746:30:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": true,
+ "id": 1778,
+ "mutability": "constant",
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "796:27:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2269,
+ "src": "779:70:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1771,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "779:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "4e4654",
+ "id": 1775,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "842:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ },
+ "value": "NFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ }
+ ],
+ "id": 1774,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "836:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1773,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "836:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1776,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "836:12:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1772,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "826:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1777,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "826:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "body": {
+ "id": 1799,
+ "nodeType": "Block",
+ "src": "1159:889:5",
+ "statements": [
+ {
+ "assignments": [
+ 1784
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1784,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "1174:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1799,
+ "src": "1163:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1783,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1782,
+ "name": "Collection",
+ "nameLocations": [
+ "1163:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "1163:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "1163:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1788,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1786,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1780,
+ "src": "1202:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1785,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "1191:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1787,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1191:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "1163:51:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "expression": {
+ "id": 1792,
+ "name": "msg",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967281,
+ "src": "1256:3:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_magic_message",
+ "typeString": "msg"
+ }
+ },
+ "id": 1793,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1260:6:5",
+ "memberName": "sender",
+ "nodeType": "MemberAccess",
+ "src": "1256:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1790,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1784,
+ "src": "1226:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1791,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1241:14:5",
+ "memberName": "isOwnerOrAdmin",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1204,
+ "src": "1226:29:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$",
+ "typeString": "function (address) view external returns (bool)"
+ }
+ },
+ "id": 1794,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1226:41:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2063616c6c2074686973206d6574686f64",
+ "id": 1795,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "1269:50:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ },
+ "value": "Only collection admin/owner can call this method"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ }
+ ],
+ "id": 1789,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "1218:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1796,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1218:102:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1797,
+ "nodeType": "ExpressionStatement",
+ "src": "1218:102:5"
+ },
+ {
+ "id": 1798,
+ "nodeType": "PlaceholderStatement",
+ "src": "2043:1:5"
+ }
+ ]
+ },
+ "id": 1800,
+ "name": "checkRestrictions",
+ "nameLocation": "1120:17:5",
+ "nodeType": "ModifierDefinition",
+ "parameters": {
+ "id": 1781,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1780,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "1146:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1800,
+ "src": "1138:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1779,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1138:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1137:21:5"
+ },
+ "src": "1111:937:5",
+ "virtual": false,
+ "visibility": "internal"
+ },
+ {
+ "anonymous": false,
+ "documentation": {
+ "id": 1801,
+ "nodeType": "StructuredDocumentation",
+ "src": "2051:69:5",
+ "text": "@dev This emits when a mint to a substrate address has been made."
+ },
+ "eventSelector": "fb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb7535",
+ "id": 1811,
+ "name": "MintToSub",
+ "nameLocation": "2128:9:5",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1810,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1803,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toEth",
+ "nameLocation": "2146:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2138:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1802,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2138:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1805,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toSub",
+ "nameLocation": "2162:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2154:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1804,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2154:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1807,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "2178:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2170:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1806,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2170:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1809,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_tokenId",
+ "nameLocation": "2199:8:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1811,
+ "src": "2191:16:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1808,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2191:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2137:71:5"
+ },
+ "src": "2122:87:5"
+ },
+ {
+ "body": {
+ "id": 1941,
+ "nodeType": "Block",
+ "src": "2326:1359:5",
+ "statements": [
+ {
+ "assignments": [
+ 1823
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1823,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "2487:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2476:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1822,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1821,
+ "name": "Collection",
+ "nameLocations": [
+ "2476:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "2476:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "2476:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1827,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1825,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2515:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1824,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "2504:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1826,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2504:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2476:51:5"
+ },
+ {
+ "assignments": [
+ 1829
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1829,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "2539:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2531:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1828,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "2531:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1838,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1833,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1823,
+ "src": "2572:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1834,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2587:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "2572:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1835,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2572:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1832,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2566:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1831,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "2566:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1836,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2566:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1830,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "2556:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1837,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2556:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2531:80:5"
+ },
+ {
+ "assignments": [
+ 1840
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1840,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2623:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1941,
+ "src": "2615:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1839,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2615:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1841,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2615:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1844,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1842,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1829,
+ "src": "2639:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1843,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "2657:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "2639:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1885,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1883,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1829,
+ "src": "2970:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1884,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "2988:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "2970:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 1928,
+ "nodeType": "Block",
+ "src": "3325:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 1925,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3337:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 1924,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "3330:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 1926,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3330:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1927,
+ "nodeType": "ExpressionStatement",
+ "src": "3330:59:5"
+ }
+ ]
+ },
+ "id": 1929,
+ "nodeType": "IfStatement",
+ "src": "2966:428:5",
+ "trueBody": {
+ "id": 1923,
+ "nodeType": "Block",
+ "src": "3017:302:5",
+ "statements": [
+ {
+ "assignments": [
+ 1888
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1888,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "3032:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1923,
+ "src": "3022:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 1887,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1886,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "3022:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "3022:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "3022:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1892,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1890,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "3058:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1889,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "3048:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 1891,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3048:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "3022:48:5"
+ },
+ {
+ "expression": {
+ "id": 1901,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1893,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3120:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1898,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3157:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1897,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3149:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1896,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3149:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1899,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3149:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1894,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1888,
+ "src": "3130:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1895,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3144:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "3130:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 1900,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3130:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "3120:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1902,
+ "nodeType": "ExpressionStatement",
+ "src": "3120:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1909,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3232:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1908,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3224:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1907,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3224:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1910,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3224:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1911,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3239:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1906,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "3206:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1912,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3206:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1916,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3273:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1915,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3265:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1914,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3265:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1917,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3265:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1918,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "3277:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1913,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "3247:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1919,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3247:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 1920,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3302:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1903,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1888,
+ "src": "3169:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1905,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3183:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "3169:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 1921,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3169:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1922,
+ "nodeType": "ExpressionStatement",
+ "src": "3169:145:5"
+ }
+ ]
+ }
+ },
+ "id": 1930,
+ "nodeType": "IfStatement",
+ "src": "2635:759:5",
+ "trueBody": {
+ "id": 1882,
+ "nodeType": "Block",
+ "src": "2685:275:5",
+ "statements": [
+ {
+ "assignments": [
+ 1847
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1847,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "2707:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1882,
+ "src": "2690:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1846,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1845,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "2690:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1572,
+ "src": "2690:16:5"
+ },
+ "referencedDeclaration": 1572,
+ "src": "2690:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1851,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1849,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2740:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1848,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "2723:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1572_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1850,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2723:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2690:62:5"
+ },
+ {
+ "expression": {
+ "id": 1860,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1852,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "2761:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1857,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "2798:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1856,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2790:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1855,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2790:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1858,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2790:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1853,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1847,
+ "src": "2771:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1854,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2785:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1314,
+ "src": "2771:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 1859,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2771:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "2761:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1861,
+ "nodeType": "ExpressionStatement",
+ "src": "2761:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1868,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "2873:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1867,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2865:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1866,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2865:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1869,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2865:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1870,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "2880:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1865,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "2847:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1871,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2847:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1875,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "2914:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1874,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2906:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1873,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2906:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1876,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2906:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1877,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "2918:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1872,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "2888:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 1878,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2888:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 1879,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "2943:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1862,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1847,
+ "src": "2810:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1864,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2824:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1368,
+ "src": "2810:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 1880,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2810:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1881,
+ "nodeType": "ExpressionStatement",
+ "src": "2810:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1934,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3636:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1933,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3628:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1932,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3628:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1935,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3628:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1936,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1815,
+ "src": "3640:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 1937,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "3660:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1938,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1840,
+ "src": "3673:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1931,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "3618:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 1939,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3618:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1940,
+ "nodeType": "EmitStatement",
+ "src": "3613:68:5"
+ }
+ ]
+ },
+ "functionSelector": "7a8d9786",
+ "id": 1942,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1818,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1813,
+ "src": "2313:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1819,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1817,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "2295:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "2295:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "2295:30:5"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "nameLocation": "2221:15:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1816,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1813,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "2245:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1942,
+ "src": "2237:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1812,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2237:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1815,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "2266:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1942,
+ "src": "2258:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1814,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2258:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2236:49:5"
+ },
+ "returnParameters": {
+ "id": 1820,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2326:0:5"
+ },
+ "scope": 2269,
+ "src": "2212:1473:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "body": {
+ "id": 2150,
+ "nodeType": "Block",
+ "src": "3855:1590:5",
+ "statements": [
+ {
+ "assignments": [
+ 1957
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1957,
+ "mutability": "mutable",
+ "name": "propertiesLength",
+ "nameLocation": "4016:16:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4008:24:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1956,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4008:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1960,
+ "initialValue": {
+ "expression": {
+ "id": 1958,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4035:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 1959,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4046:6:5",
+ "memberName": "length",
+ "nodeType": "MemberAccess",
+ "src": "4035:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4008:44:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 1964,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1962,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4064:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": ">",
+ "rightExpression": {
+ "hexValue": "30",
+ "id": 1963,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4083:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "src": "4064:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "id": 1965,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4086:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ },
+ "value": "Properies is empty"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ }
+ ],
+ "id": 1961,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "4056:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1966,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4056:51:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1967,
+ "nodeType": "ExpressionStatement",
+ "src": "4056:51:5"
+ },
+ {
+ "assignments": [
+ 1970
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1970,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "4123:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4112:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1969,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1968,
+ "name": "Collection",
+ "nameLocations": [
+ "4112:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "4112:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "4112:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1974,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1972,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4151:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1971,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "4140:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1973,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4140:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4112:51:5"
+ },
+ {
+ "assignments": [
+ 1976
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1976,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "4175:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4167:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1975,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "4167:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1985,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1980,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1970,
+ "src": "4208:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1981,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4223:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "4208:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1982,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4208:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1979,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4202:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1978,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "4202:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1983,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4202:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1977,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "4192:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1984,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4192:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4167:80:5"
+ },
+ {
+ "assignments": [
+ 1987
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1987,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "4259:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2150,
+ "src": "4251:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1986,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4251:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1988,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4251:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1991,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1989,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1976,
+ "src": "4275:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1990,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "4293:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "4275:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2063,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2061,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1976,
+ "src": "4770:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2062,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "4788:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "4770:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 2137,
+ "nodeType": "Block",
+ "src": "5248:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 2134,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5260:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 2133,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "5253:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 2135,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5253:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2136,
+ "nodeType": "ExpressionStatement",
+ "src": "5253:59:5"
+ }
+ ]
+ },
+ "id": 2138,
+ "nodeType": "IfStatement",
+ "src": "4766:551:5",
+ "trueBody": {
+ "id": 2132,
+ "nodeType": "Block",
+ "src": "4817:425:5",
+ "statements": [
+ {
+ "assignments": [
+ 2066
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2066,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "4832:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2132,
+ "src": "4822:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 2065,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2064,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "4822:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "4822:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "4822:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2070,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2068,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4858:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2067,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "4848:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 2069,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4848:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4822:48:5"
+ },
+ {
+ "expression": {
+ "id": 2075,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 2071,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4875:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2072,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "4885:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2073,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4899:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 757,
+ "src": "4885:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 2074,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4885:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4875:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2076,
+ "nodeType": "ExpressionStatement",
+ "src": "4875:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2082,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4944:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2081,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4936:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2080,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4936:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2083,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4936:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2077,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "4917:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2079,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4931:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "4917:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2084,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4917:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2085,
+ "nodeType": "ExpressionStatement",
+ "src": "4917:33:5"
+ },
+ {
+ "body": {
+ "id": 2110,
+ "nodeType": "Block",
+ "src": "5002:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2099,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5034:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2100,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "5043:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2102,
+ "indexExpression": {
+ "id": 2101,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "5054:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5043:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2103,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5057:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1759,
+ "src": "5043:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2104,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "5062:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2106,
+ "indexExpression": {
+ "id": 2105,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "5073:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5062:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2107,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5076:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1761,
+ "src": "5062:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 2096,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "5008:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2098,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5022:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 328,
+ "src": "5008:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 2108,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5008:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2109,
+ "nodeType": "ExpressionStatement",
+ "src": "5008:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2092,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2090,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "4975:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 2091,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4979:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4975:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2111,
+ "initializationExpression": {
+ "assignments": [
+ 2087
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2087,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "4968:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2111,
+ "src": "4960:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2086,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4960:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2089,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 2088,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4972:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4960:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 2094,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "4997:3:5",
+ "subExpression": {
+ "id": 2093,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2087,
+ "src": "4999:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2095,
+ "nodeType": "ExpressionStatement",
+ "src": "4997:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "4955:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2118,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "5155:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2117,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5147:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2116,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5147:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2119,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5147:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2120,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5162:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2115,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "5129:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2121,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5129:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2125,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5196:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2124,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5188:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2123,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5188:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2126,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5188:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2127,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "5200:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2122,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "5170:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2128,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5170:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2129,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5225:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2112,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2066,
+ "src": "5092:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2114,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5106:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "5092:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2130,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5092:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2131,
+ "nodeType": "ExpressionStatement",
+ "src": "5092:145:5"
+ }
+ ]
+ }
+ },
+ "id": 2139,
+ "nodeType": "IfStatement",
+ "src": "4271:1046:5",
+ "trueBody": {
+ "id": 2060,
+ "nodeType": "Block",
+ "src": "4321:439:5",
+ "statements": [
+ {
+ "assignments": [
+ 1994
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1994,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "4343:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2060,
+ "src": "4326:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1993,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1992,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "4326:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1572,
+ "src": "4326:16:5"
+ },
+ "referencedDeclaration": 1572,
+ "src": "4326:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1998,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1996,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "4376:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1995,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1572,
+ "src": "4359:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1572_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1997,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4359:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4326:62:5"
+ },
+ {
+ "expression": {
+ "id": 2003,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1999,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4393:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2000,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4403:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2001,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4417:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1391,
+ "src": "4403:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 2002,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4403:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4393:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2004,
+ "nodeType": "ExpressionStatement",
+ "src": "4393:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2010,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4462:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2009,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4454:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2008,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4454:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2011,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4454:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2005,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4435:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2007,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4449:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1314,
+ "src": "4435:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2012,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4435:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2013,
+ "nodeType": "ExpressionStatement",
+ "src": "4435:33:5"
+ },
+ {
+ "body": {
+ "id": 2038,
+ "nodeType": "Block",
+ "src": "4520:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2027,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4552:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2028,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4561:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2030,
+ "indexExpression": {
+ "id": 2029,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4572:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4561:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2031,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4575:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1759,
+ "src": "4561:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2032,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1950,
+ "src": "4580:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2034,
+ "indexExpression": {
+ "id": 2033,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4591:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4580:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2035,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4594:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1761,
+ "src": "4580:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 2024,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4526:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2026,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4540:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 971,
+ "src": "4526:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 2036,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4526:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2037,
+ "nodeType": "ExpressionStatement",
+ "src": "4526:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2020,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2018,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4493:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 2019,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1957,
+ "src": "4497:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4493:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2039,
+ "initializationExpression": {
+ "assignments": [
+ 2015
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2015,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "4486:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2039,
+ "src": "4478:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2014,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4478:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2017,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 2016,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4490:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4478:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 2022,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "4515:3:5",
+ "subExpression": {
+ "id": 2021,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2015,
+ "src": "4517:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2023,
+ "nodeType": "ExpressionStatement",
+ "src": "4515:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "4473:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2046,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4673:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2045,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4665:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2044,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4665:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2047,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4665:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2048,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4680:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2043,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "4647:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2049,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4647:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2053,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4714:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2052,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4706:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2051,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4706:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2054,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4706:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2055,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "4718:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2050,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1253,
+ "src": "4688:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$1253_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2056,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4688:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2057,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "4743:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$1253_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2040,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1994,
+ "src": "4610:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1572",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 2042,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4624:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1368,
+ "src": "4610:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_struct$_EthCrossAccount_$1253_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2058,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4610:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2059,
+ "nodeType": "ExpressionStatement",
+ "src": "4610:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2143,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5396:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2142,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5388:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2141,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5388:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2144,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5388:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2145,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1946,
+ "src": "5400:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2146,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "5420:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2147,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1987,
+ "src": "5433:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2140,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "5378:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 2148,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5378:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2149,
+ "nodeType": "EmitStatement",
+ "src": "5373:68:5"
+ }
+ ]
+ },
+ "functionSelector": "440dff9d",
+ "id": 2151,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1953,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1944,
+ "src": "3842:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1954,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1952,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "3824:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "3824:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "3824:30:5"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "nameLocation": "3697:27:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1951,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1944,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "3736:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3728:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1943,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3728:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1946,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "3759:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3751:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1945,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "3751:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1950,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "3801:10:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2151,
+ "src": "3781:30:5",
+ "stateVariable": false,
+ "storageLocation": "calldata",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1948,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1947,
+ "name": "Property",
+ "nameLocations": [
+ "3781:8:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1762,
+ "src": "3781:8:5"
+ },
+ "referencedDeclaration": 1762,
+ "src": "3781:8:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1762_storage_ptr",
+ "typeString": "struct Property"
+ }
+ },
+ "id": 1949,
+ "nodeType": "ArrayTypeName",
+ "src": "3781:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1762_storage_$dyn_storage_ptr",
+ "typeString": "struct Property[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "3724:90:5"
+ },
+ "returnParameters": {
+ "id": 1955,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "3855:0:5"
+ },
+ "scope": 2269,
+ "src": "3688:1757:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "body": {
+ "id": 2267,
+ "nodeType": "Block",
+ "src": "5619:885:5",
+ "statements": [
+ {
+ "assignments": [
+ 2166
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2166,
+ "mutability": "mutable",
+ "name": "propertiesLength",
+ "nameLocation": "5631:16:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5623:24:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2165,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5623:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2169,
+ "initialValue": {
+ "expression": {
+ "id": 2167,
+ "name": "_properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2159,
+ "src": "5650:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ },
+ "id": 2168,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5662:6:5",
+ "memberName": "length",
+ "nodeType": "MemberAccess",
+ "src": "5650:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5623:45:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2173,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2171,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2166,
+ "src": "5680:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": ">",
+ "rightExpression": {
+ "hexValue": "30",
+ "id": 2172,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5699:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "src": "5680:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "id": 2174,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5702:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ },
+ "value": "Properies is empty"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ }
+ ],
+ "id": 2170,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "5672:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 2175,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5672:51:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2176,
+ "nodeType": "ExpressionStatement",
+ "src": "5672:51:5"
+ },
+ {
+ "assignments": [
+ 2179
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2179,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "5739:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5728:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 2178,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2177,
+ "name": "Collection",
+ "nameLocations": [
+ "5728:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1248,
+ "src": "5728:10:5"
+ },
+ "referencedDeclaration": 1248,
+ "src": "5728:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2183,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2181,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "5767:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2180,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1248,
+ "src": "5756:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1248_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 2182,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5756:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5728:51:5"
+ },
+ {
+ "assignments": [
+ 2185
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2185,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "5791:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5783:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 2184,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "5783:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2194,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2189,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2179,
+ "src": "5824:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1248",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 2190,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5839:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1219,
+ "src": "5824:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 2191,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5824:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 2188,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5818:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 2187,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "5818:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2192,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5818:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 2186,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "5808:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 2193,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5808:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5783:80:5"
+ },
+ {
+ "assignments": [
+ 2196
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2196,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "5875:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2267,
+ "src": "5867:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2195,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5867:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2197,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5867:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2200,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2198,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2185,
+ "src": "5891:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2199,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1770,
+ "src": "5909:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "5891:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2204,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2202,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2185,
+ "src": "5949:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2203,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1778,
+ "src": "5967:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "5949:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 2254,
+ "nodeType": "Block",
+ "src": "6359:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 2251,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6371:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 2250,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "6364:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 2252,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6364:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2253,
+ "nodeType": "ExpressionStatement",
+ "src": "6364:59:5"
+ }
+ ]
+ },
+ "id": 2255,
+ "nodeType": "IfStatement",
+ "src": "5945:483:5",
+ "trueBody": {
+ "id": 2249,
+ "nodeType": "Block",
+ "src": "5996:357:5",
+ "statements": [
+ {
+ "assignments": [
+ 2207
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2207,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "6011:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2249,
+ "src": "6001:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 2206,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2205,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "6001:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 930,
+ "src": "6001:9:5"
+ },
+ "referencedDeclaration": 930,
+ "src": "6001:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2211,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2209,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "6037:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2208,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 930,
+ "src": "6027:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$930_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 2210,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6027:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "6001:48:5"
+ },
+ {
+ "expression": {
+ "id": 2220,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 2212,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6099:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2217,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "6136:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2216,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6128:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2215,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6128:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2218,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6128:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 2213,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6109:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2214,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6123:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 671,
+ "src": "6109:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_uint256_$",
+ "typeString": "function (address) external returns (uint256)"
+ }
+ },
+ "id": 2219,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6109:33:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "6099:43:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2221,
+ "nodeType": "ExpressionStatement",
+ "src": "6099:43:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2225,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6176:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2226,
+ "name": "_properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2159,
+ "src": "6185:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21 calldata[] calldata"
+ }
+ ],
+ "expression": {
+ "id": 2222,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6148:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2224,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6162:13:5",
+ "memberName": "setProperties",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 338,
+ "src": "6148:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_array$_t_struct$_Tuple21_$620_memory_ptr_$dyn_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,struct Tuple21 memory[] memory) external"
+ }
+ },
+ "id": 2227,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6148:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2228,
+ "nodeType": "ExpressionStatement",
+ "src": "6148:49:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2235,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "6266:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2269",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2234,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6258:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2233,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6258:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2236,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6258:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2237,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6273:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2232,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "6240:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2238,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6240:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2242,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6307:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2241,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6299:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2240,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6299:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2243,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6299:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2244,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2155,
+ "src": "6311:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2239,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 610,
+ "src": "6281:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_EthCrossAccount_$610_storage_ptr_$",
+ "typeString": "type(struct EthCrossAccount storage pointer)"
+ }
+ },
+ "id": 2245,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6281:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ }
+ },
+ {
+ "id": 2246,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6336:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_EthCrossAccount_$610_memory_ptr",
+ "typeString": "struct EthCrossAccount memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2229,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2207,
+ "src": "6203:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$930",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2231,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "6217:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 734,
+ "src": "6203:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_struct$_EthCrossAccount_$610_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct EthCrossAccount memory,struct EthCrossAccount memory,uint256) external"
+ }
+ },
+ "id": 2247,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6203:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2248,
+ "nodeType": "ExpressionStatement",
+ "src": "6203:145:5"
+ }
+ ]
+ }
+ },
+ "id": 2256,
+ "nodeType": "IfStatement",
+ "src": "5887:541:5",
+ "trueBody": {
+ "id": 2201,
+ "nodeType": "Block",
+ "src": "5937:2:5",
+ "statements": []
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2260,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "6455:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2259,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "6447:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2258,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "6447:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2261,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6447:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2262,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2155,
+ "src": "6459:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2263,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "6479:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2264,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2196,
+ "src": "6492:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2257,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1811,
+ "src": "6437:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 2265,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "6437:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2266,
+ "nodeType": "EmitStatement",
+ "src": "6432:68:5"
+ }
+ ]
+ },
+ "functionSelector": "3a0dbb1a",
+ "id": 2268,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 2162,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2153,
+ "src": "5606:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 2163,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 2161,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "5588:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1800,
+ "src": "5588:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "5588:30:5"
+ }
+ ],
+ "name": "mintToSubstrateBulkProperty",
+ "nameLocation": "5457:27:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 2160,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 2153,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "5496:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5488:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 2152,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5488:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 2155,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "5519:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5511:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2154,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5511:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 2159,
+ "mutability": "mutable",
+ "name": "_properties",
+ "nameLocation": "5564:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2268,
+ "src": "5541:34:5",
+ "stateVariable": false,
+ "storageLocation": "calldata",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Tuple21[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 2157,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2156,
+ "name": "NftProperty",
+ "nameLocations": [
+ "5541:11:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 620,
+ "src": "5541:11:5"
+ },
+ "referencedDeclaration": 620,
+ "src": "5541:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple21_$620_storage_ptr",
+ "typeString": "struct Tuple21"
+ }
+ },
+ "id": 2158,
+ "nodeType": "ArrayTypeName",
+ "src": "5541:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Tuple21_$620_storage_$dyn_storage_ptr",
+ "typeString": "struct Tuple21[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "5484:94:5"
+ },
+ "returnParameters": {
+ "id": 2164,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "5619:0:5"
+ },
+ "scope": 2269,
+ "src": "5448:1056:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 2270,
+ "src": "673:5833:5",
+ "usedErrors": []
+ }
+ ],
+ "src": "44:6463:5"
+ },
+ "id": 5
+ }
+ }
+}
\ No newline at end of file
pallets/evm-contract-helpers/src/stubs/ContractHelpers.rawdiffbeforeafterbothbinary blob — no preview
pallets/fungible/src/stubs/UniqueFungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/nonfungible/src/stubs/UniqueNFT.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungibleToken.rawdiffbeforeafterbothbinary blob — no preview
pallets/unique/src/eth/stubs/CollectionHelpers.soldiffbeforeafterboth--- a/pallets/unique/src/eth/stubs/CollectionHelpers.sol
+++ b/pallets/unique/src/eth/stubs/CollectionHelpers.sol
@@ -1,133 +0,0 @@
-// SPDX-License-Identifier: OTHER
-// This code is automatically generated
-
-pragma solidity >=0.8.0 <0.9.0;
-
-/// @dev common stubs holder
-contract Dummy {
- uint8 dummy;
- string stub_error = "this contract is implemented in native";
-}
-
-contract ERC165 is Dummy {
- function supportsInterface(bytes4 interfaceID) external view returns (bool) {
- require(false, stub_error);
- interfaceID;
- return true;
- }
-}
-
-/// @dev inlined interface
-contract CollectionHelpersEvents {
- event CollectionCreated(address indexed owner, address indexed collectionId);
- event CollectionDestroyed(address indexed collectionId);
-}
-
-/// @title Contract, which allows users to operate with collections
-/// @dev the ERC-165 identifier for this interface is 0x7dea03b1
-contract CollectionHelpers is Dummy, ERC165, CollectionHelpersEvents {
- /// Create an NFT collection
- /// @param name Name of the collection
- /// @param description Informative description of the collection
- /// @param tokenPrefix Token prefix to represent the collection tokens in UI and user applications
- /// @return address Address of the newly created collection
- /// @dev EVM selector for this function is: 0x844af658,
- /// or in textual repr: createNFTCollection(string,string,string)
- function createNFTCollection(
- string memory name,
- string memory description,
- string memory tokenPrefix
- ) public payable returns (address) {
- require(false, stub_error);
- name;
- description;
- tokenPrefix;
- dummy = 0;
- return 0x0000000000000000000000000000000000000000;
- }
-
- // /// Create an NFT collection
- // /// @param name Name of the collection
- // /// @param description Informative description of the collection
- // /// @param tokenPrefix Token prefix to represent the collection tokens in UI and user applications
- // /// @return address Address of the newly created collection
- // /// @dev EVM selector for this function is: 0xe34a6844,
- // /// or in textual repr: createNonfungibleCollection(string,string,string)
- // function createNonfungibleCollection(string memory name, string memory description, string memory tokenPrefix) public payable returns (address) {
- // require(false, stub_error);
- // name;
- // description;
- // tokenPrefix;
- // dummy = 0;
- // return 0x0000000000000000000000000000000000000000;
- // }
-
- /// @dev EVM selector for this function is: 0xab173450,
- /// or in textual repr: createRFTCollection(string,string,string)
- function createRFTCollection(
- string memory name,
- string memory description,
- string memory tokenPrefix
- ) public payable returns (address) {
- require(false, stub_error);
- name;
- description;
- tokenPrefix;
- dummy = 0;
- return 0x0000000000000000000000000000000000000000;
- }
-
- /// @dev EVM selector for this function is: 0x7335b79f,
- /// or in textual repr: createFTCollection(string,uint8,string,string)
- function createFTCollection(
- string memory name,
- uint8 decimals,
- string memory description,
- string memory tokenPrefix
- ) public payable returns (address) {
- require(false, stub_error);
- name;
- decimals;
- description;
- tokenPrefix;
- dummy = 0;
- return 0x0000000000000000000000000000000000000000;
- }
-
- /// @dev EVM selector for this function is: 0x85624258,
- /// or in textual repr: makeCollectionERC721MetadataCompatible(address,string)
- function makeCollectionERC721MetadataCompatible(address collection, string memory baseUri) public {
- require(false, stub_error);
- collection;
- baseUri;
- dummy = 0;
- }
-
- /// @dev EVM selector for this function is: 0x564e321f,
- /// or in textual repr: destroyCollection(address)
- function destroyCollection(address collectionAddress) public {
- require(false, stub_error);
- collectionAddress;
- dummy = 0;
- }
-
- /// Check if a collection exists
- /// @param collectionAddress Address of the collection in question
- /// @return bool Does the collection exist?
- /// @dev EVM selector for this function is: 0xc3de1494,
- /// or in textual repr: isCollectionExist(address)
- function isCollectionExist(address collectionAddress) public view returns (bool) {
- require(false, stub_error);
- collectionAddress;
- dummy;
- return false;
- }
-
- /// @dev EVM selector for this function is: 0xd23a7ab1,
- /// or in textual repr: collectionCreationFee()
- function collectionCreationFee() public view returns (uint256) {
- require(false, stub_error);
- dummy;
- return 0;
- }
-}
tests/src/eth/evmToSubstrate/ABI/EvmToSubstrate.jsondiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/ABI/EvmToSubstrate.json
@@ -0,0 +1,5909 @@
+{
+ "contractName": "EvmToSubstrate",
+ "abi": [
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_toEth",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_toSub",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_tokenId",
+ "type": "uint256"
+ }
+ ],
+ "name": "MintToSub",
+ "type": "event"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_collection",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_substrateReceiver",
+ "type": "uint256"
+ },
+ {
+ "components": [
+ {
+ "internalType": "string",
+ "name": "key",
+ "type": "string"
+ },
+ {
+ "internalType": "bytes",
+ "name": "value",
+ "type": "bytes"
+ }
+ ],
+ "internalType": "struct Property[]",
+ "name": "properties",
+ "type": "tuple[]"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ }
+ ],
+ "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_toEth\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_toSub\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"MintToSub\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"}],\"name\":\"mintToSubstrate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_collection\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_substrateReceiver\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"internalType\":\"struct Property[]\",\"name\":\"properties\",\"type\":\"tuple[]\"}],\"name\":\"mintToSubstrateWithProperty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"MintToSub(address,uint256,address,uint256)\":{\"details\":\"This emits when a mint to a substrate address has been made.\"}},\"kind\":\"dev\",\"methods\":{\"mintToSubstrate(address,uint256)\":{\"details\":\"Throws if RFT collection is already configured for this contract. Throws if collection of wrong type (NFT, Fungible) is provided instead of RFT collection. Throws if `msg.sender` is not owner or admin of provided RFT collection. Can only be called by contract owner.\",\"params\":{\"_collection\":\"address of RFT collection.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"mintToSubstrate(address,uint256)\":{\"notice\":\"Set RFT collection that contract will work with. RFT tokens for fractionalized NFT tokens would be created in this collection.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":\"EvmToSubstrate\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol\":{\"keccak256\":\"0xe91307f91e63b71da7395290b787ab8a4aeb8fe7d3a84cdae31cbce9fc9feda0\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://695a2b10727b1dc1630bc3b5beeda3b9c49a2b930ca55225f06dca1b171ecc58\",\"dweb:/ipfs/QmXvsf3FijN8NhkQza9iDkiF9CQJswhnHtWwLMxywVcEV6\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol\":{\"keccak256\":\"0xbf6cbc8921b46aceef74fcb0218f8af41a5c1c8c09278cd29b055d39af4ba06c\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://cb309a7e806ab15bf7db1469c70ce547e358783a8be709d48632062600bbdf58\",\"dweb:/ipfs/QmcUViezUamzuLB9Pp5AjwNbSNLdVqnrSbvrRMkHoEb5DY\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol\":{\"keccak256\":\"0x1f42224d400226c94cc333ee95b2158f91e157e49a056054dbef3295d603e7e9\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://fa5f97112c5d7b6749e3a3f554b6593706e132042ac669dc8b4c39f78e1160c1\",\"dweb:/ipfs/QmbrtRn7AbrH8Zu64m5aXJcNthooeZKgDC4NUm1WcJ6ZaU\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol\":{\"keccak256\":\"0x265d5f1642a84fcdc5ebc874fa9857ada43f85b8f2621a43f64873f8897b7fa6\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://324fc61ea39a5f834665612e023d90facbe6d0af444d4c7769bd32999d7ab441\",\"dweb:/ipfs/QmQX446wQKaFfPaQ6Wv4QaUojGYJvB7TxWPAcFt5UtbUqC\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol\":{\"keccak256\":\"0xb59b9048e1b781ac57c466c9d323422cac264676232514a713ccacdb531d9c40\",\"license\":\"OTHER\",\"urls\":[\"bzz-raw://51ce50ac81d569f7e385b41fa1a4bb77d3358fb83ae420fae65b73dec54feb05\",\"dweb:/ipfs/QmQSpdWmxammhuDwFWn9jTAnALKCgyNUYYGDVQF8QRzB3w\"]},\"/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol\":{\"keccak256\":\"0x3f58b981bf3923d570d2cd0c4aa5bb2650a76da628b6b3dd0d4ba32237f514bb\",\"license\":\"Apache License\",\"urls\":[\"bzz-raw://de485cdf79fde3f3de802182a9a9a43799d21ec4c2277e07988b430c49578c71\",\"dweb:/ipfs/QmVNdwyLMp7zQD5sZPDeE1SXwKQCX3yXhTLEki4pZcHu9u\"]}},\"version\":1}",
+ "bytecode": "608060405234801561001057600080fd5b50610e46806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063440dff9d1461003b5780637a8d978614610050575b600080fd5b61004e610049366004610aa4565b610063565b005b61004e61005e366004610b2e565b6106f9565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100cf9190610b58565b6100f45760405162461bcd60e51b81526004016100eb90610b81565b60405180910390fd5b82806101375760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b60448201526064016100eb565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561017c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101a49190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b295820161043f5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561023c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102609190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156102b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d49190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061030257610302610cca565b90506020028101906103149190610ce0565b61031e9080610d00565b8e8e8781811061033057610330610cca565b90506020028101906103429190610ce0565b610350906020810190610d00565b6040518663ffffffff1660e01b8152600401610370959493929190610d77565b600060405180830381600087803b15801561038a57600080fd5b505af115801561039e573d6000803e3d6000fd5b50505050806103ac90610db0565b90506102d8565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610407929091908790600401610dd7565b600060405180830381600087803b15801561042157600080fd5b505af1158015610435573d6000803e3d6000fd5b505050505061069d565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e89190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061058a5761058a610cca565b905060200281019061059c9190610ce0565b6105a69080610d00565b8e8e878181106105b8576105b8610cca565b90506020028101906105ca9190610ce0565b6105d8906020810190610d00565b6040518663ffffffff1660e01b81526004016105f8959493929190610d77565b600060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050508061063490610db0565b9050610560565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b60648201526084016100eb565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610741573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107659190610b58565b6107815760405162461bcd60e51b81526004016100eb90610b81565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa1580156107c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ee9190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016109aa576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108aa9190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190610b58565b50604080518082018252308152600060208083018290528351808501855291825281018a9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610972929091908790600401610dd7565b600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b5050505050610a2f565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610a9f57600080fd5b919050565b60008060008060608587031215610aba57600080fd5b610ac385610a88565b935060208501359250604085013567ffffffffffffffff80821115610ae757600080fd5b818701915087601f830112610afb57600080fd5b813581811115610b0a57600080fd5b8860208260051b8501011115610b1f57600080fd5b95989497505060200194505050565b60008060408385031215610b4157600080fd5b610b4a83610a88565b946020939093013593505050565b600060208284031215610b6a57600080fd5b81518015158114610b7a57600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610bfa57600080fd5b825167ffffffffffffffff80821115610c1257600080fd5b818501915085601f830112610c2657600080fd5b815181811115610c3857610c38610bd1565b604051601f8201601f19908116603f01168101908382118183101715610c6057610c60610bd1565b816040528281528886848701011115610c7857600080fd5b600093505b82841015610c9a5784840186015181850187015292850192610c7d565b600086848301015280965050505050505092915050565b600060208284031215610cc357600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60008235603e19833603018112610cf657600080fd5b9190910192915050565b6000808335601e19843603018112610d1757600080fd5b83018035915067ffffffffffffffff821115610d3257600080fd5b602001915036819003821315610d4757600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152606060208201526000610d91606083018688610d4e565b8281036040840152610da4818587610d4e565b98975050505050505050565b600060018201610dd057634e487b7160e01b600052601160045260246000fd5b5060010190565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a0019056fea2646970667358221220da8ff84a103be9db6b42d85b4650dc8a633327ec7c4a8dc98e58ce322129c48664736f6c63430008110033",
+ "deployedBytecode": "608060405234801561001057600080fd5b50600436106100365760003560e01c8063440dff9d1461003b5780637a8d978614610050575b600080fd5b61004e610049366004610aa4565b610063565b005b61004e61005e366004610b2e565b6106f9565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100cf9190610b58565b6100f45760405162461bcd60e51b81526004016100eb90610b81565b60405180910390fd5b82806101375760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b60448201526064016100eb565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561017c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101a49190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b295820161043f5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561023c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102609190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156102b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d49190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061030257610302610cca565b90506020028101906103149190610ce0565b61031e9080610d00565b8e8e8781811061033057610330610cca565b90506020028101906103429190610ce0565b610350906020810190610d00565b6040518663ffffffff1660e01b8152600401610370959493929190610d77565b600060405180830381600087803b15801561038a57600080fd5b505af115801561039e573d6000803e3d6000fd5b50505050806103ac90610db0565b90506102d8565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610407929091908790600401610dd7565b600060405180830381600087803b15801561042157600080fd5b505af1158015610435573d6000803e3d6000fd5b505050505061069d565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e89190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061058a5761058a610cca565b905060200281019061059c9190610ce0565b6105a69080610d00565b8e8e878181106105b8576105b8610cca565b90506020028101906105ca9190610ce0565b6105d8906020810190610d00565b6040518663ffffffff1660e01b81526004016105f8959493929190610d77565b600060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050508061063490610db0565b9050610560565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b60648201526084016100eb565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610741573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107659190610b58565b6107815760405162461bcd60e51b81526004016100eb90610b81565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa1580156107c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ee9190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016109aa576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108aa9190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190610b58565b50604080518082018252308152600060208083018290528351808501855291825281018a9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610972929091908790600401610dd7565b600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b5050505050610a2f565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610a9f57600080fd5b919050565b60008060008060608587031215610aba57600080fd5b610ac385610a88565b935060208501359250604085013567ffffffffffffffff80821115610ae757600080fd5b818701915087601f830112610afb57600080fd5b813581811115610b0a57600080fd5b8860208260051b8501011115610b1f57600080fd5b95989497505060200194505050565b60008060408385031215610b4157600080fd5b610b4a83610a88565b946020939093013593505050565b600060208284031215610b6a57600080fd5b81518015158114610b7a57600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610bfa57600080fd5b825167ffffffffffffffff80821115610c1257600080fd5b818501915085601f830112610c2657600080fd5b815181811115610c3857610c38610bd1565b604051601f8201601f19908116603f01168101908382118183101715610c6057610c60610bd1565b816040528281528886848701011115610c7857600080fd5b600093505b82841015610c9a5784840186015181850187015292850192610c7d565b600086848301015280965050505050505092915050565b600060208284031215610cc357600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60008235603e19833603018112610cf657600080fd5b9190910192915050565b6000808335601e19843603018112610d1757600080fd5b83018035915067ffffffffffffffff821115610d3257600080fd5b602001915036819003821315610d4757600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152606060208201526000610d91606083018688610d4e565b8281036040840152610da4818587610d4e565b98975050505050505050565b600060018201610dd057634e487b7160e01b600052601160045260246000fd5b5060010190565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a0019056fea2646970667358221220da8ff84a103be9db6b42d85b4650dc8a633327ec7c4a8dc98e58ce322129c48664736f6c63430008110033",
+ "sourceMap": "494:5314:5:-:0;;;;;;;;;;;;;;;;;;;",
+ "deployedSourceMap": "494:5314:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4031:1775;;;;;;:::i;:::-;;:::i;:::-;;2522:1506;;;;;;:::i;:::-;;:::i;4031:1775::-;1047:41;;-1:-1:-1;;;1047:41:5;;1077:10;1047:41;;;1387:51:6;4185:11:5;;;;-1:-1:-1;;;;;1047:29:5;;;;;1360:18:6;;1047:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1039:102;;;;-1:-1:-1;;;1039:102:5;;;;;;;:::i;:::-;;;;;;;;;4378:10;4407:20;4399:51:::1;;;::::0;-1:-1:-1;;;4399:51:5;;2350:2:6;4399:51:5::1;::::0;::::1;2332:21:6::0;2389:2;2369:18;;;2362:30;-1:-1:-1;;;2408:18:6;;;2401:48;2466:18;;4399:51:5::1;2148:342:6::0;4399:51:5::1;4455:25;4494:11;4455:51;;4510:22;4551:14;-1:-1:-1::0;;;;;4551:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;4551:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;4535:55:::0;;::::1;::::0;;::::1;::::0;577:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;577:19:5;::::1;::::0;;;;4535:55;-1:-1:-1;4594:15:5::1;4618:44:::0;;;4614:1064:::1;;4669:30;4719:11;4669:62;;4746:13;-1:-1:-1::0;;;;;4746:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4778:42;::::0;-1:-1:-1;;;4778:42:5;;4805:4:::1;4778:42;::::0;::::1;4037:51:6::0;4104:18;;;4097:34;;;4736:37:5;;-1:-1:-1;;;;;;4778:18:5;::::1;::::0;::::1;::::0;4010::6;;4778:42:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4830:9;4825:133;4849:16;4845:1;:20;4825:133;;;4878:13;-1:-1:-1::0;;;;;4878:25:5::1;;4904:7;4913:10;;4924:1;4913:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;4932:10;;4943:1;4932:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;4878:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4867:3;;;;:::i;:::-;;;4825:133;;;-1:-1:-1::0;4999:35:5::1;::::0;;;;::::1;::::0;;5025:4:::1;4999:35:::0;;-1:-1:-1;4999:35:5::1;::::0;;::::1;::::0;;;5040:49;;;;::::1;::::0;;;;;;::::1;::::0;;;4962:145;;-1:-1:-1;;;4962:145:5;;-1:-1:-1;;;;;4962:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;4999:35;;5040:49;5095:7;;4962:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4664:448;4614:1064;;;657:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;657:12:5::1;::::0;;::::1;::::0;5122:45;;;5118:560:::1;;5174:23;5210:11;5174:48;;5237:13;-1:-1:-1::0;;;;;5237:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5269:42;::::0;-1:-1:-1;;;5269:42:5;;5296:4:::1;5269:42;::::0;::::1;4037:51:6::0;4104:18;;;4097:34;;;5227:37:5;;-1:-1:-1;;;;;;5269:18:5;::::1;::::0;::::1;::::0;4010::6;;5269:42:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5321:9;5316:133;5340:16;5336:1;:20;5316:133;;;5369:13;-1:-1:-1::0;;;;;5369:25:5::1;;5395:7;5404:10;;5415:1;5404:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:17;::::0;;::::1;:::i;:::-;5423:10;;5434:1;5423:13;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:19;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5369:74;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;5358:3;;;;:::i;:::-;;;5316:133;;5118:560;5614:59;::::0;-1:-1:-1;;;5614:59:5;;7969:2:6;5614:59:5::1;::::0;::::1;7951:21:6::0;8008:2;7988:18;;;7981:30;8047:34;8027:18;;;8020:62;-1:-1:-1;;;8098:18:6;;;8091:47;8155:19;;5614:59:5::1;7767:413:6::0;5118:560:5::1;5739:63;::::0;;5757:1:::1;8454:34:6::0;;8519:2;8504:18;;8497:34;;;-1:-1:-1;;;;;8567:15:6;;8547:18;;;8540:43;8614:2;8599:18;;8592:34;;;5739:63:5;;::::1;::::0;;;;8403:3:6;5739:63:5;;::::1;4198:1608;;;;980:889:::0;4031:1775;;;;;:::o;2522:1506::-;1047:41;;-1:-1:-1;;;1047:41:5;;1077:10;1047:41;;;1387:51:6;2623:11:5;;;;-1:-1:-1;;;;;1047:29:5;;;;;1360:18:6;;1047:41:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1039:102;;;;-1:-1:-1;;;1039:102:5;;;;;;;:::i;:::-;2786:25:::1;2825:11;2786:51;;2841:22;2882:14;-1:-1:-1::0;;;;;2882:35:5::1;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;2882:37:5::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;2866:55:::0;;::::1;::::0;;::::1;::::0;577:19:::1;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;577:19:5;::::1;::::0;;;;2866:55;-1:-1:-1;2925:15:5::1;2949:44:::0;;;2945:792:::1;;3000:30;3050:11;3000:62;;3077:13;-1:-1:-1::0;;;;;3077:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3109:42;::::0;-1:-1:-1;;;3109:42:5;;3136:4:::1;3109:42;::::0;::::1;4037:51:6::0;4104:18;;;4097:34;;;3067:37:5;;-1:-1:-1;;;;;;3109:18:5;::::1;::::0;::::1;::::0;4010::6;;3109:42:5::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;3194:35:5::1;::::0;;;;::::1;::::0;;3220:4:::1;3194:35:::0;;-1:-1:-1;3194:35:5::1;::::0;;::::1;::::0;;;3235:49;;;;::::1;::::0;;;;;;::::1;::::0;;;3157:145;;-1:-1:-1;;;3157:145:5;;-1:-1:-1;;;;;3157:31:5;::::1;::::0;::::1;::::0;:145:::1;::::0;3194:35;;3235:49;3290:7;;3157:145:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2995:312;2945:792;;;657:12;::::0;;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;657:12:5::1;::::0;;::::1;::::0;3317:45;;;3313:424:::1;;3369:23;3405:11;3369:48;;3432:13;-1:-1:-1::0;;;;;3432:25:5::1;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;3313:424;3961:63;::::0;;3979:1:::1;8454:34:6::0;;8519:2;8504:18;;8497:34;;;-1:-1:-1;;;;;8567:15:6;;8547:18;;;8540:43;8614:2;8599:18;;8592:34;;;3961:63:5;;::::1;::::0;;;;8403:3:6;3961:63:5;;::::1;2636:1392;;;980:889:::0;2522:1506;;;:::o;14:173:6:-;82:20;;-1:-1:-1;;;;;131:31:6;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:785::-;324:6;332;340;348;401:2;389:9;380:7;376:23;372:32;369:52;;;417:1;414;407:12;369:52;440:29;459:9;440:29;:::i;:::-;430:39;;516:2;505:9;501:18;488:32;478:42;;571:2;560:9;556:18;543:32;594:18;635:2;627:6;624:14;621:34;;;651:1;648;641:12;621:34;689:6;678:9;674:22;664:32;;734:7;727:4;723:2;719:13;715:27;705:55;;756:1;753;746:12;705:55;796:2;783:16;822:2;814:6;811:14;808:34;;;838:1;835;828:12;808:34;891:7;886:2;876:6;873:1;869:14;865:2;861:23;857:32;854:45;851:65;;;912:1;909;902:12;851:65;192:785;;;;-1:-1:-1;;943:2:6;935:11;;-1:-1:-1;;;192:785:6:o;982:254::-;1050:6;1058;1111:2;1099:9;1090:7;1086:23;1082:32;1079:52;;;1127:1;1124;1117:12;1079:52;1150:29;1169:9;1150:29;:::i;:::-;1140:39;1226:2;1211:18;;;;1198:32;;-1:-1:-1;;;982:254:6:o;1449:277::-;1516:6;1569:2;1557:9;1548:7;1544:23;1540:32;1537:52;;;1585:1;1582;1575:12;1537:52;1617:9;1611:16;1670:5;1663:13;1656:21;1649:5;1646:32;1636:60;;1692:1;1689;1682:12;1636:60;1715:5;1449:277;-1:-1:-1;;;1449:277:6:o;1731:412::-;1933:2;1915:21;;;1972:2;1952:18;;;1945:30;2011:34;2006:2;1991:18;;1984:62;-1:-1:-1;;;2077:2:6;2062:18;;2055:46;2133:3;2118:19;;1731:412::o;2495:127::-;2556:10;2551:3;2547:20;2544:1;2537:31;2587:4;2584:1;2577:15;2611:4;2608:1;2601:15;2627:1042;2707:6;2738:2;2781;2769:9;2760:7;2756:23;2752:32;2749:52;;;2797:1;2794;2787:12;2749:52;2830:9;2824:16;2859:18;2900:2;2892:6;2889:14;2886:34;;;2916:1;2913;2906:12;2886:34;2954:6;2943:9;2939:22;2929:32;;2999:7;2992:4;2988:2;2984:13;2980:27;2970:55;;3021:1;3018;3011:12;2970:55;3050:2;3044:9;3072:2;3068;3065:10;3062:36;;;3078:18;;:::i;:::-;3153:2;3147:9;3121:2;3207:13;;-1:-1:-1;;3203:22:6;;;3227:2;3199:31;3195:40;3183:53;;;3251:18;;;3271:22;;;3248:46;3245:72;;;3297:18;;:::i;:::-;3337:10;3333:2;3326:22;3372:2;3364:6;3357:18;3412:7;3407:2;3402;3398;3394:11;3390:20;3387:33;3384:53;;;3433:1;3430;3423:12;3384:53;3455:1;3446:10;;3465:129;3479:2;3476:1;3473:9;3465:129;;;3567:10;;;3563:19;;3557:26;3536:14;;;3532:23;;3525:59;3490:10;;;;3465:129;;;3636:1;3631:2;3626;3618:6;3614:15;3610:24;3603:35;3657:6;3647:16;;;;;;;;2627:1042;;;;:::o;3674:184::-;3744:6;3797:2;3785:9;3776:7;3772:23;3768:32;3765:52;;;3813:1;3810;3803:12;3765:52;-1:-1:-1;3836:16:6;;3674:184;-1:-1:-1;3674:184:6:o;4142:127::-;4203:10;4198:3;4194:20;4191:1;4184:31;4234:4;4231:1;4224:15;4258:4;4255:1;4248:15;4274:325;4368:4;4426:11;4413:25;4520:2;4516:7;4505:8;4489:14;4485:29;4481:43;4461:18;4457:68;4447:96;;4539:1;4536;4529:12;4447:96;4560:33;;;;;4274:325;-1:-1:-1;;4274:325:6:o;4604:522::-;4682:4;4688:6;4748:11;4735:25;4842:2;4838:7;4827:8;4811:14;4807:29;4803:43;4783:18;4779:68;4769:96;;4861:1;4858;4851:12;4769:96;4888:33;;4940:20;;;-1:-1:-1;4983:18:6;4972:30;;4969:50;;;5015:1;5012;5005:12;4969:50;5048:4;5036:17;;-1:-1:-1;5079:14:6;5075:27;;;5065:38;;5062:58;;;5116:1;5113;5106:12;5062:58;4604:522;;;;;:::o;5657:267::-;5746:6;5741:3;5734:19;5798:6;5791:5;5784:4;5779:3;5775:14;5762:43;-1:-1:-1;5850:1:6;5825:16;;;5843:4;5821:27;;;5814:38;;;;5906:2;5885:15;;;-1:-1:-1;;5881:29:6;5872:39;;;5868:50;;5657:267::o;5929:506::-;6172:6;6161:9;6154:25;6215:2;6210;6199:9;6195:18;6188:30;6135:4;6241:62;6299:2;6288:9;6284:18;6276:6;6268;6241:62;:::i;:::-;6351:9;6343:6;6339:22;6334:2;6323:9;6319:18;6312:50;6379;6422:6;6414;6406;6379:50;:::i;:::-;6371:58;5929:506;-1:-1:-1;;;;;;;;5929:506:6:o;6440:232::-;6479:3;6500:17;;;6497:140;;6559:10;6554:3;6550:20;6547:1;6540:31;6594:4;6591:1;6584:15;6622:4;6619:1;6612:15;6497:140;-1:-1:-1;6664:1:6;6653:13;;6440:232::o;6855:453::-;6753:12;;-1:-1:-1;;;;;6749:38:6;;;6737:51;;6837:4;6826:16;;;6820:23;6804:14;;;6797:47;6753:12;;6749:38;7254:2;7239:18;;6737:51;6826:16;;;;6820:23;6804:14;;;6797:47;7289:3;7274:19;;7267:35;;;;7141:3;7126:19;;6855:453::o",
+ "sourcePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",
+ "compiler": {
+ "name": "solc",
+ "version": "0.8.17+commit.8df45f5f"
+ },
+ "ast": {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",
+ "exportedSymbols": {
+ "Collection": [
+ 1167
+ ],
+ "CollectionHelpers": [
+ 89
+ ],
+ "ContractHelpers": [
+ 272
+ ],
+ "EvmToSubstrate": [
+ 2100
+ ],
+ "NftCrossAccountId": [
+ 700
+ ],
+ "Property": [
+ 1695
+ ],
+ "RftCrossAccountId": [
+ 1315
+ ],
+ "UniqueNFT": [
+ 893
+ ],
+ "UniqueRefungible": [
+ 1508
+ ],
+ "UniqueRefungibleToken": [
+ 1675
+ ]
+ },
+ "id": 2101,
+ "license": "Apache License",
+ "nodeType": "SourceUnit",
+ "nodes": [
+ {
+ "id": 1677,
+ "literals": [
+ "solidity",
+ ">=",
+ "0.8",
+ ".0"
+ ],
+ "nodeType": "PragmaDirective",
+ "src": "44:24:5"
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol",
+ "file": "../api/CollectionHelpers.sol",
+ "id": 1679,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2101,
+ "sourceUnit": 90,
+ "src": "69:63:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1678,
+ "name": "CollectionHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 89,
+ "src": "77:17:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol",
+ "file": "../api/ContractHelpers.sol",
+ "id": 1681,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2101,
+ "sourceUnit": 278,
+ "src": "133:59:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1680,
+ "name": "ContractHelpers",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 272,
+ "src": "141:15:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol",
+ "file": "../api/UniqueRefungibleToken.sol",
+ "id": 1683,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2101,
+ "sourceUnit": 1676,
+ "src": "193:71:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1682,
+ "name": "UniqueRefungibleToken",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1675,
+ "src": "201:21:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol",
+ "file": "../api/UniqueRefungible.sol",
+ "id": 1687,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2101,
+ "sourceUnit": 1509,
+ "src": "265:102:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1684,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1508,
+ "src": "273:16:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1685,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1167,
+ "src": "291:10:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1686,
+ "name": "Tuple8",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1315,
+ "src": "303:6:5",
+ "typeDescriptions": {}
+ },
+ "local": "RftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol",
+ "file": "../api/UniqueNFT.sol",
+ "id": 1690,
+ "nameLocation": "-1:-1:-1",
+ "nodeType": "ImportDirective",
+ "scope": 2101,
+ "sourceUnit": 894,
+ "src": "368:76:5",
+ "symbolAliases": [
+ {
+ "foreign": {
+ "id": 1688,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 893,
+ "src": "376:9:5",
+ "typeDescriptions": {}
+ },
+ "nameLocation": "-1:-1:-1"
+ },
+ {
+ "foreign": {
+ "id": 1689,
+ "name": "Tuple8",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 700,
+ "src": "387:6:5",
+ "typeDescriptions": {}
+ },
+ "local": "NftCrossAccountId",
+ "nameLocation": "-1:-1:-1"
+ }
+ ],
+ "unitAlias": ""
+ },
+ {
+ "canonicalName": "Property",
+ "id": 1695,
+ "members": [
+ {
+ "constant": false,
+ "id": 1692,
+ "mutability": "mutable",
+ "name": "key",
+ "nameLocation": "472:3:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1695,
+ "src": "465:10:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ },
+ "typeName": {
+ "id": 1691,
+ "name": "string",
+ "nodeType": "ElementaryTypeName",
+ "src": "465:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_storage_ptr",
+ "typeString": "string"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1694,
+ "mutability": "mutable",
+ "name": "value",
+ "nameLocation": "484:5:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1695,
+ "src": "478:11:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ },
+ "typeName": {
+ "id": 1693,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "478:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_storage_ptr",
+ "typeString": "bytes"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "name": "Property",
+ "nameLocation": "453:8:5",
+ "nodeType": "StructDefinition",
+ "scope": 2101,
+ "src": "446:46:5",
+ "visibility": "public"
+ },
+ {
+ "abstract": false,
+ "baseContracts": [],
+ "canonicalName": "EvmToSubstrate",
+ "contractDependencies": [],
+ "contractKind": "contract",
+ "fullyImplemented": true,
+ "id": 2100,
+ "linearizedBaseContracts": [
+ 2100
+ ],
+ "name": "EvmToSubstrate",
+ "nameLocation": "503:14:5",
+ "nodeType": "ContractDefinition",
+ "nodes": [
+ {
+ "constant": true,
+ "id": 1703,
+ "mutability": "constant",
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "538:26:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2100,
+ "src": "521:76:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1696,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "521:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "526546756e6769626c65",
+ "id": 1700,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "583:12:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ },
+ "value": "ReFungible"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",
+ "typeString": "literal_string \"ReFungible\""
+ }
+ ],
+ "id": 1699,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "577:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1698,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "577:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1701,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "577:19:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1697,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "567:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1702,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "567:30:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": true,
+ "id": 1711,
+ "mutability": "constant",
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nameLocation": "617:27:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2100,
+ "src": "600:70:5",
+ "stateVariable": true,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1704,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "600:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "value": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "4e4654",
+ "id": 1708,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "663:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ },
+ "value": "NFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",
+ "typeString": "literal_string \"NFT\""
+ }
+ ],
+ "id": 1707,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "657:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1706,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "657:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1709,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "657:12:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1705,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "647:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1710,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "647:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "body": {
+ "id": 1732,
+ "nodeType": "Block",
+ "src": "980:889:5",
+ "statements": [
+ {
+ "assignments": [
+ 1717
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1717,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "995:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1732,
+ "src": "984:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1716,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1715,
+ "name": "Collection",
+ "nameLocations": [
+ "984:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1167,
+ "src": "984:10:5"
+ },
+ "referencedDeclaration": 1167,
+ "src": "984:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1721,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1719,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1713,
+ "src": "1023:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1718,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1167,
+ "src": "1012:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1720,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1012:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "984:51:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "expression": {
+ "id": 1725,
+ "name": "msg",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967281,
+ "src": "1077:3:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_magic_message",
+ "typeString": "msg"
+ }
+ },
+ "id": 1726,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1081:6:5",
+ "memberName": "sender",
+ "nodeType": "MemberAccess",
+ "src": "1077:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "expression": {
+ "id": 1723,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1717,
+ "src": "1047:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1724,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "1062:14:5",
+ "memberName": "isOwnerOrAdmin",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1131,
+ "src": "1047:29:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$",
+ "typeString": "function (address) view external returns (bool)"
+ }
+ },
+ "id": 1727,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1047:41:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2063616c6c2074686973206d6574686f64",
+ "id": 1728,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "1090:50:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ },
+ "value": "Only collection admin/owner can call this method"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",
+ "typeString": "literal_string \"Only collection admin/owner can call this method\""
+ }
+ ],
+ "id": 1722,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "1039:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1729,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "1039:102:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1730,
+ "nodeType": "ExpressionStatement",
+ "src": "1039:102:5"
+ },
+ {
+ "id": 1731,
+ "nodeType": "PlaceholderStatement",
+ "src": "1864:1:5"
+ }
+ ]
+ },
+ "id": 1733,
+ "name": "checkRestrictions",
+ "nameLocation": "941:17:5",
+ "nodeType": "ModifierDefinition",
+ "parameters": {
+ "id": 1714,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1713,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "967:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1733,
+ "src": "959:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1712,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "959:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "958:21:5"
+ },
+ "src": "932:937:5",
+ "virtual": false,
+ "visibility": "internal"
+ },
+ {
+ "anonymous": false,
+ "documentation": {
+ "id": 1734,
+ "nodeType": "StructuredDocumentation",
+ "src": "1872:69:5",
+ "text": "@dev This emits when a mint to a substrate address has been made."
+ },
+ "eventSelector": "fb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb7535",
+ "id": 1744,
+ "name": "MintToSub",
+ "nameLocation": "1949:9:5",
+ "nodeType": "EventDefinition",
+ "parameters": {
+ "id": 1743,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1736,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toEth",
+ "nameLocation": "1967:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1744,
+ "src": "1959:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1735,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1959:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1738,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_toSub",
+ "nameLocation": "1983:6:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1744,
+ "src": "1975:14:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1737,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "1975:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1740,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "1999:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1744,
+ "src": "1991:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1739,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "1991:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1742,
+ "indexed": false,
+ "mutability": "mutable",
+ "name": "_tokenId",
+ "nameLocation": "2020:8:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1744,
+ "src": "2012:16:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1741,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2012:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "1958:71:5"
+ },
+ "src": "1943:87:5"
+ },
+ {
+ "body": {
+ "id": 1887,
+ "nodeType": "Block",
+ "src": "2636:1392:5",
+ "statements": [
+ {
+ "assignments": [
+ 1757
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1757,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "2797:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1887,
+ "src": "2786:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1756,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1755,
+ "name": "Collection",
+ "nameLocations": [
+ "2786:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1167,
+ "src": "2786:10:5"
+ },
+ "referencedDeclaration": 1167,
+ "src": "2786:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1761,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1759,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1747,
+ "src": "2825:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1758,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1167,
+ "src": "2814:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1760,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2814:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2786:51:5"
+ },
+ {
+ "assignments": [
+ 1763
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1763,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "2849:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1887,
+ "src": "2841:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1762,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "2841:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1772,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1767,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1757,
+ "src": "2882:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1768,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "2897:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1146,
+ "src": "2882:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1769,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2882:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1766,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "2876:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1765,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "2876:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1770,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2876:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1764,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "2866:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1771,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "2866:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2841:80:5"
+ },
+ {
+ "assignments": [
+ 1774
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1774,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "2933:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1887,
+ "src": "2925:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1773,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2925:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1775,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "2925:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1778,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1776,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1763,
+ "src": "2949:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1777,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1703,
+ "src": "2967:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "2949:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1825,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1823,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1763,
+ "src": "3317:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1824,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1711,
+ "src": "3335:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "3317:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 1874,
+ "nodeType": "Block",
+ "src": "3668:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 1871,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3680:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 1870,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "3673:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 1872,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3673:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1873,
+ "nodeType": "ExpressionStatement",
+ "src": "3673:59:5"
+ }
+ ]
+ },
+ "id": 1875,
+ "nodeType": "IfStatement",
+ "src": "3313:424:5",
+ "trueBody": {
+ "id": 1869,
+ "nodeType": "Block",
+ "src": "3364:298:5",
+ "statements": [
+ {
+ "assignments": [
+ 1828
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1828,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "3379:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1869,
+ "src": "3369:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 1827,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1826,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "3369:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 893,
+ "src": "3369:9:5"
+ },
+ "referencedDeclaration": 893,
+ "src": "3369:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1832,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1830,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1747,
+ "src": "3405:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1829,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 893,
+ "src": "3395:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$893_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 1831,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3395:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "3369:48:5"
+ },
+ {
+ "expression": {
+ "id": 1837,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1833,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3422:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1834,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1828,
+ "src": "3432:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1835,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3446:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 666,
+ "src": "3432:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 1836,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3432:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "3422:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1838,
+ "nodeType": "ExpressionStatement",
+ "src": "3422:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1844,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3491:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1843,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3483:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1842,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3483:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1845,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3483:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1846,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3498:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1839,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1828,
+ "src": "3464:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1841,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3478:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 590,
+ "src": "3464:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",
+ "typeString": "function (address,uint256) external returns (bool)"
+ }
+ },
+ "id": 1847,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3464:42:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 1848,
+ "nodeType": "ExpressionStatement",
+ "src": "3464:42:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1855,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3575:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1854,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3567:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1853,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3567:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1856,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3567:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1857,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3582:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1852,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 700,
+ "src": "3549:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 1858,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3549:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1862,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3616:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1861,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3608:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1860,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3608:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1863,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3608:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1864,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1749,
+ "src": "3620:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1859,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 700,
+ "src": "3590:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 1865,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3590:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "id": 1866,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3645:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1849,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1828,
+ "src": "3512:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 1851,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3526:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 643,
+ "src": "3512:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$700_memory_ptr_$_t_struct$_Tuple8_$700_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"
+ }
+ },
+ "id": 1867,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3512:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1868,
+ "nodeType": "ExpressionStatement",
+ "src": "3512:145:5"
+ }
+ ]
+ }
+ },
+ "id": 1876,
+ "nodeType": "IfStatement",
+ "src": "2945:792:5",
+ "trueBody": {
+ "id": 1822,
+ "nodeType": "Block",
+ "src": "2995:312:5",
+ "statements": [
+ {
+ "assignments": [
+ 1781
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1781,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "3017:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1822,
+ "src": "3000:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1780,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1779,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "3000:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1508,
+ "src": "3000:16:5"
+ },
+ "referencedDeclaration": 1508,
+ "src": "3000:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1785,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1783,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1747,
+ "src": "3050:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1782,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1508,
+ "src": "3033:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1508_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1784,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3033:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "3000:62:5"
+ },
+ {
+ "expression": {
+ "id": 1790,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1786,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3067:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1787,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1781,
+ "src": "3077:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1788,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3091:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1273,
+ "src": "3077:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 1789,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3077:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "3067:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1791,
+ "nodeType": "ExpressionStatement",
+ "src": "3067:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1797,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3136:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1796,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3128:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1795,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3128:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1798,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3128:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1799,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3143:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1792,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1781,
+ "src": "3109:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1794,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3123:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1206,
+ "src": "3109:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",
+ "typeString": "function (address,uint256) external returns (bool)"
+ }
+ },
+ "id": 1800,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3109:42:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 1801,
+ "nodeType": "ExpressionStatement",
+ "src": "3109:42:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1808,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "3220:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1807,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3212:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1806,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3212:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1809,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3212:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1810,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3227:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1805,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1315,
+ "src": "3194:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 1811,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3194:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1815,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3261:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1814,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3253:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1813,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3253:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1816,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3253:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1817,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1749,
+ "src": "3265:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1812,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1315,
+ "src": "3235:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 1818,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3235:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "id": 1819,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "3290:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1802,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1781,
+ "src": "3157:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1804,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "3171:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1250,
+ "src": "3157:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$1315_memory_ptr_$_t_struct$_Tuple8_$1315_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"
+ }
+ },
+ "id": 1820,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3157:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1821,
+ "nodeType": "ExpressionStatement",
+ "src": "3157:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 1880,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "3979:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1879,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "3971:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1878,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "3971:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1881,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3971:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1882,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1749,
+ "src": "3983:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 1883,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1747,
+ "src": "4003:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1884,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1774,
+ "src": "4016:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1877,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1744,
+ "src": "3961:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 1885,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "3961:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1886,
+ "nodeType": "EmitStatement",
+ "src": "3956:68:5"
+ }
+ ]
+ },
+ "documentation": {
+ "id": 1745,
+ "nodeType": "StructuredDocumentation",
+ "src": "2033:487:5",
+ "text": "Set RFT collection that contract will work with. RFT tokens for fractionalized NFT tokens\n would be created in this collection.\n @dev Throws if RFT collection is already configured for this contract.\n Throws if collection of wrong type (NFT, Fungible) is provided instead\n of RFT collection.\n Throws if `msg.sender` is not owner or admin of provided RFT collection.\n Can only be called by contract owner.\n @param _collection address of RFT collection."
+ },
+ "functionSelector": "7a8d9786",
+ "id": 1888,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1752,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1747,
+ "src": "2623:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1753,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1751,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "2605:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1733,
+ "src": "2605:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "2605:30:5"
+ }
+ ],
+ "name": "mintToSubstrate",
+ "nameLocation": "2531:15:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1750,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1747,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "2555:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1888,
+ "src": "2547:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1746,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "2547:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1749,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "2576:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1888,
+ "src": "2568:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1748,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "2568:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "2546:49:5"
+ },
+ "returnParameters": {
+ "id": 1754,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "2636:0:5"
+ },
+ "scope": 2100,
+ "src": "2522:1506:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ },
+ {
+ "body": {
+ "id": 2098,
+ "nodeType": "Block",
+ "src": "4198:1608:5",
+ "statements": [
+ {
+ "assignments": [
+ 1903
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1903,
+ "mutability": "mutable",
+ "name": "propertiesLength",
+ "nameLocation": "4359:16:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2098,
+ "src": "4351:24:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1902,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4351:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1906,
+ "initialValue": {
+ "expression": {
+ "id": 1904,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1896,
+ "src": "4378:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 1905,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4389:6:5",
+ "memberName": "length",
+ "nodeType": "MemberAccess",
+ "src": "4378:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4351:44:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 1910,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1908,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1903,
+ "src": "4407:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": ">",
+ "rightExpression": {
+ "hexValue": "30",
+ "id": 1909,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4426:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "src": "4407:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ {
+ "hexValue": "50726f70657269657320697320656d707479",
+ "id": 1911,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4429:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ },
+ "value": "Properies is empty"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ },
+ {
+ "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",
+ "typeString": "literal_string \"Properies is empty\""
+ }
+ ],
+ "id": 1907,
+ "name": "require",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967278,
+ 4294967278
+ ],
+ "referencedDeclaration": 4294967278,
+ "src": "4399:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (bool,string memory) pure"
+ }
+ },
+ "id": 1912,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4399:51:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1913,
+ "nodeType": "ExpressionStatement",
+ "src": "4399:51:5"
+ },
+ {
+ "assignments": [
+ 1916
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1916,
+ "mutability": "mutable",
+ "name": "commonContract",
+ "nameLocation": "4466:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2098,
+ "src": "4455:25:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ },
+ "typeName": {
+ "id": 1915,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1914,
+ "name": "Collection",
+ "nameLocations": [
+ "4455:10:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1167,
+ "src": "4455:10:5"
+ },
+ "referencedDeclaration": 1167,
+ "src": "4455:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1920,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1918,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1890,
+ "src": "4494:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1917,
+ "name": "Collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1167,
+ "src": "4483:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",
+ "typeString": "type(contract Collection)"
+ }
+ },
+ "id": 1919,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4483:23:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4455:51:5"
+ },
+ {
+ "assignments": [
+ 1922
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1922,
+ "mutability": "mutable",
+ "name": "collectionType",
+ "nameLocation": "4518:14:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2098,
+ "src": "4510:22:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "typeName": {
+ "id": 1921,
+ "name": "bytes32",
+ "nodeType": "ElementaryTypeName",
+ "src": "4510:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1931,
+ "initialValue": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1926,
+ "name": "commonContract",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1916,
+ "src": "4551:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_Collection_$1167",
+ "typeString": "contract Collection"
+ }
+ },
+ "id": 1927,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4566:20:5",
+ "memberName": "uniqueCollectionType",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1146,
+ "src": "4551:35:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",
+ "typeString": "function () view external returns (string memory)"
+ }
+ },
+ "id": 1928,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4551:37:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_string_memory_ptr",
+ "typeString": "string memory"
+ }
+ ],
+ "id": 1925,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4545:5:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
+ "typeString": "type(bytes storage pointer)"
+ },
+ "typeName": {
+ "id": 1924,
+ "name": "bytes",
+ "nodeType": "ElementaryTypeName",
+ "src": "4545:5:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1929,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4545:44:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_bytes_memory_ptr",
+ "typeString": "bytes memory"
+ }
+ ],
+ "id": 1923,
+ "name": "keccak256",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967288,
+ "src": "4535:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
+ "typeString": "function (bytes memory) pure returns (bytes32)"
+ }
+ },
+ "id": 1930,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4535:55:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4510:80:5"
+ },
+ {
+ "assignments": [
+ 1933
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1933,
+ "mutability": "mutable",
+ "name": "tokenId",
+ "nameLocation": "4602:7:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2098,
+ "src": "4594:15:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1932,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4594:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1934,
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4594:15:5"
+ },
+ {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 1937,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1935,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1922,
+ "src": "4618:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 1936,
+ "name": "REFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1703,
+ "src": "4636:26:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "4618:44:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ },
+ "id": 2010,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2008,
+ "name": "collectionType",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1922,
+ "src": "5122:14:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "==",
+ "rightExpression": {
+ "id": 2009,
+ "name": "NONFUNGIBLE_COLLECTION_TYPE",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1711,
+ "src": "5140:27:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes32",
+ "typeString": "bytes32"
+ }
+ },
+ "src": "5122:45:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "falseBody": {
+ "id": 2085,
+ "nodeType": "Block",
+ "src": "5609:69:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",
+ "id": 2082,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "string",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5621:51:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ },
+ "value": "Wrong collection type. Works only with NFT or RFT"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",
+ "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""
+ }
+ ],
+ "id": 2081,
+ "name": "revert",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [
+ 4294967277,
+ 4294967277
+ ],
+ "referencedDeclaration": 4294967277,
+ "src": "5614:6:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
+ "typeString": "function (string memory) pure"
+ }
+ },
+ "id": 2083,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5614:59:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2084,
+ "nodeType": "ExpressionStatement",
+ "src": "5614:59:5"
+ }
+ ]
+ },
+ "id": 2086,
+ "nodeType": "IfStatement",
+ "src": "5118:560:5",
+ "trueBody": {
+ "id": 2080,
+ "nodeType": "Block",
+ "src": "5169:434:5",
+ "statements": [
+ {
+ "assignments": [
+ 2013
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2013,
+ "mutability": "mutable",
+ "name": "nftCollection",
+ "nameLocation": "5184:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2080,
+ "src": "5174:23:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ },
+ "typeName": {
+ "id": 2012,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 2011,
+ "name": "UniqueNFT",
+ "nameLocations": [
+ "5174:9:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 893,
+ "src": "5174:9:5"
+ },
+ "referencedDeclaration": 893,
+ "src": "5174:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2017,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 2015,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1890,
+ "src": "5210:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 2014,
+ "name": "UniqueNFT",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 893,
+ "src": "5200:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$893_$",
+ "typeString": "type(contract UniqueNFT)"
+ }
+ },
+ "id": 2016,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5200:22:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5174:48:5"
+ },
+ {
+ "expression": {
+ "id": 2022,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 2018,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5227:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 2019,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2013,
+ "src": "5237:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2020,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5251:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 666,
+ "src": "5237:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 2021,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5237:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "5227:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2023,
+ "nodeType": "ExpressionStatement",
+ "src": "5227:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2029,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "5296:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2028,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5288:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2027,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5288:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2030,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5288:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2031,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5303:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2024,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2013,
+ "src": "5269:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2026,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5283:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 590,
+ "src": "5269:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",
+ "typeString": "function (address,uint256) external returns (bool)"
+ }
+ },
+ "id": 2032,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5269:42:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2033,
+ "nodeType": "ExpressionStatement",
+ "src": "5269:42:5"
+ },
+ {
+ "body": {
+ "id": 2058,
+ "nodeType": "Block",
+ "src": "5363:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 2047,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5395:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2048,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1896,
+ "src": "5404:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2050,
+ "indexExpression": {
+ "id": 2049,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2035,
+ "src": "5415:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5404:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2051,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5418:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1692,
+ "src": "5404:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 2052,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1896,
+ "src": "5423:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 2054,
+ "indexExpression": {
+ "id": 2053,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2035,
+ "src": "5434:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "5423:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 2055,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5437:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1694,
+ "src": "5423:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 2044,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2013,
+ "src": "5369:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2046,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5383:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 318,
+ "src": "5369:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 2056,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5369:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2057,
+ "nodeType": "ExpressionStatement",
+ "src": "5369:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 2040,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 2038,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2035,
+ "src": "5336:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 2039,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1903,
+ "src": "5340:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "5336:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 2059,
+ "initializationExpression": {
+ "assignments": [
+ 2035
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 2035,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "5329:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2059,
+ "src": "5321:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 2034,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "5321:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 2037,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 2036,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5333:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "5321:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 2042,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "5358:3:5",
+ "subExpression": {
+ "id": 2041,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2035,
+ "src": "5360:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 2043,
+ "nodeType": "ExpressionStatement",
+ "src": "5358:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "5316:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 2066,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "5516:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 2065,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5508:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2064,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5508:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2067,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5508:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 2068,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5523:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2063,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 700,
+ "src": "5490:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 2069,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5490:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2073,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5557:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2072,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5549:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2071,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5549:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2074,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5549:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2075,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1892,
+ "src": "5561:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2070,
+ "name": "NftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 700,
+ "src": "5531:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 2076,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5531:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "id": 2077,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5586:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 2060,
+ "name": "nftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 2013,
+ "src": "5453:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueNFT_$893",
+ "typeString": "contract UniqueNFT"
+ }
+ },
+ "id": 2062,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "5467:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 643,
+ "src": "5453:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$700_memory_ptr_$_t_struct$_Tuple8_$700_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"
+ }
+ },
+ "id": 2078,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5453:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2079,
+ "nodeType": "ExpressionStatement",
+ "src": "5453:145:5"
+ }
+ ]
+ }
+ },
+ "id": 2087,
+ "nodeType": "IfStatement",
+ "src": "4614:1064:5",
+ "trueBody": {
+ "id": 2007,
+ "nodeType": "Block",
+ "src": "4664:448:5",
+ "statements": [
+ {
+ "assignments": [
+ 1940
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1940,
+ "mutability": "mutable",
+ "name": "rftCollection",
+ "nameLocation": "4686:13:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2007,
+ "src": "4669:30:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ },
+ "typeName": {
+ "id": 1939,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1938,
+ "name": "UniqueRefungible",
+ "nameLocations": [
+ "4669:16:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1508,
+ "src": "4669:16:5"
+ },
+ "referencedDeclaration": 1508,
+ "src": "4669:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1944,
+ "initialValue": {
+ "arguments": [
+ {
+ "id": 1942,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1890,
+ "src": "4719:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ ],
+ "id": 1941,
+ "name": "UniqueRefungible",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1508,
+ "src": "4702:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1508_$",
+ "typeString": "type(contract UniqueRefungible)"
+ }
+ },
+ "id": 1943,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4702:29:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4669:62:5"
+ },
+ {
+ "expression": {
+ "id": 1949,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftHandSide": {
+ "id": 1945,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "4736:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "Assignment",
+ "operator": "=",
+ "rightHandSide": {
+ "arguments": [],
+ "expression": {
+ "argumentTypes": [],
+ "expression": {
+ "id": 1946,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1940,
+ "src": "4746:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1947,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4760:11:5",
+ "memberName": "nextTokenId",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1273,
+ "src": "4746:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
+ "typeString": "function () view external returns (uint256)"
+ }
+ },
+ "id": 1948,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4746:27:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4736:37:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1950,
+ "nodeType": "ExpressionStatement",
+ "src": "4736:37:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1956,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "4805:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1955,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "4797:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1954,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4797:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1957,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4797:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 1958,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "4812:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1951,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1940,
+ "src": "4778:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1953,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4792:4:5",
+ "memberName": "mint",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1206,
+ "src": "4778:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",
+ "typeString": "function (address,uint256) external returns (bool)"
+ }
+ },
+ "id": 1959,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4778:42:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 1960,
+ "nodeType": "ExpressionStatement",
+ "src": "4778:42:5"
+ },
+ {
+ "body": {
+ "id": 1985,
+ "nodeType": "Block",
+ "src": "4872:86:5",
+ "statements": [
+ {
+ "expression": {
+ "arguments": [
+ {
+ "id": 1974,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "4904:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 1975,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1896,
+ "src": "4913:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 1977,
+ "indexExpression": {
+ "id": 1976,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1962,
+ "src": "4924:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4913:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 1978,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4927:3:5",
+ "memberName": "key",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1692,
+ "src": "4913:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ }
+ },
+ {
+ "expression": {
+ "baseExpression": {
+ "id": 1979,
+ "name": "properties",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1896,
+ "src": "4932:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property calldata[] calldata"
+ }
+ },
+ "id": 1981,
+ "indexExpression": {
+ "id": 1980,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1962,
+ "src": "4943:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "IndexAccess",
+ "src": "4932:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",
+ "typeString": "struct Property calldata"
+ }
+ },
+ "id": 1982,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4946:5:5",
+ "memberName": "value",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1694,
+ "src": "4932:19:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_string_calldata_ptr",
+ "typeString": "string calldata"
+ },
+ {
+ "typeIdentifier": "t_bytes_calldata_ptr",
+ "typeString": "bytes calldata"
+ }
+ ],
+ "expression": {
+ "id": 1971,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1940,
+ "src": "4878:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1973,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4892:11:5",
+ "memberName": "setProperty",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 934,
+ "src": "4878:25:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",
+ "typeString": "function (uint256,string memory,bytes memory) external"
+ }
+ },
+ "id": 1983,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4878:74:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 1984,
+ "nodeType": "ExpressionStatement",
+ "src": "4878:74:5"
+ }
+ ]
+ },
+ "condition": {
+ "commonType": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "id": 1967,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "leftExpression": {
+ "id": 1965,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1962,
+ "src": "4845:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "nodeType": "BinaryOperation",
+ "operator": "<",
+ "rightExpression": {
+ "id": 1966,
+ "name": "propertiesLength",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1903,
+ "src": "4849:16:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "src": "4845:20:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_bool",
+ "typeString": "bool"
+ }
+ },
+ "id": 1986,
+ "initializationExpression": {
+ "assignments": [
+ 1962
+ ],
+ "declarations": [
+ {
+ "constant": false,
+ "id": 1962,
+ "mutability": "mutable",
+ "name": "i",
+ "nameLocation": "4838:1:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 1986,
+ "src": "4830:9:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1961,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4830:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "id": 1964,
+ "initialValue": {
+ "hexValue": "30",
+ "id": 1963,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "4842:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ },
+ "nodeType": "VariableDeclarationStatement",
+ "src": "4830:13:5"
+ },
+ "loopExpression": {
+ "expression": {
+ "id": 1969,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "nodeType": "UnaryOperation",
+ "operator": "++",
+ "prefix": true,
+ "src": "4867:3:5",
+ "subExpression": {
+ "id": 1968,
+ "name": "i",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1962,
+ "src": "4869:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "id": 1970,
+ "nodeType": "ExpressionStatement",
+ "src": "4867:3:5"
+ },
+ "nodeType": "ForStatement",
+ "src": "4825:133:5"
+ },
+ {
+ "expression": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "id": 1993,
+ "name": "this",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 4294967268,
+ "src": "5025:4:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",
+ "typeString": "contract EvmToSubstrate"
+ }
+ ],
+ "id": 1992,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5017:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1991,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5017:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 1994,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5017:13:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "hexValue": "30",
+ "id": 1995,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5032:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1990,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1315,
+ "src": "4999:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 1996,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4999:35:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2000,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5066:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 1999,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5058:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 1998,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5058:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2001,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5058:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2002,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1892,
+ "src": "5070:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 1997,
+ "name": "RftCrossAccountId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1315,
+ "src": "5040:17:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",
+ "typeString": "type(struct Tuple8 storage pointer)"
+ }
+ },
+ "id": 2003,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "structConstructorCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5040:49:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ }
+ },
+ {
+ "id": 2004,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5095:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",
+ "typeString": "struct Tuple8 memory"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "expression": {
+ "id": 1987,
+ "name": "rftCollection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1940,
+ "src": "4962:13:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_contract$_UniqueRefungible_$1508",
+ "typeString": "contract UniqueRefungible"
+ }
+ },
+ "id": 1989,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "lValueRequested": false,
+ "memberLocation": "4976:17:5",
+ "memberName": "transferFromCross",
+ "nodeType": "MemberAccess",
+ "referencedDeclaration": 1250,
+ "src": "4962:31:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$1315_memory_ptr_$_t_struct$_Tuple8_$1315_memory_ptr_$_t_uint256_$returns$__$",
+ "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"
+ }
+ },
+ "id": 2005,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "4962:145:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2006,
+ "nodeType": "ExpressionStatement",
+ "src": "4962:145:5"
+ }
+ ]
+ }
+ },
+ {
+ "eventCall": {
+ "arguments": [
+ {
+ "arguments": [
+ {
+ "hexValue": "30",
+ "id": 2091,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "number",
+ "lValueRequested": false,
+ "nodeType": "Literal",
+ "src": "5757:1:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ },
+ "value": "0"
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_rational_0_by_1",
+ "typeString": "int_const 0"
+ }
+ ],
+ "id": 2090,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "lValueRequested": false,
+ "nodeType": "ElementaryTypeNameExpression",
+ "src": "5749:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_type$_t_address_$",
+ "typeString": "type(address)"
+ },
+ "typeName": {
+ "id": 2089,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "5749:7:5",
+ "typeDescriptions": {}
+ }
+ },
+ "id": 2092,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": true,
+ "kind": "typeConversion",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5749:10:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2093,
+ "name": "_substrateReceiver",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1892,
+ "src": "5761:18:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ {
+ "id": 2094,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1890,
+ "src": "5781:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ {
+ "id": 2095,
+ "name": "tokenId",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1933,
+ "src": "5794:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ }
+ ],
+ "expression": {
+ "argumentTypes": [
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ ],
+ "id": 2088,
+ "name": "MintToSub",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1744,
+ "src": "5739:9:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
+ "typeString": "function (address,uint256,address,uint256)"
+ }
+ },
+ "id": 2096,
+ "isConstant": false,
+ "isLValue": false,
+ "isPure": false,
+ "kind": "functionCall",
+ "lValueRequested": false,
+ "nameLocations": [],
+ "names": [],
+ "nodeType": "FunctionCall",
+ "src": "5739:63:5",
+ "tryCall": false,
+ "typeDescriptions": {
+ "typeIdentifier": "t_tuple$__$",
+ "typeString": "tuple()"
+ }
+ },
+ "id": 2097,
+ "nodeType": "EmitStatement",
+ "src": "5734:68:5"
+ }
+ ]
+ },
+ "functionSelector": "440dff9d",
+ "id": 2099,
+ "implemented": true,
+ "kind": "function",
+ "modifiers": [
+ {
+ "arguments": [
+ {
+ "id": 1899,
+ "name": "_collection",
+ "nodeType": "Identifier",
+ "overloadedDeclarations": [],
+ "referencedDeclaration": 1890,
+ "src": "4185:11:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ }
+ ],
+ "id": 1900,
+ "kind": "modifierInvocation",
+ "modifierName": {
+ "id": 1898,
+ "name": "checkRestrictions",
+ "nameLocations": [
+ "4167:17:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1733,
+ "src": "4167:17:5"
+ },
+ "nodeType": "ModifierInvocation",
+ "src": "4167:30:5"
+ }
+ ],
+ "name": "mintToSubstrateWithProperty",
+ "nameLocation": "4040:27:5",
+ "nodeType": "FunctionDefinition",
+ "parameters": {
+ "id": 1897,
+ "nodeType": "ParameterList",
+ "parameters": [
+ {
+ "constant": false,
+ "id": 1890,
+ "mutability": "mutable",
+ "name": "_collection",
+ "nameLocation": "4079:11:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2099,
+ "src": "4071:19:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ },
+ "typeName": {
+ "id": 1889,
+ "name": "address",
+ "nodeType": "ElementaryTypeName",
+ "src": "4071:7:5",
+ "stateMutability": "nonpayable",
+ "typeDescriptions": {
+ "typeIdentifier": "t_address",
+ "typeString": "address"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1892,
+ "mutability": "mutable",
+ "name": "_substrateReceiver",
+ "nameLocation": "4102:18:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2099,
+ "src": "4094:26:5",
+ "stateVariable": false,
+ "storageLocation": "default",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ },
+ "typeName": {
+ "id": 1891,
+ "name": "uint256",
+ "nodeType": "ElementaryTypeName",
+ "src": "4094:7:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_uint256",
+ "typeString": "uint256"
+ }
+ },
+ "visibility": "internal"
+ },
+ {
+ "constant": false,
+ "id": 1896,
+ "mutability": "mutable",
+ "name": "properties",
+ "nameLocation": "4144:10:5",
+ "nodeType": "VariableDeclaration",
+ "scope": 2099,
+ "src": "4124:30:5",
+ "stateVariable": false,
+ "storageLocation": "calldata",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",
+ "typeString": "struct Property[]"
+ },
+ "typeName": {
+ "baseType": {
+ "id": 1894,
+ "nodeType": "UserDefinedTypeName",
+ "pathNode": {
+ "id": 1893,
+ "name": "Property",
+ "nameLocations": [
+ "4124:8:5"
+ ],
+ "nodeType": "IdentifierPath",
+ "referencedDeclaration": 1695,
+ "src": "4124:8:5"
+ },
+ "referencedDeclaration": 1695,
+ "src": "4124:8:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_struct$_Property_$1695_storage_ptr",
+ "typeString": "struct Property"
+ }
+ },
+ "id": 1895,
+ "nodeType": "ArrayTypeName",
+ "src": "4124:10:5",
+ "typeDescriptions": {
+ "typeIdentifier": "t_array$_t_struct$_Property_$1695_storage_$dyn_storage_ptr",
+ "typeString": "struct Property[]"
+ }
+ },
+ "visibility": "internal"
+ }
+ ],
+ "src": "4067:90:5"
+ },
+ "returnParameters": {
+ "id": 1901,
+ "nodeType": "ParameterList",
+ "parameters": [],
+ "src": "4198:0:5"
+ },
+ "scope": 2100,
+ "src": "4031:1775:5",
+ "stateMutability": "nonpayable",
+ "virtual": false,
+ "visibility": "external"
+ }
+ ],
+ "scope": 2101,
+ "src": "494:5314:5",
+ "usedErrors": []
+ }
+ ],
+ "src": "44:5765:5"
+ },
+ "functionHashes": {
+ "mintToSubstrate(address,uint256)": "7a8d9786",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "440dff9d"
+ },
+ "gasEstimates": {
+ "creation": {
+ "codeDepositCost": "730800",
+ "executionCost": "766",
+ "totalCost": "731566"
+ },
+ "external": {
+ "mintToSubstrate(address,uint256)": "infinite",
+ "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "infinite"
+ }
+ }
+}
\ No newline at end of file
tests/src/eth/evmToSubstrate/ABIGEN/EvmToSubstrate.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/ABIGEN/EvmToSubstrate.ts
@@ -0,0 +1,67 @@
+/* Autogenerated file. Do not edit manually. */
+/* tslint:disable */
+/* eslint-disable */
+
+import type BN from "bn.js";
+import type { ContractOptions } from "web3-eth-contract";
+import type { EventLog } from "web3-core";
+import type { EventEmitter } from "events";
+import type {
+ Callback,
+ PayableTransactionObject,
+ NonPayableTransactionObject,
+ BlockType,
+ ContractEventLog,
+ BaseContract,
+} from "./types";
+
+export interface EventOptions {
+ filter?: object;
+ fromBlock?: BlockType;
+ topics?: string[];
+}
+
+export type MintToSub = ContractEventLog<{
+ _toEth: string;
+ _toSub: string;
+ _collection: string;
+ _tokenId: string;
+ 0: string;
+ 1: string;
+ 2: string;
+ 3: string;
+}>;
+
+export interface EvmToSubstrate extends BaseContract {
+ constructor(
+ jsonInterface: any[],
+ address?: string,
+ options?: ContractOptions
+ ): EvmToSubstrate;
+ clone(): EvmToSubstrate;
+ methods: {
+ mintToSubstrate(
+ _collection: string,
+ _substrateReceiver: number | string | BN
+ ): NonPayableTransactionObject<void>;
+
+ mintToSubstrateWithProperty(
+ _collection: string,
+ _substrateReceiver: number | string | BN,
+ properties: [string, string | number[]][]
+ ): NonPayableTransactionObject<void>;
+ };
+ events: {
+ MintToSub(cb?: Callback<MintToSub>): EventEmitter;
+ MintToSub(options?: EventOptions, cb?: Callback<MintToSub>): EventEmitter;
+
+ allEvents(options?: EventOptions, cb?: Callback<EventLog>): EventEmitter;
+ };
+
+ once(event: "MintToSub", cb: Callback<MintToSub>): void;
+ once(
+ event: "MintToSub",
+ options: EventOptions,
+ cb: Callback<MintToSub>
+ ): void;
+}
tests/src/eth/evmToSubstrate/ABIGEN/index.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/ABIGEN/index.ts
@@ -0,0 +1,4 @@
+/* Autogenerated file. Do not edit manually. */
+/* tslint:disable */
+/* eslint-disable */
+export type { EvmToSubstrate } from "./EvmToSubstrate";
tests/src/eth/evmToSubstrate/ABIGEN/types.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/ABIGEN/types.ts
@@ -0,0 +1,73 @@
+/* Autogenerated file. Do not edit manually. */
+/* tslint:disable */
+/* eslint-disable */
+import type BN from "bn.js";
+import type { EventEmitter } from "events";
+import type { EventLog, PromiEvent, TransactionReceipt } from "web3-core/types";
+import type { Contract } from "web3-eth-contract";
+
+export interface EstimateGasOptions {
+ from?: string;
+ gas?: number;
+ value?: number | string | BN;
+}
+
+export interface EventOptions {
+ filter?: object;
+ fromBlock?: BlockType;
+ topics?: string[];
+}
+
+export type Callback<T> = (error: Error, result: T) => void;
+export interface ContractEventLog<T> extends EventLog {
+ returnValues: T;
+}
+export interface ContractEventEmitter<T> extends EventEmitter {
+ on(event: "connected", listener: (subscriptionId: string) => void): this;
+ on(
+ event: "data" | "changed",
+ listener: (event: ContractEventLog<T>) => void
+ ): this;
+ on(event: "error", listener: (error: Error) => void): this;
+}
+
+export interface NonPayableTx {
+ nonce?: string | number | BN;
+ chainId?: string | number | BN;
+ from?: string;
+ to?: string;
+ data?: string;
+ gas?: string | number | BN;
+ maxPriorityFeePerGas?: string | number | BN;
+ maxFeePerGas?: string | number | BN;
+ gasPrice?: string | number | BN;
+}
+
+export interface PayableTx extends NonPayableTx {
+ value?: string | number | BN;
+}
+
+export interface NonPayableTransactionObject<T> {
+ arguments: any[];
+ call(tx?: NonPayableTx, block?: BlockType): Promise<T>;
+ send(tx?: NonPayableTx): PromiEvent<TransactionReceipt>;
+ estimateGas(tx?: NonPayableTx): Promise<number>;
+ encodeABI(): string;
+}
+
+export interface PayableTransactionObject<T> {
+ arguments: any[];
+ call(tx?: PayableTx, block?: BlockType): Promise<T>;
+ send(tx?: PayableTx): PromiEvent<TransactionReceipt>;
+ estimateGas(tx?: PayableTx): Promise<number>;
+ encodeABI(): string;
+}
+
+export type BlockType =
+ | "latest"
+ | "pending"
+ | "genesis"
+ | "earliest"
+ | number
+ | BN;
+export type BaseContract = Omit<Contract, "clone" | "once">;
tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.soldiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol
@@ -0,0 +1,179 @@
+// SPDX-License-Identifier: Apache License
+pragma solidity >=0.8.0;
+import {CollectionHelpers} from "../api/CollectionHelpers.sol";
+import {ContractHelpers} from "../api/ContractHelpers.sol";
+import {UniqueRefungibleToken} from "../api/UniqueRefungibleToken.sol";
+import {UniqueRefungible, Collection, EthCrossAccount as RftCrossAccountId, Tuple20 as RftProperties} from "../api/UniqueRefungible.sol";
+import {UniqueNFT, EthCrossAccount as NftCrossAccountId, Tuple21 as NftProperty, TokenProperties} from "../api/UniqueNFT.sol";
+
+struct Property {
+ string key;
+ bytes value;
+}
+
+// interface Foo {
+// struct Tuple19 {
+// string field_0;
+// bytes field_1;
+// }
+
+// }
+
+contract EvmToSubstrate {
+ bytes32 constant REFUNGIBLE_COLLECTION_TYPE = keccak256(bytes("ReFungible"));
+ bytes32 constant NONFUNGIBLE_COLLECTION_TYPE = keccak256(bytes("NFT"));
+ // bytes32 collectionType;
+
+ // Collection commonContract;
+ // UniqueNFT nftCollection;
+ // UniqueRefungible rftCollection;
+
+ // function(address, uint256) external returns (bool) mintInvoke;
+ // function(address, address, uint256) external transferInvoke;
+
+ modifier checkRestrictions(address _collection) {
+ Collection commonContract = Collection(_collection);
+ require(commonContract.isOwnerOrAdmin(msg.sender), "Only collection admin/owner can call this method");
+
+ // bytes32 collectionType = keccak256(bytes(commonContract.uniqueCollectionType()));
+ // uint256 tokenId;
+
+ // if (collectionType == REFUNGIBLE_COLLECTION_TYPE) {
+ // UniqueRefungible rftCollection = UniqueRefungible(_collection);
+ // mintInvoke = rftCollection.mint;
+ // transferInvoke = rftCollection.transferFrom;
+ // tokenId = rftCollection.nextTokenId();
+ // } else if (collectionType == NONFUNGIBLE_COLLECTION_TYPE) {
+ // UniqueNFT nftCollection = UniqueNFT(_collection);
+ // mintInvoke = nftCollection.mint;
+ // transferInvoke = nftCollection.transferFrom;
+
+ // tokenId = nftCollection.nextTokenId();
+ // } else {
+ // revert("Wrong collection type. Works only with NFT or RFT");
+ // }
+
+ _;
+ }
+
+ /// @dev This emits when a mint to a substrate address has been made.
+ event MintToSub(address _toEth, uint256 _toSub, address _collection, uint256 _tokenId);
+
+ function mintToSubstrate(address _collection, uint256 _substrateReceiver) external checkRestrictions(_collection) {
+ // function(address, uint256) external returns (bool) mintInvoke;
+ // function(Tuple8 memory, Tuple8 memory, uint256) external transferInvoke;
+ Collection commonContract = Collection(_collection);
+ bytes32 collectionType = keccak256(bytes(commonContract.uniqueCollectionType()));
+ uint256 tokenId;
+
+ if (collectionType == REFUNGIBLE_COLLECTION_TYPE) {
+ UniqueRefungible rftCollection = UniqueRefungible(_collection);
+
+ tokenId = rftCollection.mint(address(this));
+
+ rftCollection.transferFromCross(
+ RftCrossAccountId(address(this), 0),
+ RftCrossAccountId(address(0), _substrateReceiver),
+ tokenId
+ );
+ } else if (collectionType == NONFUNGIBLE_COLLECTION_TYPE) {
+ UniqueNFT nftCollection = UniqueNFT(_collection);
+ // tokenId = nftCollection.nextTokenId();
+ tokenId = nftCollection.mint(address(this));
+
+ nftCollection.transferFromCross(
+ NftCrossAccountId(address(this), 0),
+ NftCrossAccountId(address(0), _substrateReceiver),
+ tokenId
+ );
+ } else {
+ revert("Wrong collection type. Works only with NFT or RFT");
+ }
+
+ // mintInvoke(address(this), tokenId);
+ // Tuple8 memory sender = Tuple8(address(this), 0);
+ // Tuple8 memory receiver = Tuple8(address(0), _substrateReceiver);
+
+ // transferInvoke(sender, receiver, tokenId);
+
+ emit MintToSub(address(0), _substrateReceiver, _collection, tokenId);
+ }
+
+ function mintToSubstrateWithProperty(
+ address _collection,
+ uint256 _substrateReceiver,
+ Property[] calldata properties
+ ) external checkRestrictions(_collection) {
+ // function(address, uint256, string memory) external returns (bool) mintInvoke;
+ // function(address, address, uint256) external transferInvoke;
+ uint256 propertiesLength = properties.length;
+ require(propertiesLength > 0, "Properies is empty");
+
+ Collection commonContract = Collection(_collection);
+ bytes32 collectionType = keccak256(bytes(commonContract.uniqueCollectionType()));
+ uint256 tokenId;
+
+ if (collectionType == REFUNGIBLE_COLLECTION_TYPE) {
+ UniqueRefungible rftCollection = UniqueRefungible(_collection);
+ tokenId = rftCollection.nextTokenId();
+ rftCollection.mint(address(this));
+ for (uint256 i = 0; i < propertiesLength; ++i) {
+ rftCollection.setProperty(tokenId, properties[i].key, properties[i].value);
+ }
+ rftCollection.transferFromCross(
+ RftCrossAccountId(address(this), 0),
+ RftCrossAccountId(address(0), _substrateReceiver),
+ tokenId
+ );
+ } else if (collectionType == NONFUNGIBLE_COLLECTION_TYPE) {
+ UniqueNFT nftCollection = UniqueNFT(_collection);
+ // tokenId = nftCollection.nextTokenId();
+ tokenId = nftCollection.mint(address(this));
+ for (uint256 i = 0; i < propertiesLength; ++i) {
+ nftCollection.setProperty(tokenId, properties[i].key, properties[i].value);
+ }
+ nftCollection.transferFromCross(
+ NftCrossAccountId(address(this), 0),
+ NftCrossAccountId(address(0), _substrateReceiver),
+ tokenId
+ );
+ } else {
+ revert("Wrong collection type. Works only with NFT or RFT");
+ }
+
+ // transferInvoke(address(this), _gap, tokenId);
+
+ emit MintToSub(address(0), _substrateReceiver, _collection, tokenId);
+ }
+
+ function mintToSubstrateBulkProperty(
+ address _collection,
+ uint256 _substrateReceiver,
+ NftProperty[] calldata _properties
+ ) external checkRestrictions(_collection) {
+ uint256 propertiesLength = _properties.length;
+ require(propertiesLength > 0, "Properies is empty");
+
+ Collection commonContract = Collection(_collection);
+ bytes32 collectionType = keccak256(bytes(commonContract.uniqueCollectionType()));
+ uint256 tokenId;
+
+ if (collectionType == REFUNGIBLE_COLLECTION_TYPE) {} else if (collectionType == NONFUNGIBLE_COLLECTION_TYPE) {
+ UniqueNFT nftCollection = UniqueNFT(_collection);
+ // tokenId = nftCollection.nextTokenId();
+ tokenId = nftCollection.mint(address(this));
+
+ nftCollection.setProperties(tokenId, _properties);
+
+ nftCollection.transferFromCross(
+ NftCrossAccountId(address(this), 0),
+ NftCrossAccountId(address(0), _substrateReceiver),
+ tokenId
+ );
+ } else {
+ revert("Wrong collection type. Works only with NFT or RFT");
+ }
+
+ emit MintToSub(address(0), _substrateReceiver, _collection, tokenId);
+ }
+}
tests/src/eth/evmToSubstrate/abigen.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/abigen.ts
@@ -0,0 +1,19 @@
+import {runTypeChain, glob} from 'typechain';
+
+
+async function main() {
+ const cwd = process.cwd();
+
+ // find all files matching the glob
+ const allFiles = glob(cwd, ['./ABI/*.json']);
+
+ const result = await runTypeChain({
+ cwd,
+ filesToProcess: allFiles,
+ allFiles,
+ outDir: 'ABIGEN',
+ target: 'web3-v1',
+ });
+}
+
+main().catch(console.error);
\ No newline at end of file
tests/src/eth/evmToSubstrate/addressResearch.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/addressResearch.ts
@@ -0,0 +1,191 @@
+// import {createEthAccountWithBalance} from '../util/helpers';
+import {EthUniqueHelper, usingEthPlaygrounds} from '../util/playgrounds';
+import {readFile} from 'fs/promises';
+import {ContractImports} from '../util/playgrounds/types';
+import {Contract} from '@polkadot/api-contract/base';
+import Web3 from 'web3';
+import {IProperty, ITokenPropertyPermission} from '../../util/playgrounds/types';
+import {addressToEvm, decodeAddress} from '@polkadot/util-crypto';
+import nonFungibleAbi from '../nonFungibleAbi.json';
+import {CrossAccountId} from '../../util/helpers';
+import {IKeyringPair} from '@polkadot/types/types';
+
+enum SponsoringMode {
+ Disabled = 0,
+ Allowlisted = 1,
+ Generous = 2,
+}
+
+const WS_ENDPOINT = 'wss://ws-rc.unique.network';
+const CONTRACT_IMPORT: ContractImports[] = [
+ {
+ fsPath: `${__dirname}/../api/CollectionHelpers.sol`,
+ solPath: 'api/CollectionHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/ContractHelpers.sol`,
+ solPath: 'api/ContractHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungibleToken.sol`,
+ solPath: 'api/UniqueRefungibleToken.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungible.sol`,
+ solPath: 'api/UniqueRefungible.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueNFT.sol`,
+ solPath: 'api/UniqueNFT.sol',
+ },
+];
+const main = async () => {
+ await usingEthPlaygrounds(async (helper, privateKey) => {
+ const contract_source = (
+ await readFile(`${__dirname}/EvmToSubstrateHelper.sol`)
+ ).toString();
+
+
+ const donor = privateKey('//Alice'); // Seed from account with balance on this network
+ const myAccount = privateKey('//Bob'); // replace with account from polkadot extension
+ console.log('donor raw sub: ', donor.addressRaw);
+ console.log('donor sub->eth->sub: ', decodeAddress(await helper.address.ethToSubstrate(helper.address.substrateToEth(donor.address))));
+ console.log('donor sub: ', donor.address);
+
+ console.log('donor raw eth: ', Uint8Array.from(Buffer.from(helper.address.substrateToEth(donor.address).slice(2), 'hex')));
+ console.log('donor eth: ', helper.address.substrateToEth(donor.address));
+
+ const signer = await helper.eth.createAccountWithBalance(donor, 100n);
+
+ console.log('\nsigner eth: ', signer);
+ console.log('signer raw eth: ', Uint8Array.from(Buffer.from(signer.slice(2), 'hex')));
+ console.log('signer raw sub: ', decodeAddress(await helper.address.ethToSubstrate(signer)));
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ // await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ // await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addToAllowList(donor, {Substrate: myAccount.address});
+ // await collection.addAdmin(donor, {Ethereum: signer});
+ // await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+
+ console.log('collection admin(s)): ', await collection.getAdmins());
+ console.log('collection owner(s)): ', await collection.getAllowList());
+
+
+ const collectionEthAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
+ const collectionContract = helper.ethNativeContract.collection(
+ collectionEthAddress,
+ 'nft',
+ );
+ const receiverEthAddress = helper.address.substrateToEth(myAccount.address);
+
+ console.log('myAccount eth mirror: ', receiverEthAddress);
+ console.log('contract eth mirror: ', collectionEthAddress);
+
+ let subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ const encodedCall = collectionContract.methods
+ .mint(receiverEthAddress, subTokenId)
+ .encodeABI();
+
+ const ethFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+ await helper.eth.sendEVM(
+ myAccount,
+ collectionContract.options.address,
+ encodedCall,
+ '0',
+ );
+ },
+ );
+
+ console.log(`\ncollection mint from eth : ${ethFee}\n`);
+
+ // subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ // const contract = await helper.ethContract.deployByCode(signer, 'EvmToSubstrate', contract_source, CONTRACT_IMPORT);
+ // console.log('contract Address', contract.options.address);
+ // await helper.eth.transferBalanceFromSubstrate(donor, contract.options.address, 100n);
+
+ // await collection.addToAllowList(donor, {Ethereum: contract.options.address});
+ // await collection.addAdmin(donor, {Ethereum: contract.options.address});
+
+
+ // const feeForProxyContractMinting = await helper.arrange.calculcateFee(
+ // {Ethereum: signer},
+ // async () => {
+ // await contract.methods.mintToSubstrate(helper.ethAddress.fromCollectionId(collection.collectionId), myAccount.addressRaw).send({from: signer});
+ // },
+ // );
+
+ // console.log(`\ncollection mint from contract to the Substrate Id: ${feeForProxyContractMinting}\n`);
+ subTokenId = await collectionContract.methods.nextTokenId().call();
+ console.log(subTokenId);
+
+ console.log('All done');
+ });
+};
+
+main()
+ .then(() => process.exit(0))
+ .catch((e) => {
+ console.log(e);
+ process.exit(1);
+ });
+
+
+async function createCollectionForPropertiesBenchmarks(
+ helper: EthUniqueHelper,
+ privateKey: (seed: string) => IKeyringPair,
+ ethSigner: string,
+ proxyContract: string,
+ permissions: ITokenPropertyPermission[],
+) {
+
+ const donor = privateKey('//Alice'); // Seed from account with balance on this network
+
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addAdmin(donor, {Ethereum: ethSigner});
+ await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Ethereum: proxyContract});
+ await collection.addAdmin(donor, {Ethereum: proxyContract});
+ await collection.setTokenPropertyPermissions(donor, permissions);
+
+ return collection;
+}
\ No newline at end of file
tests/src/eth/evmToSubstrate/feeBench.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/feeBench.ts
@@ -0,0 +1,314 @@
+import {EthUniqueHelper, usingEthPlaygrounds} from '../util';
+import {readFile} from 'fs/promises';
+import {ContractImports} from '../util/playgrounds/types';
+import {Contract} from '@polkadot/api-contract/base';
+import Web3 from 'web3';
+import {IProperty, ITokenPropertyPermission} from '../../util/playgrounds/types';
+import {addressToEvm, decodeAddress} from '@polkadot/util-crypto';
+import nonFungibleAbi from '../nonFungibleAbi.json';
+import {IKeyringPair} from '@polkadot/types/types';
+
+enum SponsoringMode {
+ Disabled = 0,
+ Allowlisted = 1,
+ Generous = 2,
+}
+
+const WS_ENDPOINT = 'wss://ws-rc.unique.network';
+const CONTRACT_IMPORT: ContractImports[] = [
+ {
+ fsPath: `${__dirname}/../api/CollectionHelpers.sol`,
+ solPath: 'api/CollectionHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/ContractHelpers.sol`,
+ solPath: 'api/ContractHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungibleToken.sol`,
+ solPath: 'api/UniqueRefungibleToken.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungible.sol`,
+ solPath: 'api/UniqueRefungible.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueNFT.sol`,
+ solPath: 'api/UniqueNFT.sol',
+ },
+];
+const main = async () => {
+ await usingEthPlaygrounds(async (helper, privateKey) => {
+ const contract_source = (
+ await readFile(`${__dirname}/EvmToSubstrateHelper.sol`)
+ ).toString();
+
+
+ const donor = await privateKey('//Alice'); // Seed from account with balance on this network
+ const myAccount = await privateKey('//Bob'); // replace with account from polkadot extension
+
+ const signer = await helper.eth.createAccountWithBalance(donor, 100n);
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addAdmin(donor, {Ethereum: signer});
+ await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+
+ console.log('collection admin(s)): ', await collection.getAdmins());
+ console.log('collection owner(s)): ', await collection.getAllowList());
+ const fee = await helper.arrange.calculcateFee({Substrate: donor.address}, () => collection.mintToken(donor, {Substrate: myAccount.address}));
+ console.log(`\ntoken mint from susbtrate : ${fee}`);
+
+ const collectionEthAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
+ const collectionContract = helper.ethNativeContract.collection(
+ collectionEthAddress,
+ 'nft',
+ );
+
+ const receiverEthAddress = helper.address.substrateToEth(myAccount.address);
+
+ // let subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ let encodedCall = collectionContract.methods
+ .mint(receiverEthAddress)
+ .encodeABI();
+
+ const ethFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+ await helper.eth.sendEVM(
+ donor,
+ collectionContract.options.address,
+ encodedCall,
+ '0',
+ );
+ },
+ );
+
+ console.log(`token mint from eth : ${ethFee}`);
+
+ const contract = await helper.ethContract.deployByCode(signer, 'EvmToSubstrate', contract_source, CONTRACT_IMPORT);
+ console.log(`contract has been deployed`);
+
+ await helper.eth.transferBalanceFromSubstrate(donor, contract.options.address, 100n);
+
+ console.log(`transfer has been completed`);
+
+ await collection.addToAllowList(donor, { Ethereum: contract.options.address });
+ await collection.addAdmin(donor, {Ethereum: contract.options.address});
+
+ console.log(`setup has been completed`);
+
+ const feeForProxyContractMinting = await helper.arrange.calculcateFee(
+ {Ethereum: signer},
+ async () => {
+ await contract.methods.mintToSubstrate(helper.ethAddress.fromCollectionId(collection.collectionId), myAccount.addressRaw).send({from: signer});
+ },
+ );
+
+ console.log(`token mint from contract to the Substrate Id: ${feeForProxyContractMinting}\n`);
+ // subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ /// *** properties part ***
+
+ console.log('\t\t\t *** Properties Fees ***\n');
+
+ const propertiesNumber = 20;
+
+ const properties = Array(40).fill(0)
+ .map((_, i) => { return {key: `key_${i}`, value: Uint8Array.from(Buffer.from(`value_${i}`))}; });
+
+ const permissions: ITokenPropertyPermission[] = properties
+ .map(p => {
+ return {
+ key: p.key, permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true}}; });
+
+
+ // *** Susbtrate ***
+
+ const collectionForSubstrateBench = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+
+ const mintWithPropSubstrate = await helper.arrange.calculcateFee({Substrate: donor.address}, async () => {
+ await collectionForSubstrateBench
+ .mintToken(donor, {Substrate: myAccount.address}, properties.slice(0, propertiesNumber).map(p => { return {key: p.key, value: Buffer.from(p.value).toString()}; }));
+ });
+ console.log(`token mint from susbtrate: ${mintWithPropSubstrate}`);
+
+ // *** EVM ***
+
+ const collectionForEvmBench = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+ const evmContract = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collectionForEvmBench.collectionId), 'nft');
+
+ let subTokenId = await evmContract.methods.nextTokenId().call();
+
+ encodedCall = evmContract.methods
+ .mint(receiverEthAddress)
+ .encodeABI();
+
+ const evmCallWithPropFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+
+ await helper.eth.sendEVM(
+ donor,
+ evmContract.options.address,
+ encodedCall,
+ '0',
+ );
+
+ for (const val of properties.slice(0, propertiesNumber)) {
+
+ encodedCall = await evmContract.methods
+ .setProperty(subTokenId, val.key, Buffer.from(val.value))
+ .encodeABI();
+
+ await helper.eth.sendEVM(
+ donor,
+ evmContract.options.address,
+ encodedCall,
+ '0',
+ );
+ }
+ },
+ );
+
+ console.log(`token mint from eth : ${evmCallWithPropFee}`);
+
+
+
+ // *** EVM Bulk***
+
+ const collectionForEvmBulkBench = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+ const evmBulkContract = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collectionForEvmBulkBench.collectionId), 'nft');
+
+ subTokenId = await evmBulkContract.methods.nextTokenId().call();
+
+ encodedCall = evmBulkContract.methods
+ .mint(receiverEthAddress)
+ .encodeABI();
+
+ const evmCallWithBulkPropFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+
+ await helper.eth.sendEVM(
+ donor,
+ evmBulkContract.options.address,
+ encodedCall,
+ '0',
+ );
+
+
+
+ encodedCall = await evmBulkContract.methods
+ .setProperties(
+ subTokenId,
+ properties.slice(0, propertiesNumber)
+ .map(p => { return {field_0: p.key, field_1: p.value}; }),
+ )
+ .encodeABI();
+
+ await helper.eth.sendEVM(
+ donor,
+ evmBulkContract.options.address,
+ encodedCall,
+ '0',
+ );
+
+ },
+ );
+
+ console.log(`token mint from eth (Bulk) : ${evmCallWithBulkPropFee}`);
+
+
+ // *** ProxyContract ***
+
+ await collection.setTokenPropertyPermissions(donor, permissions);
+ const mintWithPropProxyContractFee = await helper.arrange.calculcateFee({Ethereum: signer}, async () => {
+ await contract.methods.mintToSubstrateWithProperty(helper.ethAddress
+ .fromCollectionId(collection.collectionId), myAccount.addressRaw, properties.slice(0, propertiesNumber)).send({from: signer});
+ });
+ console.log(`token mint from contract to the Substrate Id: ${mintWithPropProxyContractFee}`);
+
+
+ // // *** ProxyContract Bulk ***
+
+ const collectionForProxyContractBulrProperties = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+ const evmContractProxyBulk = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collectionForProxyContractBulrProperties.collectionId), 'nft');
+
+ const mintWithBulkPropProxyContractFee = await helper.arrange.calculcateFee({Ethereum: signer}, async () => {
+ await contract.methods.mintToSubstrateBulkProperty(evmContractProxyBulk.options.address, myAccount.addressRaw, properties.slice(0, propertiesNumber)
+ .map(p => { return {field_0: p.key, field_1: p.value}; })).send({from: signer});
+ });
+ console.log(`token mint from contract(with bulk prop.) to the Substrate Id: ${mintWithBulkPropProxyContractFee}`);
+
+ console.log('All done');
+ });
+};
+
+main()
+ .then(() => process.exit(0))
+ .catch((e) => {
+ console.log(e);
+ process.exit(1);
+ });
+
+
+async function createCollectionForPropertiesBenchmarks(
+ helper: EthUniqueHelper,
+ privateKey: (seed: string) => Promise<IKeyringPair>,
+ ethSigner: string,
+ proxyContract: string,
+ permissions: ITokenPropertyPermission[],
+) {
+
+ const donor = await privateKey('//Alice'); // Seed from account with balance on this network
+
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addAdmin(donor, {Ethereum: ethSigner});
+ await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Ethereum: proxyContract});
+ await collection.addAdmin(donor, {Ethereum: proxyContract});
+ await collection.setTokenPropertyPermissions(donor, permissions);
+
+ return collection;
+}
\ No newline at end of file
tests/src/eth/evmToSubstrate/prototype.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/eth/evmToSubstrate/prototype.ts
@@ -0,0 +1,256 @@
+// import {createEthAccountWithBalance} from '../util/helpers';
+import {EthUniqueHelper, usingEthPlaygrounds} from '../util/playgrounds';
+import {readFile} from 'fs/promises';
+import {ContractImports} from '../util/playgrounds/types';
+import {Contract} from '@polkadot/api-contract/base';
+import Web3 from 'web3';
+import {IProperty, ITokenPropertyPermission} from '../../util/playgrounds/types';
+import {addressToEvm, decodeAddress} from '@polkadot/util-crypto';
+import nonFungibleAbi from '../nonFungibleAbi.json';
+
+import {IKeyringPair} from '@polkadot/types/types';
+
+enum SponsoringMode {
+ Disabled = 0,
+ Allowlisted = 1,
+ Generous = 2,
+}
+
+const WS_ENDPOINT = 'wss://ws-rc.unique.network';
+const CONTRACT_IMPORT: ContractImports[] = [
+ {
+ fsPath: `${__dirname}/../api/CollectionHelpers.sol`,
+ solPath: 'api/CollectionHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/ContractHelpers.sol`,
+ solPath: 'api/ContractHelpers.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungibleToken.sol`,
+ solPath: 'api/UniqueRefungibleToken.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueRefungible.sol`,
+ solPath: 'api/UniqueRefungible.sol',
+ },
+ {
+ fsPath: `${__dirname}/../api/UniqueNFT.sol`,
+ solPath: 'api/UniqueNFT.sol',
+ },
+];
+const main = async () => {
+ await usingEthPlaygrounds(async (helper, privateKey) => {
+ const contractSource = (
+ await readFile(`${__dirname}/EvmToSubstrateHelper.sol`)
+ ).toString();
+
+
+ const donor = privateKey('//Alice'); // Seed from account with balance on this network
+ const myAccount = privateKey('//Bob'); // replace with account from polkadot extension
+ console.log('donor raw sub: ', donor.addressRaw);
+ console.log('donor sub->eth->sub: ', decodeAddress(await helper.address.ethToSubstrate(helper.address.substrateToEth(donor.address))));
+ console.log('donor sub: ', donor.address);
+
+ console.log('donor raw eth: ', Uint8Array.from(Buffer.from(helper.address.substrateToEth(donor.address).slice(2), 'hex')));
+ console.log('donor eth: ', helper.address.substrateToEth(donor.address));
+
+ const signer = await helper.eth.createAccountWithBalance(donor, 100n);
+
+ console.log('\nsigner eth: ', signer);
+ console.log('signer raw eth: ', Uint8Array.from(Buffer.from(signer.slice(2), 'hex')));
+ console.log('signer raw sub: ', decodeAddress(await helper.address.ethToSubstrate(signer)));
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addAdmin(donor, {Ethereum: signer});
+ await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+
+ console.log('collection admin(s)): ', await collection.getAdmins());
+ console.log('collection owner(s)): ', await collection.getAllowList());
+ const fee = await helper.arrange.calculcateFee({Substrate: donor.address}, () => collection.mintToken(donor, {Substrate: myAccount.address}));
+ console.log(`\ncollection mint from susbtrate : ${fee}\n`);
+
+ const collectionEthAddress = helper.ethAddress.fromCollectionId(collection.collectionId);
+ const collectionContract = helper.ethNativeContract.collection(
+ collectionEthAddress,
+ 'nft',
+ );
+ const receiverEthAddress = helper.address.substrateToEth(myAccount.address);
+ console.log('myAccount eth mirror: ', receiverEthAddress);
+ console.log('contract eth mirror: ', collectionEthAddress);
+
+ let subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ let encodedCall = collectionContract.methods
+ .mint(receiverEthAddress, subTokenId)
+ .encodeABI();
+
+ const ethFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+ await helper.eth.sendEVM(
+ donor,
+ collectionContract.options.address,
+ encodedCall,
+ '0',
+ );
+ },
+ );
+
+ console.log(`\ncollection mint from eth : ${ethFee}\n`);
+
+ subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ const contract = await helper.ethContract.deployByCode(signer, 'EvmToSubstrate', contractSource, CONTRACT_IMPORT);
+ console.log('contract Address', contract.options.address);
+ await helper.eth.transferBalanceFromSubstrate(donor, contract.options.address, 100n);
+
+ await collection.addToAllowList(donor, {Ethereum: contract.options.address});
+ await collection.addAdmin(donor, {Ethereum: contract.options.address});
+
+
+ const feeForProxyContractMinting = await helper.arrange.calculcateFee(
+ {Ethereum: signer},
+ async () => {
+ await contract.methods.mintToSubstrate(helper.ethAddress.fromCollectionId(collection.collectionId), myAccount.addressRaw).send({from: signer});
+ },
+ );
+
+ console.log(`\ncollection mint from contract to the Substrate Id: ${feeForProxyContractMinting}\n`);
+ subTokenId = await collectionContract.methods.nextTokenId().call();
+
+ /// *** properties part ***
+
+ console.log('\t\t\t *** Properties Fees ***\n');
+
+ const propertiesNumber = 20;
+
+ const properties = Array(40).fill(0).map((_, i) => { return {key: `key_${i}`, value: Uint8Array.from(Buffer.from(`value_${i}`))}; });
+ const permissions: ITokenPropertyPermission[] = properties.map(p => { return {key: p.key, permission: {tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true}}; });
+
+ await collection.setTokenPropertyPermissions(donor, permissions);
+
+
+ const mintWithPropProxyContractFee = await helper.arrange.calculcateFee({Ethereum: signer}, async () => {
+ await contract.methods.mintToSubstrateWithProperty(helper.ethAddress
+ .fromCollectionId(collection.collectionId), myAccount.addressRaw, properties.slice(0, propertiesNumber)).send({from: signer});
+ });
+ console.log(`collection mint from contract to the Substrate Id: ${mintWithPropProxyContractFee}`);
+
+ const collectionForSubstrateBench = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+
+ const mintWithPropSubstrate = await helper.arrange.calculcateFee({Substrate: donor.address}, async () => {
+ await collectionForSubstrateBench
+ .mintToken(donor, {Substrate: myAccount.address}, properties.slice(0, propertiesNumber).map(p => { return {key: p.key, value: Buffer.from(p.value).toString()}; }));
+ });
+
+ console.log(`collection mint from susbtrate: ${mintWithPropSubstrate}`);
+
+ const collectionForEvmBench = await createCollectionForPropertiesBenchmarks(helper, privateKey, signer, contract.options.address, permissions);
+ const evmContract = helper.ethNativeContract.collection(helper.ethAddress.fromCollectionId(collectionForEvmBench.collectionId), 'nft');
+
+ subTokenId = await evmContract.methods.nextTokenId().call();
+
+ encodedCall = evmContract.methods
+ .mint(receiverEthAddress, subTokenId)
+ .encodeABI();
+
+ const evmCallWithPropFee = await helper.arrange.calculcateFee(
+ {Substrate: donor.address},
+ async () => {
+
+ await helper.eth.sendEVM(
+ donor,
+ evmContract.options.address,
+ encodedCall,
+ '0',
+ );
+
+ for (const val of properties.slice(0, propertiesNumber)) {
+
+ encodedCall = await evmContract.methods
+ .setProperty(subTokenId, val.key, Buffer.from(val.value))
+ .encodeABI();
+
+ await helper.eth.sendEVM(
+ donor,
+ evmContract.options.address,
+ encodedCall,
+ '0',
+ );
+ }
+ },
+ );
+
+ console.log(`collection mint from eth : ${evmCallWithPropFee}`);
+
+ console.log('All done');
+ });
+};
+
+main()
+ .then(() => process.exit(0))
+ .catch((e) => {
+ console.log(e);
+ process.exit(1);
+ });
+
+
+async function createCollectionForPropertiesBenchmarks(
+ helper: EthUniqueHelper,
+ privateKey: (seed: string) => IKeyringPair,
+ ethSigner: string,
+ proxyContract: string,
+ permissions: ITokenPropertyPermission[],
+) {
+
+ const donor = privateKey('//Alice'); // Seed from account with balance on this network
+
+
+ const collection = await helper.nft.mintCollection(donor, {
+ name: 'test mintToSubstrate',
+ description: 'EVMHelpers',
+ tokenPrefix: 'ap',
+ tokenPropertyPermissions: [
+ {
+ key: 'url',
+ permission: {
+ tokenOwner: true,
+ collectionAdmin: true,
+ mutable: true,
+ },
+ },
+ ],
+ limits: {sponsorTransferTimeout: 0, sponsorApproveTimeout: 0}, permissions: {mintMode: true},
+ });
+
+ await collection.addToAllowList(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Substrate: donor.address});
+ await collection.addAdmin(donor, {Ethereum: ethSigner});
+ await collection.addAdmin(donor, {Ethereum: helper.address.substrateToEth(donor.address)});
+ await collection.addToAllowList(donor, {Ethereum: proxyContract});
+ await collection.addAdmin(donor, {Ethereum: proxyContract});
+ await collection.setTokenPropertyPermissions(donor, permissions);
+
+ return collection;
+}
\ No newline at end of file
tests/yarn.lockdiffbeforeafterboth1# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.2# yarn lockfile v1345"@ampproject/remapping@^2.1.0":6 version "2.2.0"7 resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"8 integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==9 dependencies:10 "@jridgewell/gen-mapping" "^0.1.0"11 "@jridgewell/trace-mapping" "^0.3.9"1213"@babel/code-frame@^7.18.6":14 version "7.18.6"15 resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a"16 integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==17 dependencies:18 "@babel/highlight" "^7.18.6"1920"@babel/compat-data@^7.19.3":21 version "7.19.4"22 resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.4.tgz#95c86de137bf0317f3a570e1b6e996b427299747"23 integrity sha512-CHIGpJcUQ5lU9KrPHTjBMhVwQG6CQjxfg36fGXl3qk/Gik1WwWachaXFuo0uCWJT/mStOKtcbFJCaVLihC1CMw==2425"@babel/core@^7.19.3":26 version "7.19.6"27 resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.6.tgz#7122ae4f5c5a37c0946c066149abd8e75f81540f"28 integrity sha512-D2Ue4KHpc6Ys2+AxpIx1BZ8+UegLLLE2p3KJEuJRKmokHOtl49jQ5ny1773KsGLZs8MQvBidAF6yWUJxRqtKtg==29 dependencies:30 "@ampproject/remapping" "^2.1.0"31 "@babel/code-frame" "^7.18.6"32 "@babel/generator" "^7.19.6"33 "@babel/helper-compilation-targets" "^7.19.3"34 "@babel/helper-module-transforms" "^7.19.6"35 "@babel/helpers" "^7.19.4"36 "@babel/parser" "^7.19.6"37 "@babel/template" "^7.18.10"38 "@babel/traverse" "^7.19.6"39 "@babel/types" "^7.19.4"40 convert-source-map "^1.7.0"41 debug "^4.1.0"42 gensync "^1.0.0-beta.2"43 json5 "^2.2.1"44 semver "^6.3.0"4546"@babel/generator@^7.19.6":47 version "7.19.6"48 resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.6.tgz#9e481a3fe9ca6261c972645ae3904ec0f9b34a1d"49 integrity sha512-oHGRUQeoX1QrKeJIKVe0hwjGqNnVYsM5Nep5zo0uE0m42sLH+Fsd2pStJ5sRM1bNyTUUoz0pe2lTeMJrb/taTA==50 dependencies:51 "@babel/types" "^7.19.4"52 "@jridgewell/gen-mapping" "^0.3.2"53 jsesc "^2.5.1"5455"@babel/helper-compilation-targets@^7.19.3":56 version "7.19.3"57 resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.3.tgz#a10a04588125675d7c7ae299af86fa1b2ee038ca"58 integrity sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg==59 dependencies:60 "@babel/compat-data" "^7.19.3"61 "@babel/helper-validator-option" "^7.18.6"62 browserslist "^4.21.3"63 semver "^6.3.0"6465"@babel/helper-environment-visitor@^7.18.9":66 version "7.18.9"67 resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"68 integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==6970"@babel/helper-function-name@^7.19.0":71 version "7.19.0"72 resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c"73 integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==74 dependencies:75 "@babel/template" "^7.18.10"76 "@babel/types" "^7.19.0"7778"@babel/helper-hoist-variables@^7.18.6":79 version "7.18.6"80 resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"81 integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==82 dependencies:83 "@babel/types" "^7.18.6"8485"@babel/helper-module-imports@^7.18.6":86 version "7.18.6"87 resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e"88 integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==89 dependencies:90 "@babel/types" "^7.18.6"9192"@babel/helper-module-transforms@^7.19.6":93 version "7.19.6"94 resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.6.tgz#6c52cc3ac63b70952d33ee987cbee1c9368b533f"95 integrity sha512-fCmcfQo/KYr/VXXDIyd3CBGZ6AFhPFy1TfSEJ+PilGVlQT6jcbqtHAM4C1EciRqMza7/TpOUZliuSH+U6HAhJw==96 dependencies:97 "@babel/helper-environment-visitor" "^7.18.9"98 "@babel/helper-module-imports" "^7.18.6"99 "@babel/helper-simple-access" "^7.19.4"100 "@babel/helper-split-export-declaration" "^7.18.6"101 "@babel/helper-validator-identifier" "^7.19.1"102 "@babel/template" "^7.18.10"103 "@babel/traverse" "^7.19.6"104 "@babel/types" "^7.19.4"105106"@babel/helper-simple-access@^7.19.4":107 version "7.19.4"108 resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.19.4.tgz#be553f4951ac6352df2567f7daa19a0ee15668e7"109 integrity sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg==110 dependencies:111 "@babel/types" "^7.19.4"112113"@babel/helper-split-export-declaration@^7.18.6":114 version "7.18.6"115 resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"116 integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==117 dependencies:118 "@babel/types" "^7.18.6"119120"@babel/helper-string-parser@^7.19.4":121 version "7.19.4"122 resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63"123 integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==124125"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1":126 version "7.19.1"127 resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2"128 integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==129130"@babel/helper-validator-option@^7.18.6":131 version "7.18.6"132 resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8"133 integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==134135"@babel/helpers@^7.19.4":136 version "7.19.4"137 resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.19.4.tgz#42154945f87b8148df7203a25c31ba9a73be46c5"138 integrity sha512-G+z3aOx2nfDHwX/kyVii5fJq+bgscg89/dJNWpYeKeBv3v9xX8EIabmx1k6u9LS04H7nROFVRVK+e3k0VHp+sw==139 dependencies:140 "@babel/template" "^7.18.10"141 "@babel/traverse" "^7.19.4"142 "@babel/types" "^7.19.4"143144"@babel/highlight@^7.18.6":145 version "7.18.6"146 resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"147 integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==148 dependencies:149 "@babel/helper-validator-identifier" "^7.18.6"150 chalk "^2.0.0"151 js-tokens "^4.0.0"152153"@babel/parser@^7.18.10", "@babel/parser@^7.19.6":154 version "7.19.6"155 resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.6.tgz#b923430cb94f58a7eae8facbffa9efd19130e7f8"156 integrity sha512-h1IUp81s2JYJ3mRkdxJgs4UvmSsRvDrx5ICSJbPvtWYv5i1nTBGcBpnog+89rAFMwvvru6E5NUHdBe01UeSzYA==157158"@babel/register@^7.18.9":159 version "7.18.9"160 resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c"161 integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw==162 dependencies:163 clone-deep "^4.0.1"164 find-cache-dir "^2.0.0"165 make-dir "^2.1.0"166 pirates "^4.0.5"167 source-map-support "^0.5.16"168169"@babel/runtime@^7.18.9", "@babel/runtime@^7.19.4":170 version "7.19.4"171 resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.4.tgz#a42f814502ee467d55b38dd1c256f53a7b885c78"172 integrity sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==173 dependencies:174 regenerator-runtime "^0.13.4"175176"@babel/template@^7.18.10":177 version "7.18.10"178 resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71"179 integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==180 dependencies:181 "@babel/code-frame" "^7.18.6"182 "@babel/parser" "^7.18.10"183 "@babel/types" "^7.18.10"184185"@babel/traverse@^7.19.4", "@babel/traverse@^7.19.6":186 version "7.19.6"187 resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.6.tgz#7b4c865611df6d99cb131eec2e8ac71656a490dc"188 integrity sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ==189 dependencies:190 "@babel/code-frame" "^7.18.6"191 "@babel/generator" "^7.19.6"192 "@babel/helper-environment-visitor" "^7.18.9"193 "@babel/helper-function-name" "^7.19.0"194 "@babel/helper-hoist-variables" "^7.18.6"195 "@babel/helper-split-export-declaration" "^7.18.6"196 "@babel/parser" "^7.19.6"197 "@babel/types" "^7.19.4"198 debug "^4.1.0"199 globals "^11.1.0"200201"@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.19.4":202 version "7.19.4"203 resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.4.tgz#0dd5c91c573a202d600490a35b33246fed8a41c7"204 integrity sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==205 dependencies:206 "@babel/helper-string-parser" "^7.19.4"207 "@babel/helper-validator-identifier" "^7.19.1"208 to-fast-properties "^2.0.0"209210"@cspotcode/source-map-support@^0.8.0":211 version "0.8.1"212 resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"213 integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==214 dependencies:215 "@jridgewell/trace-mapping" "0.3.9"216217"@eslint/eslintrc@^1.3.3":218 version "1.3.3"219 resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.3.3.tgz#2b044ab39fdfa75b4688184f9e573ce3c5b0ff95"220 integrity sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==221 dependencies:222 ajv "^6.12.4"223 debug "^4.3.2"224 espree "^9.4.0"225 globals "^13.15.0"226 ignore "^5.2.0"227 import-fresh "^3.2.1"228 js-yaml "^4.1.0"229 minimatch "^3.1.2"230 strip-json-comments "^3.1.1"231232"@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.4":233 version "2.6.5"234 resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30"235 integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==236 dependencies:237 crc-32 "^1.2.0"238 ethereumjs-util "^7.1.5"239240"@ethereumjs/tx@^3.3.2":241 version "3.5.2"242 resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c"243 integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==244 dependencies:245 "@ethereumjs/common" "^2.6.4"246 ethereumjs-util "^7.1.5"247248"@ethersproject/abi@^5.6.3":249 version "5.7.0"250 resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449"251 integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==252 dependencies:253 "@ethersproject/address" "^5.7.0"254 "@ethersproject/bignumber" "^5.7.0"255 "@ethersproject/bytes" "^5.7.0"256 "@ethersproject/constants" "^5.7.0"257 "@ethersproject/hash" "^5.7.0"258 "@ethersproject/keccak256" "^5.7.0"259 "@ethersproject/logger" "^5.7.0"260 "@ethersproject/properties" "^5.7.0"261 "@ethersproject/strings" "^5.7.0"262263"@ethersproject/abstract-provider@^5.7.0":264 version "5.7.0"265 resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef"266 integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==267 dependencies:268 "@ethersproject/bignumber" "^5.7.0"269 "@ethersproject/bytes" "^5.7.0"270 "@ethersproject/logger" "^5.7.0"271 "@ethersproject/networks" "^5.7.0"272 "@ethersproject/properties" "^5.7.0"273 "@ethersproject/transactions" "^5.7.0"274 "@ethersproject/web" "^5.7.0"275276"@ethersproject/abstract-signer@^5.7.0":277 version "5.7.0"278 resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2"279 integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==280 dependencies:281 "@ethersproject/abstract-provider" "^5.7.0"282 "@ethersproject/bignumber" "^5.7.0"283 "@ethersproject/bytes" "^5.7.0"284 "@ethersproject/logger" "^5.7.0"285 "@ethersproject/properties" "^5.7.0"286287"@ethersproject/address@^5.7.0":288 version "5.7.0"289 resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37"290 integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==291 dependencies:292 "@ethersproject/bignumber" "^5.7.0"293 "@ethersproject/bytes" "^5.7.0"294 "@ethersproject/keccak256" "^5.7.0"295 "@ethersproject/logger" "^5.7.0"296 "@ethersproject/rlp" "^5.7.0"297298"@ethersproject/base64@^5.7.0":299 version "5.7.0"300 resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c"301 integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==302 dependencies:303 "@ethersproject/bytes" "^5.7.0"304305"@ethersproject/bignumber@^5.7.0":306 version "5.7.0"307 resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2"308 integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==309 dependencies:310 "@ethersproject/bytes" "^5.7.0"311 "@ethersproject/logger" "^5.7.0"312 bn.js "^5.2.1"313314"@ethersproject/bytes@^5.7.0":315 version "5.7.0"316 resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d"317 integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==318 dependencies:319 "@ethersproject/logger" "^5.7.0"320321"@ethersproject/constants@^5.7.0":322 version "5.7.0"323 resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e"324 integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==325 dependencies:326 "@ethersproject/bignumber" "^5.7.0"327328"@ethersproject/hash@^5.7.0":329 version "5.7.0"330 resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7"331 integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==332 dependencies:333 "@ethersproject/abstract-signer" "^5.7.0"334 "@ethersproject/address" "^5.7.0"335 "@ethersproject/base64" "^5.7.0"336 "@ethersproject/bignumber" "^5.7.0"337 "@ethersproject/bytes" "^5.7.0"338 "@ethersproject/keccak256" "^5.7.0"339 "@ethersproject/logger" "^5.7.0"340 "@ethersproject/properties" "^5.7.0"341 "@ethersproject/strings" "^5.7.0"342343"@ethersproject/keccak256@^5.7.0":344 version "5.7.0"345 resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a"346 integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==347 dependencies:348 "@ethersproject/bytes" "^5.7.0"349 js-sha3 "0.8.0"350351"@ethersproject/logger@^5.7.0":352 version "5.7.0"353 resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892"354 integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==355356"@ethersproject/networks@^5.7.0":357 version "5.7.1"358 resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6"359 integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==360 dependencies:361 "@ethersproject/logger" "^5.7.0"362363"@ethersproject/properties@^5.7.0":364 version "5.7.0"365 resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30"366 integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==367 dependencies:368 "@ethersproject/logger" "^5.7.0"369370"@ethersproject/rlp@^5.7.0":371 version "5.7.0"372 resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304"373 integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==374 dependencies:375 "@ethersproject/bytes" "^5.7.0"376 "@ethersproject/logger" "^5.7.0"377378"@ethersproject/signing-key@^5.7.0":379 version "5.7.0"380 resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3"381 integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==382 dependencies:383 "@ethersproject/bytes" "^5.7.0"384 "@ethersproject/logger" "^5.7.0"385 "@ethersproject/properties" "^5.7.0"386 bn.js "^5.2.1"387 elliptic "6.5.4"388 hash.js "1.1.7"389390"@ethersproject/strings@^5.7.0":391 version "5.7.0"392 resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2"393 integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==394 dependencies:395 "@ethersproject/bytes" "^5.7.0"396 "@ethersproject/constants" "^5.7.0"397 "@ethersproject/logger" "^5.7.0"398399"@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0":400 version "5.7.0"401 resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b"402 integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==403 dependencies:404 "@ethersproject/address" "^5.7.0"405 "@ethersproject/bignumber" "^5.7.0"406 "@ethersproject/bytes" "^5.7.0"407 "@ethersproject/constants" "^5.7.0"408 "@ethersproject/keccak256" "^5.7.0"409 "@ethersproject/logger" "^5.7.0"410 "@ethersproject/properties" "^5.7.0"411 "@ethersproject/rlp" "^5.7.0"412 "@ethersproject/signing-key" "^5.7.0"413414"@ethersproject/web@^5.7.0":415 version "5.7.1"416 resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae"417 integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==418 dependencies:419 "@ethersproject/base64" "^5.7.0"420 "@ethersproject/bytes" "^5.7.0"421 "@ethersproject/logger" "^5.7.0"422 "@ethersproject/properties" "^5.7.0"423 "@ethersproject/strings" "^5.7.0"424425"@humanwhocodes/config-array@^0.10.5":426 version "0.10.7"427 resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.10.7.tgz#6d53769fd0c222767e6452e8ebda825c22e9f0dc"428 integrity sha512-MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==429 dependencies:430 "@humanwhocodes/object-schema" "^1.2.1"431 debug "^4.1.1"432 minimatch "^3.0.4"433434"@humanwhocodes/module-importer@^1.0.1":435 version "1.0.1"436 resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"437 integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==438439"@humanwhocodes/object-schema@^1.2.1":440 version "1.2.1"441 resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"442 integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==443444"@jridgewell/gen-mapping@^0.1.0":445 version "0.1.1"446 resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"447 integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==448 dependencies:449 "@jridgewell/set-array" "^1.0.0"450 "@jridgewell/sourcemap-codec" "^1.4.10"451452"@jridgewell/gen-mapping@^0.3.2":453 version "0.3.2"454 resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9"455 integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==456 dependencies:457 "@jridgewell/set-array" "^1.0.1"458 "@jridgewell/sourcemap-codec" "^1.4.10"459 "@jridgewell/trace-mapping" "^0.3.9"460461"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3":462 version "3.1.0"463 resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"464 integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==465466"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1":467 version "1.1.2"468 resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"469 integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==470471"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10":472 version "1.4.14"473 resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"474 integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==475476"@jridgewell/trace-mapping@0.3.9":477 version "0.3.9"478 resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"479 integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==480 dependencies:481 "@jridgewell/resolve-uri" "^3.0.3"482 "@jridgewell/sourcemap-codec" "^1.4.10"483484"@jridgewell/trace-mapping@^0.3.9":485 version "0.3.17"486 resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985"487 integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==488 dependencies:489 "@jridgewell/resolve-uri" "3.1.0"490 "@jridgewell/sourcemap-codec" "1.4.14"491492"@noble/hashes@1.1.3":493 version "1.1.3"494 resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.1.3.tgz#360afc77610e0a61f3417e497dcf36862e4f8111"495 integrity sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A==496497"@noble/secp256k1@1.7.0":498 version "1.7.0"499 resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.0.tgz#d15357f7c227e751d90aa06b05a0e5cf993ba8c1"500 integrity sha512-kbacwGSsH/CTout0ZnZWxnW1B+jH/7r/WAAKLBtrRJ/+CUH7lgmQzl3GTrQua3SGKWNSDsS6lmjnDpIJ5Dxyaw==501502"@nodelib/fs.scandir@2.1.5":503 version "2.1.5"504 resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"505 integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==506 dependencies:507 "@nodelib/fs.stat" "2.0.5"508 run-parallel "^1.1.9"509510"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":511 version "2.0.5"512 resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"513 integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==514515"@nodelib/fs.walk@^1.2.3":516 version "1.2.8"517 resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"518 integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==519 dependencies:520 "@nodelib/fs.scandir" "2.1.5"521 fastq "^1.6.0"522523"@polkadot/api-augment@9.5.2":524 version "9.5.2"525 resolved "https://registry.yarnpkg.com/@polkadot/api-augment/-/api-augment-9.5.2.tgz#55168dd112517028fea5f2ab9c54ea627e43ac3a"526 integrity sha512-dH6QMY8Z3zI6CrgSU3eSe6f0KWDb5PYGztg/FXGPrjh7Vjic7syWZ1LD6zaHJAFWDp80BEdEXfqr4lConrCKGg==527 dependencies:528 "@babel/runtime" "^7.19.4"529 "@polkadot/api-base" "9.5.2"530 "@polkadot/rpc-augment" "9.5.2"531 "@polkadot/types" "9.5.2"532 "@polkadot/types-augment" "9.5.2"533 "@polkadot/types-codec" "9.5.2"534 "@polkadot/util" "^10.1.11"535536"@polkadot/api-base@9.5.2":537 version "9.5.2"538 resolved "https://registry.yarnpkg.com/@polkadot/api-base/-/api-base-9.5.2.tgz#ac0a6b5546a54bcc753ac55c9f033caa9f8b4e5c"539 integrity sha512-BBsH9SLB1FHgjdiU32cZX1puL3Eh8IjOJHjRsO/5SdttciQhF5g/u/m/mM/55qnlXmffI9s2Jre18G0XtVU9Aw==540 dependencies:541 "@babel/runtime" "^7.19.4"542 "@polkadot/rpc-core" "9.5.2"543 "@polkadot/types" "9.5.2"544 "@polkadot/util" "^10.1.11"545 rxjs "^7.5.7"546547"@polkadot/api-derive@9.5.2":548 version "9.5.2"549 resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-9.5.2.tgz#c0412cfc13fa71f93b315d126b12b5ab38e6438c"550 integrity sha512-kWn12dlqfIES1trNLd3O1i2qa4T97v/co1VMCgVstICwCt3+mGZgpxkMqQqPiWHagKEVeBNoAn+h8eOiQlbujA==551 dependencies:552 "@babel/runtime" "^7.19.4"553 "@polkadot/api" "9.5.2"554 "@polkadot/api-augment" "9.5.2"555 "@polkadot/api-base" "9.5.2"556 "@polkadot/rpc-core" "9.5.2"557 "@polkadot/types" "9.5.2"558 "@polkadot/types-codec" "9.5.2"559 "@polkadot/util" "^10.1.11"560 "@polkadot/util-crypto" "^10.1.11"561 rxjs "^7.5.7"562563"@polkadot/api@9.5.2":564 version "9.5.2"565 resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-9.5.2.tgz#cef83928e47c393fbebf2788bc86841b6ab37a41"566 integrity sha512-iEF/E8vQan3fHmIEl3bX7Yn/1jQLlvSDwPOxiQdj4tIcF36HX6vCbkdhQKRif0CNYES58TA9EKFiCNg81k+kXw==567 dependencies:568 "@babel/runtime" "^7.19.4"569 "@polkadot/api-augment" "9.5.2"570 "@polkadot/api-base" "9.5.2"571 "@polkadot/api-derive" "9.5.2"572 "@polkadot/keyring" "^10.1.11"573 "@polkadot/rpc-augment" "9.5.2"574 "@polkadot/rpc-core" "9.5.2"575 "@polkadot/rpc-provider" "9.5.2"576 "@polkadot/types" "9.5.2"577 "@polkadot/types-augment" "9.5.2"578 "@polkadot/types-codec" "9.5.2"579 "@polkadot/types-create" "9.5.2"580 "@polkadot/types-known" "9.5.2"581 "@polkadot/util" "^10.1.11"582 "@polkadot/util-crypto" "^10.1.11"583 eventemitter3 "^4.0.7"584 rxjs "^7.5.7"585586"@polkadot/keyring@^10.1.11":587 version "10.1.11"588 resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-10.1.11.tgz#a3fed011b0c8826ea2097e04f7189e9be66fbf98"589 integrity sha512-Nv8cZaOA/KbdslDMTklJ58+y+UPpic3+oMQoozuq48Ccjv7WeW2BX47XM/RNE8nYFg6EHa6Whfm4IFaFb8s7ag==590 dependencies:591 "@babel/runtime" "^7.19.4"592 "@polkadot/util" "10.1.11"593 "@polkadot/util-crypto" "10.1.11"594595"@polkadot/networks@10.1.11", "@polkadot/networks@^10.1.11":596 version "10.1.11"597 resolved "https://registry.yarnpkg.com/@polkadot/networks/-/networks-10.1.11.tgz#96a5d6c80228f4beada9154cca0f60a63198e7f4"598 integrity sha512-4FfOVETXwh6PL6wd6fYJMkRSQKm+xUw3vR5rHqcAnB696FpMFPPErc6asgZ9lYMyzNJRY3yG86HQpFhtCv1nGA==599 dependencies:600 "@babel/runtime" "^7.19.4"601 "@polkadot/util" "10.1.11"602 "@substrate/ss58-registry" "^1.33.0"603604"@polkadot/rpc-augment@9.5.2":605 version "9.5.2"606 resolved "https://registry.yarnpkg.com/@polkadot/rpc-augment/-/rpc-augment-9.5.2.tgz#739cc3ed2f86f4318432e38381a2cc780dc64f1e"607 integrity sha512-QAcunC7p/T4xy6e4m0Q1c9tiVYxnm+S9o10tmtx0K4qXzrc/4I2/tsw3nEGi3BzJhvMpFondSQGcJ3gyLwpmVA==608 dependencies:609 "@babel/runtime" "^7.19.4"610 "@polkadot/rpc-core" "9.5.2"611 "@polkadot/types" "9.5.2"612 "@polkadot/types-codec" "9.5.2"613 "@polkadot/util" "^10.1.11"614615"@polkadot/rpc-core@9.5.2":616 version "9.5.2"617 resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-9.5.2.tgz#1a00868038b6c07fe8f58bd0a6cc9519d14001cc"618 integrity sha512-4PbNz0GEp3FXYOnsS7mDHZy9DNVBOl56fq8vs09rLkEkrrvGkHmCvabEEWL7OPbwBzwzsCxdgI+IdkVTUKXPkQ==619 dependencies:620 "@babel/runtime" "^7.19.4"621 "@polkadot/rpc-augment" "9.5.2"622 "@polkadot/rpc-provider" "9.5.2"623 "@polkadot/types" "9.5.2"624 "@polkadot/util" "^10.1.11"625 rxjs "^7.5.7"626627"@polkadot/rpc-provider@9.5.2":628 version "9.5.2"629 resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-9.5.2.tgz#3e38ea4c3639180f12270b6fe8cbcabf728aaf1d"630 integrity sha512-Sn2jfvAsvQcl35o0up8JR/XbDMS/3YVDEN2sFuzXtiD77W2njukItbZT+BolfAW+biAUs3bNomump5k/YLiLKg==631 dependencies:632 "@babel/runtime" "^7.19.4"633 "@polkadot/keyring" "^10.1.11"634 "@polkadot/types" "9.5.2"635 "@polkadot/types-support" "9.5.2"636 "@polkadot/util" "^10.1.11"637 "@polkadot/util-crypto" "^10.1.11"638 "@polkadot/x-fetch" "^10.1.11"639 "@polkadot/x-global" "^10.1.11"640 "@polkadot/x-ws" "^10.1.11"641 "@substrate/connect" "0.7.14"642 eventemitter3 "^4.0.7"643 mock-socket "^9.1.5"644 nock "^13.2.9"645646"@polkadot/typegen@9.5.2":647 version "9.5.2"648 resolved "https://registry.yarnpkg.com/@polkadot/typegen/-/typegen-9.5.2.tgz#b4f3b5eca69c70cc496c8cd3b7804df32282c336"649 integrity sha512-DIiicI3VzbqkfjthvHhLYCaElkaKB/qM+P0mGDmb3+NgttJQsH2Sqy/zsT/mjr07hAB1gXf4dhCmj0QQBiR1og==650 dependencies:651 "@babel/core" "^7.19.3"652 "@babel/register" "^7.18.9"653 "@babel/runtime" "^7.19.4"654 "@polkadot/api" "9.5.2"655 "@polkadot/api-augment" "9.5.2"656 "@polkadot/rpc-augment" "9.5.2"657 "@polkadot/rpc-provider" "9.5.2"658 "@polkadot/types" "9.5.2"659 "@polkadot/types-augment" "9.5.2"660 "@polkadot/types-codec" "9.5.2"661 "@polkadot/types-create" "9.5.2"662 "@polkadot/types-support" "9.5.2"663 "@polkadot/util" "^10.1.11"664 "@polkadot/util-crypto" "^10.1.11"665 "@polkadot/x-ws" "^10.1.11"666 handlebars "^4.7.7"667 websocket "^1.0.34"668 yargs "^17.6.0"669670"@polkadot/types-augment@9.5.2":671 version "9.5.2"672 resolved "https://registry.yarnpkg.com/@polkadot/types-augment/-/types-augment-9.5.2.tgz#d9e77756b0e36455d708f5af8265ef011ddf8d91"673 integrity sha512-LDJdv/84sECwA0R5lK85/orxjoozJe3+2jeLjRiKr8S6qm9XRfz0wLCSF866kpSGBZ4B1dYBUhzjoSu95y2Jug==674 dependencies:675 "@babel/runtime" "^7.19.4"676 "@polkadot/types" "9.5.2"677 "@polkadot/types-codec" "9.5.2"678 "@polkadot/util" "^10.1.11"679680"@polkadot/types-codec@9.5.2":681 version "9.5.2"682 resolved "https://registry.yarnpkg.com/@polkadot/types-codec/-/types-codec-9.5.2.tgz#345c38ccef17651b8cabd159a42810893b5e7e44"683 integrity sha512-FJPjE3ceTGTcadeC8d5C+aSR8SLKuQrXKIBmMNBky+WwzEo0vufRqxFWcPLxAOEeeUPgBXS967tP15+UU4psGA==684 dependencies:685 "@babel/runtime" "^7.19.4"686 "@polkadot/util" "^10.1.11"687 "@polkadot/x-bigint" "^10.1.11"688689"@polkadot/types-create@9.5.2":690 version "9.5.2"691 resolved "https://registry.yarnpkg.com/@polkadot/types-create/-/types-create-9.5.2.tgz#a85dcb794ea11e5d528baa34b65e57cfafc905cf"692 integrity sha512-YbplL8K0LqUEHoV3FgZ5B83oVV67KGbLXsWHVVaUZBPsmtXJXrbBfSyJgl/80I2n4lXEBmg3sFAYMbaSTvL05A==693 dependencies:694 "@babel/runtime" "^7.19.4"695 "@polkadot/types-codec" "9.5.2"696 "@polkadot/util" "^10.1.11"697698"@polkadot/types-known@9.5.2":699 version "9.5.2"700 resolved "https://registry.yarnpkg.com/@polkadot/types-known/-/types-known-9.5.2.tgz#a71fd08932b1643bbf346321472ed48ab1ade215"701 integrity sha512-iNaGOF6dGiTvy3Ns8Z7WNjYD1SGnZiapDAKPH4brPuJqMpN6/FxYpfPSSOKx+IJEamsdINcaggb87eWyPxH8CA==702 dependencies:703 "@babel/runtime" "^7.19.4"704 "@polkadot/networks" "^10.1.11"705 "@polkadot/types" "9.5.2"706 "@polkadot/types-codec" "9.5.2"707 "@polkadot/types-create" "9.5.2"708 "@polkadot/util" "^10.1.11"709710"@polkadot/types-support@9.5.2":711 version "9.5.2"712 resolved "https://registry.yarnpkg.com/@polkadot/types-support/-/types-support-9.5.2.tgz#f2990d19cbd78c24e5b7116466fb1d89f93a8ca7"713 integrity sha512-Zdbl5fvGQjUkyE1r67vhyPEqLUwlZ35GCnkoobY9MgN6gylhSjNue/shpG4uGsEjWVQL7GkFkrPiwtzDArVilg==714 dependencies:715 "@babel/runtime" "^7.19.4"716 "@polkadot/util" "^10.1.11"717718"@polkadot/types@9.5.2":719 version "9.5.2"720 resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-9.5.2.tgz#33ab2caea08f084141a01038adbe53ed69ab7d9c"721 integrity sha512-6C5xzOrMK+fu0JMOlSO+8dPDhpwKPOaKMv3v5BMvBEWtDNKM81/QQoAoYT7DSVXq/V16icSFxPs9IWC+6Qq5ag==722 dependencies:723 "@babel/runtime" "^7.19.4"724 "@polkadot/keyring" "^10.1.11"725 "@polkadot/types-augment" "9.5.2"726 "@polkadot/types-codec" "9.5.2"727 "@polkadot/types-create" "9.5.2"728 "@polkadot/util" "^10.1.11"729 "@polkadot/util-crypto" "^10.1.11"730 rxjs "^7.5.7"731732"@polkadot/util-crypto@10.1.11", "@polkadot/util-crypto@^10.1.11":733 version "10.1.11"734 resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-10.1.11.tgz#e59bdc8e1e2bd98a115e2e2ed45461e68a14a48c"735 integrity sha512-wG63frIMAR5T/HXGM0SFNzZZdk7qDBsfLXfn6PIZiXCCCsdEYPzS5WltB7fkhicYpbePJ7VgdCAddj1l4IcGyg==736 dependencies:737 "@babel/runtime" "^7.19.4"738 "@noble/hashes" "1.1.3"739 "@noble/secp256k1" "1.7.0"740 "@polkadot/networks" "10.1.11"741 "@polkadot/util" "10.1.11"742 "@polkadot/wasm-crypto" "^6.3.1"743 "@polkadot/x-bigint" "10.1.11"744 "@polkadot/x-randomvalues" "10.1.11"745 "@scure/base" "1.1.1"746 ed2curve "^0.3.0"747 tweetnacl "^1.0.3"748749"@polkadot/util@10.1.11", "@polkadot/util@^10.1.11":750 version "10.1.11"751 resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-10.1.11.tgz#22bcdabbd7a0d266417f6569cc655f516d371a82"752 integrity sha512-6m51lw6g6ilqO/k4BQY7rD0lYM9NCnC4FiM7CEEUc7j8q86qxdcZ88zdNldkhNsTIQnfmCtkK3GRzZW6VYrbUw==753 dependencies:754 "@babel/runtime" "^7.19.4"755 "@polkadot/x-bigint" "10.1.11"756 "@polkadot/x-global" "10.1.11"757 "@polkadot/x-textdecoder" "10.1.11"758 "@polkadot/x-textencoder" "10.1.11"759 "@types/bn.js" "^5.1.1"760 bn.js "^5.2.1"761762"@polkadot/wasm-bridge@6.3.1":763 version "6.3.1"764 resolved "https://registry.yarnpkg.com/@polkadot/wasm-bridge/-/wasm-bridge-6.3.1.tgz#439fa78e80947a7cb695443e1f64b25c30bb1487"765 integrity sha512-1TYkHsb9AEFhU9uZj3biEnN2yKQNzdrwSjiTvfCYnt97pnEkKsZI6cku+YPZQv5w/x9CQa5Yua9e2DVVZSivGA==766 dependencies:767 "@babel/runtime" "^7.18.9"768769"@polkadot/wasm-crypto-asmjs@6.3.1":770 version "6.3.1"771 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-6.3.1.tgz#e8f469c9cf4a7709c8131a96f857291953f3e30a"772 integrity sha512-zbombRfA5v/mUWQQhgg2YwaxhRmxRIrvskw65x+lruax3b6xPBFDs7yplopiJU3r8h2pTgQvX/DUksvqz2TCRQ==773 dependencies:774 "@babel/runtime" "^7.18.9"775776"@polkadot/wasm-crypto-init@6.3.1":777 version "6.3.1"778 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-init/-/wasm-crypto-init-6.3.1.tgz#b590220c53c94b9a54d5dc236d0cbe943db76706"779 integrity sha512-9yaUBcu+snwjJLmPPGl3cyGRQ1afyFGm16qzTM0sgG/ZCfUlK4uk8KWZe+sBUKgoxb2oXY7Y4WklKgQI1YBdfw==780 dependencies:781 "@babel/runtime" "^7.18.9"782 "@polkadot/wasm-bridge" "6.3.1"783 "@polkadot/wasm-crypto-asmjs" "6.3.1"784 "@polkadot/wasm-crypto-wasm" "6.3.1"785786"@polkadot/wasm-crypto-wasm@6.3.1":787 version "6.3.1"788 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-6.3.1.tgz#67f720e7f9694fef096abe9d60abbac02e032383"789 integrity sha512-idSlzKGVzCfeCMRHsacRvqwojSaTadFxL/Dbls4z1thvfa3U9Ku0d2qVtlwg7Hj+tYWDiuP8Kygs+6bQwfs0XA==790 dependencies:791 "@babel/runtime" "^7.18.9"792 "@polkadot/wasm-util" "6.3.1"793794"@polkadot/wasm-crypto@^6.3.1":795 version "6.3.1"796 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto/-/wasm-crypto-6.3.1.tgz#63f5798aca2b2ff0696f190e6862d9781d8f280c"797 integrity sha512-OO8h0qeVkqp4xYZaRVl4iuWOEtq282pNBHDKb6SOJuI2g59eWGcKh4EQU9Me2VP6qzojIqptrkrVt7KQXC68gA==798 dependencies:799 "@babel/runtime" "^7.18.9"800 "@polkadot/wasm-bridge" "6.3.1"801 "@polkadot/wasm-crypto-asmjs" "6.3.1"802 "@polkadot/wasm-crypto-init" "6.3.1"803 "@polkadot/wasm-crypto-wasm" "6.3.1"804 "@polkadot/wasm-util" "6.3.1"805806"@polkadot/wasm-util@6.3.1":807 version "6.3.1"808 resolved "https://registry.yarnpkg.com/@polkadot/wasm-util/-/wasm-util-6.3.1.tgz#439ebb68a436317af388ed6438b8f879df3afcda"809 integrity sha512-12oAv5J7Yoc9m6jixrSaQCxpOkWOyzHx3DMC8qmLjRiwdBWxqLmImOVRVnFsbaxqSbhBIHRuJphVxWE+GZETDg==810 dependencies:811 "@babel/runtime" "^7.18.9"812813"@polkadot/x-bigint@10.1.11", "@polkadot/x-bigint@^10.1.11":814 version "10.1.11"815 resolved "https://registry.yarnpkg.com/@polkadot/x-bigint/-/x-bigint-10.1.11.tgz#7d62ce10cccd55b86a415342db95b9feeb099776"816 integrity sha512-TC4KZ+ni/SJhcf/LIwD49C/kwvACu0nCchETNO+sAfJ7COXZwHDUJXVXmwN5PgkQxwsWsKKuJmzR/Fi1bgMWnQ==817 dependencies:818 "@babel/runtime" "^7.19.4"819 "@polkadot/x-global" "10.1.11"820821"@polkadot/x-fetch@^10.1.11":822 version "10.1.11"823 resolved "https://registry.yarnpkg.com/@polkadot/x-fetch/-/x-fetch-10.1.11.tgz#8f579bb166096c977acff91a40b3848fb5581900"824 integrity sha512-WtyUr9itVD9BLnxCUloJ1iwrXOY/lnlEShEYKHcSm6MIHtbJolePd3v1+o5mOX+bdDbHXhPZnH8anCCqDNDRqg==825 dependencies:826 "@babel/runtime" "^7.19.4"827 "@polkadot/x-global" "10.1.11"828 "@types/node-fetch" "^2.6.2"829 node-fetch "^3.2.10"830831"@polkadot/x-global@10.1.11", "@polkadot/x-global@^10.1.11":832 version "10.1.11"833 resolved "https://registry.yarnpkg.com/@polkadot/x-global/-/x-global-10.1.11.tgz#37dda3ef1cebfd14c68c69279ae6521957817866"834 integrity sha512-bWz5gdcELy6+xfr27R1GE5MPX4nfVlchzHQH+DR6OBbSi9g/PeycQAvFB6IkTmP+YEbNNtIpxnSP37zoUaG3xw==835 dependencies:836 "@babel/runtime" "^7.19.4"837838"@polkadot/x-randomvalues@10.1.11":839 version "10.1.11"840 resolved "https://registry.yarnpkg.com/@polkadot/x-randomvalues/-/x-randomvalues-10.1.11.tgz#f9e088f8b400770d3e53ba9e0c0f0d464047f89e"841 integrity sha512-V2V37f5hoM5B32eCpGw87Lwstin2+ArXhOZ8ENKncbQLXzbF9yTODueDoA5Vt0MJCs2CDP9cyiCYykcanqVkxg==842 dependencies:843 "@babel/runtime" "^7.19.4"844 "@polkadot/x-global" "10.1.11"845846"@polkadot/x-textdecoder@10.1.11":847 version "10.1.11"848 resolved "https://registry.yarnpkg.com/@polkadot/x-textdecoder/-/x-textdecoder-10.1.11.tgz#314c79e27545a41fe0494a26196bf2dff5cfcb5d"849 integrity sha512-QZqie04SR6pAj260PaLBfZUGXWKI357t4ROVJhpaj06qc1zrk1V8Mwkr49+WzjAPFEOqo70HWnzXmPNCH4dQiw==850 dependencies:851 "@babel/runtime" "^7.19.4"852 "@polkadot/x-global" "10.1.11"853854"@polkadot/x-textencoder@10.1.11":855 version "10.1.11"856 resolved "https://registry.yarnpkg.com/@polkadot/x-textencoder/-/x-textencoder-10.1.11.tgz#23b18b3ffbc649572728aa37d7787432bb3a03b5"857 integrity sha512-UX+uV9AbDID81waaG/NvTkkf7ZNVW7HSHaddgbWjQEVW2Ex4ByccBarY5jEi6cErEPKfzCamKhgXflu0aV9LWw==858 dependencies:859 "@babel/runtime" "^7.19.4"860 "@polkadot/x-global" "10.1.11"861862"@polkadot/x-ws@^10.1.11":863 version "10.1.11"864 resolved "https://registry.yarnpkg.com/@polkadot/x-ws/-/x-ws-10.1.11.tgz#7431ad72064d56519d4293278f03ae97b9ea9271"865 integrity sha512-EUbL/R1A/NxYf6Rnb1M7U9yeTuo5r4y2vcQllE5aBLaQ0cFnRykHzlmZlVX1E7O5uy3lYVdxWC7sNgxItIWkWA==866 dependencies:867 "@babel/runtime" "^7.19.4"868 "@polkadot/x-global" "10.1.11"869 "@types/websocket" "^1.0.5"870 websocket "^1.0.34"871872"@scure/base@1.1.1":873 version "1.1.1"874 resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.1.tgz#ebb651ee52ff84f420097055f4bf46cfba403938"875 integrity sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==876877"@sindresorhus/is@^4.0.0", "@sindresorhus/is@^4.6.0":878 version "4.6.0"879 resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"880 integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==881882"@substrate/connect-extension-protocol@^1.0.1":883 version "1.0.1"884 resolved "https://registry.yarnpkg.com/@substrate/connect-extension-protocol/-/connect-extension-protocol-1.0.1.tgz#fa5738039586c648013caa6a0c95c43265dbe77d"885 integrity sha512-161JhCC1csjH3GE5mPLEd7HbWtwNSPJBg3p1Ksz9SFlTzj/bgEwudiRN2y5i0MoLGCIJRYKyKGMxVnd29PzNjg==886887"@substrate/connect@0.7.14":888 version "0.7.14"889 resolved "https://registry.yarnpkg.com/@substrate/connect/-/connect-0.7.14.tgz#c090e952e9cdd93185a94d24fbc424ea20fe7bbe"890 integrity sha512-uW5uBmihpivshmmmw+rsg7qOV0KqVSep4rWOXFMP8aFQinvmqw4JqxP21og4H/7JZxttYUBFQVsdtXHGKJ0aVQ==891 dependencies:892 "@substrate/connect-extension-protocol" "^1.0.1"893 "@substrate/smoldot-light" "0.6.34"894 eventemitter3 "^4.0.7"895896"@substrate/smoldot-light@0.6.34":897 version "0.6.34"898 resolved "https://registry.yarnpkg.com/@substrate/smoldot-light/-/smoldot-light-0.6.34.tgz#273dba622102281fd0fdb0e375198bff2ec584c3"899 integrity sha512-+HK9MaJ0HelJmpf4YYR+salJ7dhVBltmhGlyz5l8OXS9DW18fe0Z2wxEo8P5kX9CUxlCXEb8J9JBRQAYBPHbwQ==900 dependencies:901 pako "^2.0.4"902 ws "^8.8.1"903904"@substrate/ss58-registry@^1.33.0":905 version "1.33.0"906 resolved "https://registry.yarnpkg.com/@substrate/ss58-registry/-/ss58-registry-1.33.0.tgz#b93218fc86405769716b02f0ce5e61df221b37ae"907 integrity sha512-DztMuMcEfu+tJrtIQIIp5gO8/XJZ8N8UwPObDCSNgrp7trtSkPJAUFB9qXaReXtN9UvTcVBMTWk6VPfFi04Wkg==908909"@szmarczak/http-timer@^4.0.5":910 version "4.0.6"911 resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"912 integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==913 dependencies:914 defer-to-connect "^2.0.0"915916"@szmarczak/http-timer@^5.0.1":917 version "5.0.1"918 resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a"919 integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==920 dependencies:921 defer-to-connect "^2.0.1"922923"@tsconfig/node10@^1.0.7":924 version "1.0.9"925 resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2"926 integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==927928"@tsconfig/node12@^1.0.7":929 version "1.0.11"930 resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d"931 integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==932933"@tsconfig/node14@^1.0.0":934 version "1.0.3"935 resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1"936 integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==937938"@tsconfig/node16@^1.0.2":939 version "1.0.3"940 resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e"941 integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==942943"@types/bn.js@^5.1.0", "@types/bn.js@^5.1.1":944 version "5.1.1"945 resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.1.tgz#b51e1b55920a4ca26e9285ff79936bbdec910682"946 integrity sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==947 dependencies:948 "@types/node" "*"949950"@types/cacheable-request@^6.0.1", "@types/cacheable-request@^6.0.2":951 version "6.0.2"952 resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9"953 integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==954 dependencies:955 "@types/http-cache-semantics" "*"956 "@types/keyv" "*"957 "@types/node" "*"958 "@types/responselike" "*"959960"@types/chai-as-promised@^7.1.5":961 version "7.1.5"962 resolved "https://registry.yarnpkg.com/@types/chai-as-promised/-/chai-as-promised-7.1.5.tgz#6e016811f6c7a64f2eed823191c3a6955094e255"963 integrity sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==964 dependencies:965 "@types/chai" "*"966967"@types/chai-like@^1.1.1":968 version "1.1.1"969 resolved "https://registry.yarnpkg.com/@types/chai-like/-/chai-like-1.1.1.tgz#c454039b0a2f92664fb5b7b7a2a66c3358783ae7"970 integrity sha512-s46EZsupBuVhLn66DbRee5B0SELLmL4nFXVrBiV29BxLGm9Sh7Bful623j3AfiQRu2zAP4cnlZ3ETWB3eWc4bA==971 dependencies:972 "@types/chai" "*"973974"@types/chai@*", "@types/chai@^4.3.3":975 version "4.3.3"976 resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.3.tgz#3c90752792660c4b562ad73b3fbd68bf3bc7ae07"977 integrity sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g==978979"@types/http-cache-semantics@*":980 version "4.0.1"981 resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812"982 integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==983984"@types/json-schema@^7.0.9":985 version "7.0.11"986 resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3"987 integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==988989"@types/keyv@*":990 version "4.2.0"991 resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-4.2.0.tgz#65b97868ab757906f2dbb653590d7167ad023fa0"992 integrity sha512-xoBtGl5R9jeKUhc8ZqeYaRDx04qqJ10yhhXYGmJ4Jr8qKpvMsDQQrNUvF/wUJ4klOtmJeJM+p2Xo3zp9uaC3tw==993 dependencies:994 keyv "*"995996"@types/mocha@^10.0.0":997 version "10.0.0"998 resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.0.tgz#3d9018c575f0e3f7386c1de80ee66cc21fbb7a52"999 integrity sha512-rADY+HtTOA52l9VZWtgQfn4p+UDVM2eDVkMZT1I6syp0YKxW2F9v+0pbRZLsvskhQv/vMb6ZfCay81GHbz5SHg==10001001"@types/node-fetch@^2.6.2":1002 version "2.6.2"1003 resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da"1004 integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==1005 dependencies:1006 "@types/node" "*"1007 form-data "^3.0.0"10081009"@types/node@*", "@types/node@^18.11.2":1010 version "18.11.2"1011 resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.2.tgz#c59b7641832531264fda3f1ba610362dc9a7dfc8"1012 integrity sha512-BWN3M23gLO2jVG8g/XHIRFWiiV4/GckeFIqbU/C4V3xpoBBWSMk4OZomouN0wCkfQFPqgZikyLr7DOYDysIkkw==10131014"@types/node@^12.12.6":1015 version "12.20.55"1016 resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"1017 integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==10181019"@types/pbkdf2@^3.0.0":1020 version "3.1.0"1021 resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.0.tgz#039a0e9b67da0cdc4ee5dab865caa6b267bb66b1"1022 integrity sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==1023 dependencies:1024 "@types/node" "*"10251026"@types/responselike@*", "@types/responselike@^1.0.0":1027 version "1.0.0"1028 resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"1029 integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==1030 dependencies:1031 "@types/node" "*"10321033"@types/secp256k1@^4.0.1":1034 version "4.0.3"1035 resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.3.tgz#1b8e55d8e00f08ee7220b4d59a6abe89c37a901c"1036 integrity sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==1037 dependencies:1038 "@types/node" "*"10391040"@types/semver@^7.3.12":1041 version "7.3.12"1042 resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.12.tgz#920447fdd78d76b19de0438b7f60df3c4a80bf1c"1043 integrity sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A==10441045"@types/websocket@^1.0.5":1046 version "1.0.5"1047 resolved "https://registry.yarnpkg.com/@types/websocket/-/websocket-1.0.5.tgz#3fb80ed8e07f88e51961211cd3682a3a4a81569c"1048 integrity sha512-NbsqiNX9CnEfC1Z0Vf4mE1SgAJ07JnRYcNex7AJ9zAVzmiGHmjKFEk7O4TJIsgv2B1sLEb6owKFZrACwdYngsQ==1049 dependencies:1050 "@types/node" "*"10511052"@typescript-eslint/eslint-plugin@^5.40.1":1053 version "5.40.1"1054 resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.1.tgz#3203a6ff396b1194083faaa6e5110c401201d7d5"1055 integrity sha512-FsWboKkWdytGiXT5O1/R9j37YgcjO8MKHSUmWnIEjVaz0krHkplPnYi7mwdb+5+cs0toFNQb0HIrN7zONdIEWg==1056 dependencies:1057 "@typescript-eslint/scope-manager" "5.40.1"1058 "@typescript-eslint/type-utils" "5.40.1"1059 "@typescript-eslint/utils" "5.40.1"1060 debug "^4.3.4"1061 ignore "^5.2.0"1062 regexpp "^3.2.0"1063 semver "^7.3.7"1064 tsutils "^3.21.0"10651066"@typescript-eslint/parser@^5.40.1":1067 version "5.40.1"1068 resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.40.1.tgz#e7f8295dd8154d0d37d661ddd8e2f0ecfdee28dd"1069 integrity sha512-IK6x55va5w4YvXd4b3VrXQPldV9vQTxi5ov+g4pMANsXPTXOcfjx08CRR1Dfrcc51syPtXHF5bgLlMHYFrvQtg==1070 dependencies:1071 "@typescript-eslint/scope-manager" "5.40.1"1072 "@typescript-eslint/types" "5.40.1"1073 "@typescript-eslint/typescript-estree" "5.40.1"1074 debug "^4.3.4"10751076"@typescript-eslint/scope-manager@5.40.1":1077 version "5.40.1"1078 resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.40.1.tgz#a7a5197dfd234622a2421ea590ee0ccc02e18dfe"1079 integrity sha512-jkn4xsJiUQucI16OLCXrLRXDZ3afKhOIqXs4R3O+M00hdQLKR58WuyXPZZjhKLFCEP2g+TXdBRtLQ33UfAdRUg==1080 dependencies:1081 "@typescript-eslint/types" "5.40.1"1082 "@typescript-eslint/visitor-keys" "5.40.1"10831084"@typescript-eslint/type-utils@5.40.1":1085 version "5.40.1"1086 resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.40.1.tgz#091e4ce3bebbdb68f4980bae9dee2e4e1725f601"1087 integrity sha512-DLAs+AHQOe6n5LRraXiv27IYPhleF0ldEmx6yBqBgBLaNRKTkffhV1RPsjoJBhVup2zHxfaRtan8/YRBgYhU9Q==1088 dependencies:1089 "@typescript-eslint/typescript-estree" "5.40.1"1090 "@typescript-eslint/utils" "5.40.1"1091 debug "^4.3.4"1092 tsutils "^3.21.0"10931094"@typescript-eslint/types@5.40.1":1095 version "5.40.1"1096 resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.40.1.tgz#de37f4f64de731ee454bb2085d71030aa832f749"1097 integrity sha512-Icg9kiuVJSwdzSQvtdGspOlWNjVDnF3qVIKXdJ103o36yRprdl3Ge5cABQx+csx960nuMF21v8qvO31v9t3OHw==10981099"@typescript-eslint/typescript-estree@5.40.1":1100 version "5.40.1"1101 resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.1.tgz#9a7d25492f02c69882ce5e0cd1857b0c55645d72"1102 integrity sha512-5QTP/nW5+60jBcEPfXy/EZL01qrl9GZtbgDZtDPlfW5zj/zjNrdI2B5zMUHmOsfvOr2cWqwVdWjobCiHcedmQA==1103 dependencies:1104 "@typescript-eslint/types" "5.40.1"1105 "@typescript-eslint/visitor-keys" "5.40.1"1106 debug "^4.3.4"1107 globby "^11.1.0"1108 is-glob "^4.0.3"1109 semver "^7.3.7"1110 tsutils "^3.21.0"11111112"@typescript-eslint/utils@5.40.1":1113 version "5.40.1"1114 resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.40.1.tgz#3204fb73a559d3b7bab7dc9d3c44487c2734a9ca"1115 integrity sha512-a2TAVScoX9fjryNrW6BZRnreDUszxqm9eQ9Esv8n5nXApMW0zeANUYlwh/DED04SC/ifuBvXgZpIK5xeJHQ3aw==1116 dependencies:1117 "@types/json-schema" "^7.0.9"1118 "@types/semver" "^7.3.12"1119 "@typescript-eslint/scope-manager" "5.40.1"1120 "@typescript-eslint/types" "5.40.1"1121 "@typescript-eslint/typescript-estree" "5.40.1"1122 eslint-scope "^5.1.1"1123 eslint-utils "^3.0.0"1124 semver "^7.3.7"11251126"@typescript-eslint/visitor-keys@5.40.1":1127 version "5.40.1"1128 resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.1.tgz#f3d2bf5af192f4432b84cec6fdcb387193518754"1129 integrity sha512-A2DGmeZ+FMja0geX5rww+DpvILpwo1OsiQs0M+joPWJYsiEFBLsH0y1oFymPNul6Z5okSmHpP4ivkc2N0Cgfkw==1130 dependencies:1131 "@typescript-eslint/types" "5.40.1"1132 eslint-visitor-keys "^3.3.0"11331134abortcontroller-polyfill@^1.7.3:1135 version "1.7.5"1136 resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz#6738495f4e901fbb57b6c0611d0c75f76c485bed"1137 integrity sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==11381139accepts@~1.3.8:1140 version "1.3.8"1141 resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"1142 integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==1143 dependencies:1144 mime-types "~2.1.34"1145 negotiator "0.6.3"11461147acorn-jsx@^5.3.2:1148 version "5.3.2"1149 resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"1150 integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==11511152acorn-walk@^8.1.1:1153 version "8.2.0"1154 resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"1155 integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==11561157acorn@^8.4.1, acorn@^8.8.0:1158 version "8.8.0"1159 resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"1160 integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==11611162ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4:1163 version "6.12.6"1164 resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"1165 integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==1166 dependencies:1167 fast-deep-equal "^3.1.1"1168 fast-json-stable-stringify "^2.0.0"1169 json-schema-traverse "^0.4.1"1170 uri-js "^4.2.2"11711172ansi-colors@4.1.1:1173 version "4.1.1"1174 resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"1175 integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==11761177ansi-regex@^5.0.1:1178 version "5.0.1"1179 resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"1180 integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==11811182ansi-styles@^3.2.1:1183 version "3.2.1"1184 resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"1185 integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==1186 dependencies:1187 color-convert "^1.9.0"11881189ansi-styles@^4.0.0, ansi-styles@^4.1.0:1190 version "4.3.0"1191 resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"1192 integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==1193 dependencies:1194 color-convert "^2.0.1"11951196anymatch@~3.1.2:1197 version "3.1.2"1198 resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"1199 integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==1200 dependencies:1201 normalize-path "^3.0.0"1202 picomatch "^2.0.4"12031204arg@^4.1.0:1205 version "4.1.3"1206 resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"1207 integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==12081209argparse@^2.0.1:1210 version "2.0.1"1211 resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"1212 integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==12131214array-flatten@1.1.1:1215 version "1.1.1"1216 resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"1217 integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==12181219array-union@^2.1.0:1220 version "2.1.0"1221 resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"1222 integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==12231224asn1.js@^5.2.0:1225 version "5.4.1"1226 resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"1227 integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==1228 dependencies:1229 bn.js "^4.0.0"1230 inherits "^2.0.1"1231 minimalistic-assert "^1.0.0"1232 safer-buffer "^2.1.0"12331234asn1@~0.2.3:1235 version "0.2.6"1236 resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"1237 integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==1238 dependencies:1239 safer-buffer "~2.1.0"12401241assert-plus@1.0.0, assert-plus@^1.0.0:1242 version "1.0.0"1243 resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"1244 integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==12451246assertion-error@^1.1.0:1247 version "1.1.0"1248 resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b"1249 integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==12501251async-limiter@~1.0.0:1252 version "1.0.1"1253 resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"1254 integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==12551256asynckit@^0.4.0:1257 version "0.4.0"1258 resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"1259 integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==12601261available-typed-arrays@^1.0.5:1262 version "1.0.5"1263 resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"1264 integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==12651266aws-sign2@~0.7.0:1267 version "0.7.0"1268 resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"1269 integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==12701271aws4@^1.8.0:1272 version "1.11.0"1273 resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59"1274 integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==12751276balanced-match@^1.0.0:1277 version "1.0.2"1278 resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"1279 integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==12801281base-x@^3.0.2, base-x@^3.0.8:1282 version "3.0.9"1283 resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320"1284 integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==1285 dependencies:1286 safe-buffer "^5.0.1"12871288base64-js@^1.3.1:1289 version "1.5.1"1290 resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"1291 integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==12921293bcrypt-pbkdf@^1.0.0:1294 version "1.0.2"1295 resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"1296 integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==1297 dependencies:1298 tweetnacl "^0.14.3"12991300bignumber.js@^9.0.0:1301 version "9.1.0"1302 resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.0.tgz#8d340146107fe3a6cb8d40699643c302e8773b62"1303 integrity sha512-4LwHK4nfDOraBCtst+wOWIHbu1vhvAPJK8g8nROd4iuc3PSEjWif/qwbkh8jwCJz6yDBvtU4KPynETgrfh7y3A==13041305binary-extensions@^2.0.0:1306 version "2.2.0"1307 resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"1308 integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==13091310blakejs@^1.1.0:1311 version "1.2.1"1312 resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"1313 integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==13141315bluebird@^3.5.0:1316 version "3.7.2"1317 resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"1318 integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==13191320bn.js@4.11.6:1321 version "4.11.6"1322 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"1323 integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==13241325bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.6, bn.js@^4.11.9:1326 version "4.12.0"1327 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"1328 integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==13291330bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1:1331 version "5.2.1"1332 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"1333 integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==13341335body-parser@1.20.1, body-parser@^1.16.0:1336 version "1.20.1"1337 resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"1338 integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==1339 dependencies:1340 bytes "3.1.2"1341 content-type "~1.0.4"1342 debug "2.6.9"1343 depd "2.0.0"1344 destroy "1.2.0"1345 http-errors "2.0.0"1346 iconv-lite "0.4.24"1347 on-finished "2.4.1"1348 qs "6.11.0"1349 raw-body "2.5.1"1350 type-is "~1.6.18"1351 unpipe "1.0.0"13521353brace-expansion@^1.1.7:1354 version "1.1.11"1355 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"1356 integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==1357 dependencies:1358 balanced-match "^1.0.0"1359 concat-map "0.0.1"13601361brace-expansion@^2.0.1:1362 version "2.0.1"1363 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"1364 integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==1365 dependencies:1366 balanced-match "^1.0.0"13671368braces@^3.0.2, braces@~3.0.2:1369 version "3.0.2"1370 resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"1371 integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==1372 dependencies:1373 fill-range "^7.0.1"13741375brorand@^1.0.1, brorand@^1.1.0:1376 version "1.1.0"1377 resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"1378 integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==13791380browser-stdout@1.3.1:1381 version "1.3.1"1382 resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60"1383 integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==13841385browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0:1386 version "1.2.0"1387 resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"1388 integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==1389 dependencies:1390 buffer-xor "^1.0.3"1391 cipher-base "^1.0.0"1392 create-hash "^1.1.0"1393 evp_bytestokey "^1.0.3"1394 inherits "^2.0.1"1395 safe-buffer "^5.0.1"13961397browserify-cipher@^1.0.0:1398 version "1.0.1"1399 resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"1400 integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==1401 dependencies:1402 browserify-aes "^1.0.4"1403 browserify-des "^1.0.0"1404 evp_bytestokey "^1.0.0"14051406browserify-des@^1.0.0:1407 version "1.0.2"1408 resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"1409 integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==1410 dependencies:1411 cipher-base "^1.0.1"1412 des.js "^1.0.0"1413 inherits "^2.0.1"1414 safe-buffer "^5.1.2"14151416browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:1417 version "4.1.0"1418 resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d"1419 integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==1420 dependencies:1421 bn.js "^5.0.0"1422 randombytes "^2.0.1"14231424browserify-sign@^4.0.0:1425 version "4.2.1"1426 resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3"1427 integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==1428 dependencies:1429 bn.js "^5.1.1"1430 browserify-rsa "^4.0.1"1431 create-hash "^1.2.0"1432 create-hmac "^1.1.7"1433 elliptic "^6.5.3"1434 inherits "^2.0.4"1435 parse-asn1 "^5.1.5"1436 readable-stream "^3.6.0"1437 safe-buffer "^5.2.0"14381439browserslist@^4.21.3:1440 version "4.21.4"1441 resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987"1442 integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==1443 dependencies:1444 caniuse-lite "^1.0.30001400"1445 electron-to-chromium "^1.4.251"1446 node-releases "^2.0.6"1447 update-browserslist-db "^1.0.9"14481449bs58@^4.0.0:1450 version "4.0.1"1451 resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a"1452 integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==1453 dependencies:1454 base-x "^3.0.2"14551456bs58check@^2.1.2:1457 version "2.1.2"1458 resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-2.1.2.tgz#53b018291228d82a5aa08e7d796fdafda54aebfc"1459 integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==1460 dependencies:1461 bs58 "^4.0.0"1462 create-hash "^1.1.0"1463 safe-buffer "^5.1.2"14641465buffer-from@^1.0.0:1466 version "1.1.2"1467 resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"1468 integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==14691470buffer-to-arraybuffer@^0.0.5:1471 version "0.0.5"1472 resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a"1473 integrity sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==14741475buffer-xor@^1.0.3:1476 version "1.0.3"1477 resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"1478 integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==14791480buffer@^5.0.5, buffer@^5.5.0, buffer@^5.6.0:1481 version "5.7.1"1482 resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"1483 integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==1484 dependencies:1485 base64-js "^1.3.1"1486 ieee754 "^1.1.13"14871488bufferutil@^4.0.1:1489 version "4.0.7"1490 resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.7.tgz#60c0d19ba2c992dd8273d3f73772ffc894c153ad"1491 integrity sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==1492 dependencies:1493 node-gyp-build "^4.3.0"14941495bytes@3.1.2:1496 version "3.1.2"1497 resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"1498 integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==14991500cacheable-lookup@^5.0.3:1501 version "5.0.4"1502 resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005"1503 integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==15041505cacheable-lookup@^6.0.4:1506 version "6.1.0"1507 resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.1.0.tgz#0330a543471c61faa4e9035db583aad753b36385"1508 integrity sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==15091510cacheable-request@^7.0.2:1511 version "7.0.2"1512 resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27"1513 integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==1514 dependencies:1515 clone-response "^1.0.2"1516 get-stream "^5.1.0"1517 http-cache-semantics "^4.0.0"1518 keyv "^4.0.0"1519 lowercase-keys "^2.0.0"1520 normalize-url "^6.0.1"1521 responselike "^2.0.0"15221523call-bind@^1.0.0, call-bind@^1.0.2:1524 version "1.0.2"1525 resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"1526 integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==1527 dependencies:1528 function-bind "^1.1.1"1529 get-intrinsic "^1.0.2"15301531callsites@^3.0.0:1532 version "3.1.0"1533 resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"1534 integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==15351536camelcase@^6.0.0:1537 version "6.3.0"1538 resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"1539 integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==15401541caniuse-lite@^1.0.30001400:1542 version "1.0.30001422"1543 resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001422.tgz#f2d7c6202c49a8359e6e35add894d88ef93edba1"1544 integrity sha512-hSesn02u1QacQHhaxl/kNMZwqVG35Sz/8DgvmgedxSH8z9UUpcDYSPYgsj3x5dQNRcNp6BwpSfQfVzYUTm+fog==15451546caseless@~0.12.0:1547 version "0.12.0"1548 resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"1549 integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==15501551chai-as-promised@^7.1.1:1552 version "7.1.1"1553 resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-7.1.1.tgz#08645d825deb8696ee61725dbf590c012eb00ca0"1554 integrity sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==1555 dependencies:1556 check-error "^1.0.2"15571558chai-like@^1.1.1:1559 version "1.1.1"1560 resolved "https://registry.yarnpkg.com/chai-like/-/chai-like-1.1.1.tgz#8c558a414c34514e814d497c772547ceb7958f64"1561 integrity sha512-VKa9z/SnhXhkT1zIjtPACFWSoWsqVoaz1Vg+ecrKo5DCKVlgL30F/pEyEvXPBOVwCgLZcWUleCM/C1okaKdTTA==15621563chai@^4.3.6:1564 version "4.3.6"1565 resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.6.tgz#ffe4ba2d9fa9d6680cc0b370adae709ec9011e9c"1566 integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==1567 dependencies:1568 assertion-error "^1.1.0"1569 check-error "^1.0.2"1570 deep-eql "^3.0.1"1571 get-func-name "^2.0.0"1572 loupe "^2.3.1"1573 pathval "^1.1.1"1574 type-detect "^4.0.5"15751576chalk@^2.0.0:1577 version "2.4.2"1578 resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"1579 integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==1580 dependencies:1581 ansi-styles "^3.2.1"1582 escape-string-regexp "^1.0.5"1583 supports-color "^5.3.0"15841585chalk@^4.0.0, chalk@^4.1.0:1586 version "4.1.2"1587 resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"1588 integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==1589 dependencies:1590 ansi-styles "^4.1.0"1591 supports-color "^7.1.0"15921593check-error@^1.0.2:1594 version "1.0.2"1595 resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82"1596 integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==15971598chokidar@3.5.3:1599 version "3.5.3"1600 resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"1601 integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==1602 dependencies:1603 anymatch "~3.1.2"1604 braces "~3.0.2"1605 glob-parent "~5.1.2"1606 is-binary-path "~2.1.0"1607 is-glob "~4.0.1"1608 normalize-path "~3.0.0"1609 readdirp "~3.6.0"1610 optionalDependencies:1611 fsevents "~2.3.2"16121613chownr@^1.1.4:1614 version "1.1.4"1615 resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"1616 integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==16171618cids@^0.7.1:1619 version "0.7.5"1620 resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2"1621 integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==1622 dependencies:1623 buffer "^5.5.0"1624 class-is "^1.1.0"1625 multibase "~0.6.0"1626 multicodec "^1.0.0"1627 multihashes "~0.4.15"16281629cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:1630 version "1.0.4"1631 resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"1632 integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==1633 dependencies:1634 inherits "^2.0.1"1635 safe-buffer "^5.0.1"16361637class-is@^1.1.0:1638 version "1.1.0"1639 resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825"1640 integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==16411642cliui@^7.0.2:1643 version "7.0.4"1644 resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"1645 integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==1646 dependencies:1647 string-width "^4.2.0"1648 strip-ansi "^6.0.0"1649 wrap-ansi "^7.0.0"16501651cliui@^8.0.1:1652 version "8.0.1"1653 resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"1654 integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==1655 dependencies:1656 string-width "^4.2.0"1657 strip-ansi "^6.0.1"1658 wrap-ansi "^7.0.0"16591660clone-deep@^4.0.1:1661 version "4.0.1"1662 resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"1663 integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==1664 dependencies:1665 is-plain-object "^2.0.4"1666 kind-of "^6.0.2"1667 shallow-clone "^3.0.0"16681669clone-response@^1.0.2:1670 version "1.0.3"1671 resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3"1672 integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==1673 dependencies:1674 mimic-response "^1.0.0"16751676color-convert@^1.9.0:1677 version "1.9.3"1678 resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"1679 integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==1680 dependencies:1681 color-name "1.1.3"16821683color-convert@^2.0.1:1684 version "2.0.1"1685 resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"1686 integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==1687 dependencies:1688 color-name "~1.1.4"16891690color-name@1.1.3:1691 version "1.1.3"1692 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"1693 integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==16941695color-name@~1.1.4:1696 version "1.1.4"1697 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"1698 integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==16991700combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:1701 version "1.0.8"1702 resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"1703 integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==1704 dependencies:1705 delayed-stream "~1.0.0"17061707command-exists@^1.2.8:1708 version "1.2.9"1709 resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69"1710 integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==17111712commander@^5.1.0:1713 version "5.1.0"1714 resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"1715 integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==17161717commander@^8.1.0:1718 version "8.3.0"1719 resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66"1720 integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==17211722commondir@^1.0.1:1723 version "1.0.1"1724 resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"1725 integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==17261727concat-map@0.0.1:1728 version "0.0.1"1729 resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"1730 integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==17311732content-disposition@0.5.4:1733 version "0.5.4"1734 resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"1735 integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==1736 dependencies:1737 safe-buffer "5.2.1"17381739content-hash@^2.5.2:1740 version "2.5.2"1741 resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211"1742 integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==1743 dependencies:1744 cids "^0.7.1"1745 multicodec "^0.5.5"1746 multihashes "^0.4.15"17471748content-type@~1.0.4:1749 version "1.0.4"1750 resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"1751 integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==17521753convert-source-map@^1.7.0:1754 version "1.9.0"1755 resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"1756 integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==17571758cookie-signature@1.0.6:1759 version "1.0.6"1760 resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"1761 integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==17621763cookie@0.5.0:1764 version "0.5.0"1765 resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b"1766 integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==17671768core-util-is@1.0.2:1769 version "1.0.2"1770 resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"1771 integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==17721773cors@^2.8.1:1774 version "2.8.5"1775 resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"1776 integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==1777 dependencies:1778 object-assign "^4"1779 vary "^1"17801781crc-32@^1.2.0:1782 version "1.2.2"1783 resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff"1784 integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==17851786create-ecdh@^4.0.0:1787 version "4.0.4"1788 resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"1789 integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==1790 dependencies:1791 bn.js "^4.1.0"1792 elliptic "^6.5.3"17931794create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:1795 version "1.2.0"1796 resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"1797 integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==1798 dependencies:1799 cipher-base "^1.0.1"1800 inherits "^2.0.1"1801 md5.js "^1.3.4"1802 ripemd160 "^2.0.1"1803 sha.js "^2.4.0"18041805create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:1806 version "1.1.7"1807 resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"1808 integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==1809 dependencies:1810 cipher-base "^1.0.3"1811 create-hash "^1.1.0"1812 inherits "^2.0.1"1813 ripemd160 "^2.0.0"1814 safe-buffer "^5.0.1"1815 sha.js "^2.4.8"18161817create-require@^1.1.0:1818 version "1.1.1"1819 resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"1820 integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==18211822cross-fetch@^3.1.4:1823 version "3.1.5"1824 resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f"1825 integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==1826 dependencies:1827 node-fetch "2.6.7"18281829cross-spawn@^7.0.2:1830 version "7.0.3"1831 resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"1832 integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==1833 dependencies:1834 path-key "^3.1.0"1835 shebang-command "^2.0.0"1836 which "^2.0.1"18371838crypto-browserify@3.12.0:1839 version "3.12.0"1840 resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"1841 integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==1842 dependencies:1843 browserify-cipher "^1.0.0"1844 browserify-sign "^4.0.0"1845 create-ecdh "^4.0.0"1846 create-hash "^1.1.0"1847 create-hmac "^1.1.0"1848 diffie-hellman "^5.0.0"1849 inherits "^2.0.1"1850 pbkdf2 "^3.0.3"1851 public-encrypt "^4.0.0"1852 randombytes "^2.0.0"1853 randomfill "^1.0.3"18541855d@1, d@^1.0.1:1856 version "1.0.1"1857 resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a"1858 integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==1859 dependencies:1860 es5-ext "^0.10.50"1861 type "^1.0.1"18621863dashdash@^1.12.0:1864 version "1.14.1"1865 resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"1866 integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==1867 dependencies:1868 assert-plus "^1.0.0"18691870data-uri-to-buffer@^4.0.0:1871 version "4.0.0"1872 resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz#b5db46aea50f6176428ac05b73be39a57701a64b"1873 integrity sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==18741875debug@2.6.9, debug@^2.2.0:1876 version "2.6.9"1877 resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"1878 integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==1879 dependencies:1880 ms "2.0.0"18811882debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:1883 version "4.3.4"1884 resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"1885 integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==1886 dependencies:1887 ms "2.1.2"18881889decamelize@^4.0.0:1890 version "4.0.0"1891 resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837"1892 integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==18931894decode-uri-component@^0.2.0:1895 version "0.2.0"1896 resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"1897 integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==18981899decompress-response@^3.3.0:1900 version "3.3.0"1901 resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"1902 integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==1903 dependencies:1904 mimic-response "^1.0.0"19051906decompress-response@^6.0.0:1907 version "6.0.0"1908 resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"1909 integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==1910 dependencies:1911 mimic-response "^3.1.0"19121913deep-eql@^3.0.1:1914 version "3.0.1"1915 resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df"1916 integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==1917 dependencies:1918 type-detect "^4.0.0"19191920deep-is@^0.1.3:1921 version "0.1.4"1922 resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"1923 integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==19241925defer-to-connect@^2.0.0, defer-to-connect@^2.0.1:1926 version "2.0.1"1927 resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"1928 integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==19291930define-properties@^1.1.3, define-properties@^1.1.4:1931 version "1.1.4"1932 resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"1933 integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==1934 dependencies:1935 has-property-descriptors "^1.0.0"1936 object-keys "^1.1.1"19371938delayed-stream@~1.0.0:1939 version "1.0.0"1940 resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"1941 integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==19421943depd@2.0.0:1944 version "2.0.0"1945 resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"1946 integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==19471948des.js@^1.0.0:1949 version "1.0.1"1950 resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"1951 integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==1952 dependencies:1953 inherits "^2.0.1"1954 minimalistic-assert "^1.0.0"19551956destroy@1.2.0:1957 version "1.2.0"1958 resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"1959 integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==19601961diff@5.0.0:1962 version "5.0.0"1963 resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b"1964 integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==19651966diff@^4.0.1:1967 version "4.0.2"1968 resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"1969 integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==19701971diffie-hellman@^5.0.0:1972 version "5.0.3"1973 resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"1974 integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==1975 dependencies:1976 bn.js "^4.1.0"1977 miller-rabin "^4.0.0"1978 randombytes "^2.0.0"19791980dir-glob@^3.0.1:1981 version "3.0.1"1982 resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"1983 integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==1984 dependencies:1985 path-type "^4.0.0"19861987doctrine@^3.0.0:1988 version "3.0.0"1989 resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"1990 integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==1991 dependencies:1992 esutils "^2.0.2"19931994dom-walk@^0.1.0:1995 version "0.1.2"1996 resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84"1997 integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==19981999ecc-jsbn@~0.1.1:2000 version "0.1.2"2001 resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"2002 integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==2003 dependencies:2004 jsbn "~0.1.0"2005 safer-buffer "^2.1.0"20062007ed2curve@^0.3.0:2008 version "0.3.0"2009 resolved "https://registry.yarnpkg.com/ed2curve/-/ed2curve-0.3.0.tgz#322b575152a45305429d546b071823a93129a05d"2010 integrity sha512-8w2fmmq3hv9rCrcI7g9hms2pMunQr1JINfcjwR9tAyZqhtyaMN991lF/ZfHfr5tzZQ8c7y7aBgZbjfbd0fjFwQ==2011 dependencies:2012 tweetnacl "1.x.x"20132014ee-first@1.1.1:2015 version "1.1.1"2016 resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"2017 integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==20182019electron-to-chromium@^1.4.251:2020 version "1.4.284"2021 resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592"2022 integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==20232024elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.3, elliptic@^6.5.4:2025 version "6.5.4"2026 resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"2027 integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==2028 dependencies:2029 bn.js "^4.11.9"2030 brorand "^1.1.0"2031 hash.js "^1.0.0"2032 hmac-drbg "^1.0.1"2033 inherits "^2.0.4"2034 minimalistic-assert "^1.0.1"2035 minimalistic-crypto-utils "^1.0.1"20362037emoji-regex@^8.0.0:2038 version "8.0.0"2039 resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"2040 integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==20412042encodeurl@~1.0.2:2043 version "1.0.2"2044 resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"2045 integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==20462047end-of-stream@^1.1.0:2048 version "1.4.4"2049 resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"2050 integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==2051 dependencies:2052 once "^1.4.0"20532054es-abstract@^1.19.0, es-abstract@^1.19.5, es-abstract@^1.20.0:2055 version "1.20.4"2056 resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.4.tgz#1d103f9f8d78d4cf0713edcd6d0ed1a46eed5861"2057 integrity sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==2058 dependencies:2059 call-bind "^1.0.2"2060 es-to-primitive "^1.2.1"2061 function-bind "^1.1.1"2062 function.prototype.name "^1.1.5"2063 get-intrinsic "^1.1.3"2064 get-symbol-description "^1.0.0"2065 has "^1.0.3"2066 has-property-descriptors "^1.0.0"2067 has-symbols "^1.0.3"2068 internal-slot "^1.0.3"2069 is-callable "^1.2.7"2070 is-negative-zero "^2.0.2"2071 is-regex "^1.1.4"2072 is-shared-array-buffer "^1.0.2"2073 is-string "^1.0.7"2074 is-weakref "^1.0.2"2075 object-inspect "^1.12.2"2076 object-keys "^1.1.1"2077 object.assign "^4.1.4"2078 regexp.prototype.flags "^1.4.3"2079 safe-regex-test "^1.0.0"2080 string.prototype.trimend "^1.0.5"2081 string.prototype.trimstart "^1.0.5"2082 unbox-primitive "^1.0.2"20832084es-to-primitive@^1.2.1:2085 version "1.2.1"2086 resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"2087 integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==2088 dependencies:2089 is-callable "^1.1.4"2090 is-date-object "^1.0.1"2091 is-symbol "^1.0.2"20922093es5-ext@^0.10.35, es5-ext@^0.10.50:2094 version "0.10.62"2095 resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5"2096 integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==2097 dependencies:2098 es6-iterator "^2.0.3"2099 es6-symbol "^3.1.3"2100 next-tick "^1.1.0"21012102es6-iterator@^2.0.3:2103 version "2.0.3"2104 resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"2105 integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==2106 dependencies:2107 d "1"2108 es5-ext "^0.10.35"2109 es6-symbol "^3.1.1"21102111es6-promise@^4.2.8:2112 version "4.2.8"2113 resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a"2114 integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==21152116es6-symbol@^3.1.1, es6-symbol@^3.1.3:2117 version "3.1.3"2118 resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18"2119 integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==2120 dependencies:2121 d "^1.0.1"2122 ext "^1.1.2"21232124escalade@^3.1.1:2125 version "3.1.1"2126 resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"2127 integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==21282129escape-html@~1.0.3:2130 version "1.0.3"2131 resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"2132 integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==21332134escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0:2135 version "4.0.0"2136 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"2137 integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==21382139escape-string-regexp@^1.0.5:2140 version "1.0.5"2141 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"2142 integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==21432144eslint-plugin-mocha@^10.1.0:2145 version "10.1.0"2146 resolved "https://registry.yarnpkg.com/eslint-plugin-mocha/-/eslint-plugin-mocha-10.1.0.tgz#69325414f875be87fb2cb00b2ef33168d4eb7c8d"2147 integrity sha512-xLqqWUF17llsogVOC+8C6/jvQ+4IoOREbN7ZCHuOHuD6cT5cDD4h7f2LgsZuzMAiwswWE21tO7ExaknHVDrSkw==2148 dependencies:2149 eslint-utils "^3.0.0"2150 rambda "^7.1.0"21512152eslint-scope@^5.1.1:2153 version "5.1.1"2154 resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"2155 integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==2156 dependencies:2157 esrecurse "^4.3.0"2158 estraverse "^4.1.1"21592160eslint-scope@^7.1.1:2161 version "7.1.1"2162 resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"2163 integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==2164 dependencies:2165 esrecurse "^4.3.0"2166 estraverse "^5.2.0"21672168eslint-utils@^3.0.0:2169 version "3.0.0"2170 resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"2171 integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==2172 dependencies:2173 eslint-visitor-keys "^2.0.0"21742175eslint-visitor-keys@^2.0.0:2176 version "2.1.0"2177 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"2178 integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==21792180eslint-visitor-keys@^3.3.0:2181 version "3.3.0"2182 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"2183 integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==21842185eslint@^8.25.0:2186 version "8.25.0"2187 resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.25.0.tgz#00eb962f50962165d0c4ee3327708315eaa8058b"2188 integrity sha512-DVlJOZ4Pn50zcKW5bYH7GQK/9MsoQG2d5eDH0ebEkE8PbgzTTmtt/VTH9GGJ4BfeZCpBLqFfvsjX35UacUL83A==2189 dependencies:2190 "@eslint/eslintrc" "^1.3.3"2191 "@humanwhocodes/config-array" "^0.10.5"2192 "@humanwhocodes/module-importer" "^1.0.1"2193 ajv "^6.10.0"2194 chalk "^4.0.0"2195 cross-spawn "^7.0.2"2196 debug "^4.3.2"2197 doctrine "^3.0.0"2198 escape-string-regexp "^4.0.0"2199 eslint-scope "^7.1.1"2200 eslint-utils "^3.0.0"2201 eslint-visitor-keys "^3.3.0"2202 espree "^9.4.0"2203 esquery "^1.4.0"2204 esutils "^2.0.2"2205 fast-deep-equal "^3.1.3"2206 file-entry-cache "^6.0.1"2207 find-up "^5.0.0"2208 glob-parent "^6.0.1"2209 globals "^13.15.0"2210 globby "^11.1.0"2211 grapheme-splitter "^1.0.4"2212 ignore "^5.2.0"2213 import-fresh "^3.0.0"2214 imurmurhash "^0.1.4"2215 is-glob "^4.0.0"2216 js-sdsl "^4.1.4"2217 js-yaml "^4.1.0"2218 json-stable-stringify-without-jsonify "^1.0.1"2219 levn "^0.4.1"2220 lodash.merge "^4.6.2"2221 minimatch "^3.1.2"2222 natural-compare "^1.4.0"2223 optionator "^0.9.1"2224 regexpp "^3.2.0"2225 strip-ansi "^6.0.1"2226 strip-json-comments "^3.1.0"2227 text-table "^0.2.0"22282229espree@^9.4.0:2230 version "9.4.0"2231 resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.0.tgz#cd4bc3d6e9336c433265fc0aa016fc1aaf182f8a"2232 integrity sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==2233 dependencies:2234 acorn "^8.8.0"2235 acorn-jsx "^5.3.2"2236 eslint-visitor-keys "^3.3.0"22372238esquery@^1.4.0:2239 version "1.4.0"2240 resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"2241 integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==2242 dependencies:2243 estraverse "^5.1.0"22442245esrecurse@^4.3.0:2246 version "4.3.0"2247 resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"2248 integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==2249 dependencies:2250 estraverse "^5.2.0"22512252estraverse@^4.1.1:2253 version "4.3.0"2254 resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"2255 integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==22562257estraverse@^5.1.0, estraverse@^5.2.0:2258 version "5.3.0"2259 resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"2260 integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==22612262esutils@^2.0.2:2263 version "2.0.3"2264 resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"2265 integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==22662267etag@~1.8.1:2268 version "1.8.1"2269 resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"2270 integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==22712272eth-ens-namehash@2.0.8:2273 version "2.0.8"2274 resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf"2275 integrity sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==2276 dependencies:2277 idna-uts46-hx "^2.3.1"2278 js-sha3 "^0.5.7"22792280eth-lib@0.2.8:2281 version "0.2.8"2282 resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8"2283 integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==2284 dependencies:2285 bn.js "^4.11.6"2286 elliptic "^6.4.0"2287 xhr-request-promise "^0.1.2"22882289eth-lib@^0.1.26:2290 version "0.1.29"2291 resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.1.29.tgz#0c11f5060d42da9f931eab6199084734f4dbd1d9"2292 integrity sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==2293 dependencies:2294 bn.js "^4.11.6"2295 elliptic "^6.4.0"2296 nano-json-stream-parser "^0.1.2"2297 servify "^0.1.12"2298 ws "^3.0.0"2299 xhr-request-promise "^0.1.2"23002301ethereum-bloom-filters@^1.0.6:2302 version "1.0.10"2303 resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz#3ca07f4aed698e75bd134584850260246a5fed8a"2304 integrity sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==2305 dependencies:2306 js-sha3 "^0.8.0"23072308ethereum-cryptography@^0.1.3:2309 version "0.1.3"2310 resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191"2311 integrity sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==2312 dependencies:2313 "@types/pbkdf2" "^3.0.0"2314 "@types/secp256k1" "^4.0.1"2315 blakejs "^1.1.0"2316 browserify-aes "^1.2.0"2317 bs58check "^2.1.2"2318 create-hash "^1.2.0"2319 create-hmac "^1.1.7"2320 hash.js "^1.1.7"2321 keccak "^3.0.0"2322 pbkdf2 "^3.0.17"2323 randombytes "^2.1.0"2324 safe-buffer "^5.1.2"2325 scrypt-js "^3.0.0"2326 secp256k1 "^4.0.1"2327 setimmediate "^1.0.5"23282329ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.5:2330 version "7.1.5"2331 resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181"2332 integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==2333 dependencies:2334 "@types/bn.js" "^5.1.0"2335 bn.js "^5.1.2"2336 create-hash "^1.1.2"2337 ethereum-cryptography "^0.1.3"2338 rlp "^2.2.4"23392340ethjs-unit@0.1.6:2341 version "0.1.6"2342 resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699"2343 integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==2344 dependencies:2345 bn.js "4.11.6"2346 number-to-bn "1.7.0"23472348eventemitter3@4.0.4:2349 version "4.0.4"2350 resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384"2351 integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==23522353eventemitter3@^4.0.7:2354 version "4.0.7"2355 resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"2356 integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==23572358evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:2359 version "1.0.3"2360 resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"2361 integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==2362 dependencies:2363 md5.js "^1.3.4"2364 safe-buffer "^5.1.1"23652366express@^4.14.0:2367 version "4.18.2"2368 resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59"2369 integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==2370 dependencies:2371 accepts "~1.3.8"2372 array-flatten "1.1.1"2373 body-parser "1.20.1"2374 content-disposition "0.5.4"2375 content-type "~1.0.4"2376 cookie "0.5.0"2377 cookie-signature "1.0.6"2378 debug "2.6.9"2379 depd "2.0.0"2380 encodeurl "~1.0.2"2381 escape-html "~1.0.3"2382 etag "~1.8.1"2383 finalhandler "1.2.0"2384 fresh "0.5.2"2385 http-errors "2.0.0"2386 merge-descriptors "1.0.1"2387 methods "~1.1.2"2388 on-finished "2.4.1"2389 parseurl "~1.3.3"2390 path-to-regexp "0.1.7"2391 proxy-addr "~2.0.7"2392 qs "6.11.0"2393 range-parser "~1.2.1"2394 safe-buffer "5.2.1"2395 send "0.18.0"2396 serve-static "1.15.0"2397 setprototypeof "1.2.0"2398 statuses "2.0.1"2399 type-is "~1.6.18"2400 utils-merge "1.0.1"2401 vary "~1.1.2"24022403ext@^1.1.2:2404 version "1.7.0"2405 resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f"2406 integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==2407 dependencies:2408 type "^2.7.2"24092410extend@~3.0.2:2411 version "3.0.2"2412 resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"2413 integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==24142415extsprintf@1.3.0:2416 version "1.3.0"2417 resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"2418 integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==24192420extsprintf@^1.2.0:2421 version "1.4.1"2422 resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"2423 integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==24242425fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:2426 version "3.1.3"2427 resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"2428 integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==24292430fast-glob@^3.2.9:2431 version "3.2.12"2432 resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"2433 integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==2434 dependencies:2435 "@nodelib/fs.stat" "^2.0.2"2436 "@nodelib/fs.walk" "^1.2.3"2437 glob-parent "^5.1.2"2438 merge2 "^1.3.0"2439 micromatch "^4.0.4"24402441fast-json-stable-stringify@^2.0.0:2442 version "2.1.0"2443 resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"2444 integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==24452446fast-levenshtein@^2.0.6:2447 version "2.0.6"2448 resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"2449 integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==24502451fastq@^1.6.0:2452 version "1.13.0"2453 resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"2454 integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==2455 dependencies:2456 reusify "^1.0.4"24572458fetch-blob@^3.1.2, fetch-blob@^3.1.4:2459 version "3.2.0"2460 resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9"2461 integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==2462 dependencies:2463 node-domexception "^1.0.0"2464 web-streams-polyfill "^3.0.3"24652466file-entry-cache@^6.0.1:2467 version "6.0.1"2468 resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"2469 integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==2470 dependencies:2471 flat-cache "^3.0.4"24722473fill-range@^7.0.1:2474 version "7.0.1"2475 resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"2476 integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==2477 dependencies:2478 to-regex-range "^5.0.1"24792480finalhandler@1.2.0:2481 version "1.2.0"2482 resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"2483 integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==2484 dependencies:2485 debug "2.6.9"2486 encodeurl "~1.0.2"2487 escape-html "~1.0.3"2488 on-finished "2.4.1"2489 parseurl "~1.3.3"2490 statuses "2.0.1"2491 unpipe "~1.0.0"24922493find-cache-dir@^2.0.0:2494 version "2.1.0"2495 resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7"2496 integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==2497 dependencies:2498 commondir "^1.0.1"2499 make-dir "^2.0.0"2500 pkg-dir "^3.0.0"25012502find-process@^1.4.7:2503 version "1.4.7"2504 resolved "https://registry.yarnpkg.com/find-process/-/find-process-1.4.7.tgz#8c76962259216c381ef1099371465b5b439ea121"2505 integrity sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==2506 dependencies:2507 chalk "^4.0.0"2508 commander "^5.1.0"2509 debug "^4.1.1"25102511find-up@5.0.0, find-up@^5.0.0:2512 version "5.0.0"2513 resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"2514 integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==2515 dependencies:2516 locate-path "^6.0.0"2517 path-exists "^4.0.0"25182519find-up@^3.0.0:2520 version "3.0.0"2521 resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"2522 integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==2523 dependencies:2524 locate-path "^3.0.0"25252526flat-cache@^3.0.4:2527 version "3.0.4"2528 resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"2529 integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==2530 dependencies:2531 flatted "^3.1.0"2532 rimraf "^3.0.2"25332534flat@^5.0.2:2535 version "5.0.2"2536 resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"2537 integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==25382539flatted@^3.1.0:2540 version "3.2.7"2541 resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"2542 integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==25432544follow-redirects@^1.12.1:2545 version "1.15.2"2546 resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"2547 integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==25482549for-each@^0.3.3:2550 version "0.3.3"2551 resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"2552 integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==2553 dependencies:2554 is-callable "^1.1.3"25552556forever-agent@~0.6.1:2557 version "0.6.1"2558 resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"2559 integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==25602561form-data-encoder@1.7.1:2562 version "1.7.1"2563 resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96"2564 integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==25652566form-data@^3.0.0:2567 version "3.0.1"2568 resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"2569 integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==2570 dependencies:2571 asynckit "^0.4.0"2572 combined-stream "^1.0.8"2573 mime-types "^2.1.12"25742575form-data@~2.3.2:2576 version "2.3.3"2577 resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"2578 integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==2579 dependencies:2580 asynckit "^0.4.0"2581 combined-stream "^1.0.6"2582 mime-types "^2.1.12"25832584formdata-polyfill@^4.0.10:2585 version "4.0.10"2586 resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423"2587 integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==2588 dependencies:2589 fetch-blob "^3.1.2"25902591forwarded@0.2.0:2592 version "0.2.0"2593 resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"2594 integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==25952596fresh@0.5.2:2597 version "0.5.2"2598 resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"2599 integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==26002601fs-extra@^4.0.2:2602 version "4.0.3"2603 resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"2604 integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==2605 dependencies:2606 graceful-fs "^4.1.2"2607 jsonfile "^4.0.0"2608 universalify "^0.1.0"26092610fs-minipass@^1.2.7:2611 version "1.2.7"2612 resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"2613 integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==2614 dependencies:2615 minipass "^2.6.0"26162617fs.realpath@^1.0.0:2618 version "1.0.0"2619 resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"2620 integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==26212622fsevents@~2.3.2:2623 version "2.3.2"2624 resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"2625 integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==26262627function-bind@^1.1.1:2628 version "1.1.1"2629 resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"2630 integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==26312632function.prototype.name@^1.1.5:2633 version "1.1.5"2634 resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621"2635 integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==2636 dependencies:2637 call-bind "^1.0.2"2638 define-properties "^1.1.3"2639 es-abstract "^1.19.0"2640 functions-have-names "^1.2.2"26412642functions-have-names@^1.2.2:2643 version "1.2.3"2644 resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"2645 integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==26462647gensync@^1.0.0-beta.2:2648 version "1.0.0-beta.2"2649 resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"2650 integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==26512652get-caller-file@^2.0.5:2653 version "2.0.5"2654 resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"2655 integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==26562657get-func-name@^2.0.0:2658 version "2.0.0"2659 resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41"2660 integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==26612662get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:2663 version "1.1.3"2664 resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"2665 integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==2666 dependencies:2667 function-bind "^1.1.1"2668 has "^1.0.3"2669 has-symbols "^1.0.3"26702671get-stream@^5.1.0:2672 version "5.2.0"2673 resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"2674 integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==2675 dependencies:2676 pump "^3.0.0"26772678get-stream@^6.0.1:2679 version "6.0.1"2680 resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"2681 integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==26822683get-symbol-description@^1.0.0:2684 version "1.0.0"2685 resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"2686 integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==2687 dependencies:2688 call-bind "^1.0.2"2689 get-intrinsic "^1.1.1"26902691getpass@^0.1.1:2692 version "0.1.7"2693 resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"2694 integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==2695 dependencies:2696 assert-plus "^1.0.0"26972698glob-parent@^5.1.2, glob-parent@~5.1.2:2699 version "5.1.2"2700 resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"2701 integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==2702 dependencies:2703 is-glob "^4.0.1"27042705glob-parent@^6.0.1:2706 version "6.0.2"2707 resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"2708 integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==2709 dependencies:2710 is-glob "^4.0.3"27112712glob@7.2.0:2713 version "7.2.0"2714 resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"2715 integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==2716 dependencies:2717 fs.realpath "^1.0.0"2718 inflight "^1.0.4"2719 inherits "2"2720 minimatch "^3.0.4"2721 once "^1.3.0"2722 path-is-absolute "^1.0.0"27232724glob@^7.1.3:2725 version "7.2.3"2726 resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"2727 integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==2728 dependencies:2729 fs.realpath "^1.0.0"2730 inflight "^1.0.4"2731 inherits "2"2732 minimatch "^3.1.1"2733 once "^1.3.0"2734 path-is-absolute "^1.0.0"27352736global@~4.4.0:2737 version "4.4.0"2738 resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406"2739 integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==2740 dependencies:2741 min-document "^2.19.0"2742 process "^0.11.10"27432744globals@^11.1.0:2745 version "11.12.0"2746 resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"2747 integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==27482749globals@^13.15.0:2750 version "13.17.0"2751 resolved "https://registry.yarnpkg.com/globals/-/globals-13.17.0.tgz#902eb1e680a41da93945adbdcb5a9f361ba69bd4"2752 integrity sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==2753 dependencies:2754 type-fest "^0.20.2"27552756globby@^11.1.0:2757 version "11.1.0"2758 resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"2759 integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==2760 dependencies:2761 array-union "^2.1.0"2762 dir-glob "^3.0.1"2763 fast-glob "^3.2.9"2764 ignore "^5.2.0"2765 merge2 "^1.4.1"2766 slash "^3.0.0"27672768got@12.1.0:2769 version "12.1.0"2770 resolved "https://registry.yarnpkg.com/got/-/got-12.1.0.tgz#099f3815305c682be4fd6b0ee0726d8e4c6b0af4"2771 integrity sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==2772 dependencies:2773 "@sindresorhus/is" "^4.6.0"2774 "@szmarczak/http-timer" "^5.0.1"2775 "@types/cacheable-request" "^6.0.2"2776 "@types/responselike" "^1.0.0"2777 cacheable-lookup "^6.0.4"2778 cacheable-request "^7.0.2"2779 decompress-response "^6.0.0"2780 form-data-encoder "1.7.1"2781 get-stream "^6.0.1"2782 http2-wrapper "^2.1.10"2783 lowercase-keys "^3.0.0"2784 p-cancelable "^3.0.0"2785 responselike "^2.0.0"27862787got@^11.8.5:2788 version "11.8.5"2789 resolved "https://registry.yarnpkg.com/got/-/got-11.8.5.tgz#ce77d045136de56e8f024bebb82ea349bc730046"2790 integrity sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==2791 dependencies:2792 "@sindresorhus/is" "^4.0.0"2793 "@szmarczak/http-timer" "^4.0.5"2794 "@types/cacheable-request" "^6.0.1"2795 "@types/responselike" "^1.0.0"2796 cacheable-lookup "^5.0.3"2797 cacheable-request "^7.0.2"2798 decompress-response "^6.0.0"2799 http2-wrapper "^1.0.0-beta.5.2"2800 lowercase-keys "^2.0.0"2801 p-cancelable "^2.0.0"2802 responselike "^2.0.0"28032804graceful-fs@^4.1.2, graceful-fs@^4.1.6:2805 version "4.2.10"2806 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"2807 integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==28082809grapheme-splitter@^1.0.4:2810 version "1.0.4"2811 resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"2812 integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==28132814handlebars@^4.7.7:2815 version "4.7.7"2816 resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1"2817 integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==2818 dependencies:2819 minimist "^1.2.5"2820 neo-async "^2.6.0"2821 source-map "^0.6.1"2822 wordwrap "^1.0.0"2823 optionalDependencies:2824 uglify-js "^3.1.4"28252826har-schema@^2.0.0:2827 version "2.0.0"2828 resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"2829 integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==28302831har-validator@~5.1.3:2832 version "5.1.5"2833 resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd"2834 integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==2835 dependencies:2836 ajv "^6.12.3"2837 har-schema "^2.0.0"28382839has-bigints@^1.0.1, has-bigints@^1.0.2:2840 version "1.0.2"2841 resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"2842 integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==28432844has-flag@^3.0.0:2845 version "3.0.0"2846 resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"2847 integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==28482849has-flag@^4.0.0:2850 version "4.0.0"2851 resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"2852 integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==28532854has-property-descriptors@^1.0.0:2855 version "1.0.0"2856 resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"2857 integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==2858 dependencies:2859 get-intrinsic "^1.1.1"28602861has-symbols@^1.0.2, has-symbols@^1.0.3:2862 version "1.0.3"2863 resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"2864 integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==28652866has-tostringtag@^1.0.0:2867 version "1.0.0"2868 resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"2869 integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==2870 dependencies:2871 has-symbols "^1.0.2"28722873has@^1.0.3:2874 version "1.0.3"2875 resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"2876 integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==2877 dependencies:2878 function-bind "^1.1.1"28792880hash-base@^3.0.0:2881 version "3.1.0"2882 resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"2883 integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==2884 dependencies:2885 inherits "^2.0.4"2886 readable-stream "^3.6.0"2887 safe-buffer "^5.2.0"28882889hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7:2890 version "1.1.7"2891 resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"2892 integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==2893 dependencies:2894 inherits "^2.0.3"2895 minimalistic-assert "^1.0.1"28962897he@1.2.0:2898 version "1.2.0"2899 resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"2900 integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==29012902hmac-drbg@^1.0.1:2903 version "1.0.1"2904 resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"2905 integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==2906 dependencies:2907 hash.js "^1.0.3"2908 minimalistic-assert "^1.0.0"2909 minimalistic-crypto-utils "^1.0.1"29102911http-cache-semantics@^4.0.0:2912 version "4.1.0"2913 resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"2914 integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==29152916http-errors@2.0.0:2917 version "2.0.0"2918 resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"2919 integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==2920 dependencies:2921 depd "2.0.0"2922 inherits "2.0.4"2923 setprototypeof "1.2.0"2924 statuses "2.0.1"2925 toidentifier "1.0.1"29262927http-https@^1.0.0:2928 version "1.0.0"2929 resolved "https://registry.yarnpkg.com/http-https/-/http-https-1.0.0.tgz#2f908dd5f1db4068c058cd6e6d4ce392c913389b"2930 integrity sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==29312932http-signature@~1.2.0:2933 version "1.2.0"2934 resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"2935 integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==2936 dependencies:2937 assert-plus "^1.0.0"2938 jsprim "^1.2.2"2939 sshpk "^1.7.0"29402941http2-wrapper@^1.0.0-beta.5.2:2942 version "1.0.3"2943 resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d"2944 integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==2945 dependencies:2946 quick-lru "^5.1.1"2947 resolve-alpn "^1.0.0"29482949http2-wrapper@^2.1.10:2950 version "2.1.11"2951 resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.1.11.tgz#d7c980c7ffb85be3859b6a96c800b2951ae257ef"2952 integrity sha512-aNAk5JzLturWEUiuhAN73Jcbq96R7rTitAoXV54FYMatvihnpD2+6PUgU4ce3D/m5VDbw+F5CsyKSF176ptitQ==2953 dependencies:2954 quick-lru "^5.1.1"2955 resolve-alpn "^1.2.0"29562957iconv-lite@0.4.24:2958 version "0.4.24"2959 resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"2960 integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==2961 dependencies:2962 safer-buffer ">= 2.1.2 < 3"29632964idna-uts46-hx@^2.3.1:2965 version "2.3.1"2966 resolved "https://registry.yarnpkg.com/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz#a1dc5c4df37eee522bf66d969cc980e00e8711f9"2967 integrity sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==2968 dependencies:2969 punycode "2.1.0"29702971ieee754@^1.1.13:2972 version "1.2.1"2973 resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"2974 integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==29752976ignore@^5.2.0:2977 version "5.2.0"2978 resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"2979 integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==29802981import-fresh@^3.0.0, import-fresh@^3.2.1:2982 version "3.3.0"2983 resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"2984 integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==2985 dependencies:2986 parent-module "^1.0.0"2987 resolve-from "^4.0.0"29882989imurmurhash@^0.1.4:2990 version "0.1.4"2991 resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"2992 integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==29932994inflight@^1.0.4:2995 version "1.0.6"2996 resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"2997 integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==2998 dependencies:2999 once "^1.3.0"3000 wrappy "1"30013002inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4:3003 version "2.0.4"3004 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"3005 integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==30063007internal-slot@^1.0.3:3008 version "1.0.3"3009 resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c"3010 integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==3011 dependencies:3012 get-intrinsic "^1.1.0"3013 has "^1.0.3"3014 side-channel "^1.0.4"30153016ipaddr.js@1.9.1:3017 version "1.9.1"3018 resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"3019 integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==30203021is-arguments@^1.0.4:3022 version "1.1.1"3023 resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"3024 integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==3025 dependencies:3026 call-bind "^1.0.2"3027 has-tostringtag "^1.0.0"30283029is-bigint@^1.0.1:3030 version "1.0.4"3031 resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"3032 integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==3033 dependencies:3034 has-bigints "^1.0.1"30353036is-binary-path@~2.1.0:3037 version "2.1.0"3038 resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"3039 integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==3040 dependencies:3041 binary-extensions "^2.0.0"30423043is-boolean-object@^1.1.0:3044 version "1.1.2"3045 resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"3046 integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==3047 dependencies:3048 call-bind "^1.0.2"3049 has-tostringtag "^1.0.0"30503051is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:3052 version "1.2.7"3053 resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"3054 integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==30553056is-date-object@^1.0.1:3057 version "1.0.5"3058 resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"3059 integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==3060 dependencies:3061 has-tostringtag "^1.0.0"30623063is-extglob@^2.1.1:3064 version "2.1.1"3065 resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"3066 integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==30673068is-fullwidth-code-point@^3.0.0:3069 version "3.0.0"3070 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"3071 integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==30723073is-function@^1.0.1:3074 version "1.0.2"3075 resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08"3076 integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==30773078is-generator-function@^1.0.7:3079 version "1.0.10"3080 resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"3081 integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==3082 dependencies:3083 has-tostringtag "^1.0.0"30843085is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:3086 version "4.0.3"3087 resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"3088 integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==3089 dependencies:3090 is-extglob "^2.1.1"30913092is-hex-prefixed@1.0.0:3093 version "1.0.0"3094 resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554"3095 integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==30963097is-negative-zero@^2.0.2:3098 version "2.0.2"3099 resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"3100 integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==31013102is-number-object@^1.0.4:3103 version "1.0.7"3104 resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc"3105 integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==3106 dependencies:3107 has-tostringtag "^1.0.0"31083109is-number@^7.0.0:3110 version "7.0.0"3111 resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"3112 integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==31133114is-plain-obj@^2.1.0:3115 version "2.1.0"3116 resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287"3117 integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==31183119is-plain-object@^2.0.4:3120 version "2.0.4"3121 resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"3122 integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==3123 dependencies:3124 isobject "^3.0.1"31253126is-regex@^1.1.4:3127 version "1.1.4"3128 resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"3129 integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==3130 dependencies:3131 call-bind "^1.0.2"3132 has-tostringtag "^1.0.0"31333134is-shared-array-buffer@^1.0.2:3135 version "1.0.2"3136 resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"3137 integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==3138 dependencies:3139 call-bind "^1.0.2"31403141is-string@^1.0.5, is-string@^1.0.7:3142 version "1.0.7"3143 resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd"3144 integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==3145 dependencies:3146 has-tostringtag "^1.0.0"31473148is-symbol@^1.0.2, is-symbol@^1.0.3:3149 version "1.0.4"3150 resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c"3151 integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==3152 dependencies:3153 has-symbols "^1.0.2"31543155is-typed-array@^1.1.3, is-typed-array@^1.1.9:3156 version "1.1.9"3157 resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.9.tgz#246d77d2871e7d9f5aeb1d54b9f52c71329ece67"3158 integrity sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==3159 dependencies:3160 available-typed-arrays "^1.0.5"3161 call-bind "^1.0.2"3162 es-abstract "^1.20.0"3163 for-each "^0.3.3"3164 has-tostringtag "^1.0.0"31653166is-typedarray@^1.0.0, is-typedarray@~1.0.0:3167 version "1.0.0"3168 resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"3169 integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==31703171is-unicode-supported@^0.1.0:3172 version "0.1.0"3173 resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"3174 integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==31753176is-weakref@^1.0.2:3177 version "1.0.2"3178 resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"3179 integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==3180 dependencies:3181 call-bind "^1.0.2"31823183isexe@^2.0.0:3184 version "2.0.0"3185 resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"3186 integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==31873188isobject@^3.0.1:3189 version "3.0.1"3190 resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"3191 integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==31923193isstream@~0.1.2:3194 version "0.1.2"3195 resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"3196 integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==31973198js-sdsl@^4.1.4:3199 version "4.1.5"3200 resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.1.5.tgz#1ff1645e6b4d1b028cd3f862db88c9d887f26e2a"3201 integrity sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==32023203js-sha3@0.8.0, js-sha3@^0.8.0:3204 version "0.8.0"3205 resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"3206 integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==32073208js-sha3@^0.5.7:3209 version "0.5.7"3210 resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7"3211 integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==32123213js-tokens@^4.0.0:3214 version "4.0.0"3215 resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"3216 integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==32173218js-yaml@4.1.0, js-yaml@^4.1.0:3219 version "4.1.0"3220 resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"3221 integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==3222 dependencies:3223 argparse "^2.0.1"32243225jsbn@~0.1.0:3226 version "0.1.1"3227 resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"3228 integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==32293230jsesc@^2.5.1:3231 version "2.5.2"3232 resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"3233 integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==32343235json-buffer@3.0.1:3236 version "3.0.1"3237 resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"3238 integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==32393240json-schema-traverse@^0.4.1:3241 version "0.4.1"3242 resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"3243 integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==32443245json-schema@0.4.0:3246 version "0.4.0"3247 resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5"3248 integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==32493250json-stable-stringify-without-jsonify@^1.0.1:3251 version "1.0.1"3252 resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"3253 integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==32543255json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:3256 version "5.0.1"3257 resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"3258 integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==32593260json5@^2.2.1:3261 version "2.2.1"3262 resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"3263 integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==32643265jsonfile@^4.0.0:3266 version "4.0.0"3267 resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"3268 integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==3269 optionalDependencies:3270 graceful-fs "^4.1.6"32713272jsprim@^1.2.2:3273 version "1.4.2"3274 resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"3275 integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==3276 dependencies:3277 assert-plus "1.0.0"3278 extsprintf "1.3.0"3279 json-schema "0.4.0"3280 verror "1.10.0"32813282keccak@^3.0.0:3283 version "3.0.2"3284 resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0"3285 integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==3286 dependencies:3287 node-addon-api "^2.0.0"3288 node-gyp-build "^4.2.0"3289 readable-stream "^3.6.0"32903291keyv@*, keyv@^4.0.0:3292 version "4.5.0"3293 resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.0.tgz#dbce9ade79610b6e641a9a65f2f6499ba06b9bc6"3294 integrity sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==3295 dependencies:3296 json-buffer "3.0.1"32973298kind-of@^6.0.2:3299 version "6.0.3"3300 resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"3301 integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==33023303levn@^0.4.1:3304 version "0.4.1"3305 resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"3306 integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==3307 dependencies:3308 prelude-ls "^1.2.1"3309 type-check "~0.4.0"33103311locate-path@^3.0.0:3312 version "3.0.0"3313 resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"3314 integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==3315 dependencies:3316 p-locate "^3.0.0"3317 path-exists "^3.0.0"33183319locate-path@^6.0.0:3320 version "6.0.0"3321 resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"3322 integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==3323 dependencies:3324 p-locate "^5.0.0"33253326lodash.merge@^4.6.2:3327 version "4.6.2"3328 resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"3329 integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==33303331lodash@^4.17.21:3332 version "4.17.21"3333 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"3334 integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==33353336log-symbols@4.1.0:3337 version "4.1.0"3338 resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503"3339 integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==3340 dependencies:3341 chalk "^4.1.0"3342 is-unicode-supported "^0.1.0"33433344loupe@^2.3.1:3345 version "2.3.4"3346 resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.4.tgz#7e0b9bffc76f148f9be769cb1321d3dcf3cb25f3"3347 integrity sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==3348 dependencies:3349 get-func-name "^2.0.0"33503351lowercase-keys@^2.0.0:3352 version "2.0.0"3353 resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"3354 integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==33553356lowercase-keys@^3.0.0:3357 version "3.0.0"3358 resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2"3359 integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==33603361lru-cache@^6.0.0:3362 version "6.0.0"3363 resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"3364 integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==3365 dependencies:3366 yallist "^4.0.0"33673368make-dir@^2.0.0, make-dir@^2.1.0:3369 version "2.1.0"3370 resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"3371 integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==3372 dependencies:3373 pify "^4.0.1"3374 semver "^5.6.0"33753376make-error@^1.1.1:3377 version "1.3.6"3378 resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"3379 integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==33803381md5.js@^1.3.4:3382 version "1.3.5"3383 resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"3384 integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==3385 dependencies:3386 hash-base "^3.0.0"3387 inherits "^2.0.1"3388 safe-buffer "^5.1.2"33893390media-typer@0.3.0:3391 version "0.3.0"3392 resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"3393 integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==33943395memorystream@^0.3.1:3396 version "0.3.1"3397 resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"3398 integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==33993400merge-descriptors@1.0.1:3401 version "1.0.1"3402 resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"3403 integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==34043405merge2@^1.3.0, merge2@^1.4.1:3406 version "1.4.1"3407 resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"3408 integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==34093410methods@~1.1.2:3411 version "1.1.2"3412 resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"3413 integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==34143415micromatch@^4.0.4:3416 version "4.0.5"3417 resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"3418 integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==3419 dependencies:3420 braces "^3.0.2"3421 picomatch "^2.3.1"34223423miller-rabin@^4.0.0:3424 version "4.0.1"3425 resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"3426 integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==3427 dependencies:3428 bn.js "^4.0.0"3429 brorand "^1.0.1"34303431mime-db@1.52.0:3432 version "1.52.0"3433 resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"3434 integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==34353436mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34:3437 version "2.1.35"3438 resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"3439 integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==3440 dependencies:3441 mime-db "1.52.0"34423443mime@1.6.0:3444 version "1.6.0"3445 resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"3446 integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==34473448mimic-response@^1.0.0:3449 version "1.0.1"3450 resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"3451 integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==34523453mimic-response@^3.1.0:3454 version "3.1.0"3455 resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"3456 integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==34573458min-document@^2.19.0:3459 version "2.19.0"3460 resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"3461 integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==3462 dependencies:3463 dom-walk "^0.1.0"34643465minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:3466 version "1.0.1"3467 resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"3468 integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==34693470minimalistic-crypto-utils@^1.0.1:3471 version "1.0.1"3472 resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"3473 integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==34743475minimatch@5.0.1:3476 version "5.0.1"3477 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b"3478 integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==3479 dependencies:3480 brace-expansion "^2.0.1"34813482minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2:3483 version "3.1.2"3484 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"3485 integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==3486 dependencies:3487 brace-expansion "^1.1.7"34883489minimist@^1.2.5, minimist@^1.2.6:3490 version "1.2.7"3491 resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"3492 integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==34933494minipass@^2.6.0, minipass@^2.9.0:3495 version "2.9.0"3496 resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"3497 integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==3498 dependencies:3499 safe-buffer "^5.1.2"3500 yallist "^3.0.0"35013502minizlib@^1.3.3:3503 version "1.3.3"3504 resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"3505 integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==3506 dependencies:3507 minipass "^2.9.0"35083509mkdirp-promise@^5.0.1:3510 version "5.0.1"3511 resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1"3512 integrity sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==3513 dependencies:3514 mkdirp "*"35153516mkdirp@*:3517 version "1.0.4"3518 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"3519 integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==35203521mkdirp@^0.5.5:3522 version "0.5.6"3523 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"3524 integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==3525 dependencies:3526 minimist "^1.2.6"35273528mocha@^10.1.0:3529 version "10.1.0"3530 resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.1.0.tgz#dbf1114b7c3f9d0ca5de3133906aea3dfc89ef7a"3531 integrity sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==3532 dependencies:3533 ansi-colors "4.1.1"3534 browser-stdout "1.3.1"3535 chokidar "3.5.3"3536 debug "4.3.4"3537 diff "5.0.0"3538 escape-string-regexp "4.0.0"3539 find-up "5.0.0"3540 glob "7.2.0"3541 he "1.2.0"3542 js-yaml "4.1.0"3543 log-symbols "4.1.0"3544 minimatch "5.0.1"3545 ms "2.1.3"3546 nanoid "3.3.3"3547 serialize-javascript "6.0.0"3548 strip-json-comments "3.1.1"3549 supports-color "8.1.1"3550 workerpool "6.2.1"3551 yargs "16.2.0"3552 yargs-parser "20.2.4"3553 yargs-unparser "2.0.0"35543555mock-fs@^4.1.0:3556 version "4.14.0"3557 resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.14.0.tgz#ce5124d2c601421255985e6e94da80a7357b1b18"3558 integrity sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==35593560mock-socket@^9.1.5:3561 version "9.1.5"3562 resolved "https://registry.yarnpkg.com/mock-socket/-/mock-socket-9.1.5.tgz#2c4e44922ad556843b6dfe09d14ed8041fa2cdeb"3563 integrity sha512-3DeNIcsQixWHHKk6NdoBhWI4t1VMj5/HzfnI1rE/pLl5qKx7+gd4DNA07ehTaZ6MoUU053si6Hd+YtiM/tQZfg==35643565ms@2.0.0:3566 version "2.0.0"3567 resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"3568 integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==35693570ms@2.1.2:3571 version "2.1.2"3572 resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"3573 integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==35743575ms@2.1.3:3576 version "2.1.3"3577 resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"3578 integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==35793580multibase@^0.7.0:3581 version "0.7.0"3582 resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b"3583 integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==3584 dependencies:3585 base-x "^3.0.8"3586 buffer "^5.5.0"35873588multibase@~0.6.0:3589 version "0.6.1"3590 resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b"3591 integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==3592 dependencies:3593 base-x "^3.0.8"3594 buffer "^5.5.0"35953596multicodec@^0.5.5:3597 version "0.5.7"3598 resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd"3599 integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==3600 dependencies:3601 varint "^5.0.0"36023603multicodec@^1.0.0:3604 version "1.0.4"3605 resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f"3606 integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==3607 dependencies:3608 buffer "^5.6.0"3609 varint "^5.0.0"36103611multihashes@^0.4.15, multihashes@~0.4.15:3612 version "0.4.21"3613 resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5"3614 integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==3615 dependencies:3616 buffer "^5.5.0"3617 multibase "^0.7.0"3618 varint "^5.0.0"36193620nano-json-stream-parser@^0.1.2:3621 version "0.1.2"3622 resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f"3623 integrity sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==36243625nanoid@3.3.3:3626 version "3.3.3"3627 resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25"3628 integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==36293630natural-compare@^1.4.0:3631 version "1.4.0"3632 resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"3633 integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==36343635negotiator@0.6.3:3636 version "0.6.3"3637 resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"3638 integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==36393640neo-async@^2.6.0:3641 version "2.6.2"3642 resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"3643 integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==36443645next-tick@^1.1.0:3646 version "1.1.0"3647 resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb"3648 integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==36493650nock@^13.2.9:3651 version "13.2.9"3652 resolved "https://registry.yarnpkg.com/nock/-/nock-13.2.9.tgz#4faf6c28175d36044da4cfa68e33e5a15086ad4c"3653 integrity sha512-1+XfJNYF1cjGB+TKMWi29eZ0b82QOvQs2YoLNzbpWGqFMtRQHTa57osqdGj4FrFPgkO4D4AZinzUJR9VvW3QUA==3654 dependencies:3655 debug "^4.1.0"3656 json-stringify-safe "^5.0.1"3657 lodash "^4.17.21"3658 propagate "^2.0.0"36593660node-addon-api@^2.0.0:3661 version "2.0.2"3662 resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32"3663 integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==36643665node-domexception@^1.0.0:3666 version "1.0.0"3667 resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"3668 integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==36693670node-fetch@2.6.7:3671 version "2.6.7"3672 resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"3673 integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==3674 dependencies:3675 whatwg-url "^5.0.0"36763677node-fetch@^3.2.10:3678 version "3.2.10"3679 resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.10.tgz#e8347f94b54ae18b57c9c049ef641cef398a85c8"3680 integrity sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==3681 dependencies:3682 data-uri-to-buffer "^4.0.0"3683 fetch-blob "^3.1.4"3684 formdata-polyfill "^4.0.10"36853686node-gyp-build@^4.2.0, node-gyp-build@^4.3.0:3687 version "4.5.0"3688 resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40"3689 integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==36903691node-releases@^2.0.6:3692 version "2.0.6"3693 resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503"3694 integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==36953696normalize-path@^3.0.0, normalize-path@~3.0.0:3697 version "3.0.0"3698 resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"3699 integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==37003701normalize-url@^6.0.1:3702 version "6.1.0"3703 resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"3704 integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==37053706number-to-bn@1.7.0:3707 version "1.7.0"3708 resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0"3709 integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==3710 dependencies:3711 bn.js "4.11.6"3712 strip-hex-prefix "1.0.0"37133714oauth-sign@~0.9.0:3715 version "0.9.0"3716 resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"3717 integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==37183719object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1:3720 version "4.1.1"3721 resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"3722 integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==37233724object-inspect@^1.12.2, object-inspect@^1.9.0:3725 version "1.12.2"3726 resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"3727 integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==37283729object-keys@^1.1.1:3730 version "1.1.1"3731 resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"3732 integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==37333734object.assign@^4.1.4:3735 version "4.1.4"3736 resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"3737 integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==3738 dependencies:3739 call-bind "^1.0.2"3740 define-properties "^1.1.4"3741 has-symbols "^1.0.3"3742 object-keys "^1.1.1"37433744oboe@2.1.5:3745 version "2.1.5"3746 resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.5.tgz#5554284c543a2266d7a38f17e073821fbde393cd"3747 integrity sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==3748 dependencies:3749 http-https "^1.0.0"37503751on-finished@2.4.1:3752 version "2.4.1"3753 resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"3754 integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==3755 dependencies:3756 ee-first "1.1.1"37573758once@^1.3.0, once@^1.3.1, once@^1.4.0:3759 version "1.4.0"3760 resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"3761 integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==3762 dependencies:3763 wrappy "1"37643765optionator@^0.9.1:3766 version "0.9.1"3767 resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"3768 integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==3769 dependencies:3770 deep-is "^0.1.3"3771 fast-levenshtein "^2.0.6"3772 levn "^0.4.1"3773 prelude-ls "^1.2.1"3774 type-check "^0.4.0"3775 word-wrap "^1.2.3"37763777os-tmpdir@~1.0.2:3778 version "1.0.2"3779 resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"3780 integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==37813782p-cancelable@^2.0.0:3783 version "2.1.1"3784 resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"3785 integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==37863787p-cancelable@^3.0.0:3788 version "3.0.0"3789 resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050"3790 integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==37913792p-limit@^2.0.0:3793 version "2.3.0"3794 resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"3795 integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==3796 dependencies:3797 p-try "^2.0.0"37983799p-limit@^3.0.2:3800 version "3.1.0"3801 resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"3802 integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==3803 dependencies:3804 yocto-queue "^0.1.0"38053806p-locate@^3.0.0:3807 version "3.0.0"3808 resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"3809 integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==3810 dependencies:3811 p-limit "^2.0.0"38123813p-locate@^5.0.0:3814 version "5.0.0"3815 resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"3816 integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==3817 dependencies:3818 p-limit "^3.0.2"38193820p-try@^2.0.0:3821 version "2.2.0"3822 resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"3823 integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==38243825pako@^2.0.4:3826 version "2.0.4"3827 resolved "https://registry.yarnpkg.com/pako/-/pako-2.0.4.tgz#6cebc4bbb0b6c73b0d5b8d7e8476e2b2fbea576d"3828 integrity sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg==38293830parent-module@^1.0.0:3831 version "1.0.1"3832 resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"3833 integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==3834 dependencies:3835 callsites "^3.0.0"38363837parse-asn1@^5.0.0, parse-asn1@^5.1.5:3838 version "5.1.6"3839 resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4"3840 integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==3841 dependencies:3842 asn1.js "^5.2.0"3843 browserify-aes "^1.0.0"3844 evp_bytestokey "^1.0.0"3845 pbkdf2 "^3.0.3"3846 safe-buffer "^5.1.1"38473848parse-headers@^2.0.0:3849 version "2.0.5"3850 resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9"3851 integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==38523853parseurl@~1.3.3:3854 version "1.3.3"3855 resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"3856 integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==38573858path-exists@^3.0.0:3859 version "3.0.0"3860 resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"3861 integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==38623863path-exists@^4.0.0:3864 version "4.0.0"3865 resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"3866 integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==38673868path-is-absolute@^1.0.0:3869 version "1.0.1"3870 resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"3871 integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==38723873path-key@^3.1.0:3874 version "3.1.1"3875 resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"3876 integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==38773878path-to-regexp@0.1.7:3879 version "0.1.7"3880 resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"3881 integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==38823883path-type@^4.0.0:3884 version "4.0.0"3885 resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"3886 integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==38873888pathval@^1.1.1:3889 version "1.1.1"3890 resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d"3891 integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==38923893pbkdf2@^3.0.17, pbkdf2@^3.0.3:3894 version "3.1.2"3895 resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"3896 integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==3897 dependencies:3898 create-hash "^1.1.2"3899 create-hmac "^1.1.4"3900 ripemd160 "^2.0.1"3901 safe-buffer "^5.0.1"3902 sha.js "^2.4.8"39033904performance-now@^2.1.0:3905 version "2.1.0"3906 resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"3907 integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==39083909picocolors@^1.0.0:3910 version "1.0.0"3911 resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"3912 integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==39133914picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1:3915 version "2.3.1"3916 resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"3917 integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==39183919pify@^4.0.1:3920 version "4.0.1"3921 resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"3922 integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==39233924pirates@^4.0.5:3925 version "4.0.5"3926 resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"3927 integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==39283929pkg-dir@^3.0.0:3930 version "3.0.0"3931 resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"3932 integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==3933 dependencies:3934 find-up "^3.0.0"39353936prelude-ls@^1.2.1:3937 version "1.2.1"3938 resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"3939 integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==39403941process@^0.11.10:3942 version "0.11.10"3943 resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"3944 integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==39453946propagate@^2.0.0:3947 version "2.0.1"3948 resolved "https://registry.yarnpkg.com/propagate/-/propagate-2.0.1.tgz#40cdedab18085c792334e64f0ac17256d38f9a45"3949 integrity sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==39503951proxy-addr@~2.0.7:3952 version "2.0.7"3953 resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"3954 integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==3955 dependencies:3956 forwarded "0.2.0"3957 ipaddr.js "1.9.1"39583959psl@^1.1.28:3960 version "1.9.0"3961 resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"3962 integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==39633964public-encrypt@^4.0.0:3965 version "4.0.3"3966 resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"3967 integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==3968 dependencies:3969 bn.js "^4.1.0"3970 browserify-rsa "^4.0.0"3971 create-hash "^1.1.0"3972 parse-asn1 "^5.0.0"3973 randombytes "^2.0.1"3974 safe-buffer "^5.1.2"39753976pump@^3.0.0:3977 version "3.0.0"3978 resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"3979 integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==3980 dependencies:3981 end-of-stream "^1.1.0"3982 once "^1.3.1"39833984punycode@2.1.0:3985 version "2.1.0"3986 resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"3987 integrity sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==39883989punycode@^2.1.0, punycode@^2.1.1:3990 version "2.1.1"3991 resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"3992 integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==39933994qs@6.11.0:3995 version "6.11.0"3996 resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"3997 integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==3998 dependencies:3999 side-channel "^1.0.4"40004001qs@~6.5.2:4002 version "6.5.3"4003 resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"4004 integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==40054006query-string@^5.0.1:4007 version "5.1.1"4008 resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb"4009 integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==4010 dependencies:4011 decode-uri-component "^0.2.0"4012 object-assign "^4.1.0"4013 strict-uri-encode "^1.0.0"40144015queue-microtask@^1.2.2:4016 version "1.2.3"4017 resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"4018 integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==40194020quick-lru@^5.1.1:4021 version "5.1.1"4022 resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"4023 integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==40244025rambda@^7.1.0:4026 version "7.3.0"4027 resolved "https://registry.yarnpkg.com/rambda/-/rambda-7.3.0.tgz#90e440ead53030a216093865d8d97997a80868ca"4028 integrity sha512-RFVofZYaG2TaVcxjnM0ejdVWf/59rFq1f57OGnjP3GT/bthzFw0GVr5rkP9PKbVlEuF/Y7bOVPLfiiYfxq/EWQ==40294030randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0:4031 version "2.1.0"4032 resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"4033 integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==4034 dependencies:4035 safe-buffer "^5.1.0"40364037randomfill@^1.0.3:4038 version "1.0.4"4039 resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"4040 integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==4041 dependencies:4042 randombytes "^2.0.5"4043 safe-buffer "^5.1.0"40444045range-parser@~1.2.1:4046 version "1.2.1"4047 resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"4048 integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==40494050raw-body@2.5.1:4051 version "2.5.1"4052 resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857"4053 integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==4054 dependencies:4055 bytes "3.1.2"4056 http-errors "2.0.0"4057 iconv-lite "0.4.24"4058 unpipe "1.0.0"40594060readable-stream@^3.6.0:4061 version "3.6.0"4062 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"4063 integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==4064 dependencies:4065 inherits "^2.0.3"4066 string_decoder "^1.1.1"4067 util-deprecate "^1.0.1"40684069readdirp@~3.6.0:4070 version "3.6.0"4071 resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"4072 integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==4073 dependencies:4074 picomatch "^2.2.1"40754076regenerator-runtime@^0.13.4:4077 version "0.13.10"4078 resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz#ed07b19616bcbec5da6274ebc75ae95634bfc2ee"4079 integrity sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==40804081regexp.prototype.flags@^1.4.3:4082 version "1.4.3"4083 resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac"4084 integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==4085 dependencies:4086 call-bind "^1.0.2"4087 define-properties "^1.1.3"4088 functions-have-names "^1.2.2"40894090regexpp@^3.2.0:4091 version "3.2.0"4092 resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"4093 integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==40944095request@^2.79.0:4096 version "2.88.2"4097 resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"4098 integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==4099 dependencies:4100 aws-sign2 "~0.7.0"4101 aws4 "^1.8.0"4102 caseless "~0.12.0"4103 combined-stream "~1.0.6"4104 extend "~3.0.2"4105 forever-agent "~0.6.1"4106 form-data "~2.3.2"4107 har-validator "~5.1.3"4108 http-signature "~1.2.0"4109 is-typedarray "~1.0.0"4110 isstream "~0.1.2"4111 json-stringify-safe "~5.0.1"4112 mime-types "~2.1.19"4113 oauth-sign "~0.9.0"4114 performance-now "^2.1.0"4115 qs "~6.5.2"4116 safe-buffer "^5.1.2"4117 tough-cookie "~2.5.0"4118 tunnel-agent "^0.6.0"4119 uuid "^3.3.2"41204121require-directory@^2.1.1:4122 version "2.1.1"4123 resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"4124 integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==41254126resolve-alpn@^1.0.0, resolve-alpn@^1.2.0:4127 version "1.2.1"4128 resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"4129 integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==41304131resolve-from@^4.0.0:4132 version "4.0.0"4133 resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"4134 integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==41354136responselike@^2.0.0:4137 version "2.0.1"4138 resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc"4139 integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==4140 dependencies:4141 lowercase-keys "^2.0.0"41424143reusify@^1.0.4:4144 version "1.0.4"4145 resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"4146 integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==41474148rimraf@^3.0.2:4149 version "3.0.2"4150 resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"4151 integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==4152 dependencies:4153 glob "^7.1.3"41544155ripemd160@^2.0.0, ripemd160@^2.0.1:4156 version "2.0.2"4157 resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"4158 integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==4159 dependencies:4160 hash-base "^3.0.0"4161 inherits "^2.0.1"41624163rlp@^2.2.4:4164 version "2.2.7"4165 resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf"4166 integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==4167 dependencies:4168 bn.js "^5.2.0"41694170run-parallel@^1.1.9:4171 version "1.2.0"4172 resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"4173 integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==4174 dependencies:4175 queue-microtask "^1.2.2"41764177rxjs@^7.5.7:4178 version "7.5.7"4179 resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.7.tgz#2ec0d57fdc89ece220d2e702730ae8f1e49def39"4180 integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==4181 dependencies:4182 tslib "^2.1.0"41834184safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0:4185 version "5.2.1"4186 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"4187 integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==41884189safe-buffer@~5.1.0:4190 version "5.1.2"4191 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"4192 integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==41934194safe-regex-test@^1.0.0:4195 version "1.0.0"4196 resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"4197 integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==4198 dependencies:4199 call-bind "^1.0.2"4200 get-intrinsic "^1.1.3"4201 is-regex "^1.1.4"42024203"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:4204 version "2.1.2"4205 resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"4206 integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==42074208scrypt-js@^3.0.0, scrypt-js@^3.0.1:4209 version "3.0.1"4210 resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312"4211 integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==42124213secp256k1@^4.0.1:4214 version "4.0.3"4215 resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303"4216 integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==4217 dependencies:4218 elliptic "^6.5.4"4219 node-addon-api "^2.0.0"4220 node-gyp-build "^4.2.0"42214222semver@^5.5.0, semver@^5.6.0:4223 version "5.7.1"4224 resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"4225 integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==42264227semver@^6.3.0:4228 version "6.3.0"4229 resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"4230 integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==42314232semver@^7.3.7:4233 version "7.3.8"4234 resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798"4235 integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==4236 dependencies:4237 lru-cache "^6.0.0"42384239send@0.18.0:4240 version "0.18.0"4241 resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"4242 integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==4243 dependencies:4244 debug "2.6.9"4245 depd "2.0.0"4246 destroy "1.2.0"4247 encodeurl "~1.0.2"4248 escape-html "~1.0.3"4249 etag "~1.8.1"4250 fresh "0.5.2"4251 http-errors "2.0.0"4252 mime "1.6.0"4253 ms "2.1.3"4254 on-finished "2.4.1"4255 range-parser "~1.2.1"4256 statuses "2.0.1"42574258serialize-javascript@6.0.0:4259 version "6.0.0"4260 resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"4261 integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==4262 dependencies:4263 randombytes "^2.1.0"42644265serve-static@1.15.0:4266 version "1.15.0"4267 resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"4268 integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==4269 dependencies:4270 encodeurl "~1.0.2"4271 escape-html "~1.0.3"4272 parseurl "~1.3.3"4273 send "0.18.0"42744275servify@^0.1.12:4276 version "0.1.12"4277 resolved "https://registry.yarnpkg.com/servify/-/servify-0.1.12.tgz#142ab7bee1f1d033b66d0707086085b17c06db95"4278 integrity sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==4279 dependencies:4280 body-parser "^1.16.0"4281 cors "^2.8.1"4282 express "^4.14.0"4283 request "^2.79.0"4284 xhr "^2.3.3"42854286setimmediate@^1.0.5:4287 version "1.0.5"4288 resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"4289 integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==42904291setprototypeof@1.2.0:4292 version "1.2.0"4293 resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"4294 integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==42954296sha.js@^2.4.0, sha.js@^2.4.8:4297 version "2.4.11"4298 resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"4299 integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==4300 dependencies:4301 inherits "^2.0.1"4302 safe-buffer "^5.0.1"43034304shallow-clone@^3.0.0:4305 version "3.0.1"4306 resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"4307 integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==4308 dependencies:4309 kind-of "^6.0.2"43104311shebang-command@^2.0.0:4312 version "2.0.0"4313 resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"4314 integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==4315 dependencies:4316 shebang-regex "^3.0.0"43174318shebang-regex@^3.0.0:4319 version "3.0.0"4320 resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"4321 integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==43224323side-channel@^1.0.4:4324 version "1.0.4"4325 resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"4326 integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==4327 dependencies:4328 call-bind "^1.0.0"4329 get-intrinsic "^1.0.2"4330 object-inspect "^1.9.0"43314332simple-concat@^1.0.0:4333 version "1.0.1"4334 resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f"4335 integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==43364337simple-get@^2.7.0:4338 version "2.8.2"4339 resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.2.tgz#5708fb0919d440657326cd5fe7d2599d07705019"4340 integrity sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==4341 dependencies:4342 decompress-response "^3.3.0"4343 once "^1.3.1"4344 simple-concat "^1.0.0"43454346slash@^3.0.0:4347 version "3.0.0"4348 resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"4349 integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==43504351solc@0.8.17:4352 version "0.8.17"4353 resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.17.tgz#c748fec6a64bf029ec406aa9b37e75938d1115ae"4354 integrity sha512-Dtidk2XtTTmkB3IKdyeg6wLYopJnBVxdoykN8oP8VY3PQjN16BScYoUJTXFm2OP7P0hXNAqWiJNmmfuELtLf8g==4355 dependencies:4356 command-exists "^1.2.8"4357 commander "^8.1.0"4358 follow-redirects "^1.12.1"4359 js-sha3 "0.8.0"4360 memorystream "^0.3.1"4361 semver "^5.5.0"4362 tmp "0.0.33"43634364source-map-support@^0.5.16:4365 version "0.5.21"4366 resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"4367 integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==4368 dependencies:4369 buffer-from "^1.0.0"4370 source-map "^0.6.0"43714372source-map@^0.6.0, source-map@^0.6.1:4373 version "0.6.1"4374 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"4375 integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==43764377sshpk@^1.7.0:4378 version "1.17.0"4379 resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"4380 integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==4381 dependencies:4382 asn1 "~0.2.3"4383 assert-plus "^1.0.0"4384 bcrypt-pbkdf "^1.0.0"4385 dashdash "^1.12.0"4386 ecc-jsbn "~0.1.1"4387 getpass "^0.1.1"4388 jsbn "~0.1.0"4389 safer-buffer "^2.0.2"4390 tweetnacl "~0.14.0"43914392statuses@2.0.1:4393 version "2.0.1"4394 resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"4395 integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==43964397strict-uri-encode@^1.0.0:4398 version "1.1.0"4399 resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"4400 integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==44014402string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:4403 version "4.2.3"4404 resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"4405 integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==4406 dependencies:4407 emoji-regex "^8.0.0"4408 is-fullwidth-code-point "^3.0.0"4409 strip-ansi "^6.0.1"44104411string.prototype.trimend@^1.0.5:4412 version "1.0.5"4413 resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0"4414 integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==4415 dependencies:4416 call-bind "^1.0.2"4417 define-properties "^1.1.4"4418 es-abstract "^1.19.5"44194420string.prototype.trimstart@^1.0.5:4421 version "1.0.5"4422 resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef"4423 integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==4424 dependencies:4425 call-bind "^1.0.2"4426 define-properties "^1.1.4"4427 es-abstract "^1.19.5"44284429string_decoder@^1.1.1:4430 version "1.3.0"4431 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"4432 integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==4433 dependencies:4434 safe-buffer "~5.2.0"44354436strip-ansi@^6.0.0, strip-ansi@^6.0.1:4437 version "6.0.1"4438 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"4439 integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==4440 dependencies:4441 ansi-regex "^5.0.1"44424443strip-hex-prefix@1.0.0:4444 version "1.0.0"4445 resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f"4446 integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==4447 dependencies:4448 is-hex-prefixed "1.0.0"44494450strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:4451 version "3.1.1"4452 resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"4453 integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==44544455supports-color@8.1.1:4456 version "8.1.1"4457 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"4458 integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==4459 dependencies:4460 has-flag "^4.0.0"44614462supports-color@^5.3.0:4463 version "5.5.0"4464 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"4465 integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==4466 dependencies:4467 has-flag "^3.0.0"44684469supports-color@^7.1.0:4470 version "7.2.0"4471 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"4472 integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==4473 dependencies:4474 has-flag "^4.0.0"44754476swarm-js@^0.1.40:4477 version "0.1.42"4478 resolved "https://registry.yarnpkg.com/swarm-js/-/swarm-js-0.1.42.tgz#497995c62df6696f6e22372f457120e43e727979"4479 integrity sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==4480 dependencies:4481 bluebird "^3.5.0"4482 buffer "^5.0.5"4483 eth-lib "^0.1.26"4484 fs-extra "^4.0.2"4485 got "^11.8.5"4486 mime-types "^2.1.16"4487 mkdirp-promise "^5.0.1"4488 mock-fs "^4.1.0"4489 setimmediate "^1.0.5"4490 tar "^4.0.2"4491 xhr-request "^1.0.1"44924493tar@^4.0.2:4494 version "4.4.19"4495 resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3"4496 integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==4497 dependencies:4498 chownr "^1.1.4"4499 fs-minipass "^1.2.7"4500 minipass "^2.9.0"4501 minizlib "^1.3.3"4502 mkdirp "^0.5.5"4503 safe-buffer "^5.2.1"4504 yallist "^3.1.1"45054506text-table@^0.2.0:4507 version "0.2.0"4508 resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"4509 integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==45104511timed-out@^4.0.1:4512 version "4.0.1"4513 resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"4514 integrity sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==45154516tmp@0.0.33:4517 version "0.0.33"4518 resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"4519 integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==4520 dependencies:4521 os-tmpdir "~1.0.2"45224523to-fast-properties@^2.0.0:4524 version "2.0.0"4525 resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"4526 integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==45274528to-regex-range@^5.0.1:4529 version "5.0.1"4530 resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"4531 integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==4532 dependencies:4533 is-number "^7.0.0"45344535toidentifier@1.0.1:4536 version "1.0.1"4537 resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"4538 integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==45394540tough-cookie@~2.5.0:4541 version "2.5.0"4542 resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"4543 integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==4544 dependencies:4545 psl "^1.1.28"4546 punycode "^2.1.1"45474548tr46@~0.0.3:4549 version "0.0.3"4550 resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"4551 integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==45524553ts-node@^10.9.1:4554 version "10.9.1"4555 resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"4556 integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==4557 dependencies:4558 "@cspotcode/source-map-support" "^0.8.0"4559 "@tsconfig/node10" "^1.0.7"4560 "@tsconfig/node12" "^1.0.7"4561 "@tsconfig/node14" "^1.0.0"4562 "@tsconfig/node16" "^1.0.2"4563 acorn "^8.4.1"4564 acorn-walk "^8.1.1"4565 arg "^4.1.0"4566 create-require "^1.1.0"4567 diff "^4.0.1"4568 make-error "^1.1.1"4569 v8-compile-cache-lib "^3.0.1"4570 yn "3.1.1"45714572tslib@^1.8.1:4573 version "1.14.1"4574 resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"4575 integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==45764577tslib@^2.1.0:4578 version "2.4.0"4579 resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"4580 integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==45814582tsutils@^3.21.0:4583 version "3.21.0"4584 resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"4585 integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==4586 dependencies:4587 tslib "^1.8.1"45884589tunnel-agent@^0.6.0:4590 version "0.6.0"4591 resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"4592 integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==4593 dependencies:4594 safe-buffer "^5.0.1"45954596tweetnacl@1.x.x, tweetnacl@^1.0.3:4597 version "1.0.3"4598 resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596"4599 integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==46004601tweetnacl@^0.14.3, tweetnacl@~0.14.0:4602 version "0.14.5"4603 resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"4604 integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==46054606type-check@^0.4.0, type-check@~0.4.0:4607 version "0.4.0"4608 resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"4609 integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==4610 dependencies:4611 prelude-ls "^1.2.1"46124613type-detect@^4.0.0, type-detect@^4.0.5:4614 version "4.0.8"4615 resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"4616 integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==46174618type-fest@^0.20.2:4619 version "0.20.2"4620 resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"4621 integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==46224623type-is@~1.6.18:4624 version "1.6.18"4625 resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"4626 integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==4627 dependencies:4628 media-typer "0.3.0"4629 mime-types "~2.1.24"46304631type@^1.0.1:4632 version "1.2.0"4633 resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0"4634 integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==46354636type@^2.7.2:4637 version "2.7.2"4638 resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0"4639 integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==46404641typedarray-to-buffer@^3.1.5:4642 version "3.1.5"4643 resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"4644 integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==4645 dependencies:4646 is-typedarray "^1.0.0"46474648typescript@^4.8.4:4649 version "4.8.4"4650 resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6"4651 integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==46524653uglify-js@^3.1.4:4654 version "3.17.3"4655 resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.3.tgz#f0feedf019c4510f164099e8d7e72ff2d7304377"4656 integrity sha512-JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==46574658ultron@~1.1.0:4659 version "1.1.1"4660 resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"4661 integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==46624663unbox-primitive@^1.0.2:4664 version "1.0.2"4665 resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"4666 integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==4667 dependencies:4668 call-bind "^1.0.2"4669 has-bigints "^1.0.2"4670 has-symbols "^1.0.3"4671 which-boxed-primitive "^1.0.2"46724673universalify@^0.1.0:4674 version "0.1.2"4675 resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"4676 integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==46774678unpipe@1.0.0, unpipe@~1.0.0:4679 version "1.0.0"4680 resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"4681 integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==46824683update-browserslist-db@^1.0.9:4684 version "1.0.10"4685 resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3"4686 integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==4687 dependencies:4688 escalade "^3.1.1"4689 picocolors "^1.0.0"46904691uri-js@^4.2.2:4692 version "4.4.1"4693 resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"4694 integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==4695 dependencies:4696 punycode "^2.1.0"46974698url-set-query@^1.0.0:4699 version "1.0.0"4700 resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339"4701 integrity sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==47024703utf-8-validate@^5.0.2:4704 version "5.0.10"4705 resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2"4706 integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==4707 dependencies:4708 node-gyp-build "^4.3.0"47094710utf8@3.0.0:4711 version "3.0.0"4712 resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1"4713 integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==47144715util-deprecate@^1.0.1:4716 version "1.0.2"4717 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"4718 integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==47194720util@^0.12.0:4721 version "0.12.5"4722 resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc"4723 integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==4724 dependencies:4725 inherits "^2.0.3"4726 is-arguments "^1.0.4"4727 is-generator-function "^1.0.7"4728 is-typed-array "^1.1.3"4729 which-typed-array "^1.1.2"47304731utils-merge@1.0.1:4732 version "1.0.1"4733 resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"4734 integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==47354736uuid@3.3.2:4737 version "3.3.2"4738 resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"4739 integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==47404741uuid@^3.3.2:4742 version "3.4.0"4743 resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"4744 integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==47454746v8-compile-cache-lib@^3.0.1:4747 version "3.0.1"4748 resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"4749 integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==47504751varint@^5.0.0:4752 version "5.0.2"4753 resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4"4754 integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==47554756vary@^1, vary@~1.1.2:4757 version "1.1.2"4758 resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"4759 integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==47604761verror@1.10.0:4762 version "1.10.0"4763 resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"4764 integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==4765 dependencies:4766 assert-plus "^1.0.0"4767 core-util-is "1.0.2"4768 extsprintf "^1.2.0"47694770web-streams-polyfill@^3.0.3:4771 version "3.2.1"4772 resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6"4773 integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==47744775web3-bzz@1.8.0:4776 version "1.8.0"4777 resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.8.0.tgz#2023676d7c17ea36512bf76eb310755a02a3d464"4778 integrity sha512-caDtdKeLi7+2Vb+y+cq2yyhkNjnxkFzVW0j1DtemarBg3dycG1iEl75CVQMLNO6Wkg+HH9tZtRnUyFIe5LIUeQ==4779 dependencies:4780 "@types/node" "^12.12.6"4781 got "12.1.0"4782 swarm-js "^0.1.40"47834784web3-core-helpers@1.8.0:4785 version "1.8.0"4786 resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.8.0.tgz#5dcfdda1a4ea277041d912003198f1334ca29d7c"4787 integrity sha512-nMAVwZB3rEp/khHI2BvFy0e/xCryf501p5NGjswmJtEM+Zrd3Biaw52JrB1qAZZIzCA8cmLKaOgdfamoDOpWdw==4788 dependencies:4789 web3-eth-iban "1.8.0"4790 web3-utils "1.8.0"47914792web3-core-method@1.8.0:4793 version "1.8.0"4794 resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.8.0.tgz#9c2da8896808917d1679c319f19e2174ba17086c"4795 integrity sha512-c94RAzo3gpXwf2rf8rL8C77jOzNWF4mXUoUfZYYsiY35cJFd46jQDPI00CB5+ZbICTiA5mlVzMj4e7jAsTqiLA==4796 dependencies:4797 "@ethersproject/transactions" "^5.6.2"4798 web3-core-helpers "1.8.0"4799 web3-core-promievent "1.8.0"4800 web3-core-subscriptions "1.8.0"4801 web3-utils "1.8.0"48024803web3-core-promievent@1.8.0:4804 version "1.8.0"4805 resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.8.0.tgz#979765fd4d37ab0f158f0ee54037b279b737bd53"4806 integrity sha512-FGLyjAuOaAQ+ZhV6iuw9tg/9WvIkSZXKHQ4mdTyQ8MxVraOtFivOCbuLLsGgapfHYX+RPxsc1j1YzQjKoupagQ==4807 dependencies:4808 eventemitter3 "4.0.4"48094810web3-core-requestmanager@1.8.0:4811 version "1.8.0"4812 resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.8.0.tgz#06189df80cf52d24a195a7ef655031afe8192df3"4813 integrity sha512-2AoYCs3Owl5foWcf4uKPONyqFygSl9T54L8b581U16nsUirjhoTUGK/PBhMDVcLCmW4QQmcY5A8oPFpkQc1TTg==4814 dependencies:4815 util "^0.12.0"4816 web3-core-helpers "1.8.0"4817 web3-providers-http "1.8.0"4818 web3-providers-ipc "1.8.0"4819 web3-providers-ws "1.8.0"48204821web3-core-subscriptions@1.8.0:4822 version "1.8.0"4823 resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.8.0.tgz#ff66ae4467c8cb4716367248bcefb1845c0f8b83"4824 integrity sha512-7lHVRzDdg0+Gcog55lG6Q3D8JV+jN+4Ly6F8cSn9xFUAwOkdbgdWsjknQG7t7CDWy21DQkvdiY2BJF8S68AqOA==4825 dependencies:4826 eventemitter3 "4.0.4"4827 web3-core-helpers "1.8.0"48284829web3-core@1.8.0:4830 version "1.8.0"4831 resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.8.0.tgz#90afce527ac1b1dff8cbed2acbc0336530b8aacf"4832 integrity sha512-9sCA+Z02ci6zoY2bAquFiDjujRwmSKHiSGi4B8IstML8okSytnzXk1izHYSynE7ahIkguhjWAuXFvX76F5rAbA==4833 dependencies:4834 "@types/bn.js" "^5.1.0"4835 "@types/node" "^12.12.6"4836 bignumber.js "^9.0.0"4837 web3-core-helpers "1.8.0"4838 web3-core-method "1.8.0"4839 web3-core-requestmanager "1.8.0"4840 web3-utils "1.8.0"48414842web3-eth-abi@1.8.0:4843 version "1.8.0"4844 resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.8.0.tgz#47fdff00bfdfa72064c9c612ff6369986598196d"4845 integrity sha512-xPeMb2hS9YLQK/Q5YZpkcmzoRGM+/R8bogSrYHhNC3hjZSSU0YRH+1ZKK0f9YF4qDZaPMI8tKWIMSCDIpjG6fg==4846 dependencies:4847 "@ethersproject/abi" "^5.6.3"4848 web3-utils "1.8.0"48494850web3-eth-accounts@1.8.0:4851 version "1.8.0"4852 resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.8.0.tgz#960d947ee87a49d6c706dc6312334fbfbd6ff812"4853 integrity sha512-HQ/MDSv4bexwJLvnqsM6xpGE7c2NVOqyhzOZFyMUKXbIwIq85T3TaLnM9pCN7XqMpDcfxqiZ3q43JqQVkzHdmw==4854 dependencies:4855 "@ethereumjs/common" "^2.5.0"4856 "@ethereumjs/tx" "^3.3.2"4857 crypto-browserify "3.12.0"4858 eth-lib "0.2.8"4859 ethereumjs-util "^7.0.10"4860 scrypt-js "^3.0.1"4861 uuid "3.3.2"4862 web3-core "1.8.0"4863 web3-core-helpers "1.8.0"4864 web3-core-method "1.8.0"4865 web3-utils "1.8.0"48664867web3-eth-contract@1.8.0:4868 version "1.8.0"4869 resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.8.0.tgz#58f4ce0bde74e5ce87663502e409a92abad7b2c5"4870 integrity sha512-6xeXhW2YoCrz2Ayf2Vm4srWiMOB6LawkvxWJDnUWJ8SMATg4Pgu42C/j8rz/enXbYWt2IKuj0kk8+QszxQbK+Q==4871 dependencies:4872 "@types/bn.js" "^5.1.0"4873 web3-core "1.8.0"4874 web3-core-helpers "1.8.0"4875 web3-core-method "1.8.0"4876 web3-core-promievent "1.8.0"4877 web3-core-subscriptions "1.8.0"4878 web3-eth-abi "1.8.0"4879 web3-utils "1.8.0"48804881web3-eth-ens@1.8.0:4882 version "1.8.0"4883 resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.8.0.tgz#f1937371eac54b087ebe2e871780c2710d39998d"4884 integrity sha512-/eFbQEwvsMOEiOhw9/iuRXCsPkqAmHHWuFOrThQkozRgcnSTRnvxkkRC/b6koiT5/HaKeUs4yQDg+/ixsIxZxA==4885 dependencies:4886 content-hash "^2.5.2"4887 eth-ens-namehash "2.0.8"4888 web3-core "1.8.0"4889 web3-core-helpers "1.8.0"4890 web3-core-promievent "1.8.0"4891 web3-eth-abi "1.8.0"4892 web3-eth-contract "1.8.0"4893 web3-utils "1.8.0"48944895web3-eth-iban@1.8.0:4896 version "1.8.0"4897 resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.8.0.tgz#3af8a0c95b5f7b0b81ab0bcd2075c1e5dda31520"4898 integrity sha512-4RbvUxcMpo/e5811sE3a6inJ2H4+FFqUVmlRYs0RaXaxiHweahSRBNcpO0UWgmlePTolj0rXqPT2oEr0DuC8kg==4899 dependencies:4900 bn.js "^5.2.1"4901 web3-utils "1.8.0"49024903web3-eth-personal@1.8.0:4904 version "1.8.0"4905 resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.8.0.tgz#433c35e2e042844402a12d543c4126ea1494b478"4906 integrity sha512-L7FT4nR3HmsfZyIAhFpEctKkYGOjRC2h6iFKs9gnFCHZga8yLcYcGaYOBIoYtaKom99MuGBoosayWt/Twh7F5A==4907 dependencies:4908 "@types/node" "^12.12.6"4909 web3-core "1.8.0"4910 web3-core-helpers "1.8.0"4911 web3-core-method "1.8.0"4912 web3-net "1.8.0"4913 web3-utils "1.8.0"49144915web3-eth@1.8.0:4916 version "1.8.0"4917 resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.8.0.tgz#006974a5d5e30644d05814111f9e162a72e4a09c"4918 integrity sha512-hist52os3OT4TQFB/GxPSMxTh3995sz6LPvQpPvj7ktSbpg9RNSFaSsPlCT63wUAHA3PZb1FemkAIeQM5t72Lw==4919 dependencies:4920 web3-core "1.8.0"4921 web3-core-helpers "1.8.0"4922 web3-core-method "1.8.0"4923 web3-core-subscriptions "1.8.0"4924 web3-eth-abi "1.8.0"4925 web3-eth-accounts "1.8.0"4926 web3-eth-contract "1.8.0"4927 web3-eth-ens "1.8.0"4928 web3-eth-iban "1.8.0"4929 web3-eth-personal "1.8.0"4930 web3-net "1.8.0"4931 web3-utils "1.8.0"49324933web3-net@1.8.0:4934 version "1.8.0"4935 resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.8.0.tgz#9acff92d7c647d801bc68df0ff4416f104dbe789"4936 integrity sha512-kX6EAacK7QrOe7DOh0t5yHS5q2kxZmTCxPVwSz9io9xBeE4n4UhmzGJ/VfhP2eM3OPKYeypcR3LEO6zZ8xn2vw==4937 dependencies:4938 web3-core "1.8.0"4939 web3-core-method "1.8.0"4940 web3-utils "1.8.0"49414942web3-providers-http@1.8.0:4943 version "1.8.0"4944 resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.8.0.tgz#3fd1e569ead2095343fac17d53160a3bae674c23"4945 integrity sha512-/MqxwRzExohBWW97mqlCSW/+NHydGRyoEDUS1bAIF2YjfKFwyRtHgrEzOojzkC9JvB+8LofMvbXk9CcltpZapw==4946 dependencies:4947 abortcontroller-polyfill "^1.7.3"4948 cross-fetch "^3.1.4"4949 es6-promise "^4.2.8"4950 web3-core-helpers "1.8.0"49514952web3-providers-ipc@1.8.0:4953 version "1.8.0"4954 resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.8.0.tgz#d339a24c4d764e459e425d3ac868a551ac33e3ea"4955 integrity sha512-tAXHtVXNUOgehaBU8pzAlB3qhjn/PRpjdzEjzHNFqtRRTwzSEKOJxFeEhaUA4FzHnTlbnrs8ujHWUitcp1elfg==4956 dependencies:4957 oboe "2.1.5"4958 web3-core-helpers "1.8.0"49594960web3-providers-ws@1.8.0:4961 version "1.8.0"4962 resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.8.0.tgz#a0a73e0606981ea32bed40d215000a64753899de"4963 integrity sha512-bcZtSifsqyJxwkfQYamfdIRp4nhj9eJd7cxHg1uUkfLJK125WP96wyJL1xbPt7qt0MpfnTFn8/UuIqIB6nFENg==4964 dependencies:4965 eventemitter3 "4.0.4"4966 web3-core-helpers "1.8.0"4967 websocket "^1.0.32"49684969web3-shh@1.8.0:4970 version "1.8.0"4971 resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.8.0.tgz#b4abbf4f59d097ce2f74360e61e2e5c0bd6507c7"4972 integrity sha512-DNRgSa9Jf9xYFUGKSMylrf+zt3MPjhI2qF+UWX07o0y3+uf8zalDGiJOWvIS4upAsdPiKKVJ7co+Neof47OMmg==4973 dependencies:4974 web3-core "1.8.0"4975 web3-core-method "1.8.0"4976 web3-core-subscriptions "1.8.0"4977 web3-net "1.8.0"49784979web3-utils@1.8.0:4980 version "1.8.0"4981 resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.8.0.tgz#0a506f8c6af9a2ad6ba79689892662769534fc03"4982 integrity sha512-7nUIl7UWpLVka2f09CMbKOSEvorvHnaugIabU4mj7zfMvm0tSByLcEu3eyV9qgS11qxxLuOkzBIwCstTflhmpQ==4983 dependencies:4984 bn.js "^5.2.1"4985 ethereum-bloom-filters "^1.0.6"4986 ethereumjs-util "^7.1.0"4987 ethjs-unit "0.1.6"4988 number-to-bn "1.7.0"4989 randombytes "^2.1.0"4990 utf8 "3.0.0"49914992web3@^1.8.0:4993 version "1.8.0"4994 resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.0.tgz#3ca5f0b32de6a1f626407740411219035b5fde64"4995 integrity sha512-sldr9stK/SALSJTgI/8qpnDuBJNMGjVR84hJ+AcdQ+MLBGLMGsCDNubCoyO6qgk1/Y9SQ7ignegOI/7BPLoiDA==4996 dependencies:4997 web3-bzz "1.8.0"4998 web3-core "1.8.0"4999 web3-eth "1.8.0"5000 web3-eth-personal "1.8.0"5001 web3-net "1.8.0"5002 web3-shh "1.8.0"5003 web3-utils "1.8.0"50045005webidl-conversions@^3.0.0:5006 version "3.0.1"5007 resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"5008 integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==50095010websocket@^1.0.32, websocket@^1.0.34:5011 version "1.0.34"5012 resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.34.tgz#2bdc2602c08bf2c82253b730655c0ef7dcab3111"5013 integrity sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==5014 dependencies:5015 bufferutil "^4.0.1"5016 debug "^2.2.0"5017 es5-ext "^0.10.50"5018 typedarray-to-buffer "^3.1.5"5019 utf-8-validate "^5.0.2"5020 yaeti "^0.0.6"50215022whatwg-url@^5.0.0:5023 version "5.0.0"5024 resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"5025 integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==5026 dependencies:5027 tr46 "~0.0.3"5028 webidl-conversions "^3.0.0"50295030which-boxed-primitive@^1.0.2:5031 version "1.0.2"5032 resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"5033 integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==5034 dependencies:5035 is-bigint "^1.0.1"5036 is-boolean-object "^1.1.0"5037 is-number-object "^1.0.4"5038 is-string "^1.0.5"5039 is-symbol "^1.0.3"50405041which-typed-array@^1.1.2:5042 version "1.1.8"5043 resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.8.tgz#0cfd53401a6f334d90ed1125754a42ed663eb01f"5044 integrity sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==5045 dependencies:5046 available-typed-arrays "^1.0.5"5047 call-bind "^1.0.2"5048 es-abstract "^1.20.0"5049 for-each "^0.3.3"5050 has-tostringtag "^1.0.0"5051 is-typed-array "^1.1.9"50525053which@^2.0.1:5054 version "2.0.2"5055 resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"5056 integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==5057 dependencies:5058 isexe "^2.0.0"50595060word-wrap@^1.2.3:5061 version "1.2.3"5062 resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"5063 integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==50645065wordwrap@^1.0.0:5066 version "1.0.0"5067 resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"5068 integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==50695070workerpool@6.2.1:5071 version "6.2.1"5072 resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343"5073 integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==50745075wrap-ansi@^7.0.0:5076 version "7.0.0"5077 resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"5078 integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==5079 dependencies:5080 ansi-styles "^4.0.0"5081 string-width "^4.1.0"5082 strip-ansi "^6.0.0"50835084wrappy@1:5085 version "1.0.2"5086 resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"5087 integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==50885089ws@^3.0.0:5090 version "3.3.3"5091 resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"5092 integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==5093 dependencies:5094 async-limiter "~1.0.0"5095 safe-buffer "~5.1.0"5096 ultron "~1.1.0"50975098ws@^8.8.1:5099 version "8.9.0"5100 resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e"5101 integrity sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==51025103xhr-request-promise@^0.1.2:5104 version "0.1.3"5105 resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz#2d5f4b16d8c6c893be97f1a62b0ed4cf3ca5f96c"5106 integrity sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==5107 dependencies:5108 xhr-request "^1.1.0"51095110xhr-request@^1.0.1, xhr-request@^1.1.0:5111 version "1.1.0"5112 resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed"5113 integrity sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==5114 dependencies:5115 buffer-to-arraybuffer "^0.0.5"5116 object-assign "^4.1.1"5117 query-string "^5.0.1"5118 simple-get "^2.7.0"5119 timed-out "^4.0.1"5120 url-set-query "^1.0.0"5121 xhr "^2.0.4"51225123xhr@^2.0.4, xhr@^2.3.3:5124 version "2.6.0"5125 resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.6.0.tgz#b69d4395e792b4173d6b7df077f0fc5e4e2b249d"5126 integrity sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==5127 dependencies:5128 global "~4.4.0"5129 is-function "^1.0.1"5130 parse-headers "^2.0.0"5131 xtend "^4.0.0"51325133xtend@^4.0.0:5134 version "4.0.2"5135 resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"5136 integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==51375138y18n@^5.0.5:5139 version "5.0.8"5140 resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"5141 integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==51425143yaeti@^0.0.6:5144 version "0.0.6"5145 resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577"5146 integrity sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==51475148yallist@^3.0.0, yallist@^3.1.1:5149 version "3.1.1"5150 resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"5151 integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==51525153yallist@^4.0.0:5154 version "4.0.0"5155 resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"5156 integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==51575158yargs-parser@20.2.4:5159 version "20.2.4"5160 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54"5161 integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==51625163yargs-parser@^20.2.2:5164 version "20.2.9"5165 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"5166 integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==51675168yargs-parser@^21.0.0:5169 version "21.1.1"5170 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"5171 integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==51725173yargs-unparser@2.0.0:5174 version "2.0.0"5175 resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb"5176 integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==5177 dependencies:5178 camelcase "^6.0.0"5179 decamelize "^4.0.0"5180 flat "^5.0.2"5181 is-plain-obj "^2.1.0"51825183yargs@16.2.0:5184 version "16.2.0"5185 resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"5186 integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==5187 dependencies:5188 cliui "^7.0.2"5189 escalade "^3.1.1"5190 get-caller-file "^2.0.5"5191 require-directory "^2.1.1"5192 string-width "^4.2.0"5193 y18n "^5.0.5"5194 yargs-parser "^20.2.2"51955196yargs@^17.6.0:5197 version "17.6.0"5198 resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.0.tgz#e134900fc1f218bc230192bdec06a0a5f973e46c"5199 integrity sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==5200 dependencies:5201 cliui "^8.0.1"5202 escalade "^3.1.1"5203 get-caller-file "^2.0.5"5204 require-directory "^2.1.1"5205 string-width "^4.2.3"5206 y18n "^5.0.5"5207 yargs-parser "^21.0.0"52085209yn@3.1.1:5210 version "3.1.1"5211 resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"5212 integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==52135214yocto-queue@^0.1.0:5215 version "0.1.0"5216 resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"5217 integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==1# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.2# yarn lockfile v1345"@ampproject/remapping@^2.1.0":6 version "2.2.0"7 resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"8 integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==9 dependencies:10 "@jridgewell/gen-mapping" "^0.1.0"11 "@jridgewell/trace-mapping" "^0.3.9"1213"@babel/code-frame@^7.18.6":14 version "7.18.6"15 resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a"16 integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==17 dependencies:18 "@babel/highlight" "^7.18.6"1920"@babel/compat-data@^7.19.3":21 version "7.19.4"22 resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.4.tgz#95c86de137bf0317f3a570e1b6e996b427299747"23 integrity sha512-CHIGpJcUQ5lU9KrPHTjBMhVwQG6CQjxfg36fGXl3qk/Gik1WwWachaXFuo0uCWJT/mStOKtcbFJCaVLihC1CMw==2425"@babel/core@^7.19.3":26 version "7.19.6"27 resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.6.tgz#7122ae4f5c5a37c0946c066149abd8e75f81540f"28 integrity sha512-D2Ue4KHpc6Ys2+AxpIx1BZ8+UegLLLE2p3KJEuJRKmokHOtl49jQ5ny1773KsGLZs8MQvBidAF6yWUJxRqtKtg==29 dependencies:30 "@ampproject/remapping" "^2.1.0"31 "@babel/code-frame" "^7.18.6"32 "@babel/generator" "^7.19.6"33 "@babel/helper-compilation-targets" "^7.19.3"34 "@babel/helper-module-transforms" "^7.19.6"35 "@babel/helpers" "^7.19.4"36 "@babel/parser" "^7.19.6"37 "@babel/template" "^7.18.10"38 "@babel/traverse" "^7.19.6"39 "@babel/types" "^7.19.4"40 convert-source-map "^1.7.0"41 debug "^4.1.0"42 gensync "^1.0.0-beta.2"43 json5 "^2.2.1"44 semver "^6.3.0"4546"@babel/generator@^7.19.6":47 version "7.19.6"48 resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.6.tgz#9e481a3fe9ca6261c972645ae3904ec0f9b34a1d"49 integrity sha512-oHGRUQeoX1QrKeJIKVe0hwjGqNnVYsM5Nep5zo0uE0m42sLH+Fsd2pStJ5sRM1bNyTUUoz0pe2lTeMJrb/taTA==50 dependencies:51 "@babel/types" "^7.19.4"52 "@jridgewell/gen-mapping" "^0.3.2"53 jsesc "^2.5.1"5455"@babel/helper-compilation-targets@^7.19.3":56 version "7.19.3"57 resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.3.tgz#a10a04588125675d7c7ae299af86fa1b2ee038ca"58 integrity sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg==59 dependencies:60 "@babel/compat-data" "^7.19.3"61 "@babel/helper-validator-option" "^7.18.6"62 browserslist "^4.21.3"63 semver "^6.3.0"6465"@babel/helper-environment-visitor@^7.18.9":66 version "7.18.9"67 resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"68 integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==6970"@babel/helper-function-name@^7.19.0":71 version "7.19.0"72 resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c"73 integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==74 dependencies:75 "@babel/template" "^7.18.10"76 "@babel/types" "^7.19.0"7778"@babel/helper-hoist-variables@^7.18.6":79 version "7.18.6"80 resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"81 integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==82 dependencies:83 "@babel/types" "^7.18.6"8485"@babel/helper-module-imports@^7.18.6":86 version "7.18.6"87 resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e"88 integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==89 dependencies:90 "@babel/types" "^7.18.6"9192"@babel/helper-module-transforms@^7.19.6":93 version "7.19.6"94 resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.19.6.tgz#6c52cc3ac63b70952d33ee987cbee1c9368b533f"95 integrity sha512-fCmcfQo/KYr/VXXDIyd3CBGZ6AFhPFy1TfSEJ+PilGVlQT6jcbqtHAM4C1EciRqMza7/TpOUZliuSH+U6HAhJw==96 dependencies:97 "@babel/helper-environment-visitor" "^7.18.9"98 "@babel/helper-module-imports" "^7.18.6"99 "@babel/helper-simple-access" "^7.19.4"100 "@babel/helper-split-export-declaration" "^7.18.6"101 "@babel/helper-validator-identifier" "^7.19.1"102 "@babel/template" "^7.18.10"103 "@babel/traverse" "^7.19.6"104 "@babel/types" "^7.19.4"105106"@babel/helper-simple-access@^7.19.4":107 version "7.19.4"108 resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.19.4.tgz#be553f4951ac6352df2567f7daa19a0ee15668e7"109 integrity sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg==110 dependencies:111 "@babel/types" "^7.19.4"112113"@babel/helper-split-export-declaration@^7.18.6":114 version "7.18.6"115 resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"116 integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==117 dependencies:118 "@babel/types" "^7.18.6"119120"@babel/helper-string-parser@^7.19.4":121 version "7.19.4"122 resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63"123 integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==124125"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1":126 version "7.19.1"127 resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2"128 integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==129130"@babel/helper-validator-option@^7.18.6":131 version "7.18.6"132 resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8"133 integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==134135"@babel/helpers@^7.19.4":136 version "7.19.4"137 resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.19.4.tgz#42154945f87b8148df7203a25c31ba9a73be46c5"138 integrity sha512-G+z3aOx2nfDHwX/kyVii5fJq+bgscg89/dJNWpYeKeBv3v9xX8EIabmx1k6u9LS04H7nROFVRVK+e3k0VHp+sw==139 dependencies:140 "@babel/template" "^7.18.10"141 "@babel/traverse" "^7.19.4"142 "@babel/types" "^7.19.4"143144"@babel/highlight@^7.18.6":145 version "7.18.6"146 resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"147 integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==148 dependencies:149 "@babel/helper-validator-identifier" "^7.18.6"150 chalk "^2.0.0"151 js-tokens "^4.0.0"152153"@babel/parser@^7.18.10", "@babel/parser@^7.19.6":154 version "7.19.6"155 resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.6.tgz#b923430cb94f58a7eae8facbffa9efd19130e7f8"156 integrity sha512-h1IUp81s2JYJ3mRkdxJgs4UvmSsRvDrx5ICSJbPvtWYv5i1nTBGcBpnog+89rAFMwvvru6E5NUHdBe01UeSzYA==157158"@babel/register@^7.18.9":159 version "7.18.9"160 resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c"161 integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw==162 dependencies:163 clone-deep "^4.0.1"164 find-cache-dir "^2.0.0"165 make-dir "^2.1.0"166 pirates "^4.0.5"167 source-map-support "^0.5.16"168169"@babel/runtime@^7.18.9", "@babel/runtime@^7.19.4":170 version "7.19.4"171 resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.19.4.tgz#a42f814502ee467d55b38dd1c256f53a7b885c78"172 integrity sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==173 dependencies:174 regenerator-runtime "^0.13.4"175176"@babel/template@^7.18.10":177 version "7.18.10"178 resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71"179 integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==180 dependencies:181 "@babel/code-frame" "^7.18.6"182 "@babel/parser" "^7.18.10"183 "@babel/types" "^7.18.10"184185"@babel/traverse@^7.19.4", "@babel/traverse@^7.19.6":186 version "7.19.6"187 resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.6.tgz#7b4c865611df6d99cb131eec2e8ac71656a490dc"188 integrity sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ==189 dependencies:190 "@babel/code-frame" "^7.18.6"191 "@babel/generator" "^7.19.6"192 "@babel/helper-environment-visitor" "^7.18.9"193 "@babel/helper-function-name" "^7.19.0"194 "@babel/helper-hoist-variables" "^7.18.6"195 "@babel/helper-split-export-declaration" "^7.18.6"196 "@babel/parser" "^7.19.6"197 "@babel/types" "^7.19.4"198 debug "^4.1.0"199 globals "^11.1.0"200201"@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.19.4":202 version "7.19.4"203 resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.4.tgz#0dd5c91c573a202d600490a35b33246fed8a41c7"204 integrity sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==205 dependencies:206 "@babel/helper-string-parser" "^7.19.4"207 "@babel/helper-validator-identifier" "^7.19.1"208 to-fast-properties "^2.0.0"209210"@cspotcode/source-map-support@^0.8.0":211 version "0.8.1"212 resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"213 integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==214 dependencies:215 "@jridgewell/trace-mapping" "0.3.9"216217"@eslint/eslintrc@^1.3.3":218 version "1.3.3"219 resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.3.3.tgz#2b044ab39fdfa75b4688184f9e573ce3c5b0ff95"220 integrity sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==221 dependencies:222 ajv "^6.12.4"223 debug "^4.3.2"224 espree "^9.4.0"225 globals "^13.15.0"226 ignore "^5.2.0"227 import-fresh "^3.2.1"228 js-yaml "^4.1.0"229 minimatch "^3.1.2"230 strip-json-comments "^3.1.1"231232"@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.4":233 version "2.6.5"234 resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30"235 integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==236 dependencies:237 crc-32 "^1.2.0"238 ethereumjs-util "^7.1.5"239240"@ethereumjs/tx@^3.3.2":241 version "3.5.2"242 resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c"243 integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==244 dependencies:245 "@ethereumjs/common" "^2.6.4"246 ethereumjs-util "^7.1.5"247248"@ethersproject/abi@^5.6.3":249 version "5.7.0"250 resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449"251 integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==252 dependencies:253 "@ethersproject/address" "^5.7.0"254 "@ethersproject/bignumber" "^5.7.0"255 "@ethersproject/bytes" "^5.7.0"256 "@ethersproject/constants" "^5.7.0"257 "@ethersproject/hash" "^5.7.0"258 "@ethersproject/keccak256" "^5.7.0"259 "@ethersproject/logger" "^5.7.0"260 "@ethersproject/properties" "^5.7.0"261 "@ethersproject/strings" "^5.7.0"262263"@ethersproject/abstract-provider@^5.7.0":264 version "5.7.0"265 resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef"266 integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==267 dependencies:268 "@ethersproject/bignumber" "^5.7.0"269 "@ethersproject/bytes" "^5.7.0"270 "@ethersproject/logger" "^5.7.0"271 "@ethersproject/networks" "^5.7.0"272 "@ethersproject/properties" "^5.7.0"273 "@ethersproject/transactions" "^5.7.0"274 "@ethersproject/web" "^5.7.0"275276"@ethersproject/abstract-signer@^5.7.0":277 version "5.7.0"278 resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2"279 integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==280 dependencies:281 "@ethersproject/abstract-provider" "^5.7.0"282 "@ethersproject/bignumber" "^5.7.0"283 "@ethersproject/bytes" "^5.7.0"284 "@ethersproject/logger" "^5.7.0"285 "@ethersproject/properties" "^5.7.0"286287"@ethersproject/address@^5.7.0":288 version "5.7.0"289 resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37"290 integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==291 dependencies:292 "@ethersproject/bignumber" "^5.7.0"293 "@ethersproject/bytes" "^5.7.0"294 "@ethersproject/keccak256" "^5.7.0"295 "@ethersproject/logger" "^5.7.0"296 "@ethersproject/rlp" "^5.7.0"297298"@ethersproject/base64@^5.7.0":299 version "5.7.0"300 resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c"301 integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==302 dependencies:303 "@ethersproject/bytes" "^5.7.0"304305"@ethersproject/bignumber@^5.7.0":306 version "5.7.0"307 resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2"308 integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==309 dependencies:310 "@ethersproject/bytes" "^5.7.0"311 "@ethersproject/logger" "^5.7.0"312 bn.js "^5.2.1"313314"@ethersproject/bytes@^5.7.0":315 version "5.7.0"316 resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d"317 integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==318 dependencies:319 "@ethersproject/logger" "^5.7.0"320321"@ethersproject/constants@^5.7.0":322 version "5.7.0"323 resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e"324 integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==325 dependencies:326 "@ethersproject/bignumber" "^5.7.0"327328"@ethersproject/hash@^5.7.0":329 version "5.7.0"330 resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7"331 integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==332 dependencies:333 "@ethersproject/abstract-signer" "^5.7.0"334 "@ethersproject/address" "^5.7.0"335 "@ethersproject/base64" "^5.7.0"336 "@ethersproject/bignumber" "^5.7.0"337 "@ethersproject/bytes" "^5.7.0"338 "@ethersproject/keccak256" "^5.7.0"339 "@ethersproject/logger" "^5.7.0"340 "@ethersproject/properties" "^5.7.0"341 "@ethersproject/strings" "^5.7.0"342343"@ethersproject/keccak256@^5.7.0":344 version "5.7.0"345 resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a"346 integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==347 dependencies:348 "@ethersproject/bytes" "^5.7.0"349 js-sha3 "0.8.0"350351"@ethersproject/logger@^5.7.0":352 version "5.7.0"353 resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892"354 integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==355356"@ethersproject/networks@^5.7.0":357 version "5.7.1"358 resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6"359 integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==360 dependencies:361 "@ethersproject/logger" "^5.7.0"362363"@ethersproject/properties@^5.7.0":364 version "5.7.0"365 resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30"366 integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==367 dependencies:368 "@ethersproject/logger" "^5.7.0"369370"@ethersproject/rlp@^5.7.0":371 version "5.7.0"372 resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304"373 integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==374 dependencies:375 "@ethersproject/bytes" "^5.7.0"376 "@ethersproject/logger" "^5.7.0"377378"@ethersproject/signing-key@^5.7.0":379 version "5.7.0"380 resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3"381 integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==382 dependencies:383 "@ethersproject/bytes" "^5.7.0"384 "@ethersproject/logger" "^5.7.0"385 "@ethersproject/properties" "^5.7.0"386 bn.js "^5.2.1"387 elliptic "6.5.4"388 hash.js "1.1.7"389390"@ethersproject/strings@^5.7.0":391 version "5.7.0"392 resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2"393 integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==394 dependencies:395 "@ethersproject/bytes" "^5.7.0"396 "@ethersproject/constants" "^5.7.0"397 "@ethersproject/logger" "^5.7.0"398399"@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0":400 version "5.7.0"401 resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b"402 integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==403 dependencies:404 "@ethersproject/address" "^5.7.0"405 "@ethersproject/bignumber" "^5.7.0"406 "@ethersproject/bytes" "^5.7.0"407 "@ethersproject/constants" "^5.7.0"408 "@ethersproject/keccak256" "^5.7.0"409 "@ethersproject/logger" "^5.7.0"410 "@ethersproject/properties" "^5.7.0"411 "@ethersproject/rlp" "^5.7.0"412 "@ethersproject/signing-key" "^5.7.0"413414"@ethersproject/web@^5.7.0":415 version "5.7.1"416 resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae"417 integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==418 dependencies:419 "@ethersproject/base64" "^5.7.0"420 "@ethersproject/bytes" "^5.7.0"421 "@ethersproject/logger" "^5.7.0"422 "@ethersproject/properties" "^5.7.0"423 "@ethersproject/strings" "^5.7.0"424425"@humanwhocodes/config-array@^0.10.5":426 version "0.10.7"427 resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.10.7.tgz#6d53769fd0c222767e6452e8ebda825c22e9f0dc"428 integrity sha512-MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==429 dependencies:430 "@humanwhocodes/object-schema" "^1.2.1"431 debug "^4.1.1"432 minimatch "^3.0.4"433434"@humanwhocodes/module-importer@^1.0.1":435 version "1.0.1"436 resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"437 integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==438439"@humanwhocodes/object-schema@^1.2.1":440 version "1.2.1"441 resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"442 integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==443444"@jridgewell/gen-mapping@^0.1.0":445 version "0.1.1"446 resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"447 integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==448 dependencies:449 "@jridgewell/set-array" "^1.0.0"450 "@jridgewell/sourcemap-codec" "^1.4.10"451452"@jridgewell/gen-mapping@^0.3.2":453 version "0.3.2"454 resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9"455 integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==456 dependencies:457 "@jridgewell/set-array" "^1.0.1"458 "@jridgewell/sourcemap-codec" "^1.4.10"459 "@jridgewell/trace-mapping" "^0.3.9"460461"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3":462 version "3.1.0"463 resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"464 integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==465466"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1":467 version "1.1.2"468 resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"469 integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==470471"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10":472 version "1.4.14"473 resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"474 integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==475476"@jridgewell/trace-mapping@0.3.9":477 version "0.3.9"478 resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"479 integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==480 dependencies:481 "@jridgewell/resolve-uri" "^3.0.3"482 "@jridgewell/sourcemap-codec" "^1.4.10"483484"@jridgewell/trace-mapping@^0.3.9":485 version "0.3.17"486 resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985"487 integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==488 dependencies:489 "@jridgewell/resolve-uri" "3.1.0"490 "@jridgewell/sourcemap-codec" "1.4.14"491492"@noble/hashes@1.1.3":493 version "1.1.3"494 resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.1.3.tgz#360afc77610e0a61f3417e497dcf36862e4f8111"495 integrity sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A==496497"@noble/secp256k1@1.7.0":498 version "1.7.0"499 resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.0.tgz#d15357f7c227e751d90aa06b05a0e5cf993ba8c1"500 integrity sha512-kbacwGSsH/CTout0ZnZWxnW1B+jH/7r/WAAKLBtrRJ/+CUH7lgmQzl3GTrQua3SGKWNSDsS6lmjnDpIJ5Dxyaw==501502"@nodelib/fs.scandir@2.1.5":503 version "2.1.5"504 resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"505 integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==506 dependencies:507 "@nodelib/fs.stat" "2.0.5"508 run-parallel "^1.1.9"509510"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":511 version "2.0.5"512 resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"513 integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==514515"@nodelib/fs.walk@^1.2.3":516 version "1.2.8"517 resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"518 integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==519 dependencies:520 "@nodelib/fs.scandir" "2.1.5"521 fastq "^1.6.0"522523"@polkadot/api-augment@9.5.2":524 version "9.5.2"525 resolved "https://registry.yarnpkg.com/@polkadot/api-augment/-/api-augment-9.5.2.tgz#55168dd112517028fea5f2ab9c54ea627e43ac3a"526 integrity sha512-dH6QMY8Z3zI6CrgSU3eSe6f0KWDb5PYGztg/FXGPrjh7Vjic7syWZ1LD6zaHJAFWDp80BEdEXfqr4lConrCKGg==527 dependencies:528 "@babel/runtime" "^7.19.4"529 "@polkadot/api-base" "9.5.2"530 "@polkadot/rpc-augment" "9.5.2"531 "@polkadot/types" "9.5.2"532 "@polkadot/types-augment" "9.5.2"533 "@polkadot/types-codec" "9.5.2"534 "@polkadot/util" "^10.1.11"535536"@polkadot/api-base@9.5.2":537 version "9.5.2"538 resolved "https://registry.yarnpkg.com/@polkadot/api-base/-/api-base-9.5.2.tgz#ac0a6b5546a54bcc753ac55c9f033caa9f8b4e5c"539 integrity sha512-BBsH9SLB1FHgjdiU32cZX1puL3Eh8IjOJHjRsO/5SdttciQhF5g/u/m/mM/55qnlXmffI9s2Jre18G0XtVU9Aw==540 dependencies:541 "@babel/runtime" "^7.19.4"542 "@polkadot/rpc-core" "9.5.2"543 "@polkadot/types" "9.5.2"544 "@polkadot/util" "^10.1.11"545 rxjs "^7.5.7"546547"@polkadot/api-derive@9.5.2":548 version "9.5.2"549 resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-9.5.2.tgz#c0412cfc13fa71f93b315d126b12b5ab38e6438c"550 integrity sha512-kWn12dlqfIES1trNLd3O1i2qa4T97v/co1VMCgVstICwCt3+mGZgpxkMqQqPiWHagKEVeBNoAn+h8eOiQlbujA==551 dependencies:552 "@babel/runtime" "^7.19.4"553 "@polkadot/api" "9.5.2"554 "@polkadot/api-augment" "9.5.2"555 "@polkadot/api-base" "9.5.2"556 "@polkadot/rpc-core" "9.5.2"557 "@polkadot/types" "9.5.2"558 "@polkadot/types-codec" "9.5.2"559 "@polkadot/util" "^10.1.11"560 "@polkadot/util-crypto" "^10.1.11"561 rxjs "^7.5.7"562563"@polkadot/api@9.5.2":564 version "9.5.2"565 resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-9.5.2.tgz#cef83928e47c393fbebf2788bc86841b6ab37a41"566 integrity sha512-iEF/E8vQan3fHmIEl3bX7Yn/1jQLlvSDwPOxiQdj4tIcF36HX6vCbkdhQKRif0CNYES58TA9EKFiCNg81k+kXw==567 dependencies:568 "@babel/runtime" "^7.19.4"569 "@polkadot/api-augment" "9.5.2"570 "@polkadot/api-base" "9.5.2"571 "@polkadot/api-derive" "9.5.2"572 "@polkadot/keyring" "^10.1.11"573 "@polkadot/rpc-augment" "9.5.2"574 "@polkadot/rpc-core" "9.5.2"575 "@polkadot/rpc-provider" "9.5.2"576 "@polkadot/types" "9.5.2"577 "@polkadot/types-augment" "9.5.2"578 "@polkadot/types-codec" "9.5.2"579 "@polkadot/types-create" "9.5.2"580 "@polkadot/types-known" "9.5.2"581 "@polkadot/util" "^10.1.11"582 "@polkadot/util-crypto" "^10.1.11"583 eventemitter3 "^4.0.7"584 rxjs "^7.5.7"585586"@polkadot/keyring@^10.1.11":587 version "10.1.11"588 resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-10.1.11.tgz#a3fed011b0c8826ea2097e04f7189e9be66fbf98"589 integrity sha512-Nv8cZaOA/KbdslDMTklJ58+y+UPpic3+oMQoozuq48Ccjv7WeW2BX47XM/RNE8nYFg6EHa6Whfm4IFaFb8s7ag==590 dependencies:591 "@babel/runtime" "^7.19.4"592 "@polkadot/util" "10.1.11"593 "@polkadot/util-crypto" "10.1.11"594595"@polkadot/networks@10.1.11", "@polkadot/networks@^10.1.11":596 version "10.1.11"597 resolved "https://registry.yarnpkg.com/@polkadot/networks/-/networks-10.1.11.tgz#96a5d6c80228f4beada9154cca0f60a63198e7f4"598 integrity sha512-4FfOVETXwh6PL6wd6fYJMkRSQKm+xUw3vR5rHqcAnB696FpMFPPErc6asgZ9lYMyzNJRY3yG86HQpFhtCv1nGA==599 dependencies:600 "@babel/runtime" "^7.19.4"601 "@polkadot/util" "10.1.11"602 "@substrate/ss58-registry" "^1.33.0"603604"@polkadot/rpc-augment@9.5.2":605 version "9.5.2"606 resolved "https://registry.yarnpkg.com/@polkadot/rpc-augment/-/rpc-augment-9.5.2.tgz#739cc3ed2f86f4318432e38381a2cc780dc64f1e"607 integrity sha512-QAcunC7p/T4xy6e4m0Q1c9tiVYxnm+S9o10tmtx0K4qXzrc/4I2/tsw3nEGi3BzJhvMpFondSQGcJ3gyLwpmVA==608 dependencies:609 "@babel/runtime" "^7.19.4"610 "@polkadot/rpc-core" "9.5.2"611 "@polkadot/types" "9.5.2"612 "@polkadot/types-codec" "9.5.2"613 "@polkadot/util" "^10.1.11"614615"@polkadot/rpc-core@9.5.2":616 version "9.5.2"617 resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-9.5.2.tgz#1a00868038b6c07fe8f58bd0a6cc9519d14001cc"618 integrity sha512-4PbNz0GEp3FXYOnsS7mDHZy9DNVBOl56fq8vs09rLkEkrrvGkHmCvabEEWL7OPbwBzwzsCxdgI+IdkVTUKXPkQ==619 dependencies:620 "@babel/runtime" "^7.19.4"621 "@polkadot/rpc-augment" "9.5.2"622 "@polkadot/rpc-provider" "9.5.2"623 "@polkadot/types" "9.5.2"624 "@polkadot/util" "^10.1.11"625 rxjs "^7.5.7"626627"@polkadot/rpc-provider@9.5.2":628 version "9.5.2"629 resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-9.5.2.tgz#3e38ea4c3639180f12270b6fe8cbcabf728aaf1d"630 integrity sha512-Sn2jfvAsvQcl35o0up8JR/XbDMS/3YVDEN2sFuzXtiD77W2njukItbZT+BolfAW+biAUs3bNomump5k/YLiLKg==631 dependencies:632 "@babel/runtime" "^7.19.4"633 "@polkadot/keyring" "^10.1.11"634 "@polkadot/types" "9.5.2"635 "@polkadot/types-support" "9.5.2"636 "@polkadot/util" "^10.1.11"637 "@polkadot/util-crypto" "^10.1.11"638 "@polkadot/x-fetch" "^10.1.11"639 "@polkadot/x-global" "^10.1.11"640 "@polkadot/x-ws" "^10.1.11"641 "@substrate/connect" "0.7.14"642 eventemitter3 "^4.0.7"643 mock-socket "^9.1.5"644 nock "^13.2.9"645646"@polkadot/typegen@9.5.2":647 version "9.5.2"648 resolved "https://registry.yarnpkg.com/@polkadot/typegen/-/typegen-9.5.2.tgz#b4f3b5eca69c70cc496c8cd3b7804df32282c336"649 integrity sha512-DIiicI3VzbqkfjthvHhLYCaElkaKB/qM+P0mGDmb3+NgttJQsH2Sqy/zsT/mjr07hAB1gXf4dhCmj0QQBiR1og==650 dependencies:651 "@babel/core" "^7.19.3"652 "@babel/register" "^7.18.9"653 "@babel/runtime" "^7.19.4"654 "@polkadot/api" "9.5.2"655 "@polkadot/api-augment" "9.5.2"656 "@polkadot/rpc-augment" "9.5.2"657 "@polkadot/rpc-provider" "9.5.2"658 "@polkadot/types" "9.5.2"659 "@polkadot/types-augment" "9.5.2"660 "@polkadot/types-codec" "9.5.2"661 "@polkadot/types-create" "9.5.2"662 "@polkadot/types-support" "9.5.2"663 "@polkadot/util" "^10.1.11"664 "@polkadot/util-crypto" "^10.1.11"665 "@polkadot/x-ws" "^10.1.11"666 handlebars "^4.7.7"667 websocket "^1.0.34"668 yargs "^17.6.0"669670"@polkadot/types-augment@9.5.2":671 version "9.5.2"672 resolved "https://registry.yarnpkg.com/@polkadot/types-augment/-/types-augment-9.5.2.tgz#d9e77756b0e36455d708f5af8265ef011ddf8d91"673 integrity sha512-LDJdv/84sECwA0R5lK85/orxjoozJe3+2jeLjRiKr8S6qm9XRfz0wLCSF866kpSGBZ4B1dYBUhzjoSu95y2Jug==674 dependencies:675 "@babel/runtime" "^7.19.4"676 "@polkadot/types" "9.5.2"677 "@polkadot/types-codec" "9.5.2"678 "@polkadot/util" "^10.1.11"679680"@polkadot/types-codec@9.5.2":681 version "9.5.2"682 resolved "https://registry.yarnpkg.com/@polkadot/types-codec/-/types-codec-9.5.2.tgz#345c38ccef17651b8cabd159a42810893b5e7e44"683 integrity sha512-FJPjE3ceTGTcadeC8d5C+aSR8SLKuQrXKIBmMNBky+WwzEo0vufRqxFWcPLxAOEeeUPgBXS967tP15+UU4psGA==684 dependencies:685 "@babel/runtime" "^7.19.4"686 "@polkadot/util" "^10.1.11"687 "@polkadot/x-bigint" "^10.1.11"688689"@polkadot/types-create@9.5.2":690 version "9.5.2"691 resolved "https://registry.yarnpkg.com/@polkadot/types-create/-/types-create-9.5.2.tgz#a85dcb794ea11e5d528baa34b65e57cfafc905cf"692 integrity sha512-YbplL8K0LqUEHoV3FgZ5B83oVV67KGbLXsWHVVaUZBPsmtXJXrbBfSyJgl/80I2n4lXEBmg3sFAYMbaSTvL05A==693 dependencies:694 "@babel/runtime" "^7.19.4"695 "@polkadot/types-codec" "9.5.2"696 "@polkadot/util" "^10.1.11"697698"@polkadot/types-known@9.5.2":699 version "9.5.2"700 resolved "https://registry.yarnpkg.com/@polkadot/types-known/-/types-known-9.5.2.tgz#a71fd08932b1643bbf346321472ed48ab1ade215"701 integrity sha512-iNaGOF6dGiTvy3Ns8Z7WNjYD1SGnZiapDAKPH4brPuJqMpN6/FxYpfPSSOKx+IJEamsdINcaggb87eWyPxH8CA==702 dependencies:703 "@babel/runtime" "^7.19.4"704 "@polkadot/networks" "^10.1.11"705 "@polkadot/types" "9.5.2"706 "@polkadot/types-codec" "9.5.2"707 "@polkadot/types-create" "9.5.2"708 "@polkadot/util" "^10.1.11"709710"@polkadot/types-support@9.5.2":711 version "9.5.2"712 resolved "https://registry.yarnpkg.com/@polkadot/types-support/-/types-support-9.5.2.tgz#f2990d19cbd78c24e5b7116466fb1d89f93a8ca7"713 integrity sha512-Zdbl5fvGQjUkyE1r67vhyPEqLUwlZ35GCnkoobY9MgN6gylhSjNue/shpG4uGsEjWVQL7GkFkrPiwtzDArVilg==714 dependencies:715 "@babel/runtime" "^7.19.4"716 "@polkadot/util" "^10.1.11"717718"@polkadot/types@9.5.2":719 version "9.5.2"720 resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-9.5.2.tgz#33ab2caea08f084141a01038adbe53ed69ab7d9c"721 integrity sha512-6C5xzOrMK+fu0JMOlSO+8dPDhpwKPOaKMv3v5BMvBEWtDNKM81/QQoAoYT7DSVXq/V16icSFxPs9IWC+6Qq5ag==722 dependencies:723 "@babel/runtime" "^7.19.4"724 "@polkadot/keyring" "^10.1.11"725 "@polkadot/types-augment" "9.5.2"726 "@polkadot/types-codec" "9.5.2"727 "@polkadot/types-create" "9.5.2"728 "@polkadot/util" "^10.1.11"729 "@polkadot/util-crypto" "^10.1.11"730 rxjs "^7.5.7"731732"@polkadot/util-crypto@10.1.11", "@polkadot/util-crypto@^10.1.11":733 version "10.1.11"734 resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-10.1.11.tgz#e59bdc8e1e2bd98a115e2e2ed45461e68a14a48c"735 integrity sha512-wG63frIMAR5T/HXGM0SFNzZZdk7qDBsfLXfn6PIZiXCCCsdEYPzS5WltB7fkhicYpbePJ7VgdCAddj1l4IcGyg==736 dependencies:737 "@babel/runtime" "^7.19.4"738 "@noble/hashes" "1.1.3"739 "@noble/secp256k1" "1.7.0"740 "@polkadot/networks" "10.1.11"741 "@polkadot/util" "10.1.11"742 "@polkadot/wasm-crypto" "^6.3.1"743 "@polkadot/x-bigint" "10.1.11"744 "@polkadot/x-randomvalues" "10.1.11"745 "@scure/base" "1.1.1"746 ed2curve "^0.3.0"747 tweetnacl "^1.0.3"748749"@polkadot/util@10.1.11", "@polkadot/util@^10.1.11":750 version "10.1.11"751 resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-10.1.11.tgz#22bcdabbd7a0d266417f6569cc655f516d371a82"752 integrity sha512-6m51lw6g6ilqO/k4BQY7rD0lYM9NCnC4FiM7CEEUc7j8q86qxdcZ88zdNldkhNsTIQnfmCtkK3GRzZW6VYrbUw==753 dependencies:754 "@babel/runtime" "^7.19.4"755 "@polkadot/x-bigint" "10.1.11"756 "@polkadot/x-global" "10.1.11"757 "@polkadot/x-textdecoder" "10.1.11"758 "@polkadot/x-textencoder" "10.1.11"759 "@types/bn.js" "^5.1.1"760 bn.js "^5.2.1"761762"@polkadot/wasm-bridge@6.3.1":763 version "6.3.1"764 resolved "https://registry.yarnpkg.com/@polkadot/wasm-bridge/-/wasm-bridge-6.3.1.tgz#439fa78e80947a7cb695443e1f64b25c30bb1487"765 integrity sha512-1TYkHsb9AEFhU9uZj3biEnN2yKQNzdrwSjiTvfCYnt97pnEkKsZI6cku+YPZQv5w/x9CQa5Yua9e2DVVZSivGA==766 dependencies:767 "@babel/runtime" "^7.18.9"768769"@polkadot/wasm-crypto-asmjs@6.3.1":770 version "6.3.1"771 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-6.3.1.tgz#e8f469c9cf4a7709c8131a96f857291953f3e30a"772 integrity sha512-zbombRfA5v/mUWQQhgg2YwaxhRmxRIrvskw65x+lruax3b6xPBFDs7yplopiJU3r8h2pTgQvX/DUksvqz2TCRQ==773 dependencies:774 "@babel/runtime" "^7.18.9"775776"@polkadot/wasm-crypto-init@6.3.1":777 version "6.3.1"778 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-init/-/wasm-crypto-init-6.3.1.tgz#b590220c53c94b9a54d5dc236d0cbe943db76706"779 integrity sha512-9yaUBcu+snwjJLmPPGl3cyGRQ1afyFGm16qzTM0sgG/ZCfUlK4uk8KWZe+sBUKgoxb2oXY7Y4WklKgQI1YBdfw==780 dependencies:781 "@babel/runtime" "^7.18.9"782 "@polkadot/wasm-bridge" "6.3.1"783 "@polkadot/wasm-crypto-asmjs" "6.3.1"784 "@polkadot/wasm-crypto-wasm" "6.3.1"785786"@polkadot/wasm-crypto-wasm@6.3.1":787 version "6.3.1"788 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-6.3.1.tgz#67f720e7f9694fef096abe9d60abbac02e032383"789 integrity sha512-idSlzKGVzCfeCMRHsacRvqwojSaTadFxL/Dbls4z1thvfa3U9Ku0d2qVtlwg7Hj+tYWDiuP8Kygs+6bQwfs0XA==790 dependencies:791 "@babel/runtime" "^7.18.9"792 "@polkadot/wasm-util" "6.3.1"793794"@polkadot/wasm-crypto@^6.3.1":795 version "6.3.1"796 resolved "https://registry.yarnpkg.com/@polkadot/wasm-crypto/-/wasm-crypto-6.3.1.tgz#63f5798aca2b2ff0696f190e6862d9781d8f280c"797 integrity sha512-OO8h0qeVkqp4xYZaRVl4iuWOEtq282pNBHDKb6SOJuI2g59eWGcKh4EQU9Me2VP6qzojIqptrkrVt7KQXC68gA==798 dependencies:799 "@babel/runtime" "^7.18.9"800 "@polkadot/wasm-bridge" "6.3.1"801 "@polkadot/wasm-crypto-asmjs" "6.3.1"802 "@polkadot/wasm-crypto-init" "6.3.1"803 "@polkadot/wasm-crypto-wasm" "6.3.1"804 "@polkadot/wasm-util" "6.3.1"805806"@polkadot/wasm-util@6.3.1":807 version "6.3.1"808 resolved "https://registry.yarnpkg.com/@polkadot/wasm-util/-/wasm-util-6.3.1.tgz#439ebb68a436317af388ed6438b8f879df3afcda"809 integrity sha512-12oAv5J7Yoc9m6jixrSaQCxpOkWOyzHx3DMC8qmLjRiwdBWxqLmImOVRVnFsbaxqSbhBIHRuJphVxWE+GZETDg==810 dependencies:811 "@babel/runtime" "^7.18.9"812813"@polkadot/x-bigint@10.1.11", "@polkadot/x-bigint@^10.1.11":814 version "10.1.11"815 resolved "https://registry.yarnpkg.com/@polkadot/x-bigint/-/x-bigint-10.1.11.tgz#7d62ce10cccd55b86a415342db95b9feeb099776"816 integrity sha512-TC4KZ+ni/SJhcf/LIwD49C/kwvACu0nCchETNO+sAfJ7COXZwHDUJXVXmwN5PgkQxwsWsKKuJmzR/Fi1bgMWnQ==817 dependencies:818 "@babel/runtime" "^7.19.4"819 "@polkadot/x-global" "10.1.11"820821"@polkadot/x-fetch@^10.1.11":822 version "10.1.11"823 resolved "https://registry.yarnpkg.com/@polkadot/x-fetch/-/x-fetch-10.1.11.tgz#8f579bb166096c977acff91a40b3848fb5581900"824 integrity sha512-WtyUr9itVD9BLnxCUloJ1iwrXOY/lnlEShEYKHcSm6MIHtbJolePd3v1+o5mOX+bdDbHXhPZnH8anCCqDNDRqg==825 dependencies:826 "@babel/runtime" "^7.19.4"827 "@polkadot/x-global" "10.1.11"828 "@types/node-fetch" "^2.6.2"829 node-fetch "^3.2.10"830831"@polkadot/x-global@10.1.11", "@polkadot/x-global@^10.1.11":832 version "10.1.11"833 resolved "https://registry.yarnpkg.com/@polkadot/x-global/-/x-global-10.1.11.tgz#37dda3ef1cebfd14c68c69279ae6521957817866"834 integrity sha512-bWz5gdcELy6+xfr27R1GE5MPX4nfVlchzHQH+DR6OBbSi9g/PeycQAvFB6IkTmP+YEbNNtIpxnSP37zoUaG3xw==835 dependencies:836 "@babel/runtime" "^7.19.4"837838"@polkadot/x-randomvalues@10.1.11":839 version "10.1.11"840 resolved "https://registry.yarnpkg.com/@polkadot/x-randomvalues/-/x-randomvalues-10.1.11.tgz#f9e088f8b400770d3e53ba9e0c0f0d464047f89e"841 integrity sha512-V2V37f5hoM5B32eCpGw87Lwstin2+ArXhOZ8ENKncbQLXzbF9yTODueDoA5Vt0MJCs2CDP9cyiCYykcanqVkxg==842 dependencies:843 "@babel/runtime" "^7.19.4"844 "@polkadot/x-global" "10.1.11"845846"@polkadot/x-textdecoder@10.1.11":847 version "10.1.11"848 resolved "https://registry.yarnpkg.com/@polkadot/x-textdecoder/-/x-textdecoder-10.1.11.tgz#314c79e27545a41fe0494a26196bf2dff5cfcb5d"849 integrity sha512-QZqie04SR6pAj260PaLBfZUGXWKI357t4ROVJhpaj06qc1zrk1V8Mwkr49+WzjAPFEOqo70HWnzXmPNCH4dQiw==850 dependencies:851 "@babel/runtime" "^7.19.4"852 "@polkadot/x-global" "10.1.11"853854"@polkadot/x-textencoder@10.1.11":855 version "10.1.11"856 resolved "https://registry.yarnpkg.com/@polkadot/x-textencoder/-/x-textencoder-10.1.11.tgz#23b18b3ffbc649572728aa37d7787432bb3a03b5"857 integrity sha512-UX+uV9AbDID81waaG/NvTkkf7ZNVW7HSHaddgbWjQEVW2Ex4ByccBarY5jEi6cErEPKfzCamKhgXflu0aV9LWw==858 dependencies:859 "@babel/runtime" "^7.19.4"860 "@polkadot/x-global" "10.1.11"861862"@polkadot/x-ws@^10.1.11":863 version "10.1.11"864 resolved "https://registry.yarnpkg.com/@polkadot/x-ws/-/x-ws-10.1.11.tgz#7431ad72064d56519d4293278f03ae97b9ea9271"865 integrity sha512-EUbL/R1A/NxYf6Rnb1M7U9yeTuo5r4y2vcQllE5aBLaQ0cFnRykHzlmZlVX1E7O5uy3lYVdxWC7sNgxItIWkWA==866 dependencies:867 "@babel/runtime" "^7.19.4"868 "@polkadot/x-global" "10.1.11"869 "@types/websocket" "^1.0.5"870 websocket "^1.0.34"871872"@scure/base@1.1.1":873 version "1.1.1"874 resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.1.tgz#ebb651ee52ff84f420097055f4bf46cfba403938"875 integrity sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==876877"@sindresorhus/is@^4.0.0", "@sindresorhus/is@^4.6.0":878 version "4.6.0"879 resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"880 integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==881882"@substrate/connect-extension-protocol@^1.0.1":883 version "1.0.1"884 resolved "https://registry.yarnpkg.com/@substrate/connect-extension-protocol/-/connect-extension-protocol-1.0.1.tgz#fa5738039586c648013caa6a0c95c43265dbe77d"885 integrity sha512-161JhCC1csjH3GE5mPLEd7HbWtwNSPJBg3p1Ksz9SFlTzj/bgEwudiRN2y5i0MoLGCIJRYKyKGMxVnd29PzNjg==886887"@substrate/connect@0.7.14":888 version "0.7.14"889 resolved "https://registry.yarnpkg.com/@substrate/connect/-/connect-0.7.14.tgz#c090e952e9cdd93185a94d24fbc424ea20fe7bbe"890 integrity sha512-uW5uBmihpivshmmmw+rsg7qOV0KqVSep4rWOXFMP8aFQinvmqw4JqxP21og4H/7JZxttYUBFQVsdtXHGKJ0aVQ==891 dependencies:892 "@substrate/connect-extension-protocol" "^1.0.1"893 "@substrate/smoldot-light" "0.6.34"894 eventemitter3 "^4.0.7"895896"@substrate/smoldot-light@0.6.34":897 version "0.6.34"898 resolved "https://registry.yarnpkg.com/@substrate/smoldot-light/-/smoldot-light-0.6.34.tgz#273dba622102281fd0fdb0e375198bff2ec584c3"899 integrity sha512-+HK9MaJ0HelJmpf4YYR+salJ7dhVBltmhGlyz5l8OXS9DW18fe0Z2wxEo8P5kX9CUxlCXEb8J9JBRQAYBPHbwQ==900 dependencies:901 pako "^2.0.4"902 ws "^8.8.1"903904"@substrate/ss58-registry@^1.33.0":905 version "1.33.0"906 resolved "https://registry.yarnpkg.com/@substrate/ss58-registry/-/ss58-registry-1.33.0.tgz#b93218fc86405769716b02f0ce5e61df221b37ae"907 integrity sha512-DztMuMcEfu+tJrtIQIIp5gO8/XJZ8N8UwPObDCSNgrp7trtSkPJAUFB9qXaReXtN9UvTcVBMTWk6VPfFi04Wkg==908909"@szmarczak/http-timer@^4.0.5":910 version "4.0.6"911 resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"912 integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==913 dependencies:914 defer-to-connect "^2.0.0"915916"@szmarczak/http-timer@^5.0.1":917 version "5.0.1"918 resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a"919 integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==920 dependencies:921 defer-to-connect "^2.0.1"922923"@tsconfig/node10@^1.0.7":924 version "1.0.9"925 resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2"926 integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==927928"@tsconfig/node12@^1.0.7":929 version "1.0.11"930 resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d"931 integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==932933"@tsconfig/node14@^1.0.0":934 version "1.0.3"935 resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1"936 integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==937938"@tsconfig/node16@^1.0.2":939 version "1.0.3"940 resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e"941 integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==942943"@typechain/web3-v1@^6.0.1":944 version "6.0.1"945 resolved "https://registry.yarnpkg.com/@typechain/web3-v1/-/web3-v1-6.0.1.tgz#459d1d6901134310fbc1cf9cd263bf529d979572"946 integrity sha512-w3xehVgsKV74fGBx1d6xuySWZJ/DbLaYWJDqaDy93qojOicDPESESfOL0XIWZfEmhxk+1JEDC9Roqb/eBmldaA==947 dependencies:948 lodash "^4.17.15"949 ts-essentials "^7.0.1"950951"@types/bn.js@^5.1.0", "@types/bn.js@^5.1.1":952 version "5.1.1"953 resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.1.tgz#b51e1b55920a4ca26e9285ff79936bbdec910682"954 integrity sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==955 dependencies:956 "@types/node" "*"957958"@types/cacheable-request@^6.0.1", "@types/cacheable-request@^6.0.2":959 version "6.0.2"960 resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9"961 integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==962 dependencies:963 "@types/http-cache-semantics" "*"964 "@types/keyv" "*"965 "@types/node" "*"966 "@types/responselike" "*"967968"@types/chai-as-promised@^7.1.5":969 version "7.1.5"970 resolved "https://registry.yarnpkg.com/@types/chai-as-promised/-/chai-as-promised-7.1.5.tgz#6e016811f6c7a64f2eed823191c3a6955094e255"971 integrity sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==972 dependencies:973 "@types/chai" "*"974975"@types/chai-like@^1.1.1":976 version "1.1.1"977 resolved "https://registry.yarnpkg.com/@types/chai-like/-/chai-like-1.1.1.tgz#c454039b0a2f92664fb5b7b7a2a66c3358783ae7"978 integrity sha512-s46EZsupBuVhLn66DbRee5B0SELLmL4nFXVrBiV29BxLGm9Sh7Bful623j3AfiQRu2zAP4cnlZ3ETWB3eWc4bA==979 dependencies:980 "@types/chai" "*"981982"@types/chai@*", "@types/chai@^4.3.3":983 version "4.3.3"984 resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.3.tgz#3c90752792660c4b562ad73b3fbd68bf3bc7ae07"985 integrity sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g==986987"@types/http-cache-semantics@*":988 version "4.0.1"989 resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812"990 integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==991992"@types/json-schema@^7.0.9":993 version "7.0.11"994 resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3"995 integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==996997"@types/keyv@*":998 version "4.2.0"999 resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-4.2.0.tgz#65b97868ab757906f2dbb653590d7167ad023fa0"1000 integrity sha512-xoBtGl5R9jeKUhc8ZqeYaRDx04qqJ10yhhXYGmJ4Jr8qKpvMsDQQrNUvF/wUJ4klOtmJeJM+p2Xo3zp9uaC3tw==1001 dependencies:1002 keyv "*"10031004"@types/mocha@^10.0.0":1005 version "10.0.0"1006 resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.0.tgz#3d9018c575f0e3f7386c1de80ee66cc21fbb7a52"1007 integrity sha512-rADY+HtTOA52l9VZWtgQfn4p+UDVM2eDVkMZT1I6syp0YKxW2F9v+0pbRZLsvskhQv/vMb6ZfCay81GHbz5SHg==10081009"@types/node-fetch@^2.6.2":1010 version "2.6.2"1011 resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da"1012 integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==1013 dependencies:1014 "@types/node" "*"1015 form-data "^3.0.0"10161017"@types/node@*", "@types/node@^18.11.2":1018 version "18.11.2"1019 resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.2.tgz#c59b7641832531264fda3f1ba610362dc9a7dfc8"1020 integrity sha512-BWN3M23gLO2jVG8g/XHIRFWiiV4/GckeFIqbU/C4V3xpoBBWSMk4OZomouN0wCkfQFPqgZikyLr7DOYDysIkkw==10211022"@types/node@^12.12.6":1023 version "12.20.55"1024 resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"1025 integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==10261027"@types/pbkdf2@^3.0.0":1028 version "3.1.0"1029 resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.0.tgz#039a0e9b67da0cdc4ee5dab865caa6b267bb66b1"1030 integrity sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==1031 dependencies:1032 "@types/node" "*"10331034"@types/prettier@^2.1.1":1035 version "2.7.0"1036 resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.0.tgz#ea03e9f0376a4446f44797ca19d9c46c36e352dc"1037 integrity sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==10381039"@types/responselike@*", "@types/responselike@^1.0.0":1040 version "1.0.0"1041 resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"1042 integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==1043 dependencies:1044 "@types/node" "*"10451046"@types/secp256k1@^4.0.1":1047 version "4.0.3"1048 resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.3.tgz#1b8e55d8e00f08ee7220b4d59a6abe89c37a901c"1049 integrity sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==1050 dependencies:1051 "@types/node" "*"10521053"@types/semver@^7.3.12":1054 version "7.3.12"1055 resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.12.tgz#920447fdd78d76b19de0438b7f60df3c4a80bf1c"1056 integrity sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A==10571058"@types/websocket@^1.0.5":1059 version "1.0.5"1060 resolved "https://registry.yarnpkg.com/@types/websocket/-/websocket-1.0.5.tgz#3fb80ed8e07f88e51961211cd3682a3a4a81569c"1061 integrity sha512-NbsqiNX9CnEfC1Z0Vf4mE1SgAJ07JnRYcNex7AJ9zAVzmiGHmjKFEk7O4TJIsgv2B1sLEb6owKFZrACwdYngsQ==1062 dependencies:1063 "@types/node" "*"10641065"@typescript-eslint/eslint-plugin@^5.40.1":1066 version "5.40.1"1067 resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.1.tgz#3203a6ff396b1194083faaa6e5110c401201d7d5"1068 integrity sha512-FsWboKkWdytGiXT5O1/R9j37YgcjO8MKHSUmWnIEjVaz0krHkplPnYi7mwdb+5+cs0toFNQb0HIrN7zONdIEWg==1069 dependencies:1070 "@typescript-eslint/scope-manager" "5.40.1"1071 "@typescript-eslint/type-utils" "5.40.1"1072 "@typescript-eslint/utils" "5.40.1"1073 debug "^4.3.4"1074 ignore "^5.2.0"1075 regexpp "^3.2.0"1076 semver "^7.3.7"1077 tsutils "^3.21.0"10781079"@typescript-eslint/parser@^5.40.1":1080 version "5.40.1"1081 resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.40.1.tgz#e7f8295dd8154d0d37d661ddd8e2f0ecfdee28dd"1082 integrity sha512-IK6x55va5w4YvXd4b3VrXQPldV9vQTxi5ov+g4pMANsXPTXOcfjx08CRR1Dfrcc51syPtXHF5bgLlMHYFrvQtg==1083 dependencies:1084 "@typescript-eslint/scope-manager" "5.40.1"1085 "@typescript-eslint/types" "5.40.1"1086 "@typescript-eslint/typescript-estree" "5.40.1"1087 debug "^4.3.4"10881089"@typescript-eslint/scope-manager@5.40.1":1090 version "5.40.1"1091 resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.40.1.tgz#a7a5197dfd234622a2421ea590ee0ccc02e18dfe"1092 integrity sha512-jkn4xsJiUQucI16OLCXrLRXDZ3afKhOIqXs4R3O+M00hdQLKR58WuyXPZZjhKLFCEP2g+TXdBRtLQ33UfAdRUg==1093 dependencies:1094 "@typescript-eslint/types" "5.40.1"1095 "@typescript-eslint/visitor-keys" "5.40.1"10961097"@typescript-eslint/type-utils@5.40.1":1098 version "5.40.1"1099 resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.40.1.tgz#091e4ce3bebbdb68f4980bae9dee2e4e1725f601"1100 integrity sha512-DLAs+AHQOe6n5LRraXiv27IYPhleF0ldEmx6yBqBgBLaNRKTkffhV1RPsjoJBhVup2zHxfaRtan8/YRBgYhU9Q==1101 dependencies:1102 "@typescript-eslint/typescript-estree" "5.40.1"1103 "@typescript-eslint/utils" "5.40.1"1104 debug "^4.3.4"1105 tsutils "^3.21.0"11061107"@typescript-eslint/types@5.40.1":1108 version "5.40.1"1109 resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.40.1.tgz#de37f4f64de731ee454bb2085d71030aa832f749"1110 integrity sha512-Icg9kiuVJSwdzSQvtdGspOlWNjVDnF3qVIKXdJ103o36yRprdl3Ge5cABQx+csx960nuMF21v8qvO31v9t3OHw==11111112"@typescript-eslint/typescript-estree@5.40.1":1113 version "5.40.1"1114 resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.1.tgz#9a7d25492f02c69882ce5e0cd1857b0c55645d72"1115 integrity sha512-5QTP/nW5+60jBcEPfXy/EZL01qrl9GZtbgDZtDPlfW5zj/zjNrdI2B5zMUHmOsfvOr2cWqwVdWjobCiHcedmQA==1116 dependencies:1117 "@typescript-eslint/types" "5.40.1"1118 "@typescript-eslint/visitor-keys" "5.40.1"1119 debug "^4.3.4"1120 globby "^11.1.0"1121 is-glob "^4.0.3"1122 semver "^7.3.7"1123 tsutils "^3.21.0"11241125"@typescript-eslint/utils@5.40.1":1126 version "5.40.1"1127 resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.40.1.tgz#3204fb73a559d3b7bab7dc9d3c44487c2734a9ca"1128 integrity sha512-a2TAVScoX9fjryNrW6BZRnreDUszxqm9eQ9Esv8n5nXApMW0zeANUYlwh/DED04SC/ifuBvXgZpIK5xeJHQ3aw==1129 dependencies:1130 "@types/json-schema" "^7.0.9"1131 "@types/semver" "^7.3.12"1132 "@typescript-eslint/scope-manager" "5.40.1"1133 "@typescript-eslint/types" "5.40.1"1134 "@typescript-eslint/typescript-estree" "5.40.1"1135 eslint-scope "^5.1.1"1136 eslint-utils "^3.0.0"1137 semver "^7.3.7"11381139"@typescript-eslint/visitor-keys@5.40.1":1140 version "5.40.1"1141 resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.1.tgz#f3d2bf5af192f4432b84cec6fdcb387193518754"1142 integrity sha512-A2DGmeZ+FMja0geX5rww+DpvILpwo1OsiQs0M+joPWJYsiEFBLsH0y1oFymPNul6Z5okSmHpP4ivkc2N0Cgfkw==1143 dependencies:1144 "@typescript-eslint/types" "5.40.1"1145 eslint-visitor-keys "^3.3.0"11461147abortcontroller-polyfill@^1.7.3:1148 version "1.7.5"1149 resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz#6738495f4e901fbb57b6c0611d0c75f76c485bed"1150 integrity sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==11511152accepts@~1.3.8:1153 version "1.3.8"1154 resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"1155 integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==1156 dependencies:1157 mime-types "~2.1.34"1158 negotiator "0.6.3"11591160acorn-jsx@^5.3.2:1161 version "5.3.2"1162 resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"1163 integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==11641165acorn-walk@^8.1.1:1166 version "8.2.0"1167 resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"1168 integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==11691170acorn@^8.4.1, acorn@^8.8.0:1171 version "8.8.0"1172 resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"1173 integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==11741175ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4:1176 version "6.12.6"1177 resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"1178 integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==1179 dependencies:1180 fast-deep-equal "^3.1.1"1181 fast-json-stable-stringify "^2.0.0"1182 json-schema-traverse "^0.4.1"1183 uri-js "^4.2.2"11841185ansi-colors@4.1.1:1186 version "4.1.1"1187 resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"1188 integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==11891190ansi-regex@^5.0.1:1191 version "5.0.1"1192 resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"1193 integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==11941195ansi-styles@^3.2.1:1196 version "3.2.1"1197 resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"1198 integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==1199 dependencies:1200 color-convert "^1.9.0"12011202ansi-styles@^4.0.0, ansi-styles@^4.1.0:1203 version "4.3.0"1204 resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"1205 integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==1206 dependencies:1207 color-convert "^2.0.1"12081209anymatch@~3.1.2:1210 version "3.1.2"1211 resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"1212 integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==1213 dependencies:1214 normalize-path "^3.0.0"1215 picomatch "^2.0.4"12161217arg@^4.1.0:1218 version "4.1.3"1219 resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"1220 integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==12211222argparse@^2.0.1:1223 version "2.0.1"1224 resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"1225 integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==12261227array-back@^3.0.1, array-back@^3.1.0:1228 version "3.1.0"1229 resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0"1230 integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==12311232array-back@^4.0.1, array-back@^4.0.2:1233 version "4.0.2"1234 resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e"1235 integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==12361237array-flatten@1.1.1:1238 version "1.1.1"1239 resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"1240 integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==12411242array-union@^2.1.0:1243 version "2.1.0"1244 resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"1245 integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==12461247asn1.js@^5.2.0:1248 version "5.4.1"1249 resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"1250 integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==1251 dependencies:1252 bn.js "^4.0.0"1253 inherits "^2.0.1"1254 minimalistic-assert "^1.0.0"1255 safer-buffer "^2.1.0"12561257asn1@~0.2.3:1258 version "0.2.6"1259 resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"1260 integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==1261 dependencies:1262 safer-buffer "~2.1.0"12631264assert-plus@1.0.0, assert-plus@^1.0.0:1265 version "1.0.0"1266 resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"1267 integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==12681269assertion-error@^1.1.0:1270 version "1.1.0"1271 resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b"1272 integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==12731274async-limiter@~1.0.0:1275 version "1.0.1"1276 resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"1277 integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==12781279asynckit@^0.4.0:1280 version "0.4.0"1281 resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"1282 integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==12831284available-typed-arrays@^1.0.5:1285 version "1.0.5"1286 resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"1287 integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==12881289aws-sign2@~0.7.0:1290 version "0.7.0"1291 resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"1292 integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==12931294aws4@^1.8.0:1295 version "1.11.0"1296 resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59"1297 integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==12981299balanced-match@^1.0.0:1300 version "1.0.2"1301 resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"1302 integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==13031304base-x@^3.0.2, base-x@^3.0.8:1305 version "3.0.9"1306 resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320"1307 integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==1308 dependencies:1309 safe-buffer "^5.0.1"13101311base64-js@^1.3.1:1312 version "1.5.1"1313 resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"1314 integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==13151316bcrypt-pbkdf@^1.0.0:1317 version "1.0.2"1318 resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"1319 integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==1320 dependencies:1321 tweetnacl "^0.14.3"13221323bignumber.js@^9.0.0:1324 version "9.1.0"1325 resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.0.tgz#8d340146107fe3a6cb8d40699643c302e8773b62"1326 integrity sha512-4LwHK4nfDOraBCtst+wOWIHbu1vhvAPJK8g8nROd4iuc3PSEjWif/qwbkh8jwCJz6yDBvtU4KPynETgrfh7y3A==13271328binary-extensions@^2.0.0:1329 version "2.2.0"1330 resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"1331 integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==13321333blakejs@^1.1.0:1334 version "1.2.1"1335 resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"1336 integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==13371338bluebird@^3.5.0:1339 version "3.7.2"1340 resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"1341 integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==13421343bn.js@4.11.6:1344 version "4.11.6"1345 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"1346 integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==13471348bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.6, bn.js@^4.11.9:1349 version "4.12.0"1350 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"1351 integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==13521353bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1:1354 version "5.2.1"1355 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"1356 integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==13571358body-parser@1.20.1, body-parser@^1.16.0:1359 version "1.20.1"1360 resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"1361 integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==1362 dependencies:1363 bytes "3.1.2"1364 content-type "~1.0.4"1365 debug "2.6.9"1366 depd "2.0.0"1367 destroy "1.2.0"1368 http-errors "2.0.0"1369 iconv-lite "0.4.24"1370 on-finished "2.4.1"1371 qs "6.11.0"1372 raw-body "2.5.1"1373 type-is "~1.6.18"1374 unpipe "1.0.0"13751376brace-expansion@^1.1.7:1377 version "1.1.11"1378 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"1379 integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==1380 dependencies:1381 balanced-match "^1.0.0"1382 concat-map "0.0.1"13831384brace-expansion@^2.0.1:1385 version "2.0.1"1386 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"1387 integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==1388 dependencies:1389 balanced-match "^1.0.0"13901391braces@^3.0.2, braces@~3.0.2:1392 version "3.0.2"1393 resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"1394 integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==1395 dependencies:1396 fill-range "^7.0.1"13971398brorand@^1.0.1, brorand@^1.1.0:1399 version "1.1.0"1400 resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"1401 integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==14021403browser-stdout@1.3.1:1404 version "1.3.1"1405 resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60"1406 integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==14071408browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0:1409 version "1.2.0"1410 resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"1411 integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==1412 dependencies:1413 buffer-xor "^1.0.3"1414 cipher-base "^1.0.0"1415 create-hash "^1.1.0"1416 evp_bytestokey "^1.0.3"1417 inherits "^2.0.1"1418 safe-buffer "^5.0.1"14191420browserify-cipher@^1.0.0:1421 version "1.0.1"1422 resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"1423 integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==1424 dependencies:1425 browserify-aes "^1.0.4"1426 browserify-des "^1.0.0"1427 evp_bytestokey "^1.0.0"14281429browserify-des@^1.0.0:1430 version "1.0.2"1431 resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"1432 integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==1433 dependencies:1434 cipher-base "^1.0.1"1435 des.js "^1.0.0"1436 inherits "^2.0.1"1437 safe-buffer "^5.1.2"14381439browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:1440 version "4.1.0"1441 resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d"1442 integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==1443 dependencies:1444 bn.js "^5.0.0"1445 randombytes "^2.0.1"14461447browserify-sign@^4.0.0:1448 version "4.2.1"1449 resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3"1450 integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==1451 dependencies:1452 bn.js "^5.1.1"1453 browserify-rsa "^4.0.1"1454 create-hash "^1.2.0"1455 create-hmac "^1.1.7"1456 elliptic "^6.5.3"1457 inherits "^2.0.4"1458 parse-asn1 "^5.1.5"1459 readable-stream "^3.6.0"1460 safe-buffer "^5.2.0"14611462browserslist@^4.21.3:1463 version "4.21.4"1464 resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987"1465 integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==1466 dependencies:1467 caniuse-lite "^1.0.30001400"1468 electron-to-chromium "^1.4.251"1469 node-releases "^2.0.6"1470 update-browserslist-db "^1.0.9"14711472bs58@^4.0.0:1473 version "4.0.1"1474 resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a"1475 integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==1476 dependencies:1477 base-x "^3.0.2"14781479bs58check@^2.1.2:1480 version "2.1.2"1481 resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-2.1.2.tgz#53b018291228d82a5aa08e7d796fdafda54aebfc"1482 integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==1483 dependencies:1484 bs58 "^4.0.0"1485 create-hash "^1.1.0"1486 safe-buffer "^5.1.2"14871488buffer-from@^1.0.0:1489 version "1.1.2"1490 resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"1491 integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==14921493buffer-to-arraybuffer@^0.0.5:1494 version "0.0.5"1495 resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a"1496 integrity sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==14971498buffer-xor@^1.0.3:1499 version "1.0.3"1500 resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"1501 integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==15021503buffer@^5.0.5, buffer@^5.5.0, buffer@^5.6.0:1504 version "5.7.1"1505 resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"1506 integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==1507 dependencies:1508 base64-js "^1.3.1"1509 ieee754 "^1.1.13"15101511bufferutil@^4.0.1:1512 version "4.0.7"1513 resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.7.tgz#60c0d19ba2c992dd8273d3f73772ffc894c153ad"1514 integrity sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==1515 dependencies:1516 node-gyp-build "^4.3.0"15171518bytes@3.1.2:1519 version "3.1.2"1520 resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"1521 integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==15221523cacheable-lookup@^5.0.3:1524 version "5.0.4"1525 resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005"1526 integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==15271528cacheable-lookup@^6.0.4:1529 version "6.1.0"1530 resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.1.0.tgz#0330a543471c61faa4e9035db583aad753b36385"1531 integrity sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==15321533cacheable-request@^7.0.2:1534 version "7.0.2"1535 resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27"1536 integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==1537 dependencies:1538 clone-response "^1.0.2"1539 get-stream "^5.1.0"1540 http-cache-semantics "^4.0.0"1541 keyv "^4.0.0"1542 lowercase-keys "^2.0.0"1543 normalize-url "^6.0.1"1544 responselike "^2.0.0"15451546call-bind@^1.0.0, call-bind@^1.0.2:1547 version "1.0.2"1548 resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"1549 integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==1550 dependencies:1551 function-bind "^1.1.1"1552 get-intrinsic "^1.0.2"15531554callsites@^3.0.0:1555 version "3.1.0"1556 resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"1557 integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==15581559camelcase@^6.0.0:1560 version "6.3.0"1561 resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"1562 integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==15631564caniuse-lite@^1.0.30001400:1565 version "1.0.30001422"1566 resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001422.tgz#f2d7c6202c49a8359e6e35add894d88ef93edba1"1567 integrity sha512-hSesn02u1QacQHhaxl/kNMZwqVG35Sz/8DgvmgedxSH8z9UUpcDYSPYgsj3x5dQNRcNp6BwpSfQfVzYUTm+fog==15681569caseless@~0.12.0:1570 version "0.12.0"1571 resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"1572 integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==15731574chai-as-promised@^7.1.1:1575 version "7.1.1"1576 resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-7.1.1.tgz#08645d825deb8696ee61725dbf590c012eb00ca0"1577 integrity sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==1578 dependencies:1579 check-error "^1.0.2"15801581chai-like@^1.1.1:1582 version "1.1.1"1583 resolved "https://registry.yarnpkg.com/chai-like/-/chai-like-1.1.1.tgz#8c558a414c34514e814d497c772547ceb7958f64"1584 integrity sha512-VKa9z/SnhXhkT1zIjtPACFWSoWsqVoaz1Vg+ecrKo5DCKVlgL30F/pEyEvXPBOVwCgLZcWUleCM/C1okaKdTTA==15851586chai@^4.3.6:1587 version "4.3.6"1588 resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.6.tgz#ffe4ba2d9fa9d6680cc0b370adae709ec9011e9c"1589 integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==1590 dependencies:1591 assertion-error "^1.1.0"1592 check-error "^1.0.2"1593 deep-eql "^3.0.1"1594 get-func-name "^2.0.0"1595 loupe "^2.3.1"1596 pathval "^1.1.1"1597 type-detect "^4.0.5"15981599chalk@^2.0.0, chalk@^2.4.2:1600 version "2.4.2"1601 resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"1602 integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==1603 dependencies:1604 ansi-styles "^3.2.1"1605 escape-string-regexp "^1.0.5"1606 supports-color "^5.3.0"16071608chalk@^4.0.0, chalk@^4.1.0:1609 version "4.1.2"1610 resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"1611 integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==1612 dependencies:1613 ansi-styles "^4.1.0"1614 supports-color "^7.1.0"16151616check-error@^1.0.2:1617 version "1.0.2"1618 resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82"1619 integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==16201621chokidar@3.5.3:1622 version "3.5.3"1623 resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"1624 integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==1625 dependencies:1626 anymatch "~3.1.2"1627 braces "~3.0.2"1628 glob-parent "~5.1.2"1629 is-binary-path "~2.1.0"1630 is-glob "~4.0.1"1631 normalize-path "~3.0.0"1632 readdirp "~3.6.0"1633 optionalDependencies:1634 fsevents "~2.3.2"16351636chownr@^1.1.4:1637 version "1.1.4"1638 resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"1639 integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==16401641cids@^0.7.1:1642 version "0.7.5"1643 resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2"1644 integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==1645 dependencies:1646 buffer "^5.5.0"1647 class-is "^1.1.0"1648 multibase "~0.6.0"1649 multicodec "^1.0.0"1650 multihashes "~0.4.15"16511652cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:1653 version "1.0.4"1654 resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"1655 integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==1656 dependencies:1657 inherits "^2.0.1"1658 safe-buffer "^5.0.1"16591660class-is@^1.1.0:1661 version "1.1.0"1662 resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825"1663 integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==16641665cliui@^7.0.2:1666 version "7.0.4"1667 resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"1668 integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==1669 dependencies:1670 string-width "^4.2.0"1671 strip-ansi "^6.0.0"1672 wrap-ansi "^7.0.0"16731674cliui@^8.0.1:1675 version "8.0.1"1676 resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"1677 integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==1678 dependencies:1679 string-width "^4.2.0"1680 strip-ansi "^6.0.1"1681 wrap-ansi "^7.0.0"16821683clone-deep@^4.0.1:1684 version "4.0.1"1685 resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"1686 integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==1687 dependencies:1688 is-plain-object "^2.0.4"1689 kind-of "^6.0.2"1690 shallow-clone "^3.0.0"16911692clone-response@^1.0.2:1693 version "1.0.3"1694 resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3"1695 integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==1696 dependencies:1697 mimic-response "^1.0.0"16981699color-convert@^1.9.0:1700 version "1.9.3"1701 resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"1702 integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==1703 dependencies:1704 color-name "1.1.3"17051706color-convert@^2.0.1:1707 version "2.0.1"1708 resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"1709 integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==1710 dependencies:1711 color-name "~1.1.4"17121713color-name@1.1.3:1714 version "1.1.3"1715 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"1716 integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==17171718color-name@~1.1.4:1719 version "1.1.4"1720 resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"1721 integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==17221723combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:1724 version "1.0.8"1725 resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"1726 integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==1727 dependencies:1728 delayed-stream "~1.0.0"17291730command-exists@^1.2.8:1731 version "1.2.9"1732 resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69"1733 integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==17341735command-line-args@^5.1.1:1736 version "5.2.1"1737 resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e"1738 integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==1739 dependencies:1740 array-back "^3.1.0"1741 find-replace "^3.0.0"1742 lodash.camelcase "^4.3.0"1743 typical "^4.0.0"17441745command-line-usage@^6.1.0:1746 version "6.1.3"1747 resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957"1748 integrity sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==1749 dependencies:1750 array-back "^4.0.2"1751 chalk "^2.4.2"1752 table-layout "^1.0.2"1753 typical "^5.2.0"17541755commander@^5.1.0:1756 version "5.1.0"1757 resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"1758 integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==17591760commander@^8.1.0:1761 version "8.3.0"1762 resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66"1763 integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==17641765commondir@^1.0.1:1766 version "1.0.1"1767 resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"1768 integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==17691770concat-map@0.0.1:1771 version "0.0.1"1772 resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"1773 integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==17741775content-disposition@0.5.4:1776 version "0.5.4"1777 resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"1778 integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==1779 dependencies:1780 safe-buffer "5.2.1"17811782content-hash@^2.5.2:1783 version "2.5.2"1784 resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211"1785 integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==1786 dependencies:1787 cids "^0.7.1"1788 multicodec "^0.5.5"1789 multihashes "^0.4.15"17901791content-type@~1.0.4:1792 version "1.0.4"1793 resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"1794 integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==17951796convert-source-map@^1.7.0:1797 version "1.9.0"1798 resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"1799 integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==18001801cookie-signature@1.0.6:1802 version "1.0.6"1803 resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"1804 integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==18051806cookie@0.5.0:1807 version "0.5.0"1808 resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b"1809 integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==18101811core-util-is@1.0.2:1812 version "1.0.2"1813 resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"1814 integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==18151816cors@^2.8.1:1817 version "2.8.5"1818 resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"1819 integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==1820 dependencies:1821 object-assign "^4"1822 vary "^1"18231824crc-32@^1.2.0:1825 version "1.2.2"1826 resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff"1827 integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==18281829create-ecdh@^4.0.0:1830 version "4.0.4"1831 resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"1832 integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==1833 dependencies:1834 bn.js "^4.1.0"1835 elliptic "^6.5.3"18361837create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:1838 version "1.2.0"1839 resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"1840 integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==1841 dependencies:1842 cipher-base "^1.0.1"1843 inherits "^2.0.1"1844 md5.js "^1.3.4"1845 ripemd160 "^2.0.1"1846 sha.js "^2.4.0"18471848create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:1849 version "1.1.7"1850 resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"1851 integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==1852 dependencies:1853 cipher-base "^1.0.3"1854 create-hash "^1.1.0"1855 inherits "^2.0.1"1856 ripemd160 "^2.0.0"1857 safe-buffer "^5.0.1"1858 sha.js "^2.4.8"18591860create-require@^1.1.0:1861 version "1.1.1"1862 resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"1863 integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==18641865cross-fetch@^3.1.4:1866 version "3.1.5"1867 resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f"1868 integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==1869 dependencies:1870 node-fetch "2.6.7"18711872cross-spawn@^7.0.2:1873 version "7.0.3"1874 resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"1875 integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==1876 dependencies:1877 path-key "^3.1.0"1878 shebang-command "^2.0.0"1879 which "^2.0.1"18801881crypto-browserify@3.12.0:1882 version "3.12.0"1883 resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"1884 integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==1885 dependencies:1886 browserify-cipher "^1.0.0"1887 browserify-sign "^4.0.0"1888 create-ecdh "^4.0.0"1889 create-hash "^1.1.0"1890 create-hmac "^1.1.0"1891 diffie-hellman "^5.0.0"1892 inherits "^2.0.1"1893 pbkdf2 "^3.0.3"1894 public-encrypt "^4.0.0"1895 randombytes "^2.0.0"1896 randomfill "^1.0.3"18971898d@1, d@^1.0.1:1899 version "1.0.1"1900 resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a"1901 integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==1902 dependencies:1903 es5-ext "^0.10.50"1904 type "^1.0.1"19051906dashdash@^1.12.0:1907 version "1.14.1"1908 resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"1909 integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==1910 dependencies:1911 assert-plus "^1.0.0"19121913data-uri-to-buffer@^4.0.0:1914 version "4.0.0"1915 resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz#b5db46aea50f6176428ac05b73be39a57701a64b"1916 integrity sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==19171918debug@2.6.9, debug@^2.2.0:1919 version "2.6.9"1920 resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"1921 integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==1922 dependencies:1923 ms "2.0.0"19241925debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4:1926 version "4.3.4"1927 resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"1928 integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==1929 dependencies:1930 ms "2.1.2"19311932decamelize@^4.0.0:1933 version "4.0.0"1934 resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837"1935 integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==19361937decode-uri-component@^0.2.0:1938 version "0.2.0"1939 resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"1940 integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==19411942decompress-response@^3.3.0:1943 version "3.3.0"1944 resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"1945 integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==1946 dependencies:1947 mimic-response "^1.0.0"19481949decompress-response@^6.0.0:1950 version "6.0.0"1951 resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"1952 integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==1953 dependencies:1954 mimic-response "^3.1.0"19551956deep-eql@^3.0.1:1957 version "3.0.1"1958 resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df"1959 integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==1960 dependencies:1961 type-detect "^4.0.0"19621963deep-extend@~0.6.0:1964 version "0.6.0"1965 resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"1966 integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==19671968deep-is@^0.1.3:1969 version "0.1.4"1970 resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"1971 integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==19721973defer-to-connect@^2.0.0, defer-to-connect@^2.0.1:1974 version "2.0.1"1975 resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"1976 integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==19771978define-properties@^1.1.3, define-properties@^1.1.4:1979 version "1.1.4"1980 resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"1981 integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==1982 dependencies:1983 has-property-descriptors "^1.0.0"1984 object-keys "^1.1.1"19851986delayed-stream@~1.0.0:1987 version "1.0.0"1988 resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"1989 integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==19901991depd@2.0.0:1992 version "2.0.0"1993 resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"1994 integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==19951996des.js@^1.0.0:1997 version "1.0.1"1998 resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"1999 integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==2000 dependencies:2001 inherits "^2.0.1"2002 minimalistic-assert "^1.0.0"20032004destroy@1.2.0:2005 version "1.2.0"2006 resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"2007 integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==20082009diff@5.0.0:2010 version "5.0.0"2011 resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b"2012 integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==20132014diff@^4.0.1:2015 version "4.0.2"2016 resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"2017 integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==20182019diffie-hellman@^5.0.0:2020 version "5.0.3"2021 resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"2022 integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==2023 dependencies:2024 bn.js "^4.1.0"2025 miller-rabin "^4.0.0"2026 randombytes "^2.0.0"20272028dir-glob@^3.0.1:2029 version "3.0.1"2030 resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"2031 integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==2032 dependencies:2033 path-type "^4.0.0"20342035doctrine@^3.0.0:2036 version "3.0.0"2037 resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"2038 integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==2039 dependencies:2040 esutils "^2.0.2"20412042dom-walk@^0.1.0:2043 version "0.1.2"2044 resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84"2045 integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==20462047ecc-jsbn@~0.1.1:2048 version "0.1.2"2049 resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"2050 integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==2051 dependencies:2052 jsbn "~0.1.0"2053 safer-buffer "^2.1.0"20542055ed2curve@^0.3.0:2056 version "0.3.0"2057 resolved "https://registry.yarnpkg.com/ed2curve/-/ed2curve-0.3.0.tgz#322b575152a45305429d546b071823a93129a05d"2058 integrity sha512-8w2fmmq3hv9rCrcI7g9hms2pMunQr1JINfcjwR9tAyZqhtyaMN991lF/ZfHfr5tzZQ8c7y7aBgZbjfbd0fjFwQ==2059 dependencies:2060 tweetnacl "1.x.x"20612062ee-first@1.1.1:2063 version "1.1.1"2064 resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"2065 integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==20662067electron-to-chromium@^1.4.251:2068 version "1.4.284"2069 resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592"2070 integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==20712072elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.3, elliptic@^6.5.4:2073 version "6.5.4"2074 resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"2075 integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==2076 dependencies:2077 bn.js "^4.11.9"2078 brorand "^1.1.0"2079 hash.js "^1.0.0"2080 hmac-drbg "^1.0.1"2081 inherits "^2.0.4"2082 minimalistic-assert "^1.0.1"2083 minimalistic-crypto-utils "^1.0.1"20842085emoji-regex@^8.0.0:2086 version "8.0.0"2087 resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"2088 integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==20892090encodeurl@~1.0.2:2091 version "1.0.2"2092 resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"2093 integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==20942095end-of-stream@^1.1.0:2096 version "1.4.4"2097 resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"2098 integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==2099 dependencies:2100 once "^1.4.0"21012102es-abstract@^1.19.0, es-abstract@^1.19.5, es-abstract@^1.20.0:2103 version "1.20.4"2104 resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.4.tgz#1d103f9f8d78d4cf0713edcd6d0ed1a46eed5861"2105 integrity sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==2106 dependencies:2107 call-bind "^1.0.2"2108 es-to-primitive "^1.2.1"2109 function-bind "^1.1.1"2110 function.prototype.name "^1.1.5"2111 get-intrinsic "^1.1.3"2112 get-symbol-description "^1.0.0"2113 has "^1.0.3"2114 has-property-descriptors "^1.0.0"2115 has-symbols "^1.0.3"2116 internal-slot "^1.0.3"2117 is-callable "^1.2.7"2118 is-negative-zero "^2.0.2"2119 is-regex "^1.1.4"2120 is-shared-array-buffer "^1.0.2"2121 is-string "^1.0.7"2122 is-weakref "^1.0.2"2123 object-inspect "^1.12.2"2124 object-keys "^1.1.1"2125 object.assign "^4.1.4"2126 regexp.prototype.flags "^1.4.3"2127 safe-regex-test "^1.0.0"2128 string.prototype.trimend "^1.0.5"2129 string.prototype.trimstart "^1.0.5"2130 unbox-primitive "^1.0.2"21312132es-to-primitive@^1.2.1:2133 version "1.2.1"2134 resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"2135 integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==2136 dependencies:2137 is-callable "^1.1.4"2138 is-date-object "^1.0.1"2139 is-symbol "^1.0.2"21402141es5-ext@^0.10.35, es5-ext@^0.10.50:2142 version "0.10.62"2143 resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5"2144 integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==2145 dependencies:2146 es6-iterator "^2.0.3"2147 es6-symbol "^3.1.3"2148 next-tick "^1.1.0"21492150es6-iterator@^2.0.3:2151 version "2.0.3"2152 resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"2153 integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==2154 dependencies:2155 d "1"2156 es5-ext "^0.10.35"2157 es6-symbol "^3.1.1"21582159es6-promise@^4.2.8:2160 version "4.2.8"2161 resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a"2162 integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==21632164es6-symbol@^3.1.1, es6-symbol@^3.1.3:2165 version "3.1.3"2166 resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18"2167 integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==2168 dependencies:2169 d "^1.0.1"2170 ext "^1.1.2"21712172escalade@^3.1.1:2173 version "3.1.1"2174 resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"2175 integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==21762177escape-html@~1.0.3:2178 version "1.0.3"2179 resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"2180 integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==21812182escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0:2183 version "4.0.0"2184 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"2185 integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==21862187escape-string-regexp@^1.0.5:2188 version "1.0.5"2189 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"2190 integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==21912192eslint-plugin-mocha@^10.1.0:2193 version "10.1.0"2194 resolved "https://registry.yarnpkg.com/eslint-plugin-mocha/-/eslint-plugin-mocha-10.1.0.tgz#69325414f875be87fb2cb00b2ef33168d4eb7c8d"2195 integrity sha512-xLqqWUF17llsogVOC+8C6/jvQ+4IoOREbN7ZCHuOHuD6cT5cDD4h7f2LgsZuzMAiwswWE21tO7ExaknHVDrSkw==2196 dependencies:2197 eslint-utils "^3.0.0"2198 rambda "^7.1.0"21992200eslint-scope@^5.1.1:2201 version "5.1.1"2202 resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"2203 integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==2204 dependencies:2205 esrecurse "^4.3.0"2206 estraverse "^4.1.1"22072208eslint-scope@^7.1.1:2209 version "7.1.1"2210 resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"2211 integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==2212 dependencies:2213 esrecurse "^4.3.0"2214 estraverse "^5.2.0"22152216eslint-utils@^3.0.0:2217 version "3.0.0"2218 resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"2219 integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==2220 dependencies:2221 eslint-visitor-keys "^2.0.0"22222223eslint-visitor-keys@^2.0.0:2224 version "2.1.0"2225 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"2226 integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==22272228eslint-visitor-keys@^3.3.0:2229 version "3.3.0"2230 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"2231 integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==22322233eslint@^8.25.0:2234 version "8.25.0"2235 resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.25.0.tgz#00eb962f50962165d0c4ee3327708315eaa8058b"2236 integrity sha512-DVlJOZ4Pn50zcKW5bYH7GQK/9MsoQG2d5eDH0ebEkE8PbgzTTmtt/VTH9GGJ4BfeZCpBLqFfvsjX35UacUL83A==2237 dependencies:2238 "@eslint/eslintrc" "^1.3.3"2239 "@humanwhocodes/config-array" "^0.10.5"2240 "@humanwhocodes/module-importer" "^1.0.1"2241 ajv "^6.10.0"2242 chalk "^4.0.0"2243 cross-spawn "^7.0.2"2244 debug "^4.3.2"2245 doctrine "^3.0.0"2246 escape-string-regexp "^4.0.0"2247 eslint-scope "^7.1.1"2248 eslint-utils "^3.0.0"2249 eslint-visitor-keys "^3.3.0"2250 espree "^9.4.0"2251 esquery "^1.4.0"2252 esutils "^2.0.2"2253 fast-deep-equal "^3.1.3"2254 file-entry-cache "^6.0.1"2255 find-up "^5.0.0"2256 glob-parent "^6.0.1"2257 globals "^13.15.0"2258 globby "^11.1.0"2259 grapheme-splitter "^1.0.4"2260 ignore "^5.2.0"2261 import-fresh "^3.0.0"2262 imurmurhash "^0.1.4"2263 is-glob "^4.0.0"2264 js-sdsl "^4.1.4"2265 js-yaml "^4.1.0"2266 json-stable-stringify-without-jsonify "^1.0.1"2267 levn "^0.4.1"2268 lodash.merge "^4.6.2"2269 minimatch "^3.1.2"2270 natural-compare "^1.4.0"2271 optionator "^0.9.1"2272 regexpp "^3.2.0"2273 strip-ansi "^6.0.1"2274 strip-json-comments "^3.1.0"2275 text-table "^0.2.0"22762277espree@^9.4.0:2278 version "9.4.0"2279 resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.0.tgz#cd4bc3d6e9336c433265fc0aa016fc1aaf182f8a"2280 integrity sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==2281 dependencies:2282 acorn "^8.8.0"2283 acorn-jsx "^5.3.2"2284 eslint-visitor-keys "^3.3.0"22852286esquery@^1.4.0:2287 version "1.4.0"2288 resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"2289 integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==2290 dependencies:2291 estraverse "^5.1.0"22922293esrecurse@^4.3.0:2294 version "4.3.0"2295 resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"2296 integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==2297 dependencies:2298 estraverse "^5.2.0"22992300estraverse@^4.1.1:2301 version "4.3.0"2302 resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"2303 integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==23042305estraverse@^5.1.0, estraverse@^5.2.0:2306 version "5.3.0"2307 resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"2308 integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==23092310esutils@^2.0.2:2311 version "2.0.3"2312 resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"2313 integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==23142315etag@~1.8.1:2316 version "1.8.1"2317 resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"2318 integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==23192320eth-ens-namehash@2.0.8:2321 version "2.0.8"2322 resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf"2323 integrity sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==2324 dependencies:2325 idna-uts46-hx "^2.3.1"2326 js-sha3 "^0.5.7"23272328eth-lib@0.2.8:2329 version "0.2.8"2330 resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8"2331 integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==2332 dependencies:2333 bn.js "^4.11.6"2334 elliptic "^6.4.0"2335 xhr-request-promise "^0.1.2"23362337eth-lib@^0.1.26:2338 version "0.1.29"2339 resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.1.29.tgz#0c11f5060d42da9f931eab6199084734f4dbd1d9"2340 integrity sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==2341 dependencies:2342 bn.js "^4.11.6"2343 elliptic "^6.4.0"2344 nano-json-stream-parser "^0.1.2"2345 servify "^0.1.12"2346 ws "^3.0.0"2347 xhr-request-promise "^0.1.2"23482349ethereum-bloom-filters@^1.0.6:2350 version "1.0.10"2351 resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz#3ca07f4aed698e75bd134584850260246a5fed8a"2352 integrity sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==2353 dependencies:2354 js-sha3 "^0.8.0"23552356ethereum-cryptography@^0.1.3:2357 version "0.1.3"2358 resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191"2359 integrity sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==2360 dependencies:2361 "@types/pbkdf2" "^3.0.0"2362 "@types/secp256k1" "^4.0.1"2363 blakejs "^1.1.0"2364 browserify-aes "^1.2.0"2365 bs58check "^2.1.2"2366 create-hash "^1.2.0"2367 create-hmac "^1.1.7"2368 hash.js "^1.1.7"2369 keccak "^3.0.0"2370 pbkdf2 "^3.0.17"2371 randombytes "^2.1.0"2372 safe-buffer "^5.1.2"2373 scrypt-js "^3.0.0"2374 secp256k1 "^4.0.1"2375 setimmediate "^1.0.5"23762377ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.5:2378 version "7.1.5"2379 resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181"2380 integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==2381 dependencies:2382 "@types/bn.js" "^5.1.0"2383 bn.js "^5.1.2"2384 create-hash "^1.1.2"2385 ethereum-cryptography "^0.1.3"2386 rlp "^2.2.4"23872388ethjs-unit@0.1.6:2389 version "0.1.6"2390 resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699"2391 integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==2392 dependencies:2393 bn.js "4.11.6"2394 number-to-bn "1.7.0"23952396eventemitter3@4.0.4:2397 version "4.0.4"2398 resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384"2399 integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==24002401eventemitter3@^4.0.7:2402 version "4.0.7"2403 resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"2404 integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==24052406evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:2407 version "1.0.3"2408 resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"2409 integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==2410 dependencies:2411 md5.js "^1.3.4"2412 safe-buffer "^5.1.1"24132414express@^4.14.0:2415 version "4.18.2"2416 resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59"2417 integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==2418 dependencies:2419 accepts "~1.3.8"2420 array-flatten "1.1.1"2421 body-parser "1.20.1"2422 content-disposition "0.5.4"2423 content-type "~1.0.4"2424 cookie "0.5.0"2425 cookie-signature "1.0.6"2426 debug "2.6.9"2427 depd "2.0.0"2428 encodeurl "~1.0.2"2429 escape-html "~1.0.3"2430 etag "~1.8.1"2431 finalhandler "1.2.0"2432 fresh "0.5.2"2433 http-errors "2.0.0"2434 merge-descriptors "1.0.1"2435 methods "~1.1.2"2436 on-finished "2.4.1"2437 parseurl "~1.3.3"2438 path-to-regexp "0.1.7"2439 proxy-addr "~2.0.7"2440 qs "6.11.0"2441 range-parser "~1.2.1"2442 safe-buffer "5.2.1"2443 send "0.18.0"2444 serve-static "1.15.0"2445 setprototypeof "1.2.0"2446 statuses "2.0.1"2447 type-is "~1.6.18"2448 utils-merge "1.0.1"2449 vary "~1.1.2"24502451ext@^1.1.2:2452 version "1.7.0"2453 resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f"2454 integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==2455 dependencies:2456 type "^2.7.2"24572458extend@~3.0.2:2459 version "3.0.2"2460 resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"2461 integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==24622463extsprintf@1.3.0:2464 version "1.3.0"2465 resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"2466 integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==24672468extsprintf@^1.2.0:2469 version "1.4.1"2470 resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"2471 integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==24722473fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:2474 version "3.1.3"2475 resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"2476 integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==24772478fast-glob@^3.2.9:2479 version "3.2.12"2480 resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"2481 integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==2482 dependencies:2483 "@nodelib/fs.stat" "^2.0.2"2484 "@nodelib/fs.walk" "^1.2.3"2485 glob-parent "^5.1.2"2486 merge2 "^1.3.0"2487 micromatch "^4.0.4"24882489fast-json-stable-stringify@^2.0.0:2490 version "2.1.0"2491 resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"2492 integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==24932494fast-levenshtein@^2.0.6:2495 version "2.0.6"2496 resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"2497 integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==24982499fastq@^1.6.0:2500 version "1.13.0"2501 resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"2502 integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==2503 dependencies:2504 reusify "^1.0.4"25052506fetch-blob@^3.1.2, fetch-blob@^3.1.4:2507 version "3.2.0"2508 resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9"2509 integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==2510 dependencies:2511 node-domexception "^1.0.0"2512 web-streams-polyfill "^3.0.3"25132514file-entry-cache@^6.0.1:2515 version "6.0.1"2516 resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"2517 integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==2518 dependencies:2519 flat-cache "^3.0.4"25202521fill-range@^7.0.1:2522 version "7.0.1"2523 resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"2524 integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==2525 dependencies:2526 to-regex-range "^5.0.1"25272528finalhandler@1.2.0:2529 version "1.2.0"2530 resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"2531 integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==2532 dependencies:2533 debug "2.6.9"2534 encodeurl "~1.0.2"2535 escape-html "~1.0.3"2536 on-finished "2.4.1"2537 parseurl "~1.3.3"2538 statuses "2.0.1"2539 unpipe "~1.0.0"25402541find-cache-dir@^2.0.0:2542 version "2.1.0"2543 resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7"2544 integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==2545 dependencies:2546 commondir "^1.0.1"2547 make-dir "^2.0.0"2548 pkg-dir "^3.0.0"25492550find-process@^1.4.7:2551 version "1.4.7"2552 resolved "https://registry.yarnpkg.com/find-process/-/find-process-1.4.7.tgz#8c76962259216c381ef1099371465b5b439ea121"2553 integrity sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==2554 dependencies:2555 chalk "^4.0.0"2556 commander "^5.1.0"2557 debug "^4.1.1"25582559find-replace@^3.0.0:2560 version "3.0.0"2561 resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-3.0.0.tgz#3e7e23d3b05167a76f770c9fbd5258b0def68c38"2562 integrity sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==2563 dependencies:2564 array-back "^3.0.1"25652566find-up@5.0.0, find-up@^5.0.0:2567 version "5.0.0"2568 resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"2569 integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==2570 dependencies:2571 locate-path "^6.0.0"2572 path-exists "^4.0.0"25732574find-up@^3.0.0:2575 version "3.0.0"2576 resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"2577 integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==2578 dependencies:2579 locate-path "^3.0.0"25802581flat-cache@^3.0.4:2582 version "3.0.4"2583 resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"2584 integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==2585 dependencies:2586 flatted "^3.1.0"2587 rimraf "^3.0.2"25882589flat@^5.0.2:2590 version "5.0.2"2591 resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"2592 integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==25932594flatted@^3.1.0:2595 version "3.2.7"2596 resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"2597 integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==25982599follow-redirects@^1.12.1:2600 version "1.15.2"2601 resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"2602 integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==26032604for-each@^0.3.3:2605 version "0.3.3"2606 resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"2607 integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==2608 dependencies:2609 is-callable "^1.1.3"26102611forever-agent@~0.6.1:2612 version "0.6.1"2613 resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"2614 integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==26152616form-data-encoder@1.7.1:2617 version "1.7.1"2618 resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96"2619 integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==26202621form-data@^3.0.0:2622 version "3.0.1"2623 resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"2624 integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==2625 dependencies:2626 asynckit "^0.4.0"2627 combined-stream "^1.0.8"2628 mime-types "^2.1.12"26292630form-data@~2.3.2:2631 version "2.3.3"2632 resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"2633 integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==2634 dependencies:2635 asynckit "^0.4.0"2636 combined-stream "^1.0.6"2637 mime-types "^2.1.12"26382639formdata-polyfill@^4.0.10:2640 version "4.0.10"2641 resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423"2642 integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==2643 dependencies:2644 fetch-blob "^3.1.2"26452646forwarded@0.2.0:2647 version "0.2.0"2648 resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"2649 integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==26502651fresh@0.5.2:2652 version "0.5.2"2653 resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"2654 integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==26552656fs-extra@^4.0.2:2657 version "4.0.3"2658 resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"2659 integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==2660 dependencies:2661 graceful-fs "^4.1.2"2662 jsonfile "^4.0.0"2663 universalify "^0.1.0"26642665fs-extra@^7.0.0:2666 version "7.0.1"2667 resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"2668 integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==2669 dependencies:2670 graceful-fs "^4.1.2"2671 jsonfile "^4.0.0"2672 universalify "^0.1.0"26732674fs-minipass@^1.2.7:2675 version "1.2.7"2676 resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"2677 integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==2678 dependencies:2679 minipass "^2.6.0"26802681fs.realpath@^1.0.0:2682 version "1.0.0"2683 resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"2684 integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==26852686fsevents@~2.3.2:2687 version "2.3.2"2688 resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"2689 integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==26902691function-bind@^1.1.1:2692 version "1.1.1"2693 resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"2694 integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==26952696function.prototype.name@^1.1.5:2697 version "1.1.5"2698 resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621"2699 integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==2700 dependencies:2701 call-bind "^1.0.2"2702 define-properties "^1.1.3"2703 es-abstract "^1.19.0"2704 functions-have-names "^1.2.2"27052706functions-have-names@^1.2.2:2707 version "1.2.3"2708 resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"2709 integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==27102711gensync@^1.0.0-beta.2:2712 version "1.0.0-beta.2"2713 resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"2714 integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==27152716get-caller-file@^2.0.5:2717 version "2.0.5"2718 resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"2719 integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==27202721get-func-name@^2.0.0:2722 version "2.0.0"2723 resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41"2724 integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==27252726get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:2727 version "1.1.3"2728 resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"2729 integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==2730 dependencies:2731 function-bind "^1.1.1"2732 has "^1.0.3"2733 has-symbols "^1.0.3"27342735get-stream@^5.1.0:2736 version "5.2.0"2737 resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"2738 integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==2739 dependencies:2740 pump "^3.0.0"27412742get-stream@^6.0.1:2743 version "6.0.1"2744 resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"2745 integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==27462747get-symbol-description@^1.0.0:2748 version "1.0.0"2749 resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"2750 integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==2751 dependencies:2752 call-bind "^1.0.2"2753 get-intrinsic "^1.1.1"27542755getpass@^0.1.1:2756 version "0.1.7"2757 resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"2758 integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==2759 dependencies:2760 assert-plus "^1.0.0"27612762glob-parent@^5.1.2, glob-parent@~5.1.2:2763 version "5.1.2"2764 resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"2765 integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==2766 dependencies:2767 is-glob "^4.0.1"27682769glob-parent@^6.0.1:2770 version "6.0.2"2771 resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"2772 integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==2773 dependencies:2774 is-glob "^4.0.3"27752776glob@7.1.7:2777 version "7.1.7"2778 resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"2779 integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==2780 dependencies:2781 fs.realpath "^1.0.0"2782 inflight "^1.0.4"2783 inherits "2"2784 minimatch "^3.0.4"2785 once "^1.3.0"2786 path-is-absolute "^1.0.0"27872788glob@7.2.0:2789 version "7.2.0"2790 resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"2791 integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==2792 dependencies:2793 fs.realpath "^1.0.0"2794 inflight "^1.0.4"2795 inherits "2"2796 minimatch "^3.0.4"2797 once "^1.3.0"2798 path-is-absolute "^1.0.0"27992800glob@^7.1.3:2801 version "7.2.3"2802 resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"2803 integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==2804 dependencies:2805 fs.realpath "^1.0.0"2806 inflight "^1.0.4"2807 inherits "2"2808 minimatch "^3.1.1"2809 once "^1.3.0"2810 path-is-absolute "^1.0.0"28112812global@~4.4.0:2813 version "4.4.0"2814 resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406"2815 integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==2816 dependencies:2817 min-document "^2.19.0"2818 process "^0.11.10"28192820globals@^11.1.0:2821 version "11.12.0"2822 resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"2823 integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==28242825globals@^13.15.0:2826 version "13.17.0"2827 resolved "https://registry.yarnpkg.com/globals/-/globals-13.17.0.tgz#902eb1e680a41da93945adbdcb5a9f361ba69bd4"2828 integrity sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==2829 dependencies:2830 type-fest "^0.20.2"28312832globby@^11.1.0:2833 version "11.1.0"2834 resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"2835 integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==2836 dependencies:2837 array-union "^2.1.0"2838 dir-glob "^3.0.1"2839 fast-glob "^3.2.9"2840 ignore "^5.2.0"2841 merge2 "^1.4.1"2842 slash "^3.0.0"28432844got@12.1.0:2845 version "12.1.0"2846 resolved "https://registry.yarnpkg.com/got/-/got-12.1.0.tgz#099f3815305c682be4fd6b0ee0726d8e4c6b0af4"2847 integrity sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==2848 dependencies:2849 "@sindresorhus/is" "^4.6.0"2850 "@szmarczak/http-timer" "^5.0.1"2851 "@types/cacheable-request" "^6.0.2"2852 "@types/responselike" "^1.0.0"2853 cacheable-lookup "^6.0.4"2854 cacheable-request "^7.0.2"2855 decompress-response "^6.0.0"2856 form-data-encoder "1.7.1"2857 get-stream "^6.0.1"2858 http2-wrapper "^2.1.10"2859 lowercase-keys "^3.0.0"2860 p-cancelable "^3.0.0"2861 responselike "^2.0.0"28622863got@^11.8.5:2864 version "11.8.5"2865 resolved "https://registry.yarnpkg.com/got/-/got-11.8.5.tgz#ce77d045136de56e8f024bebb82ea349bc730046"2866 integrity sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==2867 dependencies:2868 "@sindresorhus/is" "^4.0.0"2869 "@szmarczak/http-timer" "^4.0.5"2870 "@types/cacheable-request" "^6.0.1"2871 "@types/responselike" "^1.0.0"2872 cacheable-lookup "^5.0.3"2873 cacheable-request "^7.0.2"2874 decompress-response "^6.0.0"2875 http2-wrapper "^1.0.0-beta.5.2"2876 lowercase-keys "^2.0.0"2877 p-cancelable "^2.0.0"2878 responselike "^2.0.0"28792880graceful-fs@^4.1.2, graceful-fs@^4.1.6:2881 version "4.2.10"2882 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"2883 integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==28842885grapheme-splitter@^1.0.4:2886 version "1.0.4"2887 resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"2888 integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==28892890handlebars@^4.7.7:2891 version "4.7.7"2892 resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1"2893 integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==2894 dependencies:2895 minimist "^1.2.5"2896 neo-async "^2.6.0"2897 source-map "^0.6.1"2898 wordwrap "^1.0.0"2899 optionalDependencies:2900 uglify-js "^3.1.4"29012902har-schema@^2.0.0:2903 version "2.0.0"2904 resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"2905 integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==29062907har-validator@~5.1.3:2908 version "5.1.5"2909 resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd"2910 integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==2911 dependencies:2912 ajv "^6.12.3"2913 har-schema "^2.0.0"29142915has-bigints@^1.0.1, has-bigints@^1.0.2:2916 version "1.0.2"2917 resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"2918 integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==29192920has-flag@^3.0.0:2921 version "3.0.0"2922 resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"2923 integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==29242925has-flag@^4.0.0:2926 version "4.0.0"2927 resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"2928 integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==29292930has-property-descriptors@^1.0.0:2931 version "1.0.0"2932 resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"2933 integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==2934 dependencies:2935 get-intrinsic "^1.1.1"29362937has-symbols@^1.0.2, has-symbols@^1.0.3:2938 version "1.0.3"2939 resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"2940 integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==29412942has-tostringtag@^1.0.0:2943 version "1.0.0"2944 resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"2945 integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==2946 dependencies:2947 has-symbols "^1.0.2"29482949has@^1.0.3:2950 version "1.0.3"2951 resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"2952 integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==2953 dependencies:2954 function-bind "^1.1.1"29552956hash-base@^3.0.0:2957 version "3.1.0"2958 resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"2959 integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==2960 dependencies:2961 inherits "^2.0.4"2962 readable-stream "^3.6.0"2963 safe-buffer "^5.2.0"29642965hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7:2966 version "1.1.7"2967 resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"2968 integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==2969 dependencies:2970 inherits "^2.0.3"2971 minimalistic-assert "^1.0.1"29722973he@1.2.0:2974 version "1.2.0"2975 resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"2976 integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==29772978hmac-drbg@^1.0.1:2979 version "1.0.1"2980 resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"2981 integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==2982 dependencies:2983 hash.js "^1.0.3"2984 minimalistic-assert "^1.0.0"2985 minimalistic-crypto-utils "^1.0.1"29862987http-cache-semantics@^4.0.0:2988 version "4.1.0"2989 resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"2990 integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==29912992http-errors@2.0.0:2993 version "2.0.0"2994 resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"2995 integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==2996 dependencies:2997 depd "2.0.0"2998 inherits "2.0.4"2999 setprototypeof "1.2.0"3000 statuses "2.0.1"3001 toidentifier "1.0.1"30023003http-https@^1.0.0:3004 version "1.0.0"3005 resolved "https://registry.yarnpkg.com/http-https/-/http-https-1.0.0.tgz#2f908dd5f1db4068c058cd6e6d4ce392c913389b"3006 integrity sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==30073008http-signature@~1.2.0:3009 version "1.2.0"3010 resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"3011 integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==3012 dependencies:3013 assert-plus "^1.0.0"3014 jsprim "^1.2.2"3015 sshpk "^1.7.0"30163017http2-wrapper@^1.0.0-beta.5.2:3018 version "1.0.3"3019 resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d"3020 integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==3021 dependencies:3022 quick-lru "^5.1.1"3023 resolve-alpn "^1.0.0"30243025http2-wrapper@^2.1.10:3026 version "2.1.11"3027 resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.1.11.tgz#d7c980c7ffb85be3859b6a96c800b2951ae257ef"3028 integrity sha512-aNAk5JzLturWEUiuhAN73Jcbq96R7rTitAoXV54FYMatvihnpD2+6PUgU4ce3D/m5VDbw+F5CsyKSF176ptitQ==3029 dependencies:3030 quick-lru "^5.1.1"3031 resolve-alpn "^1.2.0"30323033iconv-lite@0.4.24:3034 version "0.4.24"3035 resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"3036 integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==3037 dependencies:3038 safer-buffer ">= 2.1.2 < 3"30393040idna-uts46-hx@^2.3.1:3041 version "2.3.1"3042 resolved "https://registry.yarnpkg.com/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz#a1dc5c4df37eee522bf66d969cc980e00e8711f9"3043 integrity sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==3044 dependencies:3045 punycode "2.1.0"30463047ieee754@^1.1.13:3048 version "1.2.1"3049 resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"3050 integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==30513052ignore@^5.2.0:3053 version "5.2.0"3054 resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"3055 integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==30563057import-fresh@^3.0.0, import-fresh@^3.2.1:3058 version "3.3.0"3059 resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"3060 integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==3061 dependencies:3062 parent-module "^1.0.0"3063 resolve-from "^4.0.0"30643065imurmurhash@^0.1.4:3066 version "0.1.4"3067 resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"3068 integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==30693070inflight@^1.0.4:3071 version "1.0.6"3072 resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"3073 integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==3074 dependencies:3075 once "^1.3.0"3076 wrappy "1"30773078inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4:3079 version "2.0.4"3080 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"3081 integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==30823083internal-slot@^1.0.3:3084 version "1.0.3"3085 resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c"3086 integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==3087 dependencies:3088 get-intrinsic "^1.1.0"3089 has "^1.0.3"3090 side-channel "^1.0.4"30913092ipaddr.js@1.9.1:3093 version "1.9.1"3094 resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"3095 integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==30963097is-arguments@^1.0.4:3098 version "1.1.1"3099 resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"3100 integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==3101 dependencies:3102 call-bind "^1.0.2"3103 has-tostringtag "^1.0.0"31043105is-bigint@^1.0.1:3106 version "1.0.4"3107 resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"3108 integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==3109 dependencies:3110 has-bigints "^1.0.1"31113112is-binary-path@~2.1.0:3113 version "2.1.0"3114 resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"3115 integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==3116 dependencies:3117 binary-extensions "^2.0.0"31183119is-boolean-object@^1.1.0:3120 version "1.1.2"3121 resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"3122 integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==3123 dependencies:3124 call-bind "^1.0.2"3125 has-tostringtag "^1.0.0"31263127is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:3128 version "1.2.7"3129 resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"3130 integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==31313132is-date-object@^1.0.1:3133 version "1.0.5"3134 resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"3135 integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==3136 dependencies:3137 has-tostringtag "^1.0.0"31383139is-extglob@^2.1.1:3140 version "2.1.1"3141 resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"3142 integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==31433144is-fullwidth-code-point@^3.0.0:3145 version "3.0.0"3146 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"3147 integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==31483149is-function@^1.0.1:3150 version "1.0.2"3151 resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08"3152 integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==31533154is-generator-function@^1.0.7:3155 version "1.0.10"3156 resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"3157 integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==3158 dependencies:3159 has-tostringtag "^1.0.0"31603161is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:3162 version "4.0.3"3163 resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"3164 integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==3165 dependencies:3166 is-extglob "^2.1.1"31673168is-hex-prefixed@1.0.0:3169 version "1.0.0"3170 resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554"3171 integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==31723173is-negative-zero@^2.0.2:3174 version "2.0.2"3175 resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"3176 integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==31773178is-number-object@^1.0.4:3179 version "1.0.7"3180 resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc"3181 integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==3182 dependencies:3183 has-tostringtag "^1.0.0"31843185is-number@^7.0.0:3186 version "7.0.0"3187 resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"3188 integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==31893190is-plain-obj@^2.1.0:3191 version "2.1.0"3192 resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287"3193 integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==31943195is-plain-object@^2.0.4:3196 version "2.0.4"3197 resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"3198 integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==3199 dependencies:3200 isobject "^3.0.1"32013202is-regex@^1.1.4:3203 version "1.1.4"3204 resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"3205 integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==3206 dependencies:3207 call-bind "^1.0.2"3208 has-tostringtag "^1.0.0"32093210is-shared-array-buffer@^1.0.2:3211 version "1.0.2"3212 resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"3213 integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==3214 dependencies:3215 call-bind "^1.0.2"32163217is-string@^1.0.5, is-string@^1.0.7:3218 version "1.0.7"3219 resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd"3220 integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==3221 dependencies:3222 has-tostringtag "^1.0.0"32233224is-symbol@^1.0.2, is-symbol@^1.0.3:3225 version "1.0.4"3226 resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c"3227 integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==3228 dependencies:3229 has-symbols "^1.0.2"32303231is-typed-array@^1.1.3, is-typed-array@^1.1.9:3232 version "1.1.9"3233 resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.9.tgz#246d77d2871e7d9f5aeb1d54b9f52c71329ece67"3234 integrity sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==3235 dependencies:3236 available-typed-arrays "^1.0.5"3237 call-bind "^1.0.2"3238 es-abstract "^1.20.0"3239 for-each "^0.3.3"3240 has-tostringtag "^1.0.0"32413242is-typedarray@^1.0.0, is-typedarray@~1.0.0:3243 version "1.0.0"3244 resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"3245 integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==32463247is-unicode-supported@^0.1.0:3248 version "0.1.0"3249 resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"3250 integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==32513252is-weakref@^1.0.2:3253 version "1.0.2"3254 resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"3255 integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==3256 dependencies:3257 call-bind "^1.0.2"32583259isexe@^2.0.0:3260 version "2.0.0"3261 resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"3262 integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==32633264isobject@^3.0.1:3265 version "3.0.1"3266 resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"3267 integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==32683269isstream@~0.1.2:3270 version "0.1.2"3271 resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"3272 integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==32733274js-sdsl@^4.1.4:3275 version "4.1.5"3276 resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.1.5.tgz#1ff1645e6b4d1b028cd3f862db88c9d887f26e2a"3277 integrity sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==32783279js-sha3@0.8.0, js-sha3@^0.8.0:3280 version "0.8.0"3281 resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"3282 integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==32833284js-sha3@^0.5.7:3285 version "0.5.7"3286 resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7"3287 integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==32883289js-tokens@^4.0.0:3290 version "4.0.0"3291 resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"3292 integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==32933294js-yaml@4.1.0, js-yaml@^4.1.0:3295 version "4.1.0"3296 resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"3297 integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==3298 dependencies:3299 argparse "^2.0.1"33003301jsbn@~0.1.0:3302 version "0.1.1"3303 resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"3304 integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==33053306jsesc@^2.5.1:3307 version "2.5.2"3308 resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"3309 integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==33103311json-buffer@3.0.1:3312 version "3.0.1"3313 resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"3314 integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==33153316json-schema-traverse@^0.4.1:3317 version "0.4.1"3318 resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"3319 integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==33203321json-schema@0.4.0:3322 version "0.4.0"3323 resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5"3324 integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==33253326json-stable-stringify-without-jsonify@^1.0.1:3327 version "1.0.1"3328 resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"3329 integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==33303331json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:3332 version "5.0.1"3333 resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"3334 integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==33353336json5@^2.2.1:3337 version "2.2.1"3338 resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"3339 integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==33403341jsonfile@^4.0.0:3342 version "4.0.0"3343 resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"3344 integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==3345 optionalDependencies:3346 graceful-fs "^4.1.6"33473348jsprim@^1.2.2:3349 version "1.4.2"3350 resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"3351 integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==3352 dependencies:3353 assert-plus "1.0.0"3354 extsprintf "1.3.0"3355 json-schema "0.4.0"3356 verror "1.10.0"33573358keccak@^3.0.0:3359 version "3.0.2"3360 resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0"3361 integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==3362 dependencies:3363 node-addon-api "^2.0.0"3364 node-gyp-build "^4.2.0"3365 readable-stream "^3.6.0"33663367keyv@*, keyv@^4.0.0:3368 version "4.5.0"3369 resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.0.tgz#dbce9ade79610b6e641a9a65f2f6499ba06b9bc6"3370 integrity sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==3371 dependencies:3372 json-buffer "3.0.1"33733374kind-of@^6.0.2:3375 version "6.0.3"3376 resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"3377 integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==33783379levn@^0.4.1:3380 version "0.4.1"3381 resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"3382 integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==3383 dependencies:3384 prelude-ls "^1.2.1"3385 type-check "~0.4.0"33863387locate-path@^3.0.0:3388 version "3.0.0"3389 resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"3390 integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==3391 dependencies:3392 p-locate "^3.0.0"3393 path-exists "^3.0.0"33943395locate-path@^6.0.0:3396 version "6.0.0"3397 resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"3398 integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==3399 dependencies:3400 p-locate "^5.0.0"34013402lodash.camelcase@^4.3.0:3403 version "4.3.0"3404 resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"3405 integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==34063407lodash.merge@^4.6.2:3408 version "4.6.2"3409 resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"3410 integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==34113412lodash@^4.17.15, lodash@^4.17.21:3413 version "4.17.21"3414 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"3415 integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==34163417log-symbols@4.1.0:3418 version "4.1.0"3419 resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503"3420 integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==3421 dependencies:3422 chalk "^4.1.0"3423 is-unicode-supported "^0.1.0"34243425loupe@^2.3.1:3426 version "2.3.4"3427 resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.4.tgz#7e0b9bffc76f148f9be769cb1321d3dcf3cb25f3"3428 integrity sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==3429 dependencies:3430 get-func-name "^2.0.0"34313432lowercase-keys@^2.0.0:3433 version "2.0.0"3434 resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"3435 integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==34363437lowercase-keys@^3.0.0:3438 version "3.0.0"3439 resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2"3440 integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==34413442lru-cache@^6.0.0:3443 version "6.0.0"3444 resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"3445 integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==3446 dependencies:3447 yallist "^4.0.0"34483449make-dir@^2.0.0, make-dir@^2.1.0:3450 version "2.1.0"3451 resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"3452 integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==3453 dependencies:3454 pify "^4.0.1"3455 semver "^5.6.0"34563457make-error@^1.1.1:3458 version "1.3.6"3459 resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"3460 integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==34613462md5.js@^1.3.4:3463 version "1.3.5"3464 resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"3465 integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==3466 dependencies:3467 hash-base "^3.0.0"3468 inherits "^2.0.1"3469 safe-buffer "^5.1.2"34703471media-typer@0.3.0:3472 version "0.3.0"3473 resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"3474 integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==34753476memorystream@^0.3.1:3477 version "0.3.1"3478 resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"3479 integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==34803481merge-descriptors@1.0.1:3482 version "1.0.1"3483 resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"3484 integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==34853486merge2@^1.3.0, merge2@^1.4.1:3487 version "1.4.1"3488 resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"3489 integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==34903491methods@~1.1.2:3492 version "1.1.2"3493 resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"3494 integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==34953496micromatch@^4.0.4:3497 version "4.0.5"3498 resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"3499 integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==3500 dependencies:3501 braces "^3.0.2"3502 picomatch "^2.3.1"35033504miller-rabin@^4.0.0:3505 version "4.0.1"3506 resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"3507 integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==3508 dependencies:3509 bn.js "^4.0.0"3510 brorand "^1.0.1"35113512mime-db@1.52.0:3513 version "1.52.0"3514 resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"3515 integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==35163517mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34:3518 version "2.1.35"3519 resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"3520 integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==3521 dependencies:3522 mime-db "1.52.0"35233524mime@1.6.0:3525 version "1.6.0"3526 resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"3527 integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==35283529mimic-response@^1.0.0:3530 version "1.0.1"3531 resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"3532 integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==35333534mimic-response@^3.1.0:3535 version "3.1.0"3536 resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"3537 integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==35383539min-document@^2.19.0:3540 version "2.19.0"3541 resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"3542 integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==3543 dependencies:3544 dom-walk "^0.1.0"35453546minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:3547 version "1.0.1"3548 resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"3549 integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==35503551minimalistic-crypto-utils@^1.0.1:3552 version "1.0.1"3553 resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"3554 integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==35553556minimatch@5.0.1:3557 version "5.0.1"3558 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b"3559 integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==3560 dependencies:3561 brace-expansion "^2.0.1"35623563minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2:3564 version "3.1.2"3565 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"3566 integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==3567 dependencies:3568 brace-expansion "^1.1.7"35693570minimist@^1.2.5, minimist@^1.2.6:3571 version "1.2.7"3572 resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"3573 integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==35743575minipass@^2.6.0, minipass@^2.9.0:3576 version "2.9.0"3577 resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"3578 integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==3579 dependencies:3580 safe-buffer "^5.1.2"3581 yallist "^3.0.0"35823583minizlib@^1.3.3:3584 version "1.3.3"3585 resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"3586 integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==3587 dependencies:3588 minipass "^2.9.0"35893590mkdirp-promise@^5.0.1:3591 version "5.0.1"3592 resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1"3593 integrity sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==3594 dependencies:3595 mkdirp "*"35963597mkdirp@*, mkdirp@^1.0.4:3598 version "1.0.4"3599 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"3600 integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==36013602mkdirp@^0.5.5:3603 version "0.5.6"3604 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"3605 integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==3606 dependencies:3607 minimist "^1.2.6"36083609mocha@^10.1.0:3610 version "10.1.0"3611 resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.1.0.tgz#dbf1114b7c3f9d0ca5de3133906aea3dfc89ef7a"3612 integrity sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==3613 dependencies:3614 ansi-colors "4.1.1"3615 browser-stdout "1.3.1"3616 chokidar "3.5.3"3617 debug "4.3.4"3618 diff "5.0.0"3619 escape-string-regexp "4.0.0"3620 find-up "5.0.0"3621 glob "7.2.0"3622 he "1.2.0"3623 js-yaml "4.1.0"3624 log-symbols "4.1.0"3625 minimatch "5.0.1"3626 ms "2.1.3"3627 nanoid "3.3.3"3628 serialize-javascript "6.0.0"3629 strip-json-comments "3.1.1"3630 supports-color "8.1.1"3631 workerpool "6.2.1"3632 yargs "16.2.0"3633 yargs-parser "20.2.4"3634 yargs-unparser "2.0.0"36353636mock-fs@^4.1.0:3637 version "4.14.0"3638 resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-4.14.0.tgz#ce5124d2c601421255985e6e94da80a7357b1b18"3639 integrity sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==36403641mock-socket@^9.1.5:3642 version "9.1.5"3643 resolved "https://registry.yarnpkg.com/mock-socket/-/mock-socket-9.1.5.tgz#2c4e44922ad556843b6dfe09d14ed8041fa2cdeb"3644 integrity sha512-3DeNIcsQixWHHKk6NdoBhWI4t1VMj5/HzfnI1rE/pLl5qKx7+gd4DNA07ehTaZ6MoUU053si6Hd+YtiM/tQZfg==36453646ms@2.0.0:3647 version "2.0.0"3648 resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"3649 integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==36503651ms@2.1.2:3652 version "2.1.2"3653 resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"3654 integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==36553656ms@2.1.3:3657 version "2.1.3"3658 resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"3659 integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==36603661multibase@^0.7.0:3662 version "0.7.0"3663 resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b"3664 integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==3665 dependencies:3666 base-x "^3.0.8"3667 buffer "^5.5.0"36683669multibase@~0.6.0:3670 version "0.6.1"3671 resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b"3672 integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==3673 dependencies:3674 base-x "^3.0.8"3675 buffer "^5.5.0"36763677multicodec@^0.5.5:3678 version "0.5.7"3679 resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd"3680 integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==3681 dependencies:3682 varint "^5.0.0"36833684multicodec@^1.0.0:3685 version "1.0.4"3686 resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f"3687 integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==3688 dependencies:3689 buffer "^5.6.0"3690 varint "^5.0.0"36913692multihashes@^0.4.15, multihashes@~0.4.15:3693 version "0.4.21"3694 resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5"3695 integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==3696 dependencies:3697 buffer "^5.5.0"3698 multibase "^0.7.0"3699 varint "^5.0.0"37003701nano-json-stream-parser@^0.1.2:3702 version "0.1.2"3703 resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f"3704 integrity sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==37053706nanoid@3.3.3:3707 version "3.3.3"3708 resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25"3709 integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==37103711natural-compare@^1.4.0:3712 version "1.4.0"3713 resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"3714 integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==37153716negotiator@0.6.3:3717 version "0.6.3"3718 resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"3719 integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==37203721neo-async@^2.6.0:3722 version "2.6.2"3723 resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"3724 integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==37253726next-tick@^1.1.0:3727 version "1.1.0"3728 resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb"3729 integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==37303731nock@^13.2.9:3732 version "13.2.9"3733 resolved "https://registry.yarnpkg.com/nock/-/nock-13.2.9.tgz#4faf6c28175d36044da4cfa68e33e5a15086ad4c"3734 integrity sha512-1+XfJNYF1cjGB+TKMWi29eZ0b82QOvQs2YoLNzbpWGqFMtRQHTa57osqdGj4FrFPgkO4D4AZinzUJR9VvW3QUA==3735 dependencies:3736 debug "^4.1.0"3737 json-stringify-safe "^5.0.1"3738 lodash "^4.17.21"3739 propagate "^2.0.0"37403741node-addon-api@^2.0.0:3742 version "2.0.2"3743 resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32"3744 integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==37453746node-domexception@^1.0.0:3747 version "1.0.0"3748 resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"3749 integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==37503751node-fetch@2.6.7:3752 version "2.6.7"3753 resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"3754 integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==3755 dependencies:3756 whatwg-url "^5.0.0"37573758node-fetch@^3.2.10:3759 version "3.2.10"3760 resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.10.tgz#e8347f94b54ae18b57c9c049ef641cef398a85c8"3761 integrity sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==3762 dependencies:3763 data-uri-to-buffer "^4.0.0"3764 fetch-blob "^3.1.4"3765 formdata-polyfill "^4.0.10"37663767node-gyp-build@^4.2.0, node-gyp-build@^4.3.0:3768 version "4.5.0"3769 resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40"3770 integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==37713772node-releases@^2.0.6:3773 version "2.0.6"3774 resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503"3775 integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==37763777normalize-path@^3.0.0, normalize-path@~3.0.0:3778 version "3.0.0"3779 resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"3780 integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==37813782normalize-url@^6.0.1:3783 version "6.1.0"3784 resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"3785 integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==37863787number-to-bn@1.7.0:3788 version "1.7.0"3789 resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0"3790 integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==3791 dependencies:3792 bn.js "4.11.6"3793 strip-hex-prefix "1.0.0"37943795oauth-sign@~0.9.0:3796 version "0.9.0"3797 resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"3798 integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==37993800object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1:3801 version "4.1.1"3802 resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"3803 integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==38043805object-inspect@^1.12.2, object-inspect@^1.9.0:3806 version "1.12.2"3807 resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"3808 integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==38093810object-keys@^1.1.1:3811 version "1.1.1"3812 resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"3813 integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==38143815object.assign@^4.1.4:3816 version "4.1.4"3817 resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"3818 integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==3819 dependencies:3820 call-bind "^1.0.2"3821 define-properties "^1.1.4"3822 has-symbols "^1.0.3"3823 object-keys "^1.1.1"38243825oboe@2.1.5:3826 version "2.1.5"3827 resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.5.tgz#5554284c543a2266d7a38f17e073821fbde393cd"3828 integrity sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==3829 dependencies:3830 http-https "^1.0.0"38313832on-finished@2.4.1:3833 version "2.4.1"3834 resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"3835 integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==3836 dependencies:3837 ee-first "1.1.1"38383839once@^1.3.0, once@^1.3.1, once@^1.4.0:3840 version "1.4.0"3841 resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"3842 integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==3843 dependencies:3844 wrappy "1"38453846optionator@^0.9.1:3847 version "0.9.1"3848 resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"3849 integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==3850 dependencies:3851 deep-is "^0.1.3"3852 fast-levenshtein "^2.0.6"3853 levn "^0.4.1"3854 prelude-ls "^1.2.1"3855 type-check "^0.4.0"3856 word-wrap "^1.2.3"38573858os-tmpdir@~1.0.2:3859 version "1.0.2"3860 resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"3861 integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==38623863p-cancelable@^2.0.0:3864 version "2.1.1"3865 resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"3866 integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==38673868p-cancelable@^3.0.0:3869 version "3.0.0"3870 resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050"3871 integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==38723873p-limit@^2.0.0:3874 version "2.3.0"3875 resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"3876 integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==3877 dependencies:3878 p-try "^2.0.0"38793880p-limit@^3.0.2:3881 version "3.1.0"3882 resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"3883 integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==3884 dependencies:3885 yocto-queue "^0.1.0"38863887p-locate@^3.0.0:3888 version "3.0.0"3889 resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"3890 integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==3891 dependencies:3892 p-limit "^2.0.0"38933894p-locate@^5.0.0:3895 version "5.0.0"3896 resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"3897 integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==3898 dependencies:3899 p-limit "^3.0.2"39003901p-try@^2.0.0:3902 version "2.2.0"3903 resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"3904 integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==39053906pako@^2.0.4:3907 version "2.0.4"3908 resolved "https://registry.yarnpkg.com/pako/-/pako-2.0.4.tgz#6cebc4bbb0b6c73b0d5b8d7e8476e2b2fbea576d"3909 integrity sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg==39103911parent-module@^1.0.0:3912 version "1.0.1"3913 resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"3914 integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==3915 dependencies:3916 callsites "^3.0.0"39173918parse-asn1@^5.0.0, parse-asn1@^5.1.5:3919 version "5.1.6"3920 resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4"3921 integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==3922 dependencies:3923 asn1.js "^5.2.0"3924 browserify-aes "^1.0.0"3925 evp_bytestokey "^1.0.0"3926 pbkdf2 "^3.0.3"3927 safe-buffer "^5.1.1"39283929parse-headers@^2.0.0:3930 version "2.0.5"3931 resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9"3932 integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==39333934parseurl@~1.3.3:3935 version "1.3.3"3936 resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"3937 integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==39383939path-exists@^3.0.0:3940 version "3.0.0"3941 resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"3942 integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==39433944path-exists@^4.0.0:3945 version "4.0.0"3946 resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"3947 integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==39483949path-is-absolute@^1.0.0:3950 version "1.0.1"3951 resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"3952 integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==39533954path-key@^3.1.0:3955 version "3.1.1"3956 resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"3957 integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==39583959path-to-regexp@0.1.7:3960 version "0.1.7"3961 resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"3962 integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==39633964path-type@^4.0.0:3965 version "4.0.0"3966 resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"3967 integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==39683969pathval@^1.1.1:3970 version "1.1.1"3971 resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d"3972 integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==39733974pbkdf2@^3.0.17, pbkdf2@^3.0.3:3975 version "3.1.2"3976 resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"3977 integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==3978 dependencies:3979 create-hash "^1.1.2"3980 create-hmac "^1.1.4"3981 ripemd160 "^2.0.1"3982 safe-buffer "^5.0.1"3983 sha.js "^2.4.8"39843985performance-now@^2.1.0:3986 version "2.1.0"3987 resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"3988 integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==39893990picocolors@^1.0.0:3991 version "1.0.0"3992 resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"3993 integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==39943995picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1:3996 version "2.3.1"3997 resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"3998 integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==39994000pify@^4.0.1:4001 version "4.0.1"4002 resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"4003 integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==40044005pirates@^4.0.5:4006 version "4.0.5"4007 resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"4008 integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==40094010pkg-dir@^3.0.0:4011 version "3.0.0"4012 resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"4013 integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==4014 dependencies:4015 find-up "^3.0.0"40164017prelude-ls@^1.2.1:4018 version "1.2.1"4019 resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"4020 integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==40214022prettier@^2.3.1:4023 version "2.7.1"4024 resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64"4025 integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==40264027process@^0.11.10:4028 version "0.11.10"4029 resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"4030 integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==40314032propagate@^2.0.0:4033 version "2.0.1"4034 resolved "https://registry.yarnpkg.com/propagate/-/propagate-2.0.1.tgz#40cdedab18085c792334e64f0ac17256d38f9a45"4035 integrity sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==40364037proxy-addr@~2.0.7:4038 version "2.0.7"4039 resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"4040 integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==4041 dependencies:4042 forwarded "0.2.0"4043 ipaddr.js "1.9.1"40444045psl@^1.1.28:4046 version "1.9.0"4047 resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"4048 integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==40494050public-encrypt@^4.0.0:4051 version "4.0.3"4052 resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"4053 integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==4054 dependencies:4055 bn.js "^4.1.0"4056 browserify-rsa "^4.0.0"4057 create-hash "^1.1.0"4058 parse-asn1 "^5.0.0"4059 randombytes "^2.0.1"4060 safe-buffer "^5.1.2"40614062pump@^3.0.0:4063 version "3.0.0"4064 resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"4065 integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==4066 dependencies:4067 end-of-stream "^1.1.0"4068 once "^1.3.1"40694070punycode@2.1.0:4071 version "2.1.0"4072 resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"4073 integrity sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==40744075punycode@^2.1.0, punycode@^2.1.1:4076 version "2.1.1"4077 resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"4078 integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==40794080qs@6.11.0:4081 version "6.11.0"4082 resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"4083 integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==4084 dependencies:4085 side-channel "^1.0.4"40864087qs@~6.5.2:4088 version "6.5.3"4089 resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"4090 integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==40914092query-string@^5.0.1:4093 version "5.1.1"4094 resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb"4095 integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==4096 dependencies:4097 decode-uri-component "^0.2.0"4098 object-assign "^4.1.0"4099 strict-uri-encode "^1.0.0"41004101queue-microtask@^1.2.2:4102 version "1.2.3"4103 resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"4104 integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==41054106quick-lru@^5.1.1:4107 version "5.1.1"4108 resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"4109 integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==41104111rambda@^7.1.0:4112 version "7.3.0"4113 resolved "https://registry.yarnpkg.com/rambda/-/rambda-7.3.0.tgz#90e440ead53030a216093865d8d97997a80868ca"4114 integrity sha512-RFVofZYaG2TaVcxjnM0ejdVWf/59rFq1f57OGnjP3GT/bthzFw0GVr5rkP9PKbVlEuF/Y7bOVPLfiiYfxq/EWQ==41154116randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0:4117 version "2.1.0"4118 resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"4119 integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==4120 dependencies:4121 safe-buffer "^5.1.0"41224123randomfill@^1.0.3:4124 version "1.0.4"4125 resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"4126 integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==4127 dependencies:4128 randombytes "^2.0.5"4129 safe-buffer "^5.1.0"41304131range-parser@~1.2.1:4132 version "1.2.1"4133 resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"4134 integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==41354136raw-body@2.5.1:4137 version "2.5.1"4138 resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857"4139 integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==4140 dependencies:4141 bytes "3.1.2"4142 http-errors "2.0.0"4143 iconv-lite "0.4.24"4144 unpipe "1.0.0"41454146readable-stream@^3.6.0:4147 version "3.6.0"4148 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"4149 integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==4150 dependencies:4151 inherits "^2.0.3"4152 string_decoder "^1.1.1"4153 util-deprecate "^1.0.1"41544155readdirp@~3.6.0:4156 version "3.6.0"4157 resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"4158 integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==4159 dependencies:4160 picomatch "^2.2.1"41614162reduce-flatten@^2.0.0:4163 version "2.0.0"4164 resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27"4165 integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==41664167regenerator-runtime@^0.13.4:4168 version "0.13.10"4169 resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz#ed07b19616bcbec5da6274ebc75ae95634bfc2ee"4170 integrity sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==41714172regexp.prototype.flags@^1.4.3:4173 version "1.4.3"4174 resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac"4175 integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==4176 dependencies:4177 call-bind "^1.0.2"4178 define-properties "^1.1.3"4179 functions-have-names "^1.2.2"41804181regexpp@^3.2.0:4182 version "3.2.0"4183 resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"4184 integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==41854186request@^2.79.0:4187 version "2.88.2"4188 resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"4189 integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==4190 dependencies:4191 aws-sign2 "~0.7.0"4192 aws4 "^1.8.0"4193 caseless "~0.12.0"4194 combined-stream "~1.0.6"4195 extend "~3.0.2"4196 forever-agent "~0.6.1"4197 form-data "~2.3.2"4198 har-validator "~5.1.3"4199 http-signature "~1.2.0"4200 is-typedarray "~1.0.0"4201 isstream "~0.1.2"4202 json-stringify-safe "~5.0.1"4203 mime-types "~2.1.19"4204 oauth-sign "~0.9.0"4205 performance-now "^2.1.0"4206 qs "~6.5.2"4207 safe-buffer "^5.1.2"4208 tough-cookie "~2.5.0"4209 tunnel-agent "^0.6.0"4210 uuid "^3.3.2"42114212require-directory@^2.1.1:4213 version "2.1.1"4214 resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"4215 integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==42164217resolve-alpn@^1.0.0, resolve-alpn@^1.2.0:4218 version "1.2.1"4219 resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"4220 integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==42214222resolve-from@^4.0.0:4223 version "4.0.0"4224 resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"4225 integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==42264227responselike@^2.0.0:4228 version "2.0.1"4229 resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc"4230 integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==4231 dependencies:4232 lowercase-keys "^2.0.0"42334234reusify@^1.0.4:4235 version "1.0.4"4236 resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"4237 integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==42384239rimraf@^3.0.2:4240 version "3.0.2"4241 resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"4242 integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==4243 dependencies:4244 glob "^7.1.3"42454246ripemd160@^2.0.0, ripemd160@^2.0.1:4247 version "2.0.2"4248 resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"4249 integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==4250 dependencies:4251 hash-base "^3.0.0"4252 inherits "^2.0.1"42534254rlp@^2.2.4:4255 version "2.2.7"4256 resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf"4257 integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==4258 dependencies:4259 bn.js "^5.2.0"42604261run-parallel@^1.1.9:4262 version "1.2.0"4263 resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"4264 integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==4265 dependencies:4266 queue-microtask "^1.2.2"42674268rxjs@^7.5.7:4269 version "7.5.7"4270 resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.7.tgz#2ec0d57fdc89ece220d2e702730ae8f1e49def39"4271 integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==4272 dependencies:4273 tslib "^2.1.0"42744275safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0:4276 version "5.2.1"4277 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"4278 integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==42794280safe-buffer@~5.1.0:4281 version "5.1.2"4282 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"4283 integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==42844285safe-regex-test@^1.0.0:4286 version "1.0.0"4287 resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"4288 integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==4289 dependencies:4290 call-bind "^1.0.2"4291 get-intrinsic "^1.1.3"4292 is-regex "^1.1.4"42934294"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:4295 version "2.1.2"4296 resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"4297 integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==42984299scrypt-js@^3.0.0, scrypt-js@^3.0.1:4300 version "3.0.1"4301 resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312"4302 integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==43034304secp256k1@^4.0.1:4305 version "4.0.3"4306 resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303"4307 integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==4308 dependencies:4309 elliptic "^6.5.4"4310 node-addon-api "^2.0.0"4311 node-gyp-build "^4.2.0"43124313semver@^5.5.0, semver@^5.6.0:4314 version "5.7.1"4315 resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"4316 integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==43174318semver@^6.3.0:4319 version "6.3.0"4320 resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"4321 integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==43224323semver@^7.3.7:4324 version "7.3.8"4325 resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798"4326 integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==4327 dependencies:4328 lru-cache "^6.0.0"43294330send@0.18.0:4331 version "0.18.0"4332 resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"4333 integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==4334 dependencies:4335 debug "2.6.9"4336 depd "2.0.0"4337 destroy "1.2.0"4338 encodeurl "~1.0.2"4339 escape-html "~1.0.3"4340 etag "~1.8.1"4341 fresh "0.5.2"4342 http-errors "2.0.0"4343 mime "1.6.0"4344 ms "2.1.3"4345 on-finished "2.4.1"4346 range-parser "~1.2.1"4347 statuses "2.0.1"43484349serialize-javascript@6.0.0:4350 version "6.0.0"4351 resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"4352 integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==4353 dependencies:4354 randombytes "^2.1.0"43554356serve-static@1.15.0:4357 version "1.15.0"4358 resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"4359 integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==4360 dependencies:4361 encodeurl "~1.0.2"4362 escape-html "~1.0.3"4363 parseurl "~1.3.3"4364 send "0.18.0"43654366servify@^0.1.12:4367 version "0.1.12"4368 resolved "https://registry.yarnpkg.com/servify/-/servify-0.1.12.tgz#142ab7bee1f1d033b66d0707086085b17c06db95"4369 integrity sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==4370 dependencies:4371 body-parser "^1.16.0"4372 cors "^2.8.1"4373 express "^4.14.0"4374 request "^2.79.0"4375 xhr "^2.3.3"43764377setimmediate@^1.0.5:4378 version "1.0.5"4379 resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"4380 integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==43814382setprototypeof@1.2.0:4383 version "1.2.0"4384 resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"4385 integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==43864387sha.js@^2.4.0, sha.js@^2.4.8:4388 version "2.4.11"4389 resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"4390 integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==4391 dependencies:4392 inherits "^2.0.1"4393 safe-buffer "^5.0.1"43944395shallow-clone@^3.0.0:4396 version "3.0.1"4397 resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"4398 integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==4399 dependencies:4400 kind-of "^6.0.2"44014402shebang-command@^2.0.0:4403 version "2.0.0"4404 resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"4405 integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==4406 dependencies:4407 shebang-regex "^3.0.0"44084409shebang-regex@^3.0.0:4410 version "3.0.0"4411 resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"4412 integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==44134414side-channel@^1.0.4:4415 version "1.0.4"4416 resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"4417 integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==4418 dependencies:4419 call-bind "^1.0.0"4420 get-intrinsic "^1.0.2"4421 object-inspect "^1.9.0"44224423simple-concat@^1.0.0:4424 version "1.0.1"4425 resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f"4426 integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==44274428simple-get@^2.7.0:4429 version "2.8.2"4430 resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.2.tgz#5708fb0919d440657326cd5fe7d2599d07705019"4431 integrity sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==4432 dependencies:4433 decompress-response "^3.3.0"4434 once "^1.3.1"4435 simple-concat "^1.0.0"44364437slash@^3.0.0:4438 version "3.0.0"4439 resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"4440 integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==44414442solc@0.8.17:4443 version "0.8.17"4444 resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.17.tgz#c748fec6a64bf029ec406aa9b37e75938d1115ae"4445 integrity sha512-Dtidk2XtTTmkB3IKdyeg6wLYopJnBVxdoykN8oP8VY3PQjN16BScYoUJTXFm2OP7P0hXNAqWiJNmmfuELtLf8g==4446 dependencies:4447 command-exists "^1.2.8"4448 commander "^8.1.0"4449 follow-redirects "^1.12.1"4450 js-sha3 "0.8.0"4451 memorystream "^0.3.1"4452 semver "^5.5.0"4453 tmp "0.0.33"44544455source-map-support@^0.5.16:4456 version "0.5.21"4457 resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"4458 integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==4459 dependencies:4460 buffer-from "^1.0.0"4461 source-map "^0.6.0"44624463source-map@^0.6.0, source-map@^0.6.1:4464 version "0.6.1"4465 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"4466 integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==44674468sshpk@^1.7.0:4469 version "1.17.0"4470 resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"4471 integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==4472 dependencies:4473 asn1 "~0.2.3"4474 assert-plus "^1.0.0"4475 bcrypt-pbkdf "^1.0.0"4476 dashdash "^1.12.0"4477 ecc-jsbn "~0.1.1"4478 getpass "^0.1.1"4479 jsbn "~0.1.0"4480 safer-buffer "^2.0.2"4481 tweetnacl "~0.14.0"44824483statuses@2.0.1:4484 version "2.0.1"4485 resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"4486 integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==44874488strict-uri-encode@^1.0.0:4489 version "1.1.0"4490 resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"4491 integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==44924493string-format@^2.0.0:4494 version "2.0.0"4495 resolved "https://registry.yarnpkg.com/string-format/-/string-format-2.0.0.tgz#f2df2e7097440d3b65de31b6d40d54c96eaffb9b"4496 integrity sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==44974498string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:4499 version "4.2.3"4500 resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"4501 integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==4502 dependencies:4503 emoji-regex "^8.0.0"4504 is-fullwidth-code-point "^3.0.0"4505 strip-ansi "^6.0.1"45064507string.prototype.trimend@^1.0.5:4508 version "1.0.5"4509 resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0"4510 integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==4511 dependencies:4512 call-bind "^1.0.2"4513 define-properties "^1.1.4"4514 es-abstract "^1.19.5"45154516string.prototype.trimstart@^1.0.5:4517 version "1.0.5"4518 resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef"4519 integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==4520 dependencies:4521 call-bind "^1.0.2"4522 define-properties "^1.1.4"4523 es-abstract "^1.19.5"45244525string_decoder@^1.1.1:4526 version "1.3.0"4527 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"4528 integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==4529 dependencies:4530 safe-buffer "~5.2.0"45314532strip-ansi@^6.0.0, strip-ansi@^6.0.1:4533 version "6.0.1"4534 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"4535 integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==4536 dependencies:4537 ansi-regex "^5.0.1"45384539strip-hex-prefix@1.0.0:4540 version "1.0.0"4541 resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f"4542 integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==4543 dependencies:4544 is-hex-prefixed "1.0.0"45454546strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:4547 version "3.1.1"4548 resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"4549 integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==45504551supports-color@8.1.1:4552 version "8.1.1"4553 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"4554 integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==4555 dependencies:4556 has-flag "^4.0.0"45574558supports-color@^5.3.0:4559 version "5.5.0"4560 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"4561 integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==4562 dependencies:4563 has-flag "^3.0.0"45644565supports-color@^7.1.0:4566 version "7.2.0"4567 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"4568 integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==4569 dependencies:4570 has-flag "^4.0.0"45714572swarm-js@^0.1.40:4573 version "0.1.42"4574 resolved "https://registry.yarnpkg.com/swarm-js/-/swarm-js-0.1.42.tgz#497995c62df6696f6e22372f457120e43e727979"4575 integrity sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==4576 dependencies:4577 bluebird "^3.5.0"4578 buffer "^5.0.5"4579 eth-lib "^0.1.26"4580 fs-extra "^4.0.2"4581 got "^11.8.5"4582 mime-types "^2.1.16"4583 mkdirp-promise "^5.0.1"4584 mock-fs "^4.1.0"4585 setimmediate "^1.0.5"4586 tar "^4.0.2"4587 xhr-request "^1.0.1"45884589table-layout@^1.0.2:4590 version "1.0.2"4591 resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04"4592 integrity sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==4593 dependencies:4594 array-back "^4.0.1"4595 deep-extend "~0.6.0"4596 typical "^5.2.0"4597 wordwrapjs "^4.0.0"45984599tar@^4.0.2:4600 version "4.4.19"4601 resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3"4602 integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==4603 dependencies:4604 chownr "^1.1.4"4605 fs-minipass "^1.2.7"4606 minipass "^2.9.0"4607 minizlib "^1.3.3"4608 mkdirp "^0.5.5"4609 safe-buffer "^5.2.1"4610 yallist "^3.1.1"46114612text-table@^0.2.0:4613 version "0.2.0"4614 resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"4615 integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==46164617timed-out@^4.0.1:4618 version "4.0.1"4619 resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"4620 integrity sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==46214622tmp@0.0.33:4623 version "0.0.33"4624 resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"4625 integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==4626 dependencies:4627 os-tmpdir "~1.0.2"46284629to-fast-properties@^2.0.0:4630 version "2.0.0"4631 resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"4632 integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==46334634to-regex-range@^5.0.1:4635 version "5.0.1"4636 resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"4637 integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==4638 dependencies:4639 is-number "^7.0.0"46404641toidentifier@1.0.1:4642 version "1.0.1"4643 resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"4644 integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==46454646tough-cookie@~2.5.0:4647 version "2.5.0"4648 resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"4649 integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==4650 dependencies:4651 psl "^1.1.28"4652 punycode "^2.1.1"46534654tr46@~0.0.3:4655 version "0.0.3"4656 resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"4657 integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==46584659ts-node@^10.9.1:4660 version "10.9.1"4661 resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"4662 integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==4663 dependencies:4664 "@cspotcode/source-map-support" "^0.8.0"4665 "@tsconfig/node10" "^1.0.7"4666 "@tsconfig/node12" "^1.0.7"4667 "@tsconfig/node14" "^1.0.0"4668 "@tsconfig/node16" "^1.0.2"4669 acorn "^8.4.1"4670 acorn-walk "^8.1.1"4671 arg "^4.1.0"4672 create-require "^1.1.0"4673 diff "^4.0.1"4674 make-error "^1.1.1"4675 v8-compile-cache-lib "^3.0.1"4676 yn "3.1.1"46774678tslib@^1.8.1:4679 version "1.14.1"4680 resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"4681 integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==46824683tslib@^2.1.0:4684 version "2.4.0"4685 resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"4686 integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==46874688tsutils@^3.21.0:4689 version "3.21.0"4690 resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"4691 integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==4692 dependencies:4693 tslib "^1.8.1"46944695tunnel-agent@^0.6.0:4696 version "0.6.0"4697 resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"4698 integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==4699 dependencies:4700 safe-buffer "^5.0.1"47014702tweetnacl@1.x.x, tweetnacl@^1.0.3:4703 version "1.0.3"4704 resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596"4705 integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==47064707tweetnacl@^0.14.3, tweetnacl@~0.14.0:4708 version "0.14.5"4709 resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"4710 integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==47114712type-check@^0.4.0, type-check@~0.4.0:4713 version "0.4.0"4714 resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"4715 integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==4716 dependencies:4717 prelude-ls "^1.2.1"47184719type-detect@^4.0.0, type-detect@^4.0.5:4720 version "4.0.8"4721 resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"4722 integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==47234724type-fest@^0.20.2:4725 version "0.20.2"4726 resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"4727 integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==47284729type-is@~1.6.18:4730 version "1.6.18"4731 resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"4732 integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==4733 dependencies:4734 media-typer "0.3.0"4735 mime-types "~2.1.24"47364737type@^1.0.1:4738 version "1.2.0"4739 resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0"4740 integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==47414742type@^2.7.2:4743 version "2.7.2"4744 resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0"4745 integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==47464747typechain@^8.1.0:4748 version "8.1.0"4749 resolved "https://registry.yarnpkg.com/typechain/-/typechain-8.1.0.tgz#fc4902ce596519cb2ccfd012e4ddf92a9945b569"4750 integrity sha512-5jToLgKTjHdI1VKqs/K8BLYy42Sr3o8bV5ojh4MnR9ExHO83cyyUdw+7+vMJCpKXUiVUvARM4qmHTFuyaCMAZQ==4751 dependencies:4752 "@types/prettier" "^2.1.1"4753 debug "^4.3.1"4754 fs-extra "^7.0.0"4755 glob "7.1.7"4756 js-sha3 "^0.8.0"4757 lodash "^4.17.15"4758 mkdirp "^1.0.4"4759 prettier "^2.3.1"4760 ts-command-line-args "^2.2.0"4761 ts-essentials "^7.0.1"47624763typedarray-to-buffer@^3.1.5:4764 version "3.1.5"4765 resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"4766 integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==4767 dependencies:4768 is-typedarray "^1.0.0"47694770typescript@^4.8.4:4771 version "4.8.4"4772 resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6"4773 integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==47744775typical@^4.0.0:4776 version "4.0.0"4777 resolved "https://registry.yarnpkg.com/typical/-/typical-4.0.0.tgz#cbeaff3b9d7ae1e2bbfaf5a4e6f11eccfde94fc4"4778 integrity sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==47794780typical@^5.2.0:4781 version "5.2.0"4782 resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066"4783 integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==47844785uglify-js@^3.1.4:4786 version "3.17.3"4787 resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.3.tgz#f0feedf019c4510f164099e8d7e72ff2d7304377"4788 integrity sha512-JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==47894790ultron@~1.1.0:4791 version "1.1.1"4792 resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"4793 integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==47944795unbox-primitive@^1.0.2:4796 version "1.0.2"4797 resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"4798 integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==4799 dependencies:4800 call-bind "^1.0.2"4801 has-bigints "^1.0.2"4802 has-symbols "^1.0.3"4803 which-boxed-primitive "^1.0.2"48044805universalify@^0.1.0:4806 version "0.1.2"4807 resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"4808 integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==48094810unpipe@1.0.0, unpipe@~1.0.0:4811 version "1.0.0"4812 resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"4813 integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==48144815update-browserslist-db@^1.0.9:4816 version "1.0.10"4817 resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3"4818 integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==4819 dependencies:4820 escalade "^3.1.1"4821 picocolors "^1.0.0"48224823uri-js@^4.2.2:4824 version "4.4.1"4825 resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"4826 integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==4827 dependencies:4828 punycode "^2.1.0"48294830url-set-query@^1.0.0:4831 version "1.0.0"4832 resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339"4833 integrity sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==48344835utf-8-validate@^5.0.2:4836 version "5.0.10"4837 resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2"4838 integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==4839 dependencies:4840 node-gyp-build "^4.3.0"48414842utf8@3.0.0:4843 version "3.0.0"4844 resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1"4845 integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==48464847util-deprecate@^1.0.1:4848 version "1.0.2"4849 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"4850 integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==48514852util@^0.12.0:4853 version "0.12.5"4854 resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc"4855 integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==4856 dependencies:4857 inherits "^2.0.3"4858 is-arguments "^1.0.4"4859 is-generator-function "^1.0.7"4860 is-typed-array "^1.1.3"4861 which-typed-array "^1.1.2"48624863utils-merge@1.0.1:4864 version "1.0.1"4865 resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"4866 integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==48674868uuid@3.3.2:4869 version "3.3.2"4870 resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"4871 integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==48724873uuid@^3.3.2:4874 version "3.4.0"4875 resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"4876 integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==48774878v8-compile-cache-lib@^3.0.1:4879 version "3.0.1"4880 resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"4881 integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==48824883varint@^5.0.0:4884 version "5.0.2"4885 resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4"4886 integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==48874888vary@^1, vary@~1.1.2:4889 version "1.1.2"4890 resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"4891 integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==48924893verror@1.10.0:4894 version "1.10.0"4895 resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"4896 integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==4897 dependencies:4898 assert-plus "^1.0.0"4899 core-util-is "1.0.2"4900 extsprintf "^1.2.0"49014902web-streams-polyfill@^3.0.3:4903 version "3.2.1"4904 resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6"4905 integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==49064907web3-bzz@1.8.0:4908 version "1.8.0"4909 resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.8.0.tgz#2023676d7c17ea36512bf76eb310755a02a3d464"4910 integrity sha512-caDtdKeLi7+2Vb+y+cq2yyhkNjnxkFzVW0j1DtemarBg3dycG1iEl75CVQMLNO6Wkg+HH9tZtRnUyFIe5LIUeQ==4911 dependencies:4912 "@types/node" "^12.12.6"4913 got "12.1.0"4914 swarm-js "^0.1.40"49154916web3-core-helpers@1.8.0:4917 version "1.8.0"4918 resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.8.0.tgz#5dcfdda1a4ea277041d912003198f1334ca29d7c"4919 integrity sha512-nMAVwZB3rEp/khHI2BvFy0e/xCryf501p5NGjswmJtEM+Zrd3Biaw52JrB1qAZZIzCA8cmLKaOgdfamoDOpWdw==4920 dependencies:4921 web3-eth-iban "1.8.0"4922 web3-utils "1.8.0"49234924web3-core-method@1.8.0:4925 version "1.8.0"4926 resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.8.0.tgz#9c2da8896808917d1679c319f19e2174ba17086c"4927 integrity sha512-c94RAzo3gpXwf2rf8rL8C77jOzNWF4mXUoUfZYYsiY35cJFd46jQDPI00CB5+ZbICTiA5mlVzMj4e7jAsTqiLA==4928 dependencies:4929 "@ethersproject/transactions" "^5.6.2"4930 web3-core-helpers "1.8.0"4931 web3-core-promievent "1.8.0"4932 web3-core-subscriptions "1.8.0"4933 web3-utils "1.8.0"49344935web3-core-promievent@1.8.0:4936 version "1.8.0"4937 resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.8.0.tgz#979765fd4d37ab0f158f0ee54037b279b737bd53"4938 integrity sha512-FGLyjAuOaAQ+ZhV6iuw9tg/9WvIkSZXKHQ4mdTyQ8MxVraOtFivOCbuLLsGgapfHYX+RPxsc1j1YzQjKoupagQ==4939 dependencies:4940 eventemitter3 "4.0.4"49414942web3-core-requestmanager@1.8.0:4943 version "1.8.0"4944 resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.8.0.tgz#06189df80cf52d24a195a7ef655031afe8192df3"4945 integrity sha512-2AoYCs3Owl5foWcf4uKPONyqFygSl9T54L8b581U16nsUirjhoTUGK/PBhMDVcLCmW4QQmcY5A8oPFpkQc1TTg==4946 dependencies:4947 util "^0.12.0"4948 web3-core-helpers "1.8.0"4949 web3-providers-http "1.8.0"4950 web3-providers-ipc "1.8.0"4951 web3-providers-ws "1.8.0"49524953web3-core-subscriptions@1.8.0:4954 version "1.8.0"4955 resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.8.0.tgz#ff66ae4467c8cb4716367248bcefb1845c0f8b83"4956 integrity sha512-7lHVRzDdg0+Gcog55lG6Q3D8JV+jN+4Ly6F8cSn9xFUAwOkdbgdWsjknQG7t7CDWy21DQkvdiY2BJF8S68AqOA==4957 dependencies:4958 eventemitter3 "4.0.4"4959 web3-core-helpers "1.8.0"49604961web3-core@1.8.0:4962 version "1.8.0"4963 resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.8.0.tgz#90afce527ac1b1dff8cbed2acbc0336530b8aacf"4964 integrity sha512-9sCA+Z02ci6zoY2bAquFiDjujRwmSKHiSGi4B8IstML8okSytnzXk1izHYSynE7ahIkguhjWAuXFvX76F5rAbA==4965 dependencies:4966 "@types/bn.js" "^5.1.0"4967 "@types/node" "^12.12.6"4968 bignumber.js "^9.0.0"4969 web3-core-helpers "1.8.0"4970 web3-core-method "1.8.0"4971 web3-core-requestmanager "1.8.0"4972 web3-utils "1.8.0"49734974web3-eth-abi@1.8.0:4975 version "1.8.0"4976 resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.8.0.tgz#47fdff00bfdfa72064c9c612ff6369986598196d"4977 integrity sha512-xPeMb2hS9YLQK/Q5YZpkcmzoRGM+/R8bogSrYHhNC3hjZSSU0YRH+1ZKK0f9YF4qDZaPMI8tKWIMSCDIpjG6fg==4978 dependencies:4979 "@ethersproject/abi" "^5.6.3"4980 web3-utils "1.8.0"49814982web3-eth-accounts@1.8.0:4983 version "1.8.0"4984 resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.8.0.tgz#960d947ee87a49d6c706dc6312334fbfbd6ff812"4985 integrity sha512-HQ/MDSv4bexwJLvnqsM6xpGE7c2NVOqyhzOZFyMUKXbIwIq85T3TaLnM9pCN7XqMpDcfxqiZ3q43JqQVkzHdmw==4986 dependencies:4987 "@ethereumjs/common" "^2.5.0"4988 "@ethereumjs/tx" "^3.3.2"4989 crypto-browserify "3.12.0"4990 eth-lib "0.2.8"4991 ethereumjs-util "^7.0.10"4992 scrypt-js "^3.0.1"4993 uuid "3.3.2"4994 web3-core "1.8.0"4995 web3-core-helpers "1.8.0"4996 web3-core-method "1.8.0"4997 web3-utils "1.8.0"49984999web3-eth-contract@1.8.0:5000 version "1.8.0"5001 resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.8.0.tgz#58f4ce0bde74e5ce87663502e409a92abad7b2c5"5002 integrity sha512-6xeXhW2YoCrz2Ayf2Vm4srWiMOB6LawkvxWJDnUWJ8SMATg4Pgu42C/j8rz/enXbYWt2IKuj0kk8+QszxQbK+Q==5003 dependencies:5004 "@types/bn.js" "^5.1.0"5005 web3-core "1.8.0"5006 web3-core-helpers "1.8.0"5007 web3-core-method "1.8.0"5008 web3-core-promievent "1.8.0"5009 web3-core-subscriptions "1.8.0"5010 web3-eth-abi "1.8.0"5011 web3-utils "1.8.0"50125013web3-eth-ens@1.8.0:5014 version "1.8.0"5015 resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.8.0.tgz#f1937371eac54b087ebe2e871780c2710d39998d"5016 integrity sha512-/eFbQEwvsMOEiOhw9/iuRXCsPkqAmHHWuFOrThQkozRgcnSTRnvxkkRC/b6koiT5/HaKeUs4yQDg+/ixsIxZxA==5017 dependencies:5018 content-hash "^2.5.2"5019 eth-ens-namehash "2.0.8"5020 web3-core "1.8.0"5021 web3-core-helpers "1.8.0"5022 web3-core-promievent "1.8.0"5023 web3-eth-abi "1.8.0"5024 web3-eth-contract "1.8.0"5025 web3-utils "1.8.0"50265027web3-eth-iban@1.8.0:5028 version "1.8.0"5029 resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.8.0.tgz#3af8a0c95b5f7b0b81ab0bcd2075c1e5dda31520"5030 integrity sha512-4RbvUxcMpo/e5811sE3a6inJ2H4+FFqUVmlRYs0RaXaxiHweahSRBNcpO0UWgmlePTolj0rXqPT2oEr0DuC8kg==5031 dependencies:5032 bn.js "^5.2.1"5033 web3-utils "1.8.0"50345035web3-eth-personal@1.8.0:5036 version "1.8.0"5037 resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.8.0.tgz#433c35e2e042844402a12d543c4126ea1494b478"5038 integrity sha512-L7FT4nR3HmsfZyIAhFpEctKkYGOjRC2h6iFKs9gnFCHZga8yLcYcGaYOBIoYtaKom99MuGBoosayWt/Twh7F5A==5039 dependencies:5040 "@types/node" "^12.12.6"5041 web3-core "1.8.0"5042 web3-core-helpers "1.8.0"5043 web3-core-method "1.8.0"5044 web3-net "1.8.0"5045 web3-utils "1.8.0"50465047web3-eth@1.8.0:5048 version "1.8.0"5049 resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.8.0.tgz#006974a5d5e30644d05814111f9e162a72e4a09c"5050 integrity sha512-hist52os3OT4TQFB/GxPSMxTh3995sz6LPvQpPvj7ktSbpg9RNSFaSsPlCT63wUAHA3PZb1FemkAIeQM5t72Lw==5051 dependencies:5052 web3-core "1.8.0"5053 web3-core-helpers "1.8.0"5054 web3-core-method "1.8.0"5055 web3-core-subscriptions "1.8.0"5056 web3-eth-abi "1.8.0"5057 web3-eth-accounts "1.8.0"5058 web3-eth-contract "1.8.0"5059 web3-eth-ens "1.8.0"5060 web3-eth-iban "1.8.0"5061 web3-eth-personal "1.8.0"5062 web3-net "1.8.0"5063 web3-utils "1.8.0"50645065web3-net@1.8.0:5066 version "1.8.0"5067 resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.8.0.tgz#9acff92d7c647d801bc68df0ff4416f104dbe789"5068 integrity sha512-kX6EAacK7QrOe7DOh0t5yHS5q2kxZmTCxPVwSz9io9xBeE4n4UhmzGJ/VfhP2eM3OPKYeypcR3LEO6zZ8xn2vw==5069 dependencies:5070 web3-core "1.8.0"5071 web3-core-method "1.8.0"5072 web3-utils "1.8.0"50735074web3-providers-http@1.8.0:5075 version "1.8.0"5076 resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.8.0.tgz#3fd1e569ead2095343fac17d53160a3bae674c23"5077 integrity sha512-/MqxwRzExohBWW97mqlCSW/+NHydGRyoEDUS1bAIF2YjfKFwyRtHgrEzOojzkC9JvB+8LofMvbXk9CcltpZapw==5078 dependencies:5079 abortcontroller-polyfill "^1.7.3"5080 cross-fetch "^3.1.4"5081 es6-promise "^4.2.8"5082 web3-core-helpers "1.8.0"50835084web3-providers-ipc@1.8.0:5085 version "1.8.0"5086 resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.8.0.tgz#d339a24c4d764e459e425d3ac868a551ac33e3ea"5087 integrity sha512-tAXHtVXNUOgehaBU8pzAlB3qhjn/PRpjdzEjzHNFqtRRTwzSEKOJxFeEhaUA4FzHnTlbnrs8ujHWUitcp1elfg==5088 dependencies:5089 oboe "2.1.5"5090 web3-core-helpers "1.8.0"50915092web3-providers-ws@1.8.0:5093 version "1.8.0"5094 resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.8.0.tgz#a0a73e0606981ea32bed40d215000a64753899de"5095 integrity sha512-bcZtSifsqyJxwkfQYamfdIRp4nhj9eJd7cxHg1uUkfLJK125WP96wyJL1xbPt7qt0MpfnTFn8/UuIqIB6nFENg==5096 dependencies:5097 eventemitter3 "4.0.4"5098 web3-core-helpers "1.8.0"5099 websocket "^1.0.32"51005101web3-shh@1.8.0:5102 version "1.8.0"5103 resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.8.0.tgz#b4abbf4f59d097ce2f74360e61e2e5c0bd6507c7"5104 integrity sha512-DNRgSa9Jf9xYFUGKSMylrf+zt3MPjhI2qF+UWX07o0y3+uf8zalDGiJOWvIS4upAsdPiKKVJ7co+Neof47OMmg==5105 dependencies:5106 web3-core "1.8.0"5107 web3-core-method "1.8.0"5108 web3-core-subscriptions "1.8.0"5109 web3-net "1.8.0"51105111web3-utils@1.8.0:5112 version "1.8.0"5113 resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.8.0.tgz#0a506f8c6af9a2ad6ba79689892662769534fc03"5114 integrity sha512-7nUIl7UWpLVka2f09CMbKOSEvorvHnaugIabU4mj7zfMvm0tSByLcEu3eyV9qgS11qxxLuOkzBIwCstTflhmpQ==5115 dependencies:5116 bn.js "^5.2.1"5117 ethereum-bloom-filters "^1.0.6"5118 ethereumjs-util "^7.1.0"5119 ethjs-unit "0.1.6"5120 number-to-bn "1.7.0"5121 randombytes "^2.1.0"5122 utf8 "3.0.0"51235124web3@^1.8.0:5125 version "1.8.0"5126 resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.0.tgz#3ca5f0b32de6a1f626407740411219035b5fde64"5127 integrity sha512-sldr9stK/SALSJTgI/8qpnDuBJNMGjVR84hJ+AcdQ+MLBGLMGsCDNubCoyO6qgk1/Y9SQ7ignegOI/7BPLoiDA==5128 dependencies:5129 web3-bzz "1.8.0"5130 web3-core "1.8.0"5131 web3-eth "1.8.0"5132 web3-eth-personal "1.8.0"5133 web3-net "1.8.0"5134 web3-shh "1.8.0"5135 web3-utils "1.8.0"51365137webidl-conversions@^3.0.0:5138 version "3.0.1"5139 resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"5140 integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==51415142websocket@^1.0.32, websocket@^1.0.34:5143 version "1.0.34"5144 resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.34.tgz#2bdc2602c08bf2c82253b730655c0ef7dcab3111"5145 integrity sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==5146 dependencies:5147 bufferutil "^4.0.1"5148 debug "^2.2.0"5149 es5-ext "^0.10.50"5150 typedarray-to-buffer "^3.1.5"5151 utf-8-validate "^5.0.2"5152 yaeti "^0.0.6"51535154whatwg-url@^5.0.0:5155 version "5.0.0"5156 resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"5157 integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==5158 dependencies:5159 tr46 "~0.0.3"5160 webidl-conversions "^3.0.0"51615162which-boxed-primitive@^1.0.2:5163 version "1.0.2"5164 resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"5165 integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==5166 dependencies:5167 is-bigint "^1.0.1"5168 is-boolean-object "^1.1.0"5169 is-number-object "^1.0.4"5170 is-string "^1.0.5"5171 is-symbol "^1.0.3"51725173which-typed-array@^1.1.2:5174 version "1.1.8"5175 resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.8.tgz#0cfd53401a6f334d90ed1125754a42ed663eb01f"5176 integrity sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==5177 dependencies:5178 available-typed-arrays "^1.0.5"5179 call-bind "^1.0.2"5180 es-abstract "^1.20.0"5181 for-each "^0.3.3"5182 has-tostringtag "^1.0.0"5183 is-typed-array "^1.1.9"51845185which@^2.0.1:5186 version "2.0.2"5187 resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"5188 integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==5189 dependencies:5190 isexe "^2.0.0"51915192word-wrap@^1.2.3:5193 version "1.2.3"5194 resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"5195 integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==51965197wordwrap@^1.0.0:5198 version "1.0.0"5199 resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"5200 integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==52015202wordwrapjs@^4.0.0:5203 version "4.0.1"5204 resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-4.0.1.tgz#d9790bccfb110a0fc7836b5ebce0937b37a8b98f"5205 integrity sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==5206 dependencies:5207 reduce-flatten "^2.0.0"5208 typical "^5.2.0"52095210workerpool@6.2.1:5211 version "6.2.1"5212 resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343"5213 integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==52145215wrap-ansi@^7.0.0:5216 version "7.0.0"5217 resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"5218 integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==5219 dependencies:5220 ansi-styles "^4.0.0"5221 string-width "^4.1.0"5222 strip-ansi "^6.0.0"52235224wrappy@1:5225 version "1.0.2"5226 resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"5227 integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==52285229ws@^3.0.0:5230 version "3.3.3"5231 resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"5232 integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==5233 dependencies:5234 async-limiter "~1.0.0"5235 safe-buffer "~5.1.0"5236 ultron "~1.1.0"52375238ws@^8.8.1:5239 version "8.9.0"5240 resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e"5241 integrity sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==52425243xhr-request-promise@^0.1.2:5244 version "0.1.3"5245 resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz#2d5f4b16d8c6c893be97f1a62b0ed4cf3ca5f96c"5246 integrity sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==5247 dependencies:5248 xhr-request "^1.1.0"52495250xhr-request@^1.0.1, xhr-request@^1.1.0:5251 version "1.1.0"5252 resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed"5253 integrity sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==5254 dependencies:5255 buffer-to-arraybuffer "^0.0.5"5256 object-assign "^4.1.1"5257 query-string "^5.0.1"5258 simple-get "^2.7.0"5259 timed-out "^4.0.1"5260 url-set-query "^1.0.0"5261 xhr "^2.0.4"52625263xhr@^2.0.4, xhr@^2.3.3:5264 version "2.6.0"5265 resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.6.0.tgz#b69d4395e792b4173d6b7df077f0fc5e4e2b249d"5266 integrity sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==5267 dependencies:5268 global "~4.4.0"5269 is-function "^1.0.1"5270 parse-headers "^2.0.0"5271 xtend "^4.0.0"52725273xtend@^4.0.0:5274 version "4.0.2"5275 resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"5276 integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==52775278y18n@^5.0.5:5279 version "5.0.8"5280 resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"5281 integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==52825283yaeti@^0.0.6:5284 version "0.0.6"5285 resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577"5286 integrity sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==52875288yallist@^3.0.0, yallist@^3.1.1:5289 version "3.1.1"5290 resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"5291 integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==52925293yallist@^4.0.0:5294 version "4.0.0"5295 resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"5296 integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==52975298yargs-parser@20.2.4:5299 version "20.2.4"5300 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54"5301 integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==53025303yargs-parser@^20.2.2:5304 version "20.2.9"5305 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"5306 integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==53075308yargs-parser@^21.0.0:5309 version "21.1.1"5310 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"5311 integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==53125313yargs-unparser@2.0.0:5314 version "2.0.0"5315 resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb"5316 integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==5317 dependencies:5318 camelcase "^6.0.0"5319 decamelize "^4.0.0"5320 flat "^5.0.2"5321 is-plain-obj "^2.1.0"53225323yargs@16.2.0:5324 version "16.2.0"5325 resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"5326 integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==5327 dependencies:5328 cliui "^7.0.2"5329 escalade "^3.1.1"5330 get-caller-file "^2.0.5"5331 require-directory "^2.1.1"5332 string-width "^4.2.0"5333 y18n "^5.0.5"5334 yargs-parser "^20.2.2"53355336yargs@^17.6.0:5337 version "17.6.0"5338 resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.0.tgz#e134900fc1f218bc230192bdec06a0a5f973e46c"5339 integrity sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==5340 dependencies:5341 cliui "^8.0.1"5342 escalade "^3.1.1"5343 get-caller-file "^2.0.5"5344 require-directory "^2.1.1"5345 string-width "^4.2.3"5346 y18n "^5.0.5"5347 yargs-parser "^21.0.0"53485349yn@3.1.1:5350 version "3.1.1"5351 resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"5352 integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==53535354yocto-queue@^0.1.0:5355 version "0.1.0"5356 resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"5357 integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==