1{2 "contractName": "EvmToSubstrate",3 "abi": [4 {5 "anonymous": false,6 "inputs": [7 {8 "indexed": false,9 "internalType": "address",10 "name": "_toEth",11 "type": "address"12 },13 {14 "indexed": false,15 "internalType": "uint256",16 "name": "_toSub",17 "type": "uint256"18 },19 {20 "indexed": false,21 "internalType": "address",22 "name": "_collection",23 "type": "address"24 },25 {26 "indexed": false,27 "internalType": "uint256",28 "name": "_tokenId",29 "type": "uint256"30 }31 ],32 "name": "MintToSub",33 "type": "event"34 },35 {36 "inputs": [37 {38 "internalType": "address",39 "name": "_collection",40 "type": "address"41 },42 {43 "internalType": "uint256",44 "name": "_substrateReceiver",45 "type": "uint256"46 }47 ],48 "name": "mintToSubstrate",49 "outputs": [],50 "stateMutability": "nonpayable",51 "type": "function"52 },53 {54 "inputs": [55 {56 "internalType": "address",57 "name": "_collection",58 "type": "address"59 },60 {61 "internalType": "uint256",62 "name": "_substrateReceiver",63 "type": "uint256"64 },65 {66 "components": [67 {68 "internalType": "string",69 "name": "key",70 "type": "string"71 },72 {73 "internalType": "bytes",74 "name": "value",75 "type": "bytes"76 }77 ],78 "internalType": "struct Property[]",79 "name": "properties",80 "type": "tuple[]"81 }82 ],83 "name": "mintToSubstrateWithProperty",84 "outputs": [],85 "stateMutability": "nonpayable",86 "type": "function"87 }88 ],89 "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}",90 "bytecode": "608060405234801561001057600080fd5b50610e46806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063440dff9d1461003b5780637a8d978614610050575b600080fd5b61004e610049366004610aa4565b610063565b005b61004e61005e366004610b2e565b6106f9565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100cf9190610b58565b6100f45760405162461bcd60e51b81526004016100eb90610b81565b60405180910390fd5b82806101375760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b60448201526064016100eb565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561017c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101a49190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b295820161043f5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561023c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102609190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156102b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d49190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061030257610302610cca565b90506020028101906103149190610ce0565b61031e9080610d00565b8e8e8781811061033057610330610cca565b90506020028101906103429190610ce0565b610350906020810190610d00565b6040518663ffffffff1660e01b8152600401610370959493929190610d77565b600060405180830381600087803b15801561038a57600080fd5b505af115801561039e573d6000803e3d6000fd5b50505050806103ac90610db0565b90506102d8565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610407929091908790600401610dd7565b600060405180830381600087803b15801561042157600080fd5b505af1158015610435573d6000803e3d6000fd5b505050505061069d565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e89190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061058a5761058a610cca565b905060200281019061059c9190610ce0565b6105a69080610d00565b8e8e878181106105b8576105b8610cca565b90506020028101906105ca9190610ce0565b6105d8906020810190610d00565b6040518663ffffffff1660e01b81526004016105f8959493929190610d77565b600060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050508061063490610db0565b9050610560565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b60648201526084016100eb565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610741573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107659190610b58565b6107815760405162461bcd60e51b81526004016100eb90610b81565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa1580156107c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ee9190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016109aa576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108aa9190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190610b58565b50604080518082018252308152600060208083018290528351808501855291825281018a9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610972929091908790600401610dd7565b600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b5050505050610a2f565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610a9f57600080fd5b919050565b60008060008060608587031215610aba57600080fd5b610ac385610a88565b935060208501359250604085013567ffffffffffffffff80821115610ae757600080fd5b818701915087601f830112610afb57600080fd5b813581811115610b0a57600080fd5b8860208260051b8501011115610b1f57600080fd5b95989497505060200194505050565b60008060408385031215610b4157600080fd5b610b4a83610a88565b946020939093013593505050565b600060208284031215610b6a57600080fd5b81518015158114610b7a57600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610bfa57600080fd5b825167ffffffffffffffff80821115610c1257600080fd5b818501915085601f830112610c2657600080fd5b815181811115610c3857610c38610bd1565b604051601f8201601f19908116603f01168101908382118183101715610c6057610c60610bd1565b816040528281528886848701011115610c7857600080fd5b600093505b82841015610c9a5784840186015181850187015292850192610c7d565b600086848301015280965050505050505092915050565b600060208284031215610cc357600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60008235603e19833603018112610cf657600080fd5b9190910192915050565b6000808335601e19843603018112610d1757600080fd5b83018035915067ffffffffffffffff821115610d3257600080fd5b602001915036819003821315610d4757600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152606060208201526000610d91606083018688610d4e565b8281036040840152610da4818587610d4e565b98975050505050505050565b600060018201610dd057634e487b7160e01b600052601160045260246000fd5b5060010190565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a0019056fea2646970667358221220da8ff84a103be9db6b42d85b4650dc8a633327ec7c4a8dc98e58ce322129c48664736f6c63430008110033",91 "deployedBytecode": "608060405234801561001057600080fd5b50600436106100365760003560e01c8063440dff9d1461003b5780637a8d978614610050575b600080fd5b61004e610049366004610aa4565b610063565b005b61004e61005e366004610b2e565b6106f9565b604051639811b0c760e01b8152336004820152849081906001600160a01b03821690639811b0c790602401602060405180830381865afa1580156100ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100cf9190610b58565b6100f45760405162461bcd60e51b81526004016100eb90610b81565b60405180910390fd5b82806101375760405162461bcd60e51b815260206004820152601260248201527150726f70657269657320697320656d70747960701b60448201526064016100eb565b60008790506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa15801561017c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101a49190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b295820161043f5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561023c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102609190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156102b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d49190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061030257610302610cca565b90506020028101906103149190610ce0565b61031e9080610d00565b8e8e8781811061033057610330610cca565b90506020028101906103429190610ce0565b610350906020810190610d00565b6040518663ffffffff1660e01b8152600401610370959493929190610d77565b600060405180830381600087803b15801561038a57600080fd5b505af115801561039e573d6000803e3d6000fd5b50505050806103ac90610db0565b90506102d8565b50604080518082018252308152600060208083018290528351808501855291825281018d9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610407929091908790600401610dd7565b600060405180830381600087803b15801561042157600080fd5b505af1158015610435573d6000803e3d6000fd5b505050505061069d565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b5760008a9050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e89190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610b58565b5060005b858110156103b357816001600160a01b0316631752d67b848c8c8581811061058a5761058a610cca565b905060200281019061059c9190610ce0565b6105a69080610d00565b8e8e878181106105b8576105b8610cca565b90506020028101906105ca9190610ce0565b6105d8906020810190610d00565b6040518663ffffffff1660e01b81526004016105f8959493929190610d77565b600060405180830381600087803b15801561061257600080fd5b505af1158015610626573d6000803e3d6000fd5b505050508061063490610db0565b9050610560565b60405162461bcd60e51b815260206004820152603160248201527f57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c6044820152701e481dda5d1a08139195081bdc88149195607a1b60648201526084016100eb565b6040805160008152602081018b90526001600160a01b038c16818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050505050565b604051639811b0c760e01b8152336004820152829081906001600160a01b03821690639811b0c790602401602060405180830381865afa158015610741573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107659190610b58565b6107815760405162461bcd60e51b81526004016100eb90610b81565b60008490506000816001600160a01b031663d34b55b86040518163ffffffff1660e01b8152600401600060405180830381865afa1580156107c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ee9190810190610be7565b805160209182012060408051808201909152600a815269526546756e6769626c6560b01b920191909152905060007f3248d02b1e2f292b1142854ebdeec13d4b4f9224dbcdb24a3d7810fe54b7b29582016109aa576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108aa9190610cb1565b6040516340c10f1960e01b8152306004820152602481018290529092506001600160a01b038216906340c10f19906044016020604051808303816000875af11580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190610b58565b50604080518082018252308152600060208083018290528351808501855291825281018a9052915163d5cf430b60e01b81526001600160a01b0384169263d5cf430b92610972929091908790600401610dd7565b600060405180830381600087803b15801561098c57600080fd5b505af11580156109a0573d6000803e3d6000fd5b5050505050610a2f565b60408051808201909152600381526213919560ea1b6020909101527f63bec732f5ecee1b8b708f2f01c23aa0f0a08a1f0df248cedda343c476ebfe96820161063b576000879050806001600160a01b03166375794a3c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610886573d6000803e3d6000fd5b6040805160008152602081018890526001600160a01b038916818301526060810183905290517ffb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb75359181900360800190a150505050505050565b80356001600160a01b0381168114610a9f57600080fd5b919050565b60008060008060608587031215610aba57600080fd5b610ac385610a88565b935060208501359250604085013567ffffffffffffffff80821115610ae757600080fd5b818701915087601f830112610afb57600080fd5b813581811115610b0a57600080fd5b8860208260051b8501011115610b1f57600080fd5b95989497505060200194505050565b60008060408385031215610b4157600080fd5b610b4a83610a88565b946020939093013593505050565b600060208284031215610b6a57600080fd5b81518015158114610b7a57600080fd5b9392505050565b60208082526030908201527f4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2060408201526f18d85b1b081d1a1a5cc81b595d1a1bd960821b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610bfa57600080fd5b825167ffffffffffffffff80821115610c1257600080fd5b818501915085601f830112610c2657600080fd5b815181811115610c3857610c38610bd1565b604051601f8201601f19908116603f01168101908382118183101715610c6057610c60610bd1565b816040528281528886848701011115610c7857600080fd5b600093505b82841015610c9a5784840186015181850187015292850192610c7d565b600086848301015280965050505050505092915050565b600060208284031215610cc357600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60008235603e19833603018112610cf657600080fd5b9190910192915050565b6000808335601e19843603018112610d1757600080fd5b83018035915067ffffffffffffffff821115610d3257600080fd5b602001915036819003821315610d4757600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b858152606060208201526000610d91606083018688610d4e565b8281036040840152610da4818587610d4e565b98975050505050505050565b600060018201610dd057634e487b7160e01b600052601160045260246000fd5b5060010190565b83516001600160a01b03908116825260209485015185830152835116604082015291909201516060820152608081019190915260a0019056fea2646970667358221220da8ff84a103be9db6b42d85b4650dc8a633327ec7c4a8dc98e58ce322129c48664736f6c63430008110033",92 "sourceMap": "494:5314:5:-:0;;;;;;;;;;;;;;;;;;;",93 "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",94 "sourcePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",95 "compiler": {96 "name": "solc",97 "version": "0.8.17+commit.8df45f5f"98 },99 "ast": {100 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/evmToSubstrate/EvmToSubstrateHelper.sol",101 "exportedSymbols": {102 "Collection": [103 1167104 ],105 "CollectionHelpers": [106 89107 ],108 "ContractHelpers": [109 272110 ],111 "EvmToSubstrate": [112 2100113 ],114 "NftCrossAccountId": [115 700116 ],117 "Property": [118 1695119 ],120 "RftCrossAccountId": [121 1315122 ],123 "UniqueNFT": [124 893125 ],126 "UniqueRefungible": [127 1508128 ],129 "UniqueRefungibleToken": [130 1675131 ]132 },133 "id": 2101,134 "license": "Apache License",135 "nodeType": "SourceUnit",136 "nodes": [137 {138 "id": 1677,139 "literals": [140 "solidity",141 ">=",142 "0.8",143 ".0"144 ],145 "nodeType": "PragmaDirective",146 "src": "44:24:5"147 },148 {149 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/CollectionHelpers.sol",150 "file": "../api/CollectionHelpers.sol",151 "id": 1679,152 "nameLocation": "-1:-1:-1",153 "nodeType": "ImportDirective",154 "scope": 2101,155 "sourceUnit": 90,156 "src": "69:63:5",157 "symbolAliases": [158 {159 "foreign": {160 "id": 1678,161 "name": "CollectionHelpers",162 "nodeType": "Identifier",163 "overloadedDeclarations": [],164 "referencedDeclaration": 89,165 "src": "77:17:5",166 "typeDescriptions": {}167 },168 "nameLocation": "-1:-1:-1"169 }170 ],171 "unitAlias": ""172 },173 {174 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/ContractHelpers.sol",175 "file": "../api/ContractHelpers.sol",176 "id": 1681,177 "nameLocation": "-1:-1:-1",178 "nodeType": "ImportDirective",179 "scope": 2101,180 "sourceUnit": 278,181 "src": "133:59:5",182 "symbolAliases": [183 {184 "foreign": {185 "id": 1680,186 "name": "ContractHelpers",187 "nodeType": "Identifier",188 "overloadedDeclarations": [],189 "referencedDeclaration": 272,190 "src": "141:15:5",191 "typeDescriptions": {}192 },193 "nameLocation": "-1:-1:-1"194 }195 ],196 "unitAlias": ""197 },198 {199 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungibleToken.sol",200 "file": "../api/UniqueRefungibleToken.sol",201 "id": 1683,202 "nameLocation": "-1:-1:-1",203 "nodeType": "ImportDirective",204 "scope": 2101,205 "sourceUnit": 1676,206 "src": "193:71:5",207 "symbolAliases": [208 {209 "foreign": {210 "id": 1682,211 "name": "UniqueRefungibleToken",212 "nodeType": "Identifier",213 "overloadedDeclarations": [],214 "referencedDeclaration": 1675,215 "src": "201:21:5",216 "typeDescriptions": {}217 },218 "nameLocation": "-1:-1:-1"219 }220 ],221 "unitAlias": ""222 },223 {224 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueRefungible.sol",225 "file": "../api/UniqueRefungible.sol",226 "id": 1687,227 "nameLocation": "-1:-1:-1",228 "nodeType": "ImportDirective",229 "scope": 2101,230 "sourceUnit": 1509,231 "src": "265:102:5",232 "symbolAliases": [233 {234 "foreign": {235 "id": 1684,236 "name": "UniqueRefungible",237 "nodeType": "Identifier",238 "overloadedDeclarations": [],239 "referencedDeclaration": 1508,240 "src": "273:16:5",241 "typeDescriptions": {}242 },243 "nameLocation": "-1:-1:-1"244 },245 {246 "foreign": {247 "id": 1685,248 "name": "Collection",249 "nodeType": "Identifier",250 "overloadedDeclarations": [],251 "referencedDeclaration": 1167,252 "src": "291:10:5",253 "typeDescriptions": {}254 },255 "nameLocation": "-1:-1:-1"256 },257 {258 "foreign": {259 "id": 1686,260 "name": "Tuple8",261 "nodeType": "Identifier",262 "overloadedDeclarations": [],263 "referencedDeclaration": 1315,264 "src": "303:6:5",265 "typeDescriptions": {}266 },267 "local": "RftCrossAccountId",268 "nameLocation": "-1:-1:-1"269 }270 ],271 "unitAlias": ""272 },273 {274 "absolutePath": "/home/praetorp/Repos/Polkadot/unique-chain/tests/src/eth/api/UniqueNFT.sol",275 "file": "../api/UniqueNFT.sol",276 "id": 1690,277 "nameLocation": "-1:-1:-1",278 "nodeType": "ImportDirective",279 "scope": 2101,280 "sourceUnit": 894,281 "src": "368:76:5",282 "symbolAliases": [283 {284 "foreign": {285 "id": 1688,286 "name": "UniqueNFT",287 "nodeType": "Identifier",288 "overloadedDeclarations": [],289 "referencedDeclaration": 893,290 "src": "376:9:5",291 "typeDescriptions": {}292 },293 "nameLocation": "-1:-1:-1"294 },295 {296 "foreign": {297 "id": 1689,298 "name": "Tuple8",299 "nodeType": "Identifier",300 "overloadedDeclarations": [],301 "referencedDeclaration": 700,302 "src": "387:6:5",303 "typeDescriptions": {}304 },305 "local": "NftCrossAccountId",306 "nameLocation": "-1:-1:-1"307 }308 ],309 "unitAlias": ""310 },311 {312 "canonicalName": "Property",313 "id": 1695,314 "members": [315 {316 "constant": false,317 "id": 1692,318 "mutability": "mutable",319 "name": "key",320 "nameLocation": "472:3:5",321 "nodeType": "VariableDeclaration",322 "scope": 1695,323 "src": "465:10:5",324 "stateVariable": false,325 "storageLocation": "default",326 "typeDescriptions": {327 "typeIdentifier": "t_string_storage_ptr",328 "typeString": "string"329 },330 "typeName": {331 "id": 1691,332 "name": "string",333 "nodeType": "ElementaryTypeName",334 "src": "465:6:5",335 "typeDescriptions": {336 "typeIdentifier": "t_string_storage_ptr",337 "typeString": "string"338 }339 },340 "visibility": "internal"341 },342 {343 "constant": false,344 "id": 1694,345 "mutability": "mutable",346 "name": "value",347 "nameLocation": "484:5:5",348 "nodeType": "VariableDeclaration",349 "scope": 1695,350 "src": "478:11:5",351 "stateVariable": false,352 "storageLocation": "default",353 "typeDescriptions": {354 "typeIdentifier": "t_bytes_storage_ptr",355 "typeString": "bytes"356 },357 "typeName": {358 "id": 1693,359 "name": "bytes",360 "nodeType": "ElementaryTypeName",361 "src": "478:5:5",362 "typeDescriptions": {363 "typeIdentifier": "t_bytes_storage_ptr",364 "typeString": "bytes"365 }366 },367 "visibility": "internal"368 }369 ],370 "name": "Property",371 "nameLocation": "453:8:5",372 "nodeType": "StructDefinition",373 "scope": 2101,374 "src": "446:46:5",375 "visibility": "public"376 },377 {378 "abstract": false,379 "baseContracts": [],380 "canonicalName": "EvmToSubstrate",381 "contractDependencies": [],382 "contractKind": "contract",383 "fullyImplemented": true,384 "id": 2100,385 "linearizedBaseContracts": [386 2100387 ],388 "name": "EvmToSubstrate",389 "nameLocation": "503:14:5",390 "nodeType": "ContractDefinition",391 "nodes": [392 {393 "constant": true,394 "id": 1703,395 "mutability": "constant",396 "name": "REFUNGIBLE_COLLECTION_TYPE",397 "nameLocation": "538:26:5",398 "nodeType": "VariableDeclaration",399 "scope": 2100,400 "src": "521:76:5",401 "stateVariable": true,402 "storageLocation": "default",403 "typeDescriptions": {404 "typeIdentifier": "t_bytes32",405 "typeString": "bytes32"406 },407 "typeName": {408 "id": 1696,409 "name": "bytes32",410 "nodeType": "ElementaryTypeName",411 "src": "521:7:5",412 "typeDescriptions": {413 "typeIdentifier": "t_bytes32",414 "typeString": "bytes32"415 }416 },417 "value": {418 "arguments": [419 {420 "arguments": [421 {422 "hexValue": "526546756e6769626c65",423 "id": 1700,424 "isConstant": false,425 "isLValue": false,426 "isPure": true,427 "kind": "string",428 "lValueRequested": false,429 "nodeType": "Literal",430 "src": "583:12:5",431 "typeDescriptions": {432 "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",433 "typeString": "literal_string \"ReFungible\""434 },435 "value": "ReFungible"436 }437 ],438 "expression": {439 "argumentTypes": [440 {441 "typeIdentifier": "t_stringliteral_cdb72fd4e1d0d6d4eebd7ab142113ec2b4b06ddb24324db5c287ef01ab484d6b",442 "typeString": "literal_string \"ReFungible\""443 }444 ],445 "id": 1699,446 "isConstant": false,447 "isLValue": false,448 "isPure": true,449 "lValueRequested": false,450 "nodeType": "ElementaryTypeNameExpression",451 "src": "577:5:5",452 "typeDescriptions": {453 "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",454 "typeString": "type(bytes storage pointer)"455 },456 "typeName": {457 "id": 1698,458 "name": "bytes",459 "nodeType": "ElementaryTypeName",460 "src": "577:5:5",461 "typeDescriptions": {}462 }463 },464 "id": 1701,465 "isConstant": false,466 "isLValue": false,467 "isPure": true,468 "kind": "typeConversion",469 "lValueRequested": false,470 "nameLocations": [],471 "names": [],472 "nodeType": "FunctionCall",473 "src": "577:19:5",474 "tryCall": false,475 "typeDescriptions": {476 "typeIdentifier": "t_bytes_memory_ptr",477 "typeString": "bytes memory"478 }479 }480 ],481 "expression": {482 "argumentTypes": [483 {484 "typeIdentifier": "t_bytes_memory_ptr",485 "typeString": "bytes memory"486 }487 ],488 "id": 1697,489 "name": "keccak256",490 "nodeType": "Identifier",491 "overloadedDeclarations": [],492 "referencedDeclaration": 4294967288,493 "src": "567:9:5",494 "typeDescriptions": {495 "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",496 "typeString": "function (bytes memory) pure returns (bytes32)"497 }498 },499 "id": 1702,500 "isConstant": false,501 "isLValue": false,502 "isPure": true,503 "kind": "functionCall",504 "lValueRequested": false,505 "nameLocations": [],506 "names": [],507 "nodeType": "FunctionCall",508 "src": "567:30:5",509 "tryCall": false,510 "typeDescriptions": {511 "typeIdentifier": "t_bytes32",512 "typeString": "bytes32"513 }514 },515 "visibility": "internal"516 },517 {518 "constant": true,519 "id": 1711,520 "mutability": "constant",521 "name": "NONFUNGIBLE_COLLECTION_TYPE",522 "nameLocation": "617:27:5",523 "nodeType": "VariableDeclaration",524 "scope": 2100,525 "src": "600:70:5",526 "stateVariable": true,527 "storageLocation": "default",528 "typeDescriptions": {529 "typeIdentifier": "t_bytes32",530 "typeString": "bytes32"531 },532 "typeName": {533 "id": 1704,534 "name": "bytes32",535 "nodeType": "ElementaryTypeName",536 "src": "600:7:5",537 "typeDescriptions": {538 "typeIdentifier": "t_bytes32",539 "typeString": "bytes32"540 }541 },542 "value": {543 "arguments": [544 {545 "arguments": [546 {547 "hexValue": "4e4654",548 "id": 1708,549 "isConstant": false,550 "isLValue": false,551 "isPure": true,552 "kind": "string",553 "lValueRequested": false,554 "nodeType": "Literal",555 "src": "663:5:5",556 "typeDescriptions": {557 "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",558 "typeString": "literal_string \"NFT\""559 },560 "value": "NFT"561 }562 ],563 "expression": {564 "argumentTypes": [565 {566 "typeIdentifier": "t_stringliteral_9c4138cd0a1311e4748f70d0fe3dc55f0f5f75e0f20db731225cbc3b8914016a",567 "typeString": "literal_string \"NFT\""568 }569 ],570 "id": 1707,571 "isConstant": false,572 "isLValue": false,573 "isPure": true,574 "lValueRequested": false,575 "nodeType": "ElementaryTypeNameExpression",576 "src": "657:5:5",577 "typeDescriptions": {578 "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",579 "typeString": "type(bytes storage pointer)"580 },581 "typeName": {582 "id": 1706,583 "name": "bytes",584 "nodeType": "ElementaryTypeName",585 "src": "657:5:5",586 "typeDescriptions": {}587 }588 },589 "id": 1709,590 "isConstant": false,591 "isLValue": false,592 "isPure": true,593 "kind": "typeConversion",594 "lValueRequested": false,595 "nameLocations": [],596 "names": [],597 "nodeType": "FunctionCall",598 "src": "657:12:5",599 "tryCall": false,600 "typeDescriptions": {601 "typeIdentifier": "t_bytes_memory_ptr",602 "typeString": "bytes memory"603 }604 }605 ],606 "expression": {607 "argumentTypes": [608 {609 "typeIdentifier": "t_bytes_memory_ptr",610 "typeString": "bytes memory"611 }612 ],613 "id": 1705,614 "name": "keccak256",615 "nodeType": "Identifier",616 "overloadedDeclarations": [],617 "referencedDeclaration": 4294967288,618 "src": "647:9:5",619 "typeDescriptions": {620 "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",621 "typeString": "function (bytes memory) pure returns (bytes32)"622 }623 },624 "id": 1710,625 "isConstant": false,626 "isLValue": false,627 "isPure": true,628 "kind": "functionCall",629 "lValueRequested": false,630 "nameLocations": [],631 "names": [],632 "nodeType": "FunctionCall",633 "src": "647:23:5",634 "tryCall": false,635 "typeDescriptions": {636 "typeIdentifier": "t_bytes32",637 "typeString": "bytes32"638 }639 },640 "visibility": "internal"641 },642 {643 "body": {644 "id": 1732,645 "nodeType": "Block",646 "src": "980:889:5",647 "statements": [648 {649 "assignments": [650 1717651 ],652 "declarations": [653 {654 "constant": false,655 "id": 1717,656 "mutability": "mutable",657 "name": "commonContract",658 "nameLocation": "995:14:5",659 "nodeType": "VariableDeclaration",660 "scope": 1732,661 "src": "984:25:5",662 "stateVariable": false,663 "storageLocation": "default",664 "typeDescriptions": {665 "typeIdentifier": "t_contract$_Collection_$1167",666 "typeString": "contract Collection"667 },668 "typeName": {669 "id": 1716,670 "nodeType": "UserDefinedTypeName",671 "pathNode": {672 "id": 1715,673 "name": "Collection",674 "nameLocations": [675 "984:10:5"676 ],677 "nodeType": "IdentifierPath",678 "referencedDeclaration": 1167,679 "src": "984:10:5"680 },681 "referencedDeclaration": 1167,682 "src": "984:10:5",683 "typeDescriptions": {684 "typeIdentifier": "t_contract$_Collection_$1167",685 "typeString": "contract Collection"686 }687 },688 "visibility": "internal"689 }690 ],691 "id": 1721,692 "initialValue": {693 "arguments": [694 {695 "id": 1719,696 "name": "_collection",697 "nodeType": "Identifier",698 "overloadedDeclarations": [],699 "referencedDeclaration": 1713,700 "src": "1023:11:5",701 "typeDescriptions": {702 "typeIdentifier": "t_address",703 "typeString": "address"704 }705 }706 ],707 "expression": {708 "argumentTypes": [709 {710 "typeIdentifier": "t_address",711 "typeString": "address"712 }713 ],714 "id": 1718,715 "name": "Collection",716 "nodeType": "Identifier",717 "overloadedDeclarations": [],718 "referencedDeclaration": 1167,719 "src": "1012:10:5",720 "typeDescriptions": {721 "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",722 "typeString": "type(contract Collection)"723 }724 },725 "id": 1720,726 "isConstant": false,727 "isLValue": false,728 "isPure": false,729 "kind": "typeConversion",730 "lValueRequested": false,731 "nameLocations": [],732 "names": [],733 "nodeType": "FunctionCall",734 "src": "1012:23:5",735 "tryCall": false,736 "typeDescriptions": {737 "typeIdentifier": "t_contract$_Collection_$1167",738 "typeString": "contract Collection"739 }740 },741 "nodeType": "VariableDeclarationStatement",742 "src": "984:51:5"743 },744 {745 "expression": {746 "arguments": [747 {748 "arguments": [749 {750 "expression": {751 "id": 1725,752 "name": "msg",753 "nodeType": "Identifier",754 "overloadedDeclarations": [],755 "referencedDeclaration": 4294967281,756 "src": "1077:3:5",757 "typeDescriptions": {758 "typeIdentifier": "t_magic_message",759 "typeString": "msg"760 }761 },762 "id": 1726,763 "isConstant": false,764 "isLValue": false,765 "isPure": false,766 "lValueRequested": false,767 "memberLocation": "1081:6:5",768 "memberName": "sender",769 "nodeType": "MemberAccess",770 "src": "1077:10:5",771 "typeDescriptions": {772 "typeIdentifier": "t_address",773 "typeString": "address"774 }775 }776 ],777 "expression": {778 "argumentTypes": [779 {780 "typeIdentifier": "t_address",781 "typeString": "address"782 }783 ],784 "expression": {785 "id": 1723,786 "name": "commonContract",787 "nodeType": "Identifier",788 "overloadedDeclarations": [],789 "referencedDeclaration": 1717,790 "src": "1047:14:5",791 "typeDescriptions": {792 "typeIdentifier": "t_contract$_Collection_$1167",793 "typeString": "contract Collection"794 }795 },796 "id": 1724,797 "isConstant": false,798 "isLValue": false,799 "isPure": false,800 "lValueRequested": false,801 "memberLocation": "1062:14:5",802 "memberName": "isOwnerOrAdmin",803 "nodeType": "MemberAccess",804 "referencedDeclaration": 1131,805 "src": "1047:29:5",806 "typeDescriptions": {807 "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$",808 "typeString": "function (address) view external returns (bool)"809 }810 },811 "id": 1727,812 "isConstant": false,813 "isLValue": false,814 "isPure": false,815 "kind": "functionCall",816 "lValueRequested": false,817 "nameLocations": [],818 "names": [],819 "nodeType": "FunctionCall",820 "src": "1047:41:5",821 "tryCall": false,822 "typeDescriptions": {823 "typeIdentifier": "t_bool",824 "typeString": "bool"825 }826 },827 {828 "hexValue": "4f6e6c7920636f6c6c656374696f6e2061646d696e2f6f776e65722063616e2063616c6c2074686973206d6574686f64",829 "id": 1728,830 "isConstant": false,831 "isLValue": false,832 "isPure": true,833 "kind": "string",834 "lValueRequested": false,835 "nodeType": "Literal",836 "src": "1090:50:5",837 "typeDescriptions": {838 "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",839 "typeString": "literal_string \"Only collection admin/owner can call this method\""840 },841 "value": "Only collection admin/owner can call this method"842 }843 ],844 "expression": {845 "argumentTypes": [846 {847 "typeIdentifier": "t_bool",848 "typeString": "bool"849 },850 {851 "typeIdentifier": "t_stringliteral_9e1b1a457a3a51e38b70747f3c56c9a0ede0f22582e6963b10271c34b83f1ca3",852 "typeString": "literal_string \"Only collection admin/owner can call this method\""853 }854 ],855 "id": 1722,856 "name": "require",857 "nodeType": "Identifier",858 "overloadedDeclarations": [859 4294967278,860 4294967278861 ],862 "referencedDeclaration": 4294967278,863 "src": "1039:7:5",864 "typeDescriptions": {865 "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",866 "typeString": "function (bool,string memory) pure"867 }868 },869 "id": 1729,870 "isConstant": false,871 "isLValue": false,872 "isPure": false,873 "kind": "functionCall",874 "lValueRequested": false,875 "nameLocations": [],876 "names": [],877 "nodeType": "FunctionCall",878 "src": "1039:102:5",879 "tryCall": false,880 "typeDescriptions": {881 "typeIdentifier": "t_tuple$__$",882 "typeString": "tuple()"883 }884 },885 "id": 1730,886 "nodeType": "ExpressionStatement",887 "src": "1039:102:5"888 },889 {890 "id": 1731,891 "nodeType": "PlaceholderStatement",892 "src": "1864:1:5"893 }894 ]895 },896 "id": 1733,897 "name": "checkRestrictions",898 "nameLocation": "941:17:5",899 "nodeType": "ModifierDefinition",900 "parameters": {901 "id": 1714,902 "nodeType": "ParameterList",903 "parameters": [904 {905 "constant": false,906 "id": 1713,907 "mutability": "mutable",908 "name": "_collection",909 "nameLocation": "967:11:5",910 "nodeType": "VariableDeclaration",911 "scope": 1733,912 "src": "959:19:5",913 "stateVariable": false,914 "storageLocation": "default",915 "typeDescriptions": {916 "typeIdentifier": "t_address",917 "typeString": "address"918 },919 "typeName": {920 "id": 1712,921 "name": "address",922 "nodeType": "ElementaryTypeName",923 "src": "959:7:5",924 "stateMutability": "nonpayable",925 "typeDescriptions": {926 "typeIdentifier": "t_address",927 "typeString": "address"928 }929 },930 "visibility": "internal"931 }932 ],933 "src": "958:21:5"934 },935 "src": "932:937:5",936 "virtual": false,937 "visibility": "internal"938 },939 {940 "anonymous": false,941 "documentation": {942 "id": 1734,943 "nodeType": "StructuredDocumentation",944 "src": "1872:69:5",945 "text": "@dev This emits when a mint to a substrate address has been made."946 },947 "eventSelector": "fb3433367f20c42151d30b3d2c634726a94c4f9fa7d45120606029741aeb7535",948 "id": 1744,949 "name": "MintToSub",950 "nameLocation": "1949:9:5",951 "nodeType": "EventDefinition",952 "parameters": {953 "id": 1743,954 "nodeType": "ParameterList",955 "parameters": [956 {957 "constant": false,958 "id": 1736,959 "indexed": false,960 "mutability": "mutable",961 "name": "_toEth",962 "nameLocation": "1967:6:5",963 "nodeType": "VariableDeclaration",964 "scope": 1744,965 "src": "1959:14:5",966 "stateVariable": false,967 "storageLocation": "default",968 "typeDescriptions": {969 "typeIdentifier": "t_address",970 "typeString": "address"971 },972 "typeName": {973 "id": 1735,974 "name": "address",975 "nodeType": "ElementaryTypeName",976 "src": "1959:7:5",977 "stateMutability": "nonpayable",978 "typeDescriptions": {979 "typeIdentifier": "t_address",980 "typeString": "address"981 }982 },983 "visibility": "internal"984 },985 {986 "constant": false,987 "id": 1738,988 "indexed": false,989 "mutability": "mutable",990 "name": "_toSub",991 "nameLocation": "1983:6:5",992 "nodeType": "VariableDeclaration",993 "scope": 1744,994 "src": "1975:14:5",995 "stateVariable": false,996 "storageLocation": "default",997 "typeDescriptions": {998 "typeIdentifier": "t_uint256",999 "typeString": "uint256"1000 },1001 "typeName": {1002 "id": 1737,1003 "name": "uint256",1004 "nodeType": "ElementaryTypeName",1005 "src": "1975:7:5",1006 "typeDescriptions": {1007 "typeIdentifier": "t_uint256",1008 "typeString": "uint256"1009 }1010 },1011 "visibility": "internal"1012 },1013 {1014 "constant": false,1015 "id": 1740,1016 "indexed": false,1017 "mutability": "mutable",1018 "name": "_collection",1019 "nameLocation": "1999:11:5",1020 "nodeType": "VariableDeclaration",1021 "scope": 1744,1022 "src": "1991:19:5",1023 "stateVariable": false,1024 "storageLocation": "default",1025 "typeDescriptions": {1026 "typeIdentifier": "t_address",1027 "typeString": "address"1028 },1029 "typeName": {1030 "id": 1739,1031 "name": "address",1032 "nodeType": "ElementaryTypeName",1033 "src": "1991:7:5",1034 "stateMutability": "nonpayable",1035 "typeDescriptions": {1036 "typeIdentifier": "t_address",1037 "typeString": "address"1038 }1039 },1040 "visibility": "internal"1041 },1042 {1043 "constant": false,1044 "id": 1742,1045 "indexed": false,1046 "mutability": "mutable",1047 "name": "_tokenId",1048 "nameLocation": "2020:8:5",1049 "nodeType": "VariableDeclaration",1050 "scope": 1744,1051 "src": "2012:16:5",1052 "stateVariable": false,1053 "storageLocation": "default",1054 "typeDescriptions": {1055 "typeIdentifier": "t_uint256",1056 "typeString": "uint256"1057 },1058 "typeName": {1059 "id": 1741,1060 "name": "uint256",1061 "nodeType": "ElementaryTypeName",1062 "src": "2012:7:5",1063 "typeDescriptions": {1064 "typeIdentifier": "t_uint256",1065 "typeString": "uint256"1066 }1067 },1068 "visibility": "internal"1069 }1070 ],1071 "src": "1958:71:5"1072 },1073 "src": "1943:87:5"1074 },1075 {1076 "body": {1077 "id": 1887,1078 "nodeType": "Block",1079 "src": "2636:1392:5",1080 "statements": [1081 {1082 "assignments": [1083 17571084 ],1085 "declarations": [1086 {1087 "constant": false,1088 "id": 1757,1089 "mutability": "mutable",1090 "name": "commonContract",1091 "nameLocation": "2797:14:5",1092 "nodeType": "VariableDeclaration",1093 "scope": 1887,1094 "src": "2786:25:5",1095 "stateVariable": false,1096 "storageLocation": "default",1097 "typeDescriptions": {1098 "typeIdentifier": "t_contract$_Collection_$1167",1099 "typeString": "contract Collection"1100 },1101 "typeName": {1102 "id": 1756,1103 "nodeType": "UserDefinedTypeName",1104 "pathNode": {1105 "id": 1755,1106 "name": "Collection",1107 "nameLocations": [1108 "2786:10:5"1109 ],1110 "nodeType": "IdentifierPath",1111 "referencedDeclaration": 1167,1112 "src": "2786:10:5"1113 },1114 "referencedDeclaration": 1167,1115 "src": "2786:10:5",1116 "typeDescriptions": {1117 "typeIdentifier": "t_contract$_Collection_$1167",1118 "typeString": "contract Collection"1119 }1120 },1121 "visibility": "internal"1122 }1123 ],1124 "id": 1761,1125 "initialValue": {1126 "arguments": [1127 {1128 "id": 1759,1129 "name": "_collection",1130 "nodeType": "Identifier",1131 "overloadedDeclarations": [],1132 "referencedDeclaration": 1747,1133 "src": "2825:11:5",1134 "typeDescriptions": {1135 "typeIdentifier": "t_address",1136 "typeString": "address"1137 }1138 }1139 ],1140 "expression": {1141 "argumentTypes": [1142 {1143 "typeIdentifier": "t_address",1144 "typeString": "address"1145 }1146 ],1147 "id": 1758,1148 "name": "Collection",1149 "nodeType": "Identifier",1150 "overloadedDeclarations": [],1151 "referencedDeclaration": 1167,1152 "src": "2814:10:5",1153 "typeDescriptions": {1154 "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",1155 "typeString": "type(contract Collection)"1156 }1157 },1158 "id": 1760,1159 "isConstant": false,1160 "isLValue": false,1161 "isPure": false,1162 "kind": "typeConversion",1163 "lValueRequested": false,1164 "nameLocations": [],1165 "names": [],1166 "nodeType": "FunctionCall",1167 "src": "2814:23:5",1168 "tryCall": false,1169 "typeDescriptions": {1170 "typeIdentifier": "t_contract$_Collection_$1167",1171 "typeString": "contract Collection"1172 }1173 },1174 "nodeType": "VariableDeclarationStatement",1175 "src": "2786:51:5"1176 },1177 {1178 "assignments": [1179 17631180 ],1181 "declarations": [1182 {1183 "constant": false,1184 "id": 1763,1185 "mutability": "mutable",1186 "name": "collectionType",1187 "nameLocation": "2849:14:5",1188 "nodeType": "VariableDeclaration",1189 "scope": 1887,1190 "src": "2841:22:5",1191 "stateVariable": false,1192 "storageLocation": "default",1193 "typeDescriptions": {1194 "typeIdentifier": "t_bytes32",1195 "typeString": "bytes32"1196 },1197 "typeName": {1198 "id": 1762,1199 "name": "bytes32",1200 "nodeType": "ElementaryTypeName",1201 "src": "2841:7:5",1202 "typeDescriptions": {1203 "typeIdentifier": "t_bytes32",1204 "typeString": "bytes32"1205 }1206 },1207 "visibility": "internal"1208 }1209 ],1210 "id": 1772,1211 "initialValue": {1212 "arguments": [1213 {1214 "arguments": [1215 {1216 "arguments": [],1217 "expression": {1218 "argumentTypes": [],1219 "expression": {1220 "id": 1767,1221 "name": "commonContract",1222 "nodeType": "Identifier",1223 "overloadedDeclarations": [],1224 "referencedDeclaration": 1757,1225 "src": "2882:14:5",1226 "typeDescriptions": {1227 "typeIdentifier": "t_contract$_Collection_$1167",1228 "typeString": "contract Collection"1229 }1230 },1231 "id": 1768,1232 "isConstant": false,1233 "isLValue": false,1234 "isPure": false,1235 "lValueRequested": false,1236 "memberLocation": "2897:20:5",1237 "memberName": "uniqueCollectionType",1238 "nodeType": "MemberAccess",1239 "referencedDeclaration": 1146,1240 "src": "2882:35:5",1241 "typeDescriptions": {1242 "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",1243 "typeString": "function () view external returns (string memory)"1244 }1245 },1246 "id": 1769,1247 "isConstant": false,1248 "isLValue": false,1249 "isPure": false,1250 "kind": "functionCall",1251 "lValueRequested": false,1252 "nameLocations": [],1253 "names": [],1254 "nodeType": "FunctionCall",1255 "src": "2882:37:5",1256 "tryCall": false,1257 "typeDescriptions": {1258 "typeIdentifier": "t_string_memory_ptr",1259 "typeString": "string memory"1260 }1261 }1262 ],1263 "expression": {1264 "argumentTypes": [1265 {1266 "typeIdentifier": "t_string_memory_ptr",1267 "typeString": "string memory"1268 }1269 ],1270 "id": 1766,1271 "isConstant": false,1272 "isLValue": false,1273 "isPure": true,1274 "lValueRequested": false,1275 "nodeType": "ElementaryTypeNameExpression",1276 "src": "2876:5:5",1277 "typeDescriptions": {1278 "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",1279 "typeString": "type(bytes storage pointer)"1280 },1281 "typeName": {1282 "id": 1765,1283 "name": "bytes",1284 "nodeType": "ElementaryTypeName",1285 "src": "2876:5:5",1286 "typeDescriptions": {}1287 }1288 },1289 "id": 1770,1290 "isConstant": false,1291 "isLValue": false,1292 "isPure": false,1293 "kind": "typeConversion",1294 "lValueRequested": false,1295 "nameLocations": [],1296 "names": [],1297 "nodeType": "FunctionCall",1298 "src": "2876:44:5",1299 "tryCall": false,1300 "typeDescriptions": {1301 "typeIdentifier": "t_bytes_memory_ptr",1302 "typeString": "bytes memory"1303 }1304 }1305 ],1306 "expression": {1307 "argumentTypes": [1308 {1309 "typeIdentifier": "t_bytes_memory_ptr",1310 "typeString": "bytes memory"1311 }1312 ],1313 "id": 1764,1314 "name": "keccak256",1315 "nodeType": "Identifier",1316 "overloadedDeclarations": [],1317 "referencedDeclaration": 4294967288,1318 "src": "2866:9:5",1319 "typeDescriptions": {1320 "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",1321 "typeString": "function (bytes memory) pure returns (bytes32)"1322 }1323 },1324 "id": 1771,1325 "isConstant": false,1326 "isLValue": false,1327 "isPure": false,1328 "kind": "functionCall",1329 "lValueRequested": false,1330 "nameLocations": [],1331 "names": [],1332 "nodeType": "FunctionCall",1333 "src": "2866:55:5",1334 "tryCall": false,1335 "typeDescriptions": {1336 "typeIdentifier": "t_bytes32",1337 "typeString": "bytes32"1338 }1339 },1340 "nodeType": "VariableDeclarationStatement",1341 "src": "2841:80:5"1342 },1343 {1344 "assignments": [1345 17741346 ],1347 "declarations": [1348 {1349 "constant": false,1350 "id": 1774,1351 "mutability": "mutable",1352 "name": "tokenId",1353 "nameLocation": "2933:7:5",1354 "nodeType": "VariableDeclaration",1355 "scope": 1887,1356 "src": "2925:15:5",1357 "stateVariable": false,1358 "storageLocation": "default",1359 "typeDescriptions": {1360 "typeIdentifier": "t_uint256",1361 "typeString": "uint256"1362 },1363 "typeName": {1364 "id": 1773,1365 "name": "uint256",1366 "nodeType": "ElementaryTypeName",1367 "src": "2925:7:5",1368 "typeDescriptions": {1369 "typeIdentifier": "t_uint256",1370 "typeString": "uint256"1371 }1372 },1373 "visibility": "internal"1374 }1375 ],1376 "id": 1775,1377 "nodeType": "VariableDeclarationStatement",1378 "src": "2925:15:5"1379 },1380 {1381 "condition": {1382 "commonType": {1383 "typeIdentifier": "t_bytes32",1384 "typeString": "bytes32"1385 },1386 "id": 1778,1387 "isConstant": false,1388 "isLValue": false,1389 "isPure": false,1390 "lValueRequested": false,1391 "leftExpression": {1392 "id": 1776,1393 "name": "collectionType",1394 "nodeType": "Identifier",1395 "overloadedDeclarations": [],1396 "referencedDeclaration": 1763,1397 "src": "2949:14:5",1398 "typeDescriptions": {1399 "typeIdentifier": "t_bytes32",1400 "typeString": "bytes32"1401 }1402 },1403 "nodeType": "BinaryOperation",1404 "operator": "==",1405 "rightExpression": {1406 "id": 1777,1407 "name": "REFUNGIBLE_COLLECTION_TYPE",1408 "nodeType": "Identifier",1409 "overloadedDeclarations": [],1410 "referencedDeclaration": 1703,1411 "src": "2967:26:5",1412 "typeDescriptions": {1413 "typeIdentifier": "t_bytes32",1414 "typeString": "bytes32"1415 }1416 },1417 "src": "2949:44:5",1418 "typeDescriptions": {1419 "typeIdentifier": "t_bool",1420 "typeString": "bool"1421 }1422 },1423 "falseBody": {1424 "condition": {1425 "commonType": {1426 "typeIdentifier": "t_bytes32",1427 "typeString": "bytes32"1428 },1429 "id": 1825,1430 "isConstant": false,1431 "isLValue": false,1432 "isPure": false,1433 "lValueRequested": false,1434 "leftExpression": {1435 "id": 1823,1436 "name": "collectionType",1437 "nodeType": "Identifier",1438 "overloadedDeclarations": [],1439 "referencedDeclaration": 1763,1440 "src": "3317:14:5",1441 "typeDescriptions": {1442 "typeIdentifier": "t_bytes32",1443 "typeString": "bytes32"1444 }1445 },1446 "nodeType": "BinaryOperation",1447 "operator": "==",1448 "rightExpression": {1449 "id": 1824,1450 "name": "NONFUNGIBLE_COLLECTION_TYPE",1451 "nodeType": "Identifier",1452 "overloadedDeclarations": [],1453 "referencedDeclaration": 1711,1454 "src": "3335:27:5",1455 "typeDescriptions": {1456 "typeIdentifier": "t_bytes32",1457 "typeString": "bytes32"1458 }1459 },1460 "src": "3317:45:5",1461 "typeDescriptions": {1462 "typeIdentifier": "t_bool",1463 "typeString": "bool"1464 }1465 },1466 "falseBody": {1467 "id": 1874,1468 "nodeType": "Block",1469 "src": "3668:69:5",1470 "statements": [1471 {1472 "expression": {1473 "arguments": [1474 {1475 "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",1476 "id": 1871,1477 "isConstant": false,1478 "isLValue": false,1479 "isPure": true,1480 "kind": "string",1481 "lValueRequested": false,1482 "nodeType": "Literal",1483 "src": "3680:51:5",1484 "typeDescriptions": {1485 "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",1486 "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""1487 },1488 "value": "Wrong collection type. Works only with NFT or RFT"1489 }1490 ],1491 "expression": {1492 "argumentTypes": [1493 {1494 "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",1495 "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""1496 }1497 ],1498 "id": 1870,1499 "name": "revert",1500 "nodeType": "Identifier",1501 "overloadedDeclarations": [1502 4294967277,1503 42949672771504 ],1505 "referencedDeclaration": 4294967277,1506 "src": "3673:6:5",1507 "typeDescriptions": {1508 "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",1509 "typeString": "function (string memory) pure"1510 }1511 },1512 "id": 1872,1513 "isConstant": false,1514 "isLValue": false,1515 "isPure": false,1516 "kind": "functionCall",1517 "lValueRequested": false,1518 "nameLocations": [],1519 "names": [],1520 "nodeType": "FunctionCall",1521 "src": "3673:59:5",1522 "tryCall": false,1523 "typeDescriptions": {1524 "typeIdentifier": "t_tuple$__$",1525 "typeString": "tuple()"1526 }1527 },1528 "id": 1873,1529 "nodeType": "ExpressionStatement",1530 "src": "3673:59:5"1531 }1532 ]1533 },1534 "id": 1875,1535 "nodeType": "IfStatement",1536 "src": "3313:424:5",1537 "trueBody": {1538 "id": 1869,1539 "nodeType": "Block",1540 "src": "3364:298:5",1541 "statements": [1542 {1543 "assignments": [1544 18281545 ],1546 "declarations": [1547 {1548 "constant": false,1549 "id": 1828,1550 "mutability": "mutable",1551 "name": "nftCollection",1552 "nameLocation": "3379:13:5",1553 "nodeType": "VariableDeclaration",1554 "scope": 1869,1555 "src": "3369:23:5",1556 "stateVariable": false,1557 "storageLocation": "default",1558 "typeDescriptions": {1559 "typeIdentifier": "t_contract$_UniqueNFT_$893",1560 "typeString": "contract UniqueNFT"1561 },1562 "typeName": {1563 "id": 1827,1564 "nodeType": "UserDefinedTypeName",1565 "pathNode": {1566 "id": 1826,1567 "name": "UniqueNFT",1568 "nameLocations": [1569 "3369:9:5"1570 ],1571 "nodeType": "IdentifierPath",1572 "referencedDeclaration": 893,1573 "src": "3369:9:5"1574 },1575 "referencedDeclaration": 893,1576 "src": "3369:9:5",1577 "typeDescriptions": {1578 "typeIdentifier": "t_contract$_UniqueNFT_$893",1579 "typeString": "contract UniqueNFT"1580 }1581 },1582 "visibility": "internal"1583 }1584 ],1585 "id": 1832,1586 "initialValue": {1587 "arguments": [1588 {1589 "id": 1830,1590 "name": "_collection",1591 "nodeType": "Identifier",1592 "overloadedDeclarations": [],1593 "referencedDeclaration": 1747,1594 "src": "3405:11:5",1595 "typeDescriptions": {1596 "typeIdentifier": "t_address",1597 "typeString": "address"1598 }1599 }1600 ],1601 "expression": {1602 "argumentTypes": [1603 {1604 "typeIdentifier": "t_address",1605 "typeString": "address"1606 }1607 ],1608 "id": 1829,1609 "name": "UniqueNFT",1610 "nodeType": "Identifier",1611 "overloadedDeclarations": [],1612 "referencedDeclaration": 893,1613 "src": "3395:9:5",1614 "typeDescriptions": {1615 "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$893_$",1616 "typeString": "type(contract UniqueNFT)"1617 }1618 },1619 "id": 1831,1620 "isConstant": false,1621 "isLValue": false,1622 "isPure": false,1623 "kind": "typeConversion",1624 "lValueRequested": false,1625 "nameLocations": [],1626 "names": [],1627 "nodeType": "FunctionCall",1628 "src": "3395:22:5",1629 "tryCall": false,1630 "typeDescriptions": {1631 "typeIdentifier": "t_contract$_UniqueNFT_$893",1632 "typeString": "contract UniqueNFT"1633 }1634 },1635 "nodeType": "VariableDeclarationStatement",1636 "src": "3369:48:5"1637 },1638 {1639 "expression": {1640 "id": 1837,1641 "isConstant": false,1642 "isLValue": false,1643 "isPure": false,1644 "lValueRequested": false,1645 "leftHandSide": {1646 "id": 1833,1647 "name": "tokenId",1648 "nodeType": "Identifier",1649 "overloadedDeclarations": [],1650 "referencedDeclaration": 1774,1651 "src": "3422:7:5",1652 "typeDescriptions": {1653 "typeIdentifier": "t_uint256",1654 "typeString": "uint256"1655 }1656 },1657 "nodeType": "Assignment",1658 "operator": "=",1659 "rightHandSide": {1660 "arguments": [],1661 "expression": {1662 "argumentTypes": [],1663 "expression": {1664 "id": 1834,1665 "name": "nftCollection",1666 "nodeType": "Identifier",1667 "overloadedDeclarations": [],1668 "referencedDeclaration": 1828,1669 "src": "3432:13:5",1670 "typeDescriptions": {1671 "typeIdentifier": "t_contract$_UniqueNFT_$893",1672 "typeString": "contract UniqueNFT"1673 }1674 },1675 "id": 1835,1676 "isConstant": false,1677 "isLValue": false,1678 "isPure": false,1679 "lValueRequested": false,1680 "memberLocation": "3446:11:5",1681 "memberName": "nextTokenId",1682 "nodeType": "MemberAccess",1683 "referencedDeclaration": 666,1684 "src": "3432:25:5",1685 "typeDescriptions": {1686 "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",1687 "typeString": "function () view external returns (uint256)"1688 }1689 },1690 "id": 1836,1691 "isConstant": false,1692 "isLValue": false,1693 "isPure": false,1694 "kind": "functionCall",1695 "lValueRequested": false,1696 "nameLocations": [],1697 "names": [],1698 "nodeType": "FunctionCall",1699 "src": "3432:27:5",1700 "tryCall": false,1701 "typeDescriptions": {1702 "typeIdentifier": "t_uint256",1703 "typeString": "uint256"1704 }1705 },1706 "src": "3422:37:5",1707 "typeDescriptions": {1708 "typeIdentifier": "t_uint256",1709 "typeString": "uint256"1710 }1711 },1712 "id": 1838,1713 "nodeType": "ExpressionStatement",1714 "src": "3422:37:5"1715 },1716 {1717 "expression": {1718 "arguments": [1719 {1720 "arguments": [1721 {1722 "id": 1844,1723 "name": "this",1724 "nodeType": "Identifier",1725 "overloadedDeclarations": [],1726 "referencedDeclaration": 4294967268,1727 "src": "3491:4:5",1728 "typeDescriptions": {1729 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",1730 "typeString": "contract EvmToSubstrate"1731 }1732 }1733 ],1734 "expression": {1735 "argumentTypes": [1736 {1737 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",1738 "typeString": "contract EvmToSubstrate"1739 }1740 ],1741 "id": 1843,1742 "isConstant": false,1743 "isLValue": false,1744 "isPure": true,1745 "lValueRequested": false,1746 "nodeType": "ElementaryTypeNameExpression",1747 "src": "3483:7:5",1748 "typeDescriptions": {1749 "typeIdentifier": "t_type$_t_address_$",1750 "typeString": "type(address)"1751 },1752 "typeName": {1753 "id": 1842,1754 "name": "address",1755 "nodeType": "ElementaryTypeName",1756 "src": "3483:7:5",1757 "typeDescriptions": {}1758 }1759 },1760 "id": 1845,1761 "isConstant": false,1762 "isLValue": false,1763 "isPure": false,1764 "kind": "typeConversion",1765 "lValueRequested": false,1766 "nameLocations": [],1767 "names": [],1768 "nodeType": "FunctionCall",1769 "src": "3483:13:5",1770 "tryCall": false,1771 "typeDescriptions": {1772 "typeIdentifier": "t_address",1773 "typeString": "address"1774 }1775 },1776 {1777 "id": 1846,1778 "name": "tokenId",1779 "nodeType": "Identifier",1780 "overloadedDeclarations": [],1781 "referencedDeclaration": 1774,1782 "src": "3498:7:5",1783 "typeDescriptions": {1784 "typeIdentifier": "t_uint256",1785 "typeString": "uint256"1786 }1787 }1788 ],1789 "expression": {1790 "argumentTypes": [1791 {1792 "typeIdentifier": "t_address",1793 "typeString": "address"1794 },1795 {1796 "typeIdentifier": "t_uint256",1797 "typeString": "uint256"1798 }1799 ],1800 "expression": {1801 "id": 1839,1802 "name": "nftCollection",1803 "nodeType": "Identifier",1804 "overloadedDeclarations": [],1805 "referencedDeclaration": 1828,1806 "src": "3464:13:5",1807 "typeDescriptions": {1808 "typeIdentifier": "t_contract$_UniqueNFT_$893",1809 "typeString": "contract UniqueNFT"1810 }1811 },1812 "id": 1841,1813 "isConstant": false,1814 "isLValue": false,1815 "isPure": false,1816 "lValueRequested": false,1817 "memberLocation": "3478:4:5",1818 "memberName": "mint",1819 "nodeType": "MemberAccess",1820 "referencedDeclaration": 590,1821 "src": "3464:18:5",1822 "typeDescriptions": {1823 "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",1824 "typeString": "function (address,uint256) external returns (bool)"1825 }1826 },1827 "id": 1847,1828 "isConstant": false,1829 "isLValue": false,1830 "isPure": false,1831 "kind": "functionCall",1832 "lValueRequested": false,1833 "nameLocations": [],1834 "names": [],1835 "nodeType": "FunctionCall",1836 "src": "3464:42:5",1837 "tryCall": false,1838 "typeDescriptions": {1839 "typeIdentifier": "t_bool",1840 "typeString": "bool"1841 }1842 },1843 "id": 1848,1844 "nodeType": "ExpressionStatement",1845 "src": "3464:42:5"1846 },1847 {1848 "expression": {1849 "arguments": [1850 {1851 "arguments": [1852 {1853 "arguments": [1854 {1855 "id": 1855,1856 "name": "this",1857 "nodeType": "Identifier",1858 "overloadedDeclarations": [],1859 "referencedDeclaration": 4294967268,1860 "src": "3575:4:5",1861 "typeDescriptions": {1862 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",1863 "typeString": "contract EvmToSubstrate"1864 }1865 }1866 ],1867 "expression": {1868 "argumentTypes": [1869 {1870 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",1871 "typeString": "contract EvmToSubstrate"1872 }1873 ],1874 "id": 1854,1875 "isConstant": false,1876 "isLValue": false,1877 "isPure": true,1878 "lValueRequested": false,1879 "nodeType": "ElementaryTypeNameExpression",1880 "src": "3567:7:5",1881 "typeDescriptions": {1882 "typeIdentifier": "t_type$_t_address_$",1883 "typeString": "type(address)"1884 },1885 "typeName": {1886 "id": 1853,1887 "name": "address",1888 "nodeType": "ElementaryTypeName",1889 "src": "3567:7:5",1890 "typeDescriptions": {}1891 }1892 },1893 "id": 1856,1894 "isConstant": false,1895 "isLValue": false,1896 "isPure": false,1897 "kind": "typeConversion",1898 "lValueRequested": false,1899 "nameLocations": [],1900 "names": [],1901 "nodeType": "FunctionCall",1902 "src": "3567:13:5",1903 "tryCall": false,1904 "typeDescriptions": {1905 "typeIdentifier": "t_address",1906 "typeString": "address"1907 }1908 },1909 {1910 "hexValue": "30",1911 "id": 1857,1912 "isConstant": false,1913 "isLValue": false,1914 "isPure": true,1915 "kind": "number",1916 "lValueRequested": false,1917 "nodeType": "Literal",1918 "src": "3582:1:5",1919 "typeDescriptions": {1920 "typeIdentifier": "t_rational_0_by_1",1921 "typeString": "int_const 0"1922 },1923 "value": "0"1924 }1925 ],1926 "expression": {1927 "argumentTypes": [1928 {1929 "typeIdentifier": "t_address",1930 "typeString": "address"1931 },1932 {1933 "typeIdentifier": "t_rational_0_by_1",1934 "typeString": "int_const 0"1935 }1936 ],1937 "id": 1852,1938 "name": "NftCrossAccountId",1939 "nodeType": "Identifier",1940 "overloadedDeclarations": [],1941 "referencedDeclaration": 700,1942 "src": "3549:17:5",1943 "typeDescriptions": {1944 "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",1945 "typeString": "type(struct Tuple8 storage pointer)"1946 }1947 },1948 "id": 1858,1949 "isConstant": false,1950 "isLValue": false,1951 "isPure": false,1952 "kind": "structConstructorCall",1953 "lValueRequested": false,1954 "nameLocations": [],1955 "names": [],1956 "nodeType": "FunctionCall",1957 "src": "3549:35:5",1958 "tryCall": false,1959 "typeDescriptions": {1960 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",1961 "typeString": "struct Tuple8 memory"1962 }1963 },1964 {1965 "arguments": [1966 {1967 "arguments": [1968 {1969 "hexValue": "30",1970 "id": 1862,1971 "isConstant": false,1972 "isLValue": false,1973 "isPure": true,1974 "kind": "number",1975 "lValueRequested": false,1976 "nodeType": "Literal",1977 "src": "3616:1:5",1978 "typeDescriptions": {1979 "typeIdentifier": "t_rational_0_by_1",1980 "typeString": "int_const 0"1981 },1982 "value": "0"1983 }1984 ],1985 "expression": {1986 "argumentTypes": [1987 {1988 "typeIdentifier": "t_rational_0_by_1",1989 "typeString": "int_const 0"1990 }1991 ],1992 "id": 1861,1993 "isConstant": false,1994 "isLValue": false,1995 "isPure": true,1996 "lValueRequested": false,1997 "nodeType": "ElementaryTypeNameExpression",1998 "src": "3608:7:5",1999 "typeDescriptions": {2000 "typeIdentifier": "t_type$_t_address_$",2001 "typeString": "type(address)"2002 },2003 "typeName": {2004 "id": 1860,2005 "name": "address",2006 "nodeType": "ElementaryTypeName",2007 "src": "3608:7:5",2008 "typeDescriptions": {}2009 }2010 },2011 "id": 1863,2012 "isConstant": false,2013 "isLValue": false,2014 "isPure": true,2015 "kind": "typeConversion",2016 "lValueRequested": false,2017 "nameLocations": [],2018 "names": [],2019 "nodeType": "FunctionCall",2020 "src": "3608:10:5",2021 "tryCall": false,2022 "typeDescriptions": {2023 "typeIdentifier": "t_address",2024 "typeString": "address"2025 }2026 },2027 {2028 "id": 1864,2029 "name": "_substrateReceiver",2030 "nodeType": "Identifier",2031 "overloadedDeclarations": [],2032 "referencedDeclaration": 1749,2033 "src": "3620:18:5",2034 "typeDescriptions": {2035 "typeIdentifier": "t_uint256",2036 "typeString": "uint256"2037 }2038 }2039 ],2040 "expression": {2041 "argumentTypes": [2042 {2043 "typeIdentifier": "t_address",2044 "typeString": "address"2045 },2046 {2047 "typeIdentifier": "t_uint256",2048 "typeString": "uint256"2049 }2050 ],2051 "id": 1859,2052 "name": "NftCrossAccountId",2053 "nodeType": "Identifier",2054 "overloadedDeclarations": [],2055 "referencedDeclaration": 700,2056 "src": "3590:17:5",2057 "typeDescriptions": {2058 "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",2059 "typeString": "type(struct Tuple8 storage pointer)"2060 }2061 },2062 "id": 1865,2063 "isConstant": false,2064 "isLValue": false,2065 "isPure": false,2066 "kind": "structConstructorCall",2067 "lValueRequested": false,2068 "nameLocations": [],2069 "names": [],2070 "nodeType": "FunctionCall",2071 "src": "3590:49:5",2072 "tryCall": false,2073 "typeDescriptions": {2074 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",2075 "typeString": "struct Tuple8 memory"2076 }2077 },2078 {2079 "id": 1866,2080 "name": "tokenId",2081 "nodeType": "Identifier",2082 "overloadedDeclarations": [],2083 "referencedDeclaration": 1774,2084 "src": "3645:7:5",2085 "typeDescriptions": {2086 "typeIdentifier": "t_uint256",2087 "typeString": "uint256"2088 }2089 }2090 ],2091 "expression": {2092 "argumentTypes": [2093 {2094 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",2095 "typeString": "struct Tuple8 memory"2096 },2097 {2098 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",2099 "typeString": "struct Tuple8 memory"2100 },2101 {2102 "typeIdentifier": "t_uint256",2103 "typeString": "uint256"2104 }2105 ],2106 "expression": {2107 "id": 1849,2108 "name": "nftCollection",2109 "nodeType": "Identifier",2110 "overloadedDeclarations": [],2111 "referencedDeclaration": 1828,2112 "src": "3512:13:5",2113 "typeDescriptions": {2114 "typeIdentifier": "t_contract$_UniqueNFT_$893",2115 "typeString": "contract UniqueNFT"2116 }2117 },2118 "id": 1851,2119 "isConstant": false,2120 "isLValue": false,2121 "isPure": false,2122 "lValueRequested": false,2123 "memberLocation": "3526:17:5",2124 "memberName": "transferFromCross",2125 "nodeType": "MemberAccess",2126 "referencedDeclaration": 643,2127 "src": "3512:31:5",2128 "typeDescriptions": {2129 "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$700_memory_ptr_$_t_struct$_Tuple8_$700_memory_ptr_$_t_uint256_$returns$__$",2130 "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"2131 }2132 },2133 "id": 1867,2134 "isConstant": false,2135 "isLValue": false,2136 "isPure": false,2137 "kind": "functionCall",2138 "lValueRequested": false,2139 "nameLocations": [],2140 "names": [],2141 "nodeType": "FunctionCall",2142 "src": "3512:145:5",2143 "tryCall": false,2144 "typeDescriptions": {2145 "typeIdentifier": "t_tuple$__$",2146 "typeString": "tuple()"2147 }2148 },2149 "id": 1868,2150 "nodeType": "ExpressionStatement",2151 "src": "3512:145:5"2152 }2153 ]2154 }2155 },2156 "id": 1876,2157 "nodeType": "IfStatement",2158 "src": "2945:792:5",2159 "trueBody": {2160 "id": 1822,2161 "nodeType": "Block",2162 "src": "2995:312:5",2163 "statements": [2164 {2165 "assignments": [2166 17812167 ],2168 "declarations": [2169 {2170 "constant": false,2171 "id": 1781,2172 "mutability": "mutable",2173 "name": "rftCollection",2174 "nameLocation": "3017:13:5",2175 "nodeType": "VariableDeclaration",2176 "scope": 1822,2177 "src": "3000:30:5",2178 "stateVariable": false,2179 "storageLocation": "default",2180 "typeDescriptions": {2181 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2182 "typeString": "contract UniqueRefungible"2183 },2184 "typeName": {2185 "id": 1780,2186 "nodeType": "UserDefinedTypeName",2187 "pathNode": {2188 "id": 1779,2189 "name": "UniqueRefungible",2190 "nameLocations": [2191 "3000:16:5"2192 ],2193 "nodeType": "IdentifierPath",2194 "referencedDeclaration": 1508,2195 "src": "3000:16:5"2196 },2197 "referencedDeclaration": 1508,2198 "src": "3000:16:5",2199 "typeDescriptions": {2200 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2201 "typeString": "contract UniqueRefungible"2202 }2203 },2204 "visibility": "internal"2205 }2206 ],2207 "id": 1785,2208 "initialValue": {2209 "arguments": [2210 {2211 "id": 1783,2212 "name": "_collection",2213 "nodeType": "Identifier",2214 "overloadedDeclarations": [],2215 "referencedDeclaration": 1747,2216 "src": "3050:11:5",2217 "typeDescriptions": {2218 "typeIdentifier": "t_address",2219 "typeString": "address"2220 }2221 }2222 ],2223 "expression": {2224 "argumentTypes": [2225 {2226 "typeIdentifier": "t_address",2227 "typeString": "address"2228 }2229 ],2230 "id": 1782,2231 "name": "UniqueRefungible",2232 "nodeType": "Identifier",2233 "overloadedDeclarations": [],2234 "referencedDeclaration": 1508,2235 "src": "3033:16:5",2236 "typeDescriptions": {2237 "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1508_$",2238 "typeString": "type(contract UniqueRefungible)"2239 }2240 },2241 "id": 1784,2242 "isConstant": false,2243 "isLValue": false,2244 "isPure": false,2245 "kind": "typeConversion",2246 "lValueRequested": false,2247 "nameLocations": [],2248 "names": [],2249 "nodeType": "FunctionCall",2250 "src": "3033:29:5",2251 "tryCall": false,2252 "typeDescriptions": {2253 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2254 "typeString": "contract UniqueRefungible"2255 }2256 },2257 "nodeType": "VariableDeclarationStatement",2258 "src": "3000:62:5"2259 },2260 {2261 "expression": {2262 "id": 1790,2263 "isConstant": false,2264 "isLValue": false,2265 "isPure": false,2266 "lValueRequested": false,2267 "leftHandSide": {2268 "id": 1786,2269 "name": "tokenId",2270 "nodeType": "Identifier",2271 "overloadedDeclarations": [],2272 "referencedDeclaration": 1774,2273 "src": "3067:7:5",2274 "typeDescriptions": {2275 "typeIdentifier": "t_uint256",2276 "typeString": "uint256"2277 }2278 },2279 "nodeType": "Assignment",2280 "operator": "=",2281 "rightHandSide": {2282 "arguments": [],2283 "expression": {2284 "argumentTypes": [],2285 "expression": {2286 "id": 1787,2287 "name": "rftCollection",2288 "nodeType": "Identifier",2289 "overloadedDeclarations": [],2290 "referencedDeclaration": 1781,2291 "src": "3077:13:5",2292 "typeDescriptions": {2293 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2294 "typeString": "contract UniqueRefungible"2295 }2296 },2297 "id": 1788,2298 "isConstant": false,2299 "isLValue": false,2300 "isPure": false,2301 "lValueRequested": false,2302 "memberLocation": "3091:11:5",2303 "memberName": "nextTokenId",2304 "nodeType": "MemberAccess",2305 "referencedDeclaration": 1273,2306 "src": "3077:25:5",2307 "typeDescriptions": {2308 "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",2309 "typeString": "function () view external returns (uint256)"2310 }2311 },2312 "id": 1789,2313 "isConstant": false,2314 "isLValue": false,2315 "isPure": false,2316 "kind": "functionCall",2317 "lValueRequested": false,2318 "nameLocations": [],2319 "names": [],2320 "nodeType": "FunctionCall",2321 "src": "3077:27:5",2322 "tryCall": false,2323 "typeDescriptions": {2324 "typeIdentifier": "t_uint256",2325 "typeString": "uint256"2326 }2327 },2328 "src": "3067:37:5",2329 "typeDescriptions": {2330 "typeIdentifier": "t_uint256",2331 "typeString": "uint256"2332 }2333 },2334 "id": 1791,2335 "nodeType": "ExpressionStatement",2336 "src": "3067:37:5"2337 },2338 {2339 "expression": {2340 "arguments": [2341 {2342 "arguments": [2343 {2344 "id": 1797,2345 "name": "this",2346 "nodeType": "Identifier",2347 "overloadedDeclarations": [],2348 "referencedDeclaration": 4294967268,2349 "src": "3136:4:5",2350 "typeDescriptions": {2351 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",2352 "typeString": "contract EvmToSubstrate"2353 }2354 }2355 ],2356 "expression": {2357 "argumentTypes": [2358 {2359 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",2360 "typeString": "contract EvmToSubstrate"2361 }2362 ],2363 "id": 1796,2364 "isConstant": false,2365 "isLValue": false,2366 "isPure": true,2367 "lValueRequested": false,2368 "nodeType": "ElementaryTypeNameExpression",2369 "src": "3128:7:5",2370 "typeDescriptions": {2371 "typeIdentifier": "t_type$_t_address_$",2372 "typeString": "type(address)"2373 },2374 "typeName": {2375 "id": 1795,2376 "name": "address",2377 "nodeType": "ElementaryTypeName",2378 "src": "3128:7:5",2379 "typeDescriptions": {}2380 }2381 },2382 "id": 1798,2383 "isConstant": false,2384 "isLValue": false,2385 "isPure": false,2386 "kind": "typeConversion",2387 "lValueRequested": false,2388 "nameLocations": [],2389 "names": [],2390 "nodeType": "FunctionCall",2391 "src": "3128:13:5",2392 "tryCall": false,2393 "typeDescriptions": {2394 "typeIdentifier": "t_address",2395 "typeString": "address"2396 }2397 },2398 {2399 "id": 1799,2400 "name": "tokenId",2401 "nodeType": "Identifier",2402 "overloadedDeclarations": [],2403 "referencedDeclaration": 1774,2404 "src": "3143:7:5",2405 "typeDescriptions": {2406 "typeIdentifier": "t_uint256",2407 "typeString": "uint256"2408 }2409 }2410 ],2411 "expression": {2412 "argumentTypes": [2413 {2414 "typeIdentifier": "t_address",2415 "typeString": "address"2416 },2417 {2418 "typeIdentifier": "t_uint256",2419 "typeString": "uint256"2420 }2421 ],2422 "expression": {2423 "id": 1792,2424 "name": "rftCollection",2425 "nodeType": "Identifier",2426 "overloadedDeclarations": [],2427 "referencedDeclaration": 1781,2428 "src": "3109:13:5",2429 "typeDescriptions": {2430 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2431 "typeString": "contract UniqueRefungible"2432 }2433 },2434 "id": 1794,2435 "isConstant": false,2436 "isLValue": false,2437 "isPure": false,2438 "lValueRequested": false,2439 "memberLocation": "3123:4:5",2440 "memberName": "mint",2441 "nodeType": "MemberAccess",2442 "referencedDeclaration": 1206,2443 "src": "3109:18:5",2444 "typeDescriptions": {2445 "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",2446 "typeString": "function (address,uint256) external returns (bool)"2447 }2448 },2449 "id": 1800,2450 "isConstant": false,2451 "isLValue": false,2452 "isPure": false,2453 "kind": "functionCall",2454 "lValueRequested": false,2455 "nameLocations": [],2456 "names": [],2457 "nodeType": "FunctionCall",2458 "src": "3109:42:5",2459 "tryCall": false,2460 "typeDescriptions": {2461 "typeIdentifier": "t_bool",2462 "typeString": "bool"2463 }2464 },2465 "id": 1801,2466 "nodeType": "ExpressionStatement",2467 "src": "3109:42:5"2468 },2469 {2470 "expression": {2471 "arguments": [2472 {2473 "arguments": [2474 {2475 "arguments": [2476 {2477 "id": 1808,2478 "name": "this",2479 "nodeType": "Identifier",2480 "overloadedDeclarations": [],2481 "referencedDeclaration": 4294967268,2482 "src": "3220:4:5",2483 "typeDescriptions": {2484 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",2485 "typeString": "contract EvmToSubstrate"2486 }2487 }2488 ],2489 "expression": {2490 "argumentTypes": [2491 {2492 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",2493 "typeString": "contract EvmToSubstrate"2494 }2495 ],2496 "id": 1807,2497 "isConstant": false,2498 "isLValue": false,2499 "isPure": true,2500 "lValueRequested": false,2501 "nodeType": "ElementaryTypeNameExpression",2502 "src": "3212:7:5",2503 "typeDescriptions": {2504 "typeIdentifier": "t_type$_t_address_$",2505 "typeString": "type(address)"2506 },2507 "typeName": {2508 "id": 1806,2509 "name": "address",2510 "nodeType": "ElementaryTypeName",2511 "src": "3212:7:5",2512 "typeDescriptions": {}2513 }2514 },2515 "id": 1809,2516 "isConstant": false,2517 "isLValue": false,2518 "isPure": false,2519 "kind": "typeConversion",2520 "lValueRequested": false,2521 "nameLocations": [],2522 "names": [],2523 "nodeType": "FunctionCall",2524 "src": "3212:13:5",2525 "tryCall": false,2526 "typeDescriptions": {2527 "typeIdentifier": "t_address",2528 "typeString": "address"2529 }2530 },2531 {2532 "hexValue": "30",2533 "id": 1810,2534 "isConstant": false,2535 "isLValue": false,2536 "isPure": true,2537 "kind": "number",2538 "lValueRequested": false,2539 "nodeType": "Literal",2540 "src": "3227:1:5",2541 "typeDescriptions": {2542 "typeIdentifier": "t_rational_0_by_1",2543 "typeString": "int_const 0"2544 },2545 "value": "0"2546 }2547 ],2548 "expression": {2549 "argumentTypes": [2550 {2551 "typeIdentifier": "t_address",2552 "typeString": "address"2553 },2554 {2555 "typeIdentifier": "t_rational_0_by_1",2556 "typeString": "int_const 0"2557 }2558 ],2559 "id": 1805,2560 "name": "RftCrossAccountId",2561 "nodeType": "Identifier",2562 "overloadedDeclarations": [],2563 "referencedDeclaration": 1315,2564 "src": "3194:17:5",2565 "typeDescriptions": {2566 "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",2567 "typeString": "type(struct Tuple8 storage pointer)"2568 }2569 },2570 "id": 1811,2571 "isConstant": false,2572 "isLValue": false,2573 "isPure": false,2574 "kind": "structConstructorCall",2575 "lValueRequested": false,2576 "nameLocations": [],2577 "names": [],2578 "nodeType": "FunctionCall",2579 "src": "3194:35:5",2580 "tryCall": false,2581 "typeDescriptions": {2582 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",2583 "typeString": "struct Tuple8 memory"2584 }2585 },2586 {2587 "arguments": [2588 {2589 "arguments": [2590 {2591 "hexValue": "30",2592 "id": 1815,2593 "isConstant": false,2594 "isLValue": false,2595 "isPure": true,2596 "kind": "number",2597 "lValueRequested": false,2598 "nodeType": "Literal",2599 "src": "3261:1:5",2600 "typeDescriptions": {2601 "typeIdentifier": "t_rational_0_by_1",2602 "typeString": "int_const 0"2603 },2604 "value": "0"2605 }2606 ],2607 "expression": {2608 "argumentTypes": [2609 {2610 "typeIdentifier": "t_rational_0_by_1",2611 "typeString": "int_const 0"2612 }2613 ],2614 "id": 1814,2615 "isConstant": false,2616 "isLValue": false,2617 "isPure": true,2618 "lValueRequested": false,2619 "nodeType": "ElementaryTypeNameExpression",2620 "src": "3253:7:5",2621 "typeDescriptions": {2622 "typeIdentifier": "t_type$_t_address_$",2623 "typeString": "type(address)"2624 },2625 "typeName": {2626 "id": 1813,2627 "name": "address",2628 "nodeType": "ElementaryTypeName",2629 "src": "3253:7:5",2630 "typeDescriptions": {}2631 }2632 },2633 "id": 1816,2634 "isConstant": false,2635 "isLValue": false,2636 "isPure": true,2637 "kind": "typeConversion",2638 "lValueRequested": false,2639 "nameLocations": [],2640 "names": [],2641 "nodeType": "FunctionCall",2642 "src": "3253:10:5",2643 "tryCall": false,2644 "typeDescriptions": {2645 "typeIdentifier": "t_address",2646 "typeString": "address"2647 }2648 },2649 {2650 "id": 1817,2651 "name": "_substrateReceiver",2652 "nodeType": "Identifier",2653 "overloadedDeclarations": [],2654 "referencedDeclaration": 1749,2655 "src": "3265:18:5",2656 "typeDescriptions": {2657 "typeIdentifier": "t_uint256",2658 "typeString": "uint256"2659 }2660 }2661 ],2662 "expression": {2663 "argumentTypes": [2664 {2665 "typeIdentifier": "t_address",2666 "typeString": "address"2667 },2668 {2669 "typeIdentifier": "t_uint256",2670 "typeString": "uint256"2671 }2672 ],2673 "id": 1812,2674 "name": "RftCrossAccountId",2675 "nodeType": "Identifier",2676 "overloadedDeclarations": [],2677 "referencedDeclaration": 1315,2678 "src": "3235:17:5",2679 "typeDescriptions": {2680 "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",2681 "typeString": "type(struct Tuple8 storage pointer)"2682 }2683 },2684 "id": 1818,2685 "isConstant": false,2686 "isLValue": false,2687 "isPure": false,2688 "kind": "structConstructorCall",2689 "lValueRequested": false,2690 "nameLocations": [],2691 "names": [],2692 "nodeType": "FunctionCall",2693 "src": "3235:49:5",2694 "tryCall": false,2695 "typeDescriptions": {2696 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",2697 "typeString": "struct Tuple8 memory"2698 }2699 },2700 {2701 "id": 1819,2702 "name": "tokenId",2703 "nodeType": "Identifier",2704 "overloadedDeclarations": [],2705 "referencedDeclaration": 1774,2706 "src": "3290:7:5",2707 "typeDescriptions": {2708 "typeIdentifier": "t_uint256",2709 "typeString": "uint256"2710 }2711 }2712 ],2713 "expression": {2714 "argumentTypes": [2715 {2716 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",2717 "typeString": "struct Tuple8 memory"2718 },2719 {2720 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",2721 "typeString": "struct Tuple8 memory"2722 },2723 {2724 "typeIdentifier": "t_uint256",2725 "typeString": "uint256"2726 }2727 ],2728 "expression": {2729 "id": 1802,2730 "name": "rftCollection",2731 "nodeType": "Identifier",2732 "overloadedDeclarations": [],2733 "referencedDeclaration": 1781,2734 "src": "3157:13:5",2735 "typeDescriptions": {2736 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",2737 "typeString": "contract UniqueRefungible"2738 }2739 },2740 "id": 1804,2741 "isConstant": false,2742 "isLValue": false,2743 "isPure": false,2744 "lValueRequested": false,2745 "memberLocation": "3171:17:5",2746 "memberName": "transferFromCross",2747 "nodeType": "MemberAccess",2748 "referencedDeclaration": 1250,2749 "src": "3157:31:5",2750 "typeDescriptions": {2751 "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$1315_memory_ptr_$_t_struct$_Tuple8_$1315_memory_ptr_$_t_uint256_$returns$__$",2752 "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"2753 }2754 },2755 "id": 1820,2756 "isConstant": false,2757 "isLValue": false,2758 "isPure": false,2759 "kind": "functionCall",2760 "lValueRequested": false,2761 "nameLocations": [],2762 "names": [],2763 "nodeType": "FunctionCall",2764 "src": "3157:145:5",2765 "tryCall": false,2766 "typeDescriptions": {2767 "typeIdentifier": "t_tuple$__$",2768 "typeString": "tuple()"2769 }2770 },2771 "id": 1821,2772 "nodeType": "ExpressionStatement",2773 "src": "3157:145:5"2774 }2775 ]2776 }2777 },2778 {2779 "eventCall": {2780 "arguments": [2781 {2782 "arguments": [2783 {2784 "hexValue": "30",2785 "id": 1880,2786 "isConstant": false,2787 "isLValue": false,2788 "isPure": true,2789 "kind": "number",2790 "lValueRequested": false,2791 "nodeType": "Literal",2792 "src": "3979:1:5",2793 "typeDescriptions": {2794 "typeIdentifier": "t_rational_0_by_1",2795 "typeString": "int_const 0"2796 },2797 "value": "0"2798 }2799 ],2800 "expression": {2801 "argumentTypes": [2802 {2803 "typeIdentifier": "t_rational_0_by_1",2804 "typeString": "int_const 0"2805 }2806 ],2807 "id": 1879,2808 "isConstant": false,2809 "isLValue": false,2810 "isPure": true,2811 "lValueRequested": false,2812 "nodeType": "ElementaryTypeNameExpression",2813 "src": "3971:7:5",2814 "typeDescriptions": {2815 "typeIdentifier": "t_type$_t_address_$",2816 "typeString": "type(address)"2817 },2818 "typeName": {2819 "id": 1878,2820 "name": "address",2821 "nodeType": "ElementaryTypeName",2822 "src": "3971:7:5",2823 "typeDescriptions": {}2824 }2825 },2826 "id": 1881,2827 "isConstant": false,2828 "isLValue": false,2829 "isPure": true,2830 "kind": "typeConversion",2831 "lValueRequested": false,2832 "nameLocations": [],2833 "names": [],2834 "nodeType": "FunctionCall",2835 "src": "3971:10:5",2836 "tryCall": false,2837 "typeDescriptions": {2838 "typeIdentifier": "t_address",2839 "typeString": "address"2840 }2841 },2842 {2843 "id": 1882,2844 "name": "_substrateReceiver",2845 "nodeType": "Identifier",2846 "overloadedDeclarations": [],2847 "referencedDeclaration": 1749,2848 "src": "3983:18:5",2849 "typeDescriptions": {2850 "typeIdentifier": "t_uint256",2851 "typeString": "uint256"2852 }2853 },2854 {2855 "id": 1883,2856 "name": "_collection",2857 "nodeType": "Identifier",2858 "overloadedDeclarations": [],2859 "referencedDeclaration": 1747,2860 "src": "4003:11:5",2861 "typeDescriptions": {2862 "typeIdentifier": "t_address",2863 "typeString": "address"2864 }2865 },2866 {2867 "id": 1884,2868 "name": "tokenId",2869 "nodeType": "Identifier",2870 "overloadedDeclarations": [],2871 "referencedDeclaration": 1774,2872 "src": "4016:7:5",2873 "typeDescriptions": {2874 "typeIdentifier": "t_uint256",2875 "typeString": "uint256"2876 }2877 }2878 ],2879 "expression": {2880 "argumentTypes": [2881 {2882 "typeIdentifier": "t_address",2883 "typeString": "address"2884 },2885 {2886 "typeIdentifier": "t_uint256",2887 "typeString": "uint256"2888 },2889 {2890 "typeIdentifier": "t_address",2891 "typeString": "address"2892 },2893 {2894 "typeIdentifier": "t_uint256",2895 "typeString": "uint256"2896 }2897 ],2898 "id": 1877,2899 "name": "MintToSub",2900 "nodeType": "Identifier",2901 "overloadedDeclarations": [],2902 "referencedDeclaration": 1744,2903 "src": "3961:9:5",2904 "typeDescriptions": {2905 "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",2906 "typeString": "function (address,uint256,address,uint256)"2907 }2908 },2909 "id": 1885,2910 "isConstant": false,2911 "isLValue": false,2912 "isPure": false,2913 "kind": "functionCall",2914 "lValueRequested": false,2915 "nameLocations": [],2916 "names": [],2917 "nodeType": "FunctionCall",2918 "src": "3961:63:5",2919 "tryCall": false,2920 "typeDescriptions": {2921 "typeIdentifier": "t_tuple$__$",2922 "typeString": "tuple()"2923 }2924 },2925 "id": 1886,2926 "nodeType": "EmitStatement",2927 "src": "3956:68:5"2928 }2929 ]2930 },2931 "documentation": {2932 "id": 1745,2933 "nodeType": "StructuredDocumentation",2934 "src": "2033:487:5",2935 "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."2936 },2937 "functionSelector": "7a8d9786",2938 "id": 1888,2939 "implemented": true,2940 "kind": "function",2941 "modifiers": [2942 {2943 "arguments": [2944 {2945 "id": 1752,2946 "name": "_collection",2947 "nodeType": "Identifier",2948 "overloadedDeclarations": [],2949 "referencedDeclaration": 1747,2950 "src": "2623:11:5",2951 "typeDescriptions": {2952 "typeIdentifier": "t_address",2953 "typeString": "address"2954 }2955 }2956 ],2957 "id": 1753,2958 "kind": "modifierInvocation",2959 "modifierName": {2960 "id": 1751,2961 "name": "checkRestrictions",2962 "nameLocations": [2963 "2605:17:5"2964 ],2965 "nodeType": "IdentifierPath",2966 "referencedDeclaration": 1733,2967 "src": "2605:17:5"2968 },2969 "nodeType": "ModifierInvocation",2970 "src": "2605:30:5"2971 }2972 ],2973 "name": "mintToSubstrate",2974 "nameLocation": "2531:15:5",2975 "nodeType": "FunctionDefinition",2976 "parameters": {2977 "id": 1750,2978 "nodeType": "ParameterList",2979 "parameters": [2980 {2981 "constant": false,2982 "id": 1747,2983 "mutability": "mutable",2984 "name": "_collection",2985 "nameLocation": "2555:11:5",2986 "nodeType": "VariableDeclaration",2987 "scope": 1888,2988 "src": "2547:19:5",2989 "stateVariable": false,2990 "storageLocation": "default",2991 "typeDescriptions": {2992 "typeIdentifier": "t_address",2993 "typeString": "address"2994 },2995 "typeName": {2996 "id": 1746,2997 "name": "address",2998 "nodeType": "ElementaryTypeName",2999 "src": "2547:7:5",3000 "stateMutability": "nonpayable",3001 "typeDescriptions": {3002 "typeIdentifier": "t_address",3003 "typeString": "address"3004 }3005 },3006 "visibility": "internal"3007 },3008 {3009 "constant": false,3010 "id": 1749,3011 "mutability": "mutable",3012 "name": "_substrateReceiver",3013 "nameLocation": "2576:18:5",3014 "nodeType": "VariableDeclaration",3015 "scope": 1888,3016 "src": "2568:26:5",3017 "stateVariable": false,3018 "storageLocation": "default",3019 "typeDescriptions": {3020 "typeIdentifier": "t_uint256",3021 "typeString": "uint256"3022 },3023 "typeName": {3024 "id": 1748,3025 "name": "uint256",3026 "nodeType": "ElementaryTypeName",3027 "src": "2568:7:5",3028 "typeDescriptions": {3029 "typeIdentifier": "t_uint256",3030 "typeString": "uint256"3031 }3032 },3033 "visibility": "internal"3034 }3035 ],3036 "src": "2546:49:5"3037 },3038 "returnParameters": {3039 "id": 1754,3040 "nodeType": "ParameterList",3041 "parameters": [],3042 "src": "2636:0:5"3043 },3044 "scope": 2100,3045 "src": "2522:1506:5",3046 "stateMutability": "nonpayable",3047 "virtual": false,3048 "visibility": "external"3049 },3050 {3051 "body": {3052 "id": 2098,3053 "nodeType": "Block",3054 "src": "4198:1608:5",3055 "statements": [3056 {3057 "assignments": [3058 19033059 ],3060 "declarations": [3061 {3062 "constant": false,3063 "id": 1903,3064 "mutability": "mutable",3065 "name": "propertiesLength",3066 "nameLocation": "4359:16:5",3067 "nodeType": "VariableDeclaration",3068 "scope": 2098,3069 "src": "4351:24:5",3070 "stateVariable": false,3071 "storageLocation": "default",3072 "typeDescriptions": {3073 "typeIdentifier": "t_uint256",3074 "typeString": "uint256"3075 },3076 "typeName": {3077 "id": 1902,3078 "name": "uint256",3079 "nodeType": "ElementaryTypeName",3080 "src": "4351:7:5",3081 "typeDescriptions": {3082 "typeIdentifier": "t_uint256",3083 "typeString": "uint256"3084 }3085 },3086 "visibility": "internal"3087 }3088 ],3089 "id": 1906,3090 "initialValue": {3091 "expression": {3092 "id": 1904,3093 "name": "properties",3094 "nodeType": "Identifier",3095 "overloadedDeclarations": [],3096 "referencedDeclaration": 1896,3097 "src": "4378:10:5",3098 "typeDescriptions": {3099 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",3100 "typeString": "struct Property calldata[] calldata"3101 }3102 },3103 "id": 1905,3104 "isConstant": false,3105 "isLValue": false,3106 "isPure": false,3107 "lValueRequested": false,3108 "memberLocation": "4389:6:5",3109 "memberName": "length",3110 "nodeType": "MemberAccess",3111 "src": "4378:17:5",3112 "typeDescriptions": {3113 "typeIdentifier": "t_uint256",3114 "typeString": "uint256"3115 }3116 },3117 "nodeType": "VariableDeclarationStatement",3118 "src": "4351:44:5"3119 },3120 {3121 "expression": {3122 "arguments": [3123 {3124 "commonType": {3125 "typeIdentifier": "t_uint256",3126 "typeString": "uint256"3127 },3128 "id": 1910,3129 "isConstant": false,3130 "isLValue": false,3131 "isPure": false,3132 "lValueRequested": false,3133 "leftExpression": {3134 "id": 1908,3135 "name": "propertiesLength",3136 "nodeType": "Identifier",3137 "overloadedDeclarations": [],3138 "referencedDeclaration": 1903,3139 "src": "4407:16:5",3140 "typeDescriptions": {3141 "typeIdentifier": "t_uint256",3142 "typeString": "uint256"3143 }3144 },3145 "nodeType": "BinaryOperation",3146 "operator": ">",3147 "rightExpression": {3148 "hexValue": "30",3149 "id": 1909,3150 "isConstant": false,3151 "isLValue": false,3152 "isPure": true,3153 "kind": "number",3154 "lValueRequested": false,3155 "nodeType": "Literal",3156 "src": "4426:1:5",3157 "typeDescriptions": {3158 "typeIdentifier": "t_rational_0_by_1",3159 "typeString": "int_const 0"3160 },3161 "value": "0"3162 },3163 "src": "4407:20:5",3164 "typeDescriptions": {3165 "typeIdentifier": "t_bool",3166 "typeString": "bool"3167 }3168 },3169 {3170 "hexValue": "50726f70657269657320697320656d707479",3171 "id": 1911,3172 "isConstant": false,3173 "isLValue": false,3174 "isPure": true,3175 "kind": "string",3176 "lValueRequested": false,3177 "nodeType": "Literal",3178 "src": "4429:20:5",3179 "typeDescriptions": {3180 "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",3181 "typeString": "literal_string \"Properies is empty\""3182 },3183 "value": "Properies is empty"3184 }3185 ],3186 "expression": {3187 "argumentTypes": [3188 {3189 "typeIdentifier": "t_bool",3190 "typeString": "bool"3191 },3192 {3193 "typeIdentifier": "t_stringliteral_3c3e0098388726dfb54bb3f478f469c7fc9acc2aa2937bb94957726165b135a1",3194 "typeString": "literal_string \"Properies is empty\""3195 }3196 ],3197 "id": 1907,3198 "name": "require",3199 "nodeType": "Identifier",3200 "overloadedDeclarations": [3201 4294967278,3202 42949672783203 ],3204 "referencedDeclaration": 4294967278,3205 "src": "4399:7:5",3206 "typeDescriptions": {3207 "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",3208 "typeString": "function (bool,string memory) pure"3209 }3210 },3211 "id": 1912,3212 "isConstant": false,3213 "isLValue": false,3214 "isPure": false,3215 "kind": "functionCall",3216 "lValueRequested": false,3217 "nameLocations": [],3218 "names": [],3219 "nodeType": "FunctionCall",3220 "src": "4399:51:5",3221 "tryCall": false,3222 "typeDescriptions": {3223 "typeIdentifier": "t_tuple$__$",3224 "typeString": "tuple()"3225 }3226 },3227 "id": 1913,3228 "nodeType": "ExpressionStatement",3229 "src": "4399:51:5"3230 },3231 {3232 "assignments": [3233 19163234 ],3235 "declarations": [3236 {3237 "constant": false,3238 "id": 1916,3239 "mutability": "mutable",3240 "name": "commonContract",3241 "nameLocation": "4466:14:5",3242 "nodeType": "VariableDeclaration",3243 "scope": 2098,3244 "src": "4455:25:5",3245 "stateVariable": false,3246 "storageLocation": "default",3247 "typeDescriptions": {3248 "typeIdentifier": "t_contract$_Collection_$1167",3249 "typeString": "contract Collection"3250 },3251 "typeName": {3252 "id": 1915,3253 "nodeType": "UserDefinedTypeName",3254 "pathNode": {3255 "id": 1914,3256 "name": "Collection",3257 "nameLocations": [3258 "4455:10:5"3259 ],3260 "nodeType": "IdentifierPath",3261 "referencedDeclaration": 1167,3262 "src": "4455:10:5"3263 },3264 "referencedDeclaration": 1167,3265 "src": "4455:10:5",3266 "typeDescriptions": {3267 "typeIdentifier": "t_contract$_Collection_$1167",3268 "typeString": "contract Collection"3269 }3270 },3271 "visibility": "internal"3272 }3273 ],3274 "id": 1920,3275 "initialValue": {3276 "arguments": [3277 {3278 "id": 1918,3279 "name": "_collection",3280 "nodeType": "Identifier",3281 "overloadedDeclarations": [],3282 "referencedDeclaration": 1890,3283 "src": "4494:11:5",3284 "typeDescriptions": {3285 "typeIdentifier": "t_address",3286 "typeString": "address"3287 }3288 }3289 ],3290 "expression": {3291 "argumentTypes": [3292 {3293 "typeIdentifier": "t_address",3294 "typeString": "address"3295 }3296 ],3297 "id": 1917,3298 "name": "Collection",3299 "nodeType": "Identifier",3300 "overloadedDeclarations": [],3301 "referencedDeclaration": 1167,3302 "src": "4483:10:5",3303 "typeDescriptions": {3304 "typeIdentifier": "t_type$_t_contract$_Collection_$1167_$",3305 "typeString": "type(contract Collection)"3306 }3307 },3308 "id": 1919,3309 "isConstant": false,3310 "isLValue": false,3311 "isPure": false,3312 "kind": "typeConversion",3313 "lValueRequested": false,3314 "nameLocations": [],3315 "names": [],3316 "nodeType": "FunctionCall",3317 "src": "4483:23:5",3318 "tryCall": false,3319 "typeDescriptions": {3320 "typeIdentifier": "t_contract$_Collection_$1167",3321 "typeString": "contract Collection"3322 }3323 },3324 "nodeType": "VariableDeclarationStatement",3325 "src": "4455:51:5"3326 },3327 {3328 "assignments": [3329 19223330 ],3331 "declarations": [3332 {3333 "constant": false,3334 "id": 1922,3335 "mutability": "mutable",3336 "name": "collectionType",3337 "nameLocation": "4518:14:5",3338 "nodeType": "VariableDeclaration",3339 "scope": 2098,3340 "src": "4510:22:5",3341 "stateVariable": false,3342 "storageLocation": "default",3343 "typeDescriptions": {3344 "typeIdentifier": "t_bytes32",3345 "typeString": "bytes32"3346 },3347 "typeName": {3348 "id": 1921,3349 "name": "bytes32",3350 "nodeType": "ElementaryTypeName",3351 "src": "4510:7:5",3352 "typeDescriptions": {3353 "typeIdentifier": "t_bytes32",3354 "typeString": "bytes32"3355 }3356 },3357 "visibility": "internal"3358 }3359 ],3360 "id": 1931,3361 "initialValue": {3362 "arguments": [3363 {3364 "arguments": [3365 {3366 "arguments": [],3367 "expression": {3368 "argumentTypes": [],3369 "expression": {3370 "id": 1926,3371 "name": "commonContract",3372 "nodeType": "Identifier",3373 "overloadedDeclarations": [],3374 "referencedDeclaration": 1916,3375 "src": "4551:14:5",3376 "typeDescriptions": {3377 "typeIdentifier": "t_contract$_Collection_$1167",3378 "typeString": "contract Collection"3379 }3380 },3381 "id": 1927,3382 "isConstant": false,3383 "isLValue": false,3384 "isPure": false,3385 "lValueRequested": false,3386 "memberLocation": "4566:20:5",3387 "memberName": "uniqueCollectionType",3388 "nodeType": "MemberAccess",3389 "referencedDeclaration": 1146,3390 "src": "4551:35:5",3391 "typeDescriptions": {3392 "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$",3393 "typeString": "function () view external returns (string memory)"3394 }3395 },3396 "id": 1928,3397 "isConstant": false,3398 "isLValue": false,3399 "isPure": false,3400 "kind": "functionCall",3401 "lValueRequested": false,3402 "nameLocations": [],3403 "names": [],3404 "nodeType": "FunctionCall",3405 "src": "4551:37:5",3406 "tryCall": false,3407 "typeDescriptions": {3408 "typeIdentifier": "t_string_memory_ptr",3409 "typeString": "string memory"3410 }3411 }3412 ],3413 "expression": {3414 "argumentTypes": [3415 {3416 "typeIdentifier": "t_string_memory_ptr",3417 "typeString": "string memory"3418 }3419 ],3420 "id": 1925,3421 "isConstant": false,3422 "isLValue": false,3423 "isPure": true,3424 "lValueRequested": false,3425 "nodeType": "ElementaryTypeNameExpression",3426 "src": "4545:5:5",3427 "typeDescriptions": {3428 "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",3429 "typeString": "type(bytes storage pointer)"3430 },3431 "typeName": {3432 "id": 1924,3433 "name": "bytes",3434 "nodeType": "ElementaryTypeName",3435 "src": "4545:5:5",3436 "typeDescriptions": {}3437 }3438 },3439 "id": 1929,3440 "isConstant": false,3441 "isLValue": false,3442 "isPure": false,3443 "kind": "typeConversion",3444 "lValueRequested": false,3445 "nameLocations": [],3446 "names": [],3447 "nodeType": "FunctionCall",3448 "src": "4545:44:5",3449 "tryCall": false,3450 "typeDescriptions": {3451 "typeIdentifier": "t_bytes_memory_ptr",3452 "typeString": "bytes memory"3453 }3454 }3455 ],3456 "expression": {3457 "argumentTypes": [3458 {3459 "typeIdentifier": "t_bytes_memory_ptr",3460 "typeString": "bytes memory"3461 }3462 ],3463 "id": 1923,3464 "name": "keccak256",3465 "nodeType": "Identifier",3466 "overloadedDeclarations": [],3467 "referencedDeclaration": 4294967288,3468 "src": "4535:9:5",3469 "typeDescriptions": {3470 "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",3471 "typeString": "function (bytes memory) pure returns (bytes32)"3472 }3473 },3474 "id": 1930,3475 "isConstant": false,3476 "isLValue": false,3477 "isPure": false,3478 "kind": "functionCall",3479 "lValueRequested": false,3480 "nameLocations": [],3481 "names": [],3482 "nodeType": "FunctionCall",3483 "src": "4535:55:5",3484 "tryCall": false,3485 "typeDescriptions": {3486 "typeIdentifier": "t_bytes32",3487 "typeString": "bytes32"3488 }3489 },3490 "nodeType": "VariableDeclarationStatement",3491 "src": "4510:80:5"3492 },3493 {3494 "assignments": [3495 19333496 ],3497 "declarations": [3498 {3499 "constant": false,3500 "id": 1933,3501 "mutability": "mutable",3502 "name": "tokenId",3503 "nameLocation": "4602:7:5",3504 "nodeType": "VariableDeclaration",3505 "scope": 2098,3506 "src": "4594:15:5",3507 "stateVariable": false,3508 "storageLocation": "default",3509 "typeDescriptions": {3510 "typeIdentifier": "t_uint256",3511 "typeString": "uint256"3512 },3513 "typeName": {3514 "id": 1932,3515 "name": "uint256",3516 "nodeType": "ElementaryTypeName",3517 "src": "4594:7:5",3518 "typeDescriptions": {3519 "typeIdentifier": "t_uint256",3520 "typeString": "uint256"3521 }3522 },3523 "visibility": "internal"3524 }3525 ],3526 "id": 1934,3527 "nodeType": "VariableDeclarationStatement",3528 "src": "4594:15:5"3529 },3530 {3531 "condition": {3532 "commonType": {3533 "typeIdentifier": "t_bytes32",3534 "typeString": "bytes32"3535 },3536 "id": 1937,3537 "isConstant": false,3538 "isLValue": false,3539 "isPure": false,3540 "lValueRequested": false,3541 "leftExpression": {3542 "id": 1935,3543 "name": "collectionType",3544 "nodeType": "Identifier",3545 "overloadedDeclarations": [],3546 "referencedDeclaration": 1922,3547 "src": "4618:14:5",3548 "typeDescriptions": {3549 "typeIdentifier": "t_bytes32",3550 "typeString": "bytes32"3551 }3552 },3553 "nodeType": "BinaryOperation",3554 "operator": "==",3555 "rightExpression": {3556 "id": 1936,3557 "name": "REFUNGIBLE_COLLECTION_TYPE",3558 "nodeType": "Identifier",3559 "overloadedDeclarations": [],3560 "referencedDeclaration": 1703,3561 "src": "4636:26:5",3562 "typeDescriptions": {3563 "typeIdentifier": "t_bytes32",3564 "typeString": "bytes32"3565 }3566 },3567 "src": "4618:44:5",3568 "typeDescriptions": {3569 "typeIdentifier": "t_bool",3570 "typeString": "bool"3571 }3572 },3573 "falseBody": {3574 "condition": {3575 "commonType": {3576 "typeIdentifier": "t_bytes32",3577 "typeString": "bytes32"3578 },3579 "id": 2010,3580 "isConstant": false,3581 "isLValue": false,3582 "isPure": false,3583 "lValueRequested": false,3584 "leftExpression": {3585 "id": 2008,3586 "name": "collectionType",3587 "nodeType": "Identifier",3588 "overloadedDeclarations": [],3589 "referencedDeclaration": 1922,3590 "src": "5122:14:5",3591 "typeDescriptions": {3592 "typeIdentifier": "t_bytes32",3593 "typeString": "bytes32"3594 }3595 },3596 "nodeType": "BinaryOperation",3597 "operator": "==",3598 "rightExpression": {3599 "id": 2009,3600 "name": "NONFUNGIBLE_COLLECTION_TYPE",3601 "nodeType": "Identifier",3602 "overloadedDeclarations": [],3603 "referencedDeclaration": 1711,3604 "src": "5140:27:5",3605 "typeDescriptions": {3606 "typeIdentifier": "t_bytes32",3607 "typeString": "bytes32"3608 }3609 },3610 "src": "5122:45:5",3611 "typeDescriptions": {3612 "typeIdentifier": "t_bool",3613 "typeString": "bool"3614 }3615 },3616 "falseBody": {3617 "id": 2085,3618 "nodeType": "Block",3619 "src": "5609:69:5",3620 "statements": [3621 {3622 "expression": {3623 "arguments": [3624 {3625 "hexValue": "57726f6e6720636f6c6c656374696f6e20747970652e20576f726b73206f6e6c792077697468204e4654206f7220524654",3626 "id": 2082,3627 "isConstant": false,3628 "isLValue": false,3629 "isPure": true,3630 "kind": "string",3631 "lValueRequested": false,3632 "nodeType": "Literal",3633 "src": "5621:51:5",3634 "typeDescriptions": {3635 "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",3636 "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""3637 },3638 "value": "Wrong collection type. Works only with NFT or RFT"3639 }3640 ],3641 "expression": {3642 "argumentTypes": [3643 {3644 "typeIdentifier": "t_stringliteral_a720d6ef8719206bfa9a6cc035f350312523cbf9cf6cd62b2324270bef55372a",3645 "typeString": "literal_string \"Wrong collection type. Works only with NFT or RFT\""3646 }3647 ],3648 "id": 2081,3649 "name": "revert",3650 "nodeType": "Identifier",3651 "overloadedDeclarations": [3652 4294967277,3653 42949672773654 ],3655 "referencedDeclaration": 4294967277,3656 "src": "5614:6:5",3657 "typeDescriptions": {3658 "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",3659 "typeString": "function (string memory) pure"3660 }3661 },3662 "id": 2083,3663 "isConstant": false,3664 "isLValue": false,3665 "isPure": false,3666 "kind": "functionCall",3667 "lValueRequested": false,3668 "nameLocations": [],3669 "names": [],3670 "nodeType": "FunctionCall",3671 "src": "5614:59:5",3672 "tryCall": false,3673 "typeDescriptions": {3674 "typeIdentifier": "t_tuple$__$",3675 "typeString": "tuple()"3676 }3677 },3678 "id": 2084,3679 "nodeType": "ExpressionStatement",3680 "src": "5614:59:5"3681 }3682 ]3683 },3684 "id": 2086,3685 "nodeType": "IfStatement",3686 "src": "5118:560:5",3687 "trueBody": {3688 "id": 2080,3689 "nodeType": "Block",3690 "src": "5169:434:5",3691 "statements": [3692 {3693 "assignments": [3694 20133695 ],3696 "declarations": [3697 {3698 "constant": false,3699 "id": 2013,3700 "mutability": "mutable",3701 "name": "nftCollection",3702 "nameLocation": "5184:13:5",3703 "nodeType": "VariableDeclaration",3704 "scope": 2080,3705 "src": "5174:23:5",3706 "stateVariable": false,3707 "storageLocation": "default",3708 "typeDescriptions": {3709 "typeIdentifier": "t_contract$_UniqueNFT_$893",3710 "typeString": "contract UniqueNFT"3711 },3712 "typeName": {3713 "id": 2012,3714 "nodeType": "UserDefinedTypeName",3715 "pathNode": {3716 "id": 2011,3717 "name": "UniqueNFT",3718 "nameLocations": [3719 "5174:9:5"3720 ],3721 "nodeType": "IdentifierPath",3722 "referencedDeclaration": 893,3723 "src": "5174:9:5"3724 },3725 "referencedDeclaration": 893,3726 "src": "5174:9:5",3727 "typeDescriptions": {3728 "typeIdentifier": "t_contract$_UniqueNFT_$893",3729 "typeString": "contract UniqueNFT"3730 }3731 },3732 "visibility": "internal"3733 }3734 ],3735 "id": 2017,3736 "initialValue": {3737 "arguments": [3738 {3739 "id": 2015,3740 "name": "_collection",3741 "nodeType": "Identifier",3742 "overloadedDeclarations": [],3743 "referencedDeclaration": 1890,3744 "src": "5210:11:5",3745 "typeDescriptions": {3746 "typeIdentifier": "t_address",3747 "typeString": "address"3748 }3749 }3750 ],3751 "expression": {3752 "argumentTypes": [3753 {3754 "typeIdentifier": "t_address",3755 "typeString": "address"3756 }3757 ],3758 "id": 2014,3759 "name": "UniqueNFT",3760 "nodeType": "Identifier",3761 "overloadedDeclarations": [],3762 "referencedDeclaration": 893,3763 "src": "5200:9:5",3764 "typeDescriptions": {3765 "typeIdentifier": "t_type$_t_contract$_UniqueNFT_$893_$",3766 "typeString": "type(contract UniqueNFT)"3767 }3768 },3769 "id": 2016,3770 "isConstant": false,3771 "isLValue": false,3772 "isPure": false,3773 "kind": "typeConversion",3774 "lValueRequested": false,3775 "nameLocations": [],3776 "names": [],3777 "nodeType": "FunctionCall",3778 "src": "5200:22:5",3779 "tryCall": false,3780 "typeDescriptions": {3781 "typeIdentifier": "t_contract$_UniqueNFT_$893",3782 "typeString": "contract UniqueNFT"3783 }3784 },3785 "nodeType": "VariableDeclarationStatement",3786 "src": "5174:48:5"3787 },3788 {3789 "expression": {3790 "id": 2022,3791 "isConstant": false,3792 "isLValue": false,3793 "isPure": false,3794 "lValueRequested": false,3795 "leftHandSide": {3796 "id": 2018,3797 "name": "tokenId",3798 "nodeType": "Identifier",3799 "overloadedDeclarations": [],3800 "referencedDeclaration": 1933,3801 "src": "5227:7:5",3802 "typeDescriptions": {3803 "typeIdentifier": "t_uint256",3804 "typeString": "uint256"3805 }3806 },3807 "nodeType": "Assignment",3808 "operator": "=",3809 "rightHandSide": {3810 "arguments": [],3811 "expression": {3812 "argumentTypes": [],3813 "expression": {3814 "id": 2019,3815 "name": "nftCollection",3816 "nodeType": "Identifier",3817 "overloadedDeclarations": [],3818 "referencedDeclaration": 2013,3819 "src": "5237:13:5",3820 "typeDescriptions": {3821 "typeIdentifier": "t_contract$_UniqueNFT_$893",3822 "typeString": "contract UniqueNFT"3823 }3824 },3825 "id": 2020,3826 "isConstant": false,3827 "isLValue": false,3828 "isPure": false,3829 "lValueRequested": false,3830 "memberLocation": "5251:11:5",3831 "memberName": "nextTokenId",3832 "nodeType": "MemberAccess",3833 "referencedDeclaration": 666,3834 "src": "5237:25:5",3835 "typeDescriptions": {3836 "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",3837 "typeString": "function () view external returns (uint256)"3838 }3839 },3840 "id": 2021,3841 "isConstant": false,3842 "isLValue": false,3843 "isPure": false,3844 "kind": "functionCall",3845 "lValueRequested": false,3846 "nameLocations": [],3847 "names": [],3848 "nodeType": "FunctionCall",3849 "src": "5237:27:5",3850 "tryCall": false,3851 "typeDescriptions": {3852 "typeIdentifier": "t_uint256",3853 "typeString": "uint256"3854 }3855 },3856 "src": "5227:37:5",3857 "typeDescriptions": {3858 "typeIdentifier": "t_uint256",3859 "typeString": "uint256"3860 }3861 },3862 "id": 2023,3863 "nodeType": "ExpressionStatement",3864 "src": "5227:37:5"3865 },3866 {3867 "expression": {3868 "arguments": [3869 {3870 "arguments": [3871 {3872 "id": 2029,3873 "name": "this",3874 "nodeType": "Identifier",3875 "overloadedDeclarations": [],3876 "referencedDeclaration": 4294967268,3877 "src": "5296:4:5",3878 "typeDescriptions": {3879 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",3880 "typeString": "contract EvmToSubstrate"3881 }3882 }3883 ],3884 "expression": {3885 "argumentTypes": [3886 {3887 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",3888 "typeString": "contract EvmToSubstrate"3889 }3890 ],3891 "id": 2028,3892 "isConstant": false,3893 "isLValue": false,3894 "isPure": true,3895 "lValueRequested": false,3896 "nodeType": "ElementaryTypeNameExpression",3897 "src": "5288:7:5",3898 "typeDescriptions": {3899 "typeIdentifier": "t_type$_t_address_$",3900 "typeString": "type(address)"3901 },3902 "typeName": {3903 "id": 2027,3904 "name": "address",3905 "nodeType": "ElementaryTypeName",3906 "src": "5288:7:5",3907 "typeDescriptions": {}3908 }3909 },3910 "id": 2030,3911 "isConstant": false,3912 "isLValue": false,3913 "isPure": false,3914 "kind": "typeConversion",3915 "lValueRequested": false,3916 "nameLocations": [],3917 "names": [],3918 "nodeType": "FunctionCall",3919 "src": "5288:13:5",3920 "tryCall": false,3921 "typeDescriptions": {3922 "typeIdentifier": "t_address",3923 "typeString": "address"3924 }3925 },3926 {3927 "id": 2031,3928 "name": "tokenId",3929 "nodeType": "Identifier",3930 "overloadedDeclarations": [],3931 "referencedDeclaration": 1933,3932 "src": "5303:7:5",3933 "typeDescriptions": {3934 "typeIdentifier": "t_uint256",3935 "typeString": "uint256"3936 }3937 }3938 ],3939 "expression": {3940 "argumentTypes": [3941 {3942 "typeIdentifier": "t_address",3943 "typeString": "address"3944 },3945 {3946 "typeIdentifier": "t_uint256",3947 "typeString": "uint256"3948 }3949 ],3950 "expression": {3951 "id": 2024,3952 "name": "nftCollection",3953 "nodeType": "Identifier",3954 "overloadedDeclarations": [],3955 "referencedDeclaration": 2013,3956 "src": "5269:13:5",3957 "typeDescriptions": {3958 "typeIdentifier": "t_contract$_UniqueNFT_$893",3959 "typeString": "contract UniqueNFT"3960 }3961 },3962 "id": 2026,3963 "isConstant": false,3964 "isLValue": false,3965 "isPure": false,3966 "lValueRequested": false,3967 "memberLocation": "5283:4:5",3968 "memberName": "mint",3969 "nodeType": "MemberAccess",3970 "referencedDeclaration": 590,3971 "src": "5269:18:5",3972 "typeDescriptions": {3973 "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",3974 "typeString": "function (address,uint256) external returns (bool)"3975 }3976 },3977 "id": 2032,3978 "isConstant": false,3979 "isLValue": false,3980 "isPure": false,3981 "kind": "functionCall",3982 "lValueRequested": false,3983 "nameLocations": [],3984 "names": [],3985 "nodeType": "FunctionCall",3986 "src": "5269:42:5",3987 "tryCall": false,3988 "typeDescriptions": {3989 "typeIdentifier": "t_bool",3990 "typeString": "bool"3991 }3992 },3993 "id": 2033,3994 "nodeType": "ExpressionStatement",3995 "src": "5269:42:5"3996 },3997 {3998 "body": {3999 "id": 2058,4000 "nodeType": "Block",4001 "src": "5363:86:5",4002 "statements": [4003 {4004 "expression": {4005 "arguments": [4006 {4007 "id": 2047,4008 "name": "tokenId",4009 "nodeType": "Identifier",4010 "overloadedDeclarations": [],4011 "referencedDeclaration": 1933,4012 "src": "5395:7:5",4013 "typeDescriptions": {4014 "typeIdentifier": "t_uint256",4015 "typeString": "uint256"4016 }4017 },4018 {4019 "expression": {4020 "baseExpression": {4021 "id": 2048,4022 "name": "properties",4023 "nodeType": "Identifier",4024 "overloadedDeclarations": [],4025 "referencedDeclaration": 1896,4026 "src": "5404:10:5",4027 "typeDescriptions": {4028 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",4029 "typeString": "struct Property calldata[] calldata"4030 }4031 },4032 "id": 2050,4033 "indexExpression": {4034 "id": 2049,4035 "name": "i",4036 "nodeType": "Identifier",4037 "overloadedDeclarations": [],4038 "referencedDeclaration": 2035,4039 "src": "5415:1:5",4040 "typeDescriptions": {4041 "typeIdentifier": "t_uint256",4042 "typeString": "uint256"4043 }4044 },4045 "isConstant": false,4046 "isLValue": false,4047 "isPure": false,4048 "lValueRequested": false,4049 "nodeType": "IndexAccess",4050 "src": "5404:13:5",4051 "typeDescriptions": {4052 "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",4053 "typeString": "struct Property calldata"4054 }4055 },4056 "id": 2051,4057 "isConstant": false,4058 "isLValue": false,4059 "isPure": false,4060 "lValueRequested": false,4061 "memberLocation": "5418:3:5",4062 "memberName": "key",4063 "nodeType": "MemberAccess",4064 "referencedDeclaration": 1692,4065 "src": "5404:17:5",4066 "typeDescriptions": {4067 "typeIdentifier": "t_string_calldata_ptr",4068 "typeString": "string calldata"4069 }4070 },4071 {4072 "expression": {4073 "baseExpression": {4074 "id": 2052,4075 "name": "properties",4076 "nodeType": "Identifier",4077 "overloadedDeclarations": [],4078 "referencedDeclaration": 1896,4079 "src": "5423:10:5",4080 "typeDescriptions": {4081 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",4082 "typeString": "struct Property calldata[] calldata"4083 }4084 },4085 "id": 2054,4086 "indexExpression": {4087 "id": 2053,4088 "name": "i",4089 "nodeType": "Identifier",4090 "overloadedDeclarations": [],4091 "referencedDeclaration": 2035,4092 "src": "5434:1:5",4093 "typeDescriptions": {4094 "typeIdentifier": "t_uint256",4095 "typeString": "uint256"4096 }4097 },4098 "isConstant": false,4099 "isLValue": false,4100 "isPure": false,4101 "lValueRequested": false,4102 "nodeType": "IndexAccess",4103 "src": "5423:13:5",4104 "typeDescriptions": {4105 "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",4106 "typeString": "struct Property calldata"4107 }4108 },4109 "id": 2055,4110 "isConstant": false,4111 "isLValue": false,4112 "isPure": false,4113 "lValueRequested": false,4114 "memberLocation": "5437:5:5",4115 "memberName": "value",4116 "nodeType": "MemberAccess",4117 "referencedDeclaration": 1694,4118 "src": "5423:19:5",4119 "typeDescriptions": {4120 "typeIdentifier": "t_bytes_calldata_ptr",4121 "typeString": "bytes calldata"4122 }4123 }4124 ],4125 "expression": {4126 "argumentTypes": [4127 {4128 "typeIdentifier": "t_uint256",4129 "typeString": "uint256"4130 },4131 {4132 "typeIdentifier": "t_string_calldata_ptr",4133 "typeString": "string calldata"4134 },4135 {4136 "typeIdentifier": "t_bytes_calldata_ptr",4137 "typeString": "bytes calldata"4138 }4139 ],4140 "expression": {4141 "id": 2044,4142 "name": "nftCollection",4143 "nodeType": "Identifier",4144 "overloadedDeclarations": [],4145 "referencedDeclaration": 2013,4146 "src": "5369:13:5",4147 "typeDescriptions": {4148 "typeIdentifier": "t_contract$_UniqueNFT_$893",4149 "typeString": "contract UniqueNFT"4150 }4151 },4152 "id": 2046,4153 "isConstant": false,4154 "isLValue": false,4155 "isPure": false,4156 "lValueRequested": false,4157 "memberLocation": "5383:11:5",4158 "memberName": "setProperty",4159 "nodeType": "MemberAccess",4160 "referencedDeclaration": 318,4161 "src": "5369:25:5",4162 "typeDescriptions": {4163 "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",4164 "typeString": "function (uint256,string memory,bytes memory) external"4165 }4166 },4167 "id": 2056,4168 "isConstant": false,4169 "isLValue": false,4170 "isPure": false,4171 "kind": "functionCall",4172 "lValueRequested": false,4173 "nameLocations": [],4174 "names": [],4175 "nodeType": "FunctionCall",4176 "src": "5369:74:5",4177 "tryCall": false,4178 "typeDescriptions": {4179 "typeIdentifier": "t_tuple$__$",4180 "typeString": "tuple()"4181 }4182 },4183 "id": 2057,4184 "nodeType": "ExpressionStatement",4185 "src": "5369:74:5"4186 }4187 ]4188 },4189 "condition": {4190 "commonType": {4191 "typeIdentifier": "t_uint256",4192 "typeString": "uint256"4193 },4194 "id": 2040,4195 "isConstant": false,4196 "isLValue": false,4197 "isPure": false,4198 "lValueRequested": false,4199 "leftExpression": {4200 "id": 2038,4201 "name": "i",4202 "nodeType": "Identifier",4203 "overloadedDeclarations": [],4204 "referencedDeclaration": 2035,4205 "src": "5336:1:5",4206 "typeDescriptions": {4207 "typeIdentifier": "t_uint256",4208 "typeString": "uint256"4209 }4210 },4211 "nodeType": "BinaryOperation",4212 "operator": "<",4213 "rightExpression": {4214 "id": 2039,4215 "name": "propertiesLength",4216 "nodeType": "Identifier",4217 "overloadedDeclarations": [],4218 "referencedDeclaration": 1903,4219 "src": "5340:16:5",4220 "typeDescriptions": {4221 "typeIdentifier": "t_uint256",4222 "typeString": "uint256"4223 }4224 },4225 "src": "5336:20:5",4226 "typeDescriptions": {4227 "typeIdentifier": "t_bool",4228 "typeString": "bool"4229 }4230 },4231 "id": 2059,4232 "initializationExpression": {4233 "assignments": [4234 20354235 ],4236 "declarations": [4237 {4238 "constant": false,4239 "id": 2035,4240 "mutability": "mutable",4241 "name": "i",4242 "nameLocation": "5329:1:5",4243 "nodeType": "VariableDeclaration",4244 "scope": 2059,4245 "src": "5321:9:5",4246 "stateVariable": false,4247 "storageLocation": "default",4248 "typeDescriptions": {4249 "typeIdentifier": "t_uint256",4250 "typeString": "uint256"4251 },4252 "typeName": {4253 "id": 2034,4254 "name": "uint256",4255 "nodeType": "ElementaryTypeName",4256 "src": "5321:7:5",4257 "typeDescriptions": {4258 "typeIdentifier": "t_uint256",4259 "typeString": "uint256"4260 }4261 },4262 "visibility": "internal"4263 }4264 ],4265 "id": 2037,4266 "initialValue": {4267 "hexValue": "30",4268 "id": 2036,4269 "isConstant": false,4270 "isLValue": false,4271 "isPure": true,4272 "kind": "number",4273 "lValueRequested": false,4274 "nodeType": "Literal",4275 "src": "5333:1:5",4276 "typeDescriptions": {4277 "typeIdentifier": "t_rational_0_by_1",4278 "typeString": "int_const 0"4279 },4280 "value": "0"4281 },4282 "nodeType": "VariableDeclarationStatement",4283 "src": "5321:13:5"4284 },4285 "loopExpression": {4286 "expression": {4287 "id": 2042,4288 "isConstant": false,4289 "isLValue": false,4290 "isPure": false,4291 "lValueRequested": false,4292 "nodeType": "UnaryOperation",4293 "operator": "++",4294 "prefix": true,4295 "src": "5358:3:5",4296 "subExpression": {4297 "id": 2041,4298 "name": "i",4299 "nodeType": "Identifier",4300 "overloadedDeclarations": [],4301 "referencedDeclaration": 2035,4302 "src": "5360:1:5",4303 "typeDescriptions": {4304 "typeIdentifier": "t_uint256",4305 "typeString": "uint256"4306 }4307 },4308 "typeDescriptions": {4309 "typeIdentifier": "t_uint256",4310 "typeString": "uint256"4311 }4312 },4313 "id": 2043,4314 "nodeType": "ExpressionStatement",4315 "src": "5358:3:5"4316 },4317 "nodeType": "ForStatement",4318 "src": "5316:133:5"4319 },4320 {4321 "expression": {4322 "arguments": [4323 {4324 "arguments": [4325 {4326 "arguments": [4327 {4328 "id": 2066,4329 "name": "this",4330 "nodeType": "Identifier",4331 "overloadedDeclarations": [],4332 "referencedDeclaration": 4294967268,4333 "src": "5516:4:5",4334 "typeDescriptions": {4335 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",4336 "typeString": "contract EvmToSubstrate"4337 }4338 }4339 ],4340 "expression": {4341 "argumentTypes": [4342 {4343 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",4344 "typeString": "contract EvmToSubstrate"4345 }4346 ],4347 "id": 2065,4348 "isConstant": false,4349 "isLValue": false,4350 "isPure": true,4351 "lValueRequested": false,4352 "nodeType": "ElementaryTypeNameExpression",4353 "src": "5508:7:5",4354 "typeDescriptions": {4355 "typeIdentifier": "t_type$_t_address_$",4356 "typeString": "type(address)"4357 },4358 "typeName": {4359 "id": 2064,4360 "name": "address",4361 "nodeType": "ElementaryTypeName",4362 "src": "5508:7:5",4363 "typeDescriptions": {}4364 }4365 },4366 "id": 2067,4367 "isConstant": false,4368 "isLValue": false,4369 "isPure": false,4370 "kind": "typeConversion",4371 "lValueRequested": false,4372 "nameLocations": [],4373 "names": [],4374 "nodeType": "FunctionCall",4375 "src": "5508:13:5",4376 "tryCall": false,4377 "typeDescriptions": {4378 "typeIdentifier": "t_address",4379 "typeString": "address"4380 }4381 },4382 {4383 "hexValue": "30",4384 "id": 2068,4385 "isConstant": false,4386 "isLValue": false,4387 "isPure": true,4388 "kind": "number",4389 "lValueRequested": false,4390 "nodeType": "Literal",4391 "src": "5523:1:5",4392 "typeDescriptions": {4393 "typeIdentifier": "t_rational_0_by_1",4394 "typeString": "int_const 0"4395 },4396 "value": "0"4397 }4398 ],4399 "expression": {4400 "argumentTypes": [4401 {4402 "typeIdentifier": "t_address",4403 "typeString": "address"4404 },4405 {4406 "typeIdentifier": "t_rational_0_by_1",4407 "typeString": "int_const 0"4408 }4409 ],4410 "id": 2063,4411 "name": "NftCrossAccountId",4412 "nodeType": "Identifier",4413 "overloadedDeclarations": [],4414 "referencedDeclaration": 700,4415 "src": "5490:17:5",4416 "typeDescriptions": {4417 "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",4418 "typeString": "type(struct Tuple8 storage pointer)"4419 }4420 },4421 "id": 2069,4422 "isConstant": false,4423 "isLValue": false,4424 "isPure": false,4425 "kind": "structConstructorCall",4426 "lValueRequested": false,4427 "nameLocations": [],4428 "names": [],4429 "nodeType": "FunctionCall",4430 "src": "5490:35:5",4431 "tryCall": false,4432 "typeDescriptions": {4433 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",4434 "typeString": "struct Tuple8 memory"4435 }4436 },4437 {4438 "arguments": [4439 {4440 "arguments": [4441 {4442 "hexValue": "30",4443 "id": 2073,4444 "isConstant": false,4445 "isLValue": false,4446 "isPure": true,4447 "kind": "number",4448 "lValueRequested": false,4449 "nodeType": "Literal",4450 "src": "5557:1:5",4451 "typeDescriptions": {4452 "typeIdentifier": "t_rational_0_by_1",4453 "typeString": "int_const 0"4454 },4455 "value": "0"4456 }4457 ],4458 "expression": {4459 "argumentTypes": [4460 {4461 "typeIdentifier": "t_rational_0_by_1",4462 "typeString": "int_const 0"4463 }4464 ],4465 "id": 2072,4466 "isConstant": false,4467 "isLValue": false,4468 "isPure": true,4469 "lValueRequested": false,4470 "nodeType": "ElementaryTypeNameExpression",4471 "src": "5549:7:5",4472 "typeDescriptions": {4473 "typeIdentifier": "t_type$_t_address_$",4474 "typeString": "type(address)"4475 },4476 "typeName": {4477 "id": 2071,4478 "name": "address",4479 "nodeType": "ElementaryTypeName",4480 "src": "5549:7:5",4481 "typeDescriptions": {}4482 }4483 },4484 "id": 2074,4485 "isConstant": false,4486 "isLValue": false,4487 "isPure": true,4488 "kind": "typeConversion",4489 "lValueRequested": false,4490 "nameLocations": [],4491 "names": [],4492 "nodeType": "FunctionCall",4493 "src": "5549:10:5",4494 "tryCall": false,4495 "typeDescriptions": {4496 "typeIdentifier": "t_address",4497 "typeString": "address"4498 }4499 },4500 {4501 "id": 2075,4502 "name": "_substrateReceiver",4503 "nodeType": "Identifier",4504 "overloadedDeclarations": [],4505 "referencedDeclaration": 1892,4506 "src": "5561:18:5",4507 "typeDescriptions": {4508 "typeIdentifier": "t_uint256",4509 "typeString": "uint256"4510 }4511 }4512 ],4513 "expression": {4514 "argumentTypes": [4515 {4516 "typeIdentifier": "t_address",4517 "typeString": "address"4518 },4519 {4520 "typeIdentifier": "t_uint256",4521 "typeString": "uint256"4522 }4523 ],4524 "id": 2070,4525 "name": "NftCrossAccountId",4526 "nodeType": "Identifier",4527 "overloadedDeclarations": [],4528 "referencedDeclaration": 700,4529 "src": "5531:17:5",4530 "typeDescriptions": {4531 "typeIdentifier": "t_type$_t_struct$_Tuple8_$700_storage_ptr_$",4532 "typeString": "type(struct Tuple8 storage pointer)"4533 }4534 },4535 "id": 2076,4536 "isConstant": false,4537 "isLValue": false,4538 "isPure": false,4539 "kind": "structConstructorCall",4540 "lValueRequested": false,4541 "nameLocations": [],4542 "names": [],4543 "nodeType": "FunctionCall",4544 "src": "5531:49:5",4545 "tryCall": false,4546 "typeDescriptions": {4547 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",4548 "typeString": "struct Tuple8 memory"4549 }4550 },4551 {4552 "id": 2077,4553 "name": "tokenId",4554 "nodeType": "Identifier",4555 "overloadedDeclarations": [],4556 "referencedDeclaration": 1933,4557 "src": "5586:7:5",4558 "typeDescriptions": {4559 "typeIdentifier": "t_uint256",4560 "typeString": "uint256"4561 }4562 }4563 ],4564 "expression": {4565 "argumentTypes": [4566 {4567 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",4568 "typeString": "struct Tuple8 memory"4569 },4570 {4571 "typeIdentifier": "t_struct$_Tuple8_$700_memory_ptr",4572 "typeString": "struct Tuple8 memory"4573 },4574 {4575 "typeIdentifier": "t_uint256",4576 "typeString": "uint256"4577 }4578 ],4579 "expression": {4580 "id": 2060,4581 "name": "nftCollection",4582 "nodeType": "Identifier",4583 "overloadedDeclarations": [],4584 "referencedDeclaration": 2013,4585 "src": "5453:13:5",4586 "typeDescriptions": {4587 "typeIdentifier": "t_contract$_UniqueNFT_$893",4588 "typeString": "contract UniqueNFT"4589 }4590 },4591 "id": 2062,4592 "isConstant": false,4593 "isLValue": false,4594 "isPure": false,4595 "lValueRequested": false,4596 "memberLocation": "5467:17:5",4597 "memberName": "transferFromCross",4598 "nodeType": "MemberAccess",4599 "referencedDeclaration": 643,4600 "src": "5453:31:5",4601 "typeDescriptions": {4602 "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$700_memory_ptr_$_t_struct$_Tuple8_$700_memory_ptr_$_t_uint256_$returns$__$",4603 "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"4604 }4605 },4606 "id": 2078,4607 "isConstant": false,4608 "isLValue": false,4609 "isPure": false,4610 "kind": "functionCall",4611 "lValueRequested": false,4612 "nameLocations": [],4613 "names": [],4614 "nodeType": "FunctionCall",4615 "src": "5453:145:5",4616 "tryCall": false,4617 "typeDescriptions": {4618 "typeIdentifier": "t_tuple$__$",4619 "typeString": "tuple()"4620 }4621 },4622 "id": 2079,4623 "nodeType": "ExpressionStatement",4624 "src": "5453:145:5"4625 }4626 ]4627 }4628 },4629 "id": 2087,4630 "nodeType": "IfStatement",4631 "src": "4614:1064:5",4632 "trueBody": {4633 "id": 2007,4634 "nodeType": "Block",4635 "src": "4664:448:5",4636 "statements": [4637 {4638 "assignments": [4639 19404640 ],4641 "declarations": [4642 {4643 "constant": false,4644 "id": 1940,4645 "mutability": "mutable",4646 "name": "rftCollection",4647 "nameLocation": "4686:13:5",4648 "nodeType": "VariableDeclaration",4649 "scope": 2007,4650 "src": "4669:30:5",4651 "stateVariable": false,4652 "storageLocation": "default",4653 "typeDescriptions": {4654 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",4655 "typeString": "contract UniqueRefungible"4656 },4657 "typeName": {4658 "id": 1939,4659 "nodeType": "UserDefinedTypeName",4660 "pathNode": {4661 "id": 1938,4662 "name": "UniqueRefungible",4663 "nameLocations": [4664 "4669:16:5"4665 ],4666 "nodeType": "IdentifierPath",4667 "referencedDeclaration": 1508,4668 "src": "4669:16:5"4669 },4670 "referencedDeclaration": 1508,4671 "src": "4669:16:5",4672 "typeDescriptions": {4673 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",4674 "typeString": "contract UniqueRefungible"4675 }4676 },4677 "visibility": "internal"4678 }4679 ],4680 "id": 1944,4681 "initialValue": {4682 "arguments": [4683 {4684 "id": 1942,4685 "name": "_collection",4686 "nodeType": "Identifier",4687 "overloadedDeclarations": [],4688 "referencedDeclaration": 1890,4689 "src": "4719:11:5",4690 "typeDescriptions": {4691 "typeIdentifier": "t_address",4692 "typeString": "address"4693 }4694 }4695 ],4696 "expression": {4697 "argumentTypes": [4698 {4699 "typeIdentifier": "t_address",4700 "typeString": "address"4701 }4702 ],4703 "id": 1941,4704 "name": "UniqueRefungible",4705 "nodeType": "Identifier",4706 "overloadedDeclarations": [],4707 "referencedDeclaration": 1508,4708 "src": "4702:16:5",4709 "typeDescriptions": {4710 "typeIdentifier": "t_type$_t_contract$_UniqueRefungible_$1508_$",4711 "typeString": "type(contract UniqueRefungible)"4712 }4713 },4714 "id": 1943,4715 "isConstant": false,4716 "isLValue": false,4717 "isPure": false,4718 "kind": "typeConversion",4719 "lValueRequested": false,4720 "nameLocations": [],4721 "names": [],4722 "nodeType": "FunctionCall",4723 "src": "4702:29:5",4724 "tryCall": false,4725 "typeDescriptions": {4726 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",4727 "typeString": "contract UniqueRefungible"4728 }4729 },4730 "nodeType": "VariableDeclarationStatement",4731 "src": "4669:62:5"4732 },4733 {4734 "expression": {4735 "id": 1949,4736 "isConstant": false,4737 "isLValue": false,4738 "isPure": false,4739 "lValueRequested": false,4740 "leftHandSide": {4741 "id": 1945,4742 "name": "tokenId",4743 "nodeType": "Identifier",4744 "overloadedDeclarations": [],4745 "referencedDeclaration": 1933,4746 "src": "4736:7:5",4747 "typeDescriptions": {4748 "typeIdentifier": "t_uint256",4749 "typeString": "uint256"4750 }4751 },4752 "nodeType": "Assignment",4753 "operator": "=",4754 "rightHandSide": {4755 "arguments": [],4756 "expression": {4757 "argumentTypes": [],4758 "expression": {4759 "id": 1946,4760 "name": "rftCollection",4761 "nodeType": "Identifier",4762 "overloadedDeclarations": [],4763 "referencedDeclaration": 1940,4764 "src": "4746:13:5",4765 "typeDescriptions": {4766 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",4767 "typeString": "contract UniqueRefungible"4768 }4769 },4770 "id": 1947,4771 "isConstant": false,4772 "isLValue": false,4773 "isPure": false,4774 "lValueRequested": false,4775 "memberLocation": "4760:11:5",4776 "memberName": "nextTokenId",4777 "nodeType": "MemberAccess",4778 "referencedDeclaration": 1273,4779 "src": "4746:25:5",4780 "typeDescriptions": {4781 "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",4782 "typeString": "function () view external returns (uint256)"4783 }4784 },4785 "id": 1948,4786 "isConstant": false,4787 "isLValue": false,4788 "isPure": false,4789 "kind": "functionCall",4790 "lValueRequested": false,4791 "nameLocations": [],4792 "names": [],4793 "nodeType": "FunctionCall",4794 "src": "4746:27:5",4795 "tryCall": false,4796 "typeDescriptions": {4797 "typeIdentifier": "t_uint256",4798 "typeString": "uint256"4799 }4800 },4801 "src": "4736:37:5",4802 "typeDescriptions": {4803 "typeIdentifier": "t_uint256",4804 "typeString": "uint256"4805 }4806 },4807 "id": 1950,4808 "nodeType": "ExpressionStatement",4809 "src": "4736:37:5"4810 },4811 {4812 "expression": {4813 "arguments": [4814 {4815 "arguments": [4816 {4817 "id": 1956,4818 "name": "this",4819 "nodeType": "Identifier",4820 "overloadedDeclarations": [],4821 "referencedDeclaration": 4294967268,4822 "src": "4805:4:5",4823 "typeDescriptions": {4824 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",4825 "typeString": "contract EvmToSubstrate"4826 }4827 }4828 ],4829 "expression": {4830 "argumentTypes": [4831 {4832 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",4833 "typeString": "contract EvmToSubstrate"4834 }4835 ],4836 "id": 1955,4837 "isConstant": false,4838 "isLValue": false,4839 "isPure": true,4840 "lValueRequested": false,4841 "nodeType": "ElementaryTypeNameExpression",4842 "src": "4797:7:5",4843 "typeDescriptions": {4844 "typeIdentifier": "t_type$_t_address_$",4845 "typeString": "type(address)"4846 },4847 "typeName": {4848 "id": 1954,4849 "name": "address",4850 "nodeType": "ElementaryTypeName",4851 "src": "4797:7:5",4852 "typeDescriptions": {}4853 }4854 },4855 "id": 1957,4856 "isConstant": false,4857 "isLValue": false,4858 "isPure": false,4859 "kind": "typeConversion",4860 "lValueRequested": false,4861 "nameLocations": [],4862 "names": [],4863 "nodeType": "FunctionCall",4864 "src": "4797:13:5",4865 "tryCall": false,4866 "typeDescriptions": {4867 "typeIdentifier": "t_address",4868 "typeString": "address"4869 }4870 },4871 {4872 "id": 1958,4873 "name": "tokenId",4874 "nodeType": "Identifier",4875 "overloadedDeclarations": [],4876 "referencedDeclaration": 1933,4877 "src": "4812:7:5",4878 "typeDescriptions": {4879 "typeIdentifier": "t_uint256",4880 "typeString": "uint256"4881 }4882 }4883 ],4884 "expression": {4885 "argumentTypes": [4886 {4887 "typeIdentifier": "t_address",4888 "typeString": "address"4889 },4890 {4891 "typeIdentifier": "t_uint256",4892 "typeString": "uint256"4893 }4894 ],4895 "expression": {4896 "id": 1951,4897 "name": "rftCollection",4898 "nodeType": "Identifier",4899 "overloadedDeclarations": [],4900 "referencedDeclaration": 1940,4901 "src": "4778:13:5",4902 "typeDescriptions": {4903 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",4904 "typeString": "contract UniqueRefungible"4905 }4906 },4907 "id": 1953,4908 "isConstant": false,4909 "isLValue": false,4910 "isPure": false,4911 "lValueRequested": false,4912 "memberLocation": "4792:4:5",4913 "memberName": "mint",4914 "nodeType": "MemberAccess",4915 "referencedDeclaration": 1206,4916 "src": "4778:18:5",4917 "typeDescriptions": {4918 "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",4919 "typeString": "function (address,uint256) external returns (bool)"4920 }4921 },4922 "id": 1959,4923 "isConstant": false,4924 "isLValue": false,4925 "isPure": false,4926 "kind": "functionCall",4927 "lValueRequested": false,4928 "nameLocations": [],4929 "names": [],4930 "nodeType": "FunctionCall",4931 "src": "4778:42:5",4932 "tryCall": false,4933 "typeDescriptions": {4934 "typeIdentifier": "t_bool",4935 "typeString": "bool"4936 }4937 },4938 "id": 1960,4939 "nodeType": "ExpressionStatement",4940 "src": "4778:42:5"4941 },4942 {4943 "body": {4944 "id": 1985,4945 "nodeType": "Block",4946 "src": "4872:86:5",4947 "statements": [4948 {4949 "expression": {4950 "arguments": [4951 {4952 "id": 1974,4953 "name": "tokenId",4954 "nodeType": "Identifier",4955 "overloadedDeclarations": [],4956 "referencedDeclaration": 1933,4957 "src": "4904:7:5",4958 "typeDescriptions": {4959 "typeIdentifier": "t_uint256",4960 "typeString": "uint256"4961 }4962 },4963 {4964 "expression": {4965 "baseExpression": {4966 "id": 1975,4967 "name": "properties",4968 "nodeType": "Identifier",4969 "overloadedDeclarations": [],4970 "referencedDeclaration": 1896,4971 "src": "4913:10:5",4972 "typeDescriptions": {4973 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",4974 "typeString": "struct Property calldata[] calldata"4975 }4976 },4977 "id": 1977,4978 "indexExpression": {4979 "id": 1976,4980 "name": "i",4981 "nodeType": "Identifier",4982 "overloadedDeclarations": [],4983 "referencedDeclaration": 1962,4984 "src": "4924:1:5",4985 "typeDescriptions": {4986 "typeIdentifier": "t_uint256",4987 "typeString": "uint256"4988 }4989 },4990 "isConstant": false,4991 "isLValue": false,4992 "isPure": false,4993 "lValueRequested": false,4994 "nodeType": "IndexAccess",4995 "src": "4913:13:5",4996 "typeDescriptions": {4997 "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",4998 "typeString": "struct Property calldata"4999 }5000 },5001 "id": 1978,5002 "isConstant": false,5003 "isLValue": false,5004 "isPure": false,5005 "lValueRequested": false,5006 "memberLocation": "4927:3:5",5007 "memberName": "key",5008 "nodeType": "MemberAccess",5009 "referencedDeclaration": 1692,5010 "src": "4913:17:5",5011 "typeDescriptions": {5012 "typeIdentifier": "t_string_calldata_ptr",5013 "typeString": "string calldata"5014 }5015 },5016 {5017 "expression": {5018 "baseExpression": {5019 "id": 1979,5020 "name": "properties",5021 "nodeType": "Identifier",5022 "overloadedDeclarations": [],5023 "referencedDeclaration": 1896,5024 "src": "4932:10:5",5025 "typeDescriptions": {5026 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",5027 "typeString": "struct Property calldata[] calldata"5028 }5029 },5030 "id": 1981,5031 "indexExpression": {5032 "id": 1980,5033 "name": "i",5034 "nodeType": "Identifier",5035 "overloadedDeclarations": [],5036 "referencedDeclaration": 1962,5037 "src": "4943:1:5",5038 "typeDescriptions": {5039 "typeIdentifier": "t_uint256",5040 "typeString": "uint256"5041 }5042 },5043 "isConstant": false,5044 "isLValue": false,5045 "isPure": false,5046 "lValueRequested": false,5047 "nodeType": "IndexAccess",5048 "src": "4932:13:5",5049 "typeDescriptions": {5050 "typeIdentifier": "t_struct$_Property_$1695_calldata_ptr",5051 "typeString": "struct Property calldata"5052 }5053 },5054 "id": 1982,5055 "isConstant": false,5056 "isLValue": false,5057 "isPure": false,5058 "lValueRequested": false,5059 "memberLocation": "4946:5:5",5060 "memberName": "value",5061 "nodeType": "MemberAccess",5062 "referencedDeclaration": 1694,5063 "src": "4932:19:5",5064 "typeDescriptions": {5065 "typeIdentifier": "t_bytes_calldata_ptr",5066 "typeString": "bytes calldata"5067 }5068 }5069 ],5070 "expression": {5071 "argumentTypes": [5072 {5073 "typeIdentifier": "t_uint256",5074 "typeString": "uint256"5075 },5076 {5077 "typeIdentifier": "t_string_calldata_ptr",5078 "typeString": "string calldata"5079 },5080 {5081 "typeIdentifier": "t_bytes_calldata_ptr",5082 "typeString": "bytes calldata"5083 }5084 ],5085 "expression": {5086 "id": 1971,5087 "name": "rftCollection",5088 "nodeType": "Identifier",5089 "overloadedDeclarations": [],5090 "referencedDeclaration": 1940,5091 "src": "4878:13:5",5092 "typeDescriptions": {5093 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",5094 "typeString": "contract UniqueRefungible"5095 }5096 },5097 "id": 1973,5098 "isConstant": false,5099 "isLValue": false,5100 "isPure": false,5101 "lValueRequested": false,5102 "memberLocation": "4892:11:5",5103 "memberName": "setProperty",5104 "nodeType": "MemberAccess",5105 "referencedDeclaration": 934,5106 "src": "4878:25:5",5107 "typeDescriptions": {5108 "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$",5109 "typeString": "function (uint256,string memory,bytes memory) external"5110 }5111 },5112 "id": 1983,5113 "isConstant": false,5114 "isLValue": false,5115 "isPure": false,5116 "kind": "functionCall",5117 "lValueRequested": false,5118 "nameLocations": [],5119 "names": [],5120 "nodeType": "FunctionCall",5121 "src": "4878:74:5",5122 "tryCall": false,5123 "typeDescriptions": {5124 "typeIdentifier": "t_tuple$__$",5125 "typeString": "tuple()"5126 }5127 },5128 "id": 1984,5129 "nodeType": "ExpressionStatement",5130 "src": "4878:74:5"5131 }5132 ]5133 },5134 "condition": {5135 "commonType": {5136 "typeIdentifier": "t_uint256",5137 "typeString": "uint256"5138 },5139 "id": 1967,5140 "isConstant": false,5141 "isLValue": false,5142 "isPure": false,5143 "lValueRequested": false,5144 "leftExpression": {5145 "id": 1965,5146 "name": "i",5147 "nodeType": "Identifier",5148 "overloadedDeclarations": [],5149 "referencedDeclaration": 1962,5150 "src": "4845:1:5",5151 "typeDescriptions": {5152 "typeIdentifier": "t_uint256",5153 "typeString": "uint256"5154 }5155 },5156 "nodeType": "BinaryOperation",5157 "operator": "<",5158 "rightExpression": {5159 "id": 1966,5160 "name": "propertiesLength",5161 "nodeType": "Identifier",5162 "overloadedDeclarations": [],5163 "referencedDeclaration": 1903,5164 "src": "4849:16:5",5165 "typeDescriptions": {5166 "typeIdentifier": "t_uint256",5167 "typeString": "uint256"5168 }5169 },5170 "src": "4845:20:5",5171 "typeDescriptions": {5172 "typeIdentifier": "t_bool",5173 "typeString": "bool"5174 }5175 },5176 "id": 1986,5177 "initializationExpression": {5178 "assignments": [5179 19625180 ],5181 "declarations": [5182 {5183 "constant": false,5184 "id": 1962,5185 "mutability": "mutable",5186 "name": "i",5187 "nameLocation": "4838:1:5",5188 "nodeType": "VariableDeclaration",5189 "scope": 1986,5190 "src": "4830:9:5",5191 "stateVariable": false,5192 "storageLocation": "default",5193 "typeDescriptions": {5194 "typeIdentifier": "t_uint256",5195 "typeString": "uint256"5196 },5197 "typeName": {5198 "id": 1961,5199 "name": "uint256",5200 "nodeType": "ElementaryTypeName",5201 "src": "4830:7:5",5202 "typeDescriptions": {5203 "typeIdentifier": "t_uint256",5204 "typeString": "uint256"5205 }5206 },5207 "visibility": "internal"5208 }5209 ],5210 "id": 1964,5211 "initialValue": {5212 "hexValue": "30",5213 "id": 1963,5214 "isConstant": false,5215 "isLValue": false,5216 "isPure": true,5217 "kind": "number",5218 "lValueRequested": false,5219 "nodeType": "Literal",5220 "src": "4842:1:5",5221 "typeDescriptions": {5222 "typeIdentifier": "t_rational_0_by_1",5223 "typeString": "int_const 0"5224 },5225 "value": "0"5226 },5227 "nodeType": "VariableDeclarationStatement",5228 "src": "4830:13:5"5229 },5230 "loopExpression": {5231 "expression": {5232 "id": 1969,5233 "isConstant": false,5234 "isLValue": false,5235 "isPure": false,5236 "lValueRequested": false,5237 "nodeType": "UnaryOperation",5238 "operator": "++",5239 "prefix": true,5240 "src": "4867:3:5",5241 "subExpression": {5242 "id": 1968,5243 "name": "i",5244 "nodeType": "Identifier",5245 "overloadedDeclarations": [],5246 "referencedDeclaration": 1962,5247 "src": "4869:1:5",5248 "typeDescriptions": {5249 "typeIdentifier": "t_uint256",5250 "typeString": "uint256"5251 }5252 },5253 "typeDescriptions": {5254 "typeIdentifier": "t_uint256",5255 "typeString": "uint256"5256 }5257 },5258 "id": 1970,5259 "nodeType": "ExpressionStatement",5260 "src": "4867:3:5"5261 },5262 "nodeType": "ForStatement",5263 "src": "4825:133:5"5264 },5265 {5266 "expression": {5267 "arguments": [5268 {5269 "arguments": [5270 {5271 "arguments": [5272 {5273 "id": 1993,5274 "name": "this",5275 "nodeType": "Identifier",5276 "overloadedDeclarations": [],5277 "referencedDeclaration": 4294967268,5278 "src": "5025:4:5",5279 "typeDescriptions": {5280 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",5281 "typeString": "contract EvmToSubstrate"5282 }5283 }5284 ],5285 "expression": {5286 "argumentTypes": [5287 {5288 "typeIdentifier": "t_contract$_EvmToSubstrate_$2100",5289 "typeString": "contract EvmToSubstrate"5290 }5291 ],5292 "id": 1992,5293 "isConstant": false,5294 "isLValue": false,5295 "isPure": true,5296 "lValueRequested": false,5297 "nodeType": "ElementaryTypeNameExpression",5298 "src": "5017:7:5",5299 "typeDescriptions": {5300 "typeIdentifier": "t_type$_t_address_$",5301 "typeString": "type(address)"5302 },5303 "typeName": {5304 "id": 1991,5305 "name": "address",5306 "nodeType": "ElementaryTypeName",5307 "src": "5017:7:5",5308 "typeDescriptions": {}5309 }5310 },5311 "id": 1994,5312 "isConstant": false,5313 "isLValue": false,5314 "isPure": false,5315 "kind": "typeConversion",5316 "lValueRequested": false,5317 "nameLocations": [],5318 "names": [],5319 "nodeType": "FunctionCall",5320 "src": "5017:13:5",5321 "tryCall": false,5322 "typeDescriptions": {5323 "typeIdentifier": "t_address",5324 "typeString": "address"5325 }5326 },5327 {5328 "hexValue": "30",5329 "id": 1995,5330 "isConstant": false,5331 "isLValue": false,5332 "isPure": true,5333 "kind": "number",5334 "lValueRequested": false,5335 "nodeType": "Literal",5336 "src": "5032:1:5",5337 "typeDescriptions": {5338 "typeIdentifier": "t_rational_0_by_1",5339 "typeString": "int_const 0"5340 },5341 "value": "0"5342 }5343 ],5344 "expression": {5345 "argumentTypes": [5346 {5347 "typeIdentifier": "t_address",5348 "typeString": "address"5349 },5350 {5351 "typeIdentifier": "t_rational_0_by_1",5352 "typeString": "int_const 0"5353 }5354 ],5355 "id": 1990,5356 "name": "RftCrossAccountId",5357 "nodeType": "Identifier",5358 "overloadedDeclarations": [],5359 "referencedDeclaration": 1315,5360 "src": "4999:17:5",5361 "typeDescriptions": {5362 "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",5363 "typeString": "type(struct Tuple8 storage pointer)"5364 }5365 },5366 "id": 1996,5367 "isConstant": false,5368 "isLValue": false,5369 "isPure": false,5370 "kind": "structConstructorCall",5371 "lValueRequested": false,5372 "nameLocations": [],5373 "names": [],5374 "nodeType": "FunctionCall",5375 "src": "4999:35:5",5376 "tryCall": false,5377 "typeDescriptions": {5378 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",5379 "typeString": "struct Tuple8 memory"5380 }5381 },5382 {5383 "arguments": [5384 {5385 "arguments": [5386 {5387 "hexValue": "30",5388 "id": 2000,5389 "isConstant": false,5390 "isLValue": false,5391 "isPure": true,5392 "kind": "number",5393 "lValueRequested": false,5394 "nodeType": "Literal",5395 "src": "5066:1:5",5396 "typeDescriptions": {5397 "typeIdentifier": "t_rational_0_by_1",5398 "typeString": "int_const 0"5399 },5400 "value": "0"5401 }5402 ],5403 "expression": {5404 "argumentTypes": [5405 {5406 "typeIdentifier": "t_rational_0_by_1",5407 "typeString": "int_const 0"5408 }5409 ],5410 "id": 1999,5411 "isConstant": false,5412 "isLValue": false,5413 "isPure": true,5414 "lValueRequested": false,5415 "nodeType": "ElementaryTypeNameExpression",5416 "src": "5058:7:5",5417 "typeDescriptions": {5418 "typeIdentifier": "t_type$_t_address_$",5419 "typeString": "type(address)"5420 },5421 "typeName": {5422 "id": 1998,5423 "name": "address",5424 "nodeType": "ElementaryTypeName",5425 "src": "5058:7:5",5426 "typeDescriptions": {}5427 }5428 },5429 "id": 2001,5430 "isConstant": false,5431 "isLValue": false,5432 "isPure": true,5433 "kind": "typeConversion",5434 "lValueRequested": false,5435 "nameLocations": [],5436 "names": [],5437 "nodeType": "FunctionCall",5438 "src": "5058:10:5",5439 "tryCall": false,5440 "typeDescriptions": {5441 "typeIdentifier": "t_address",5442 "typeString": "address"5443 }5444 },5445 {5446 "id": 2002,5447 "name": "_substrateReceiver",5448 "nodeType": "Identifier",5449 "overloadedDeclarations": [],5450 "referencedDeclaration": 1892,5451 "src": "5070:18:5",5452 "typeDescriptions": {5453 "typeIdentifier": "t_uint256",5454 "typeString": "uint256"5455 }5456 }5457 ],5458 "expression": {5459 "argumentTypes": [5460 {5461 "typeIdentifier": "t_address",5462 "typeString": "address"5463 },5464 {5465 "typeIdentifier": "t_uint256",5466 "typeString": "uint256"5467 }5468 ],5469 "id": 1997,5470 "name": "RftCrossAccountId",5471 "nodeType": "Identifier",5472 "overloadedDeclarations": [],5473 "referencedDeclaration": 1315,5474 "src": "5040:17:5",5475 "typeDescriptions": {5476 "typeIdentifier": "t_type$_t_struct$_Tuple8_$1315_storage_ptr_$",5477 "typeString": "type(struct Tuple8 storage pointer)"5478 }5479 },5480 "id": 2003,5481 "isConstant": false,5482 "isLValue": false,5483 "isPure": false,5484 "kind": "structConstructorCall",5485 "lValueRequested": false,5486 "nameLocations": [],5487 "names": [],5488 "nodeType": "FunctionCall",5489 "src": "5040:49:5",5490 "tryCall": false,5491 "typeDescriptions": {5492 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",5493 "typeString": "struct Tuple8 memory"5494 }5495 },5496 {5497 "id": 2004,5498 "name": "tokenId",5499 "nodeType": "Identifier",5500 "overloadedDeclarations": [],5501 "referencedDeclaration": 1933,5502 "src": "5095:7:5",5503 "typeDescriptions": {5504 "typeIdentifier": "t_uint256",5505 "typeString": "uint256"5506 }5507 }5508 ],5509 "expression": {5510 "argumentTypes": [5511 {5512 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",5513 "typeString": "struct Tuple8 memory"5514 },5515 {5516 "typeIdentifier": "t_struct$_Tuple8_$1315_memory_ptr",5517 "typeString": "struct Tuple8 memory"5518 },5519 {5520 "typeIdentifier": "t_uint256",5521 "typeString": "uint256"5522 }5523 ],5524 "expression": {5525 "id": 1987,5526 "name": "rftCollection",5527 "nodeType": "Identifier",5528 "overloadedDeclarations": [],5529 "referencedDeclaration": 1940,5530 "src": "4962:13:5",5531 "typeDescriptions": {5532 "typeIdentifier": "t_contract$_UniqueRefungible_$1508",5533 "typeString": "contract UniqueRefungible"5534 }5535 },5536 "id": 1989,5537 "isConstant": false,5538 "isLValue": false,5539 "isPure": false,5540 "lValueRequested": false,5541 "memberLocation": "4976:17:5",5542 "memberName": "transferFromCross",5543 "nodeType": "MemberAccess",5544 "referencedDeclaration": 1250,5545 "src": "4962:31:5",5546 "typeDescriptions": {5547 "typeIdentifier": "t_function_external_nonpayable$_t_struct$_Tuple8_$1315_memory_ptr_$_t_struct$_Tuple8_$1315_memory_ptr_$_t_uint256_$returns$__$",5548 "typeString": "function (struct Tuple8 memory,struct Tuple8 memory,uint256) external"5549 }5550 },5551 "id": 2005,5552 "isConstant": false,5553 "isLValue": false,5554 "isPure": false,5555 "kind": "functionCall",5556 "lValueRequested": false,5557 "nameLocations": [],5558 "names": [],5559 "nodeType": "FunctionCall",5560 "src": "4962:145:5",5561 "tryCall": false,5562 "typeDescriptions": {5563 "typeIdentifier": "t_tuple$__$",5564 "typeString": "tuple()"5565 }5566 },5567 "id": 2006,5568 "nodeType": "ExpressionStatement",5569 "src": "4962:145:5"5570 }5571 ]5572 }5573 },5574 {5575 "eventCall": {5576 "arguments": [5577 {5578 "arguments": [5579 {5580 "hexValue": "30",5581 "id": 2091,5582 "isConstant": false,5583 "isLValue": false,5584 "isPure": true,5585 "kind": "number",5586 "lValueRequested": false,5587 "nodeType": "Literal",5588 "src": "5757:1:5",5589 "typeDescriptions": {5590 "typeIdentifier": "t_rational_0_by_1",5591 "typeString": "int_const 0"5592 },5593 "value": "0"5594 }5595 ],5596 "expression": {5597 "argumentTypes": [5598 {5599 "typeIdentifier": "t_rational_0_by_1",5600 "typeString": "int_const 0"5601 }5602 ],5603 "id": 2090,5604 "isConstant": false,5605 "isLValue": false,5606 "isPure": true,5607 "lValueRequested": false,5608 "nodeType": "ElementaryTypeNameExpression",5609 "src": "5749:7:5",5610 "typeDescriptions": {5611 "typeIdentifier": "t_type$_t_address_$",5612 "typeString": "type(address)"5613 },5614 "typeName": {5615 "id": 2089,5616 "name": "address",5617 "nodeType": "ElementaryTypeName",5618 "src": "5749:7:5",5619 "typeDescriptions": {}5620 }5621 },5622 "id": 2092,5623 "isConstant": false,5624 "isLValue": false,5625 "isPure": true,5626 "kind": "typeConversion",5627 "lValueRequested": false,5628 "nameLocations": [],5629 "names": [],5630 "nodeType": "FunctionCall",5631 "src": "5749:10:5",5632 "tryCall": false,5633 "typeDescriptions": {5634 "typeIdentifier": "t_address",5635 "typeString": "address"5636 }5637 },5638 {5639 "id": 2093,5640 "name": "_substrateReceiver",5641 "nodeType": "Identifier",5642 "overloadedDeclarations": [],5643 "referencedDeclaration": 1892,5644 "src": "5761:18:5",5645 "typeDescriptions": {5646 "typeIdentifier": "t_uint256",5647 "typeString": "uint256"5648 }5649 },5650 {5651 "id": 2094,5652 "name": "_collection",5653 "nodeType": "Identifier",5654 "overloadedDeclarations": [],5655 "referencedDeclaration": 1890,5656 "src": "5781:11:5",5657 "typeDescriptions": {5658 "typeIdentifier": "t_address",5659 "typeString": "address"5660 }5661 },5662 {5663 "id": 2095,5664 "name": "tokenId",5665 "nodeType": "Identifier",5666 "overloadedDeclarations": [],5667 "referencedDeclaration": 1933,5668 "src": "5794:7:5",5669 "typeDescriptions": {5670 "typeIdentifier": "t_uint256",5671 "typeString": "uint256"5672 }5673 }5674 ],5675 "expression": {5676 "argumentTypes": [5677 {5678 "typeIdentifier": "t_address",5679 "typeString": "address"5680 },5681 {5682 "typeIdentifier": "t_uint256",5683 "typeString": "uint256"5684 },5685 {5686 "typeIdentifier": "t_address",5687 "typeString": "address"5688 },5689 {5690 "typeIdentifier": "t_uint256",5691 "typeString": "uint256"5692 }5693 ],5694 "id": 2088,5695 "name": "MintToSub",5696 "nodeType": "Identifier",5697 "overloadedDeclarations": [],5698 "referencedDeclaration": 1744,5699 "src": "5739:9:5",5700 "typeDescriptions": {5701 "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",5702 "typeString": "function (address,uint256,address,uint256)"5703 }5704 },5705 "id": 2096,5706 "isConstant": false,5707 "isLValue": false,5708 "isPure": false,5709 "kind": "functionCall",5710 "lValueRequested": false,5711 "nameLocations": [],5712 "names": [],5713 "nodeType": "FunctionCall",5714 "src": "5739:63:5",5715 "tryCall": false,5716 "typeDescriptions": {5717 "typeIdentifier": "t_tuple$__$",5718 "typeString": "tuple()"5719 }5720 },5721 "id": 2097,5722 "nodeType": "EmitStatement",5723 "src": "5734:68:5"5724 }5725 ]5726 },5727 "functionSelector": "440dff9d",5728 "id": 2099,5729 "implemented": true,5730 "kind": "function",5731 "modifiers": [5732 {5733 "arguments": [5734 {5735 "id": 1899,5736 "name": "_collection",5737 "nodeType": "Identifier",5738 "overloadedDeclarations": [],5739 "referencedDeclaration": 1890,5740 "src": "4185:11:5",5741 "typeDescriptions": {5742 "typeIdentifier": "t_address",5743 "typeString": "address"5744 }5745 }5746 ],5747 "id": 1900,5748 "kind": "modifierInvocation",5749 "modifierName": {5750 "id": 1898,5751 "name": "checkRestrictions",5752 "nameLocations": [5753 "4167:17:5"5754 ],5755 "nodeType": "IdentifierPath",5756 "referencedDeclaration": 1733,5757 "src": "4167:17:5"5758 },5759 "nodeType": "ModifierInvocation",5760 "src": "4167:30:5"5761 }5762 ],5763 "name": "mintToSubstrateWithProperty",5764 "nameLocation": "4040:27:5",5765 "nodeType": "FunctionDefinition",5766 "parameters": {5767 "id": 1897,5768 "nodeType": "ParameterList",5769 "parameters": [5770 {5771 "constant": false,5772 "id": 1890,5773 "mutability": "mutable",5774 "name": "_collection",5775 "nameLocation": "4079:11:5",5776 "nodeType": "VariableDeclaration",5777 "scope": 2099,5778 "src": "4071:19:5",5779 "stateVariable": false,5780 "storageLocation": "default",5781 "typeDescriptions": {5782 "typeIdentifier": "t_address",5783 "typeString": "address"5784 },5785 "typeName": {5786 "id": 1889,5787 "name": "address",5788 "nodeType": "ElementaryTypeName",5789 "src": "4071:7:5",5790 "stateMutability": "nonpayable",5791 "typeDescriptions": {5792 "typeIdentifier": "t_address",5793 "typeString": "address"5794 }5795 },5796 "visibility": "internal"5797 },5798 {5799 "constant": false,5800 "id": 1892,5801 "mutability": "mutable",5802 "name": "_substrateReceiver",5803 "nameLocation": "4102:18:5",5804 "nodeType": "VariableDeclaration",5805 "scope": 2099,5806 "src": "4094:26:5",5807 "stateVariable": false,5808 "storageLocation": "default",5809 "typeDescriptions": {5810 "typeIdentifier": "t_uint256",5811 "typeString": "uint256"5812 },5813 "typeName": {5814 "id": 1891,5815 "name": "uint256",5816 "nodeType": "ElementaryTypeName",5817 "src": "4094:7:5",5818 "typeDescriptions": {5819 "typeIdentifier": "t_uint256",5820 "typeString": "uint256"5821 }5822 },5823 "visibility": "internal"5824 },5825 {5826 "constant": false,5827 "id": 1896,5828 "mutability": "mutable",5829 "name": "properties",5830 "nameLocation": "4144:10:5",5831 "nodeType": "VariableDeclaration",5832 "scope": 2099,5833 "src": "4124:30:5",5834 "stateVariable": false,5835 "storageLocation": "calldata",5836 "typeDescriptions": {5837 "typeIdentifier": "t_array$_t_struct$_Property_$1695_calldata_ptr_$dyn_calldata_ptr",5838 "typeString": "struct Property[]"5839 },5840 "typeName": {5841 "baseType": {5842 "id": 1894,5843 "nodeType": "UserDefinedTypeName",5844 "pathNode": {5845 "id": 1893,5846 "name": "Property",5847 "nameLocations": [5848 "4124:8:5"5849 ],5850 "nodeType": "IdentifierPath",5851 "referencedDeclaration": 1695,5852 "src": "4124:8:5"5853 },5854 "referencedDeclaration": 1695,5855 "src": "4124:8:5",5856 "typeDescriptions": {5857 "typeIdentifier": "t_struct$_Property_$1695_storage_ptr",5858 "typeString": "struct Property"5859 }5860 },5861 "id": 1895,5862 "nodeType": "ArrayTypeName",5863 "src": "4124:10:5",5864 "typeDescriptions": {5865 "typeIdentifier": "t_array$_t_struct$_Property_$1695_storage_$dyn_storage_ptr",5866 "typeString": "struct Property[]"5867 }5868 },5869 "visibility": "internal"5870 }5871 ],5872 "src": "4067:90:5"5873 },5874 "returnParameters": {5875 "id": 1901,5876 "nodeType": "ParameterList",5877 "parameters": [],5878 "src": "4198:0:5"5879 },5880 "scope": 2100,5881 "src": "4031:1775:5",5882 "stateMutability": "nonpayable",5883 "virtual": false,5884 "visibility": "external"5885 }5886 ],5887 "scope": 2101,5888 "src": "494:5314:5",5889 "usedErrors": []5890 }5891 ],5892 "src": "44:5765:5"5893 },5894 "functionHashes": {5895 "mintToSubstrate(address,uint256)": "7a8d9786",5896 "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "440dff9d"5897 },5898 "gasEstimates": {5899 "creation": {5900 "codeDepositCost": "730800",5901 "executionCost": "766",5902 "totalCost": "731566"5903 },5904 "external": {5905 "mintToSubstrate(address,uint256)": "infinite",5906 "mintToSubstrateWithProperty(address,uint256,(string,bytes)[])": "infinite"5907 }5908 }5909}difftreelog
source
tests/src/eth/evmToSubstrate/ABI/EvmToSubstrate.json446.3 KiBsourcehistory