UNPKG

witnet-solidity-bridge

Version:

Witnet Solidity Bridge contracts for EVM-compatible chains

1,362 lines 52.2 kB
{ "contractName": "Escrowable", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Burnt", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Received", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Slashed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Staked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Unstaked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Withdrawn", "type": "event" }, { "inputs": [], "name": "currency", "outputs": [ { "internalType": "contract IERC20", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "collateralOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Burnt\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Staked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Unstaked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Withdrawn\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"collateralOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currency\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdraw\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/patterns/Escrowable.sol\":\"Escrowable\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303\",\"dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV\"]},\"project:/contracts/patterns/Escrowable.sol\":{\"keccak256\":\"0xf0fdb82142f66323a1d419839ddcf67b51ac2faa418a2b364e0b2e4b5fdfbc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5123dc63b3d2f501eec6b9616db46833c155c1dca416bb58dbeb924558f8020\",\"dweb:/ipfs/QmakA3u4rqWpzeiKkUZxhnQotReaybCCDMkkJZFHyZVb1U\"]},\"project:/contracts/patterns/Payable.sol\":{\"keccak256\":\"0x29ce79b9329cc854ddb0ee546e5a17f3cedafa91c7d614f43e8d6537680b1734\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00d5ce85f66c3c32b8b69bfed2f07f40d14ac72c2f67d2de6601de0be16b5af1\",\"dweb:/ipfs/QmZogwLRBjFUJVSzR8YuMfo3mKg8WvYVbn2QvWXsCVP92V\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [], "sourceMap": "", "deployedSourceMap": "", "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity >=0.8.4 <0.9.0;\r\n\r\nimport \"./Payable.sol\";\r\n\r\nabstract contract Escrowable\r\n is\r\n Payable\r\n{\r\n event Burnt(address indexed from, uint256 value);\r\n event Staked(address indexed from, uint256 value);\r\n event Slashed(address indexed from, uint256 value);\r\n event Unstaked(address indexed from, uint256 value);\r\n event Withdrawn(address indexed from, uint256 value);\r\n\r\n struct Escrow {\r\n uint256 balance;\r\n uint256 collateral;\r\n }\r\n\r\n receive() virtual external payable;\r\n\r\n function collateralOf(address) virtual external view returns (uint256);\r\n function balanceOf(address) virtual external view returns (uint256);\r\n function withdraw() virtual external returns (uint256);\r\n\r\n function __burn(address from, uint256 value) virtual internal;\r\n function __deposit(address from, uint256 value) virtual internal;\r\n function __slash(address from, address to, uint256 value) virtual internal;\r\n function __stake(address from, uint256 value) virtual internal;\r\n function __unstake(address from, uint256 value) virtual internal;\r\n}", "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\patterns\\Escrowable.sol", "ast": { "absolutePath": "project:/contracts/patterns/Escrowable.sol", "exportedSymbols": { "Escrowable": [ 45618 ], "IERC20": [ 493 ], "Payable": [ 45766 ] }, "id": 45619, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 45520, "literals": [ "solidity", ">=", "0.8", ".4", "<", "0.9", ".0" ], "nodeType": "PragmaDirective", "src": "35:31:128" }, { "absolutePath": "project:/contracts/patterns/Payable.sol", "file": "./Payable.sol", "id": 45521, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 45619, "sourceUnit": 45767, "src": "70:23:128", "symbolAliases": [], "unitAlias": "" }, { "abstract": true, "baseContracts": [ { "baseName": { "id": 45522, "name": "Payable", "nameLocations": [ "143:7:128" ], "nodeType": "IdentifierPath", "referencedDeclaration": 45766, "src": "143:7:128" }, "id": 45523, "nodeType": "InheritanceSpecifier", "src": "143:7:128" } ], "canonicalName": "Escrowable", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": false, "id": 45618, "linearizedBaseContracts": [ 45618, 45766 ], "name": "Escrowable", "nameLocation": "115:10:128", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "eventSelector": "919f7e2092ffcc9d09f599be18d8152860b0c054df788a33bc549cdd9d0f15b1", "id": 45529, "name": "Burnt", "nameLocation": "165:5:128", "nodeType": "EventDefinition", "parameters": { "id": 45528, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45525, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "187:4:128", "nodeType": "VariableDeclaration", "scope": 45529, "src": "171:20:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45524, "name": "address", "nodeType": "ElementaryTypeName", "src": "171:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45527, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "201:5:128", "nodeType": "VariableDeclaration", "scope": 45529, "src": "193:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45526, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "193:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "170:37:128" }, "src": "159:49:128" }, { "anonymous": false, "eventSelector": "9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d", "id": 45535, "name": "Staked", "nameLocation": "220:6:128", "nodeType": "EventDefinition", "parameters": { "id": 45534, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45531, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "243:4:128", "nodeType": "VariableDeclaration", "scope": 45535, "src": "227:20:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45530, "name": "address", "nodeType": "ElementaryTypeName", "src": "227:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45533, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "257:5:128", "nodeType": "VariableDeclaration", "scope": 45535, "src": "249:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45532, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "249:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "226:37:128" }, "src": "214:50:128" }, { "anonymous": false, "eventSelector": "4ed05e9673c26d2ed44f7ef6a7f2942df0ee3b5e1e17db4b99f9dcd261a339cd", "id": 45541, "name": "Slashed", "nameLocation": "276:7:128", "nodeType": "EventDefinition", "parameters": { "id": 45540, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45537, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "300:4:128", "nodeType": "VariableDeclaration", "scope": 45541, "src": "284:20:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45536, "name": "address", "nodeType": "ElementaryTypeName", "src": "284:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45539, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "314:5:128", "nodeType": "VariableDeclaration", "scope": 45541, "src": "306:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45538, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "306:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "283:37:128" }, "src": "270:51:128" }, { "anonymous": false, "eventSelector": "0f5bb82176feb1b5e747e28471aa92156a04d9f3ab9f45f28e2d704232b93f75", "id": 45547, "name": "Unstaked", "nameLocation": "333:8:128", "nodeType": "EventDefinition", "parameters": { "id": 45546, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45543, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "358:4:128", "nodeType": "VariableDeclaration", "scope": 45547, "src": "342:20:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45542, "name": "address", "nodeType": "ElementaryTypeName", "src": "342:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45545, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "372:5:128", "nodeType": "VariableDeclaration", "scope": 45547, "src": "364:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45544, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "364:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "341:37:128" }, "src": "327:52:128" }, { "anonymous": false, "eventSelector": "7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5", "id": 45553, "name": "Withdrawn", "nameLocation": "391:9:128", "nodeType": "EventDefinition", "parameters": { "id": 45552, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45549, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "417:4:128", "nodeType": "VariableDeclaration", "scope": 45553, "src": "401:20:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45548, "name": "address", "nodeType": "ElementaryTypeName", "src": "401:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45551, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "431:5:128", "nodeType": "VariableDeclaration", "scope": 45553, "src": "423:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45550, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "423:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "400:37:128" }, "src": "385:53:128" }, { "canonicalName": "Escrowable.Escrow", "id": 45558, "members": [ { "constant": false, "id": 45555, "mutability": "mutable", "name": "balance", "nameLocation": "479:7:128", "nodeType": "VariableDeclaration", "scope": 45558, "src": "471:15:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45554, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "471:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 45557, "mutability": "mutable", "name": "collateral", "nameLocation": "505:10:128", "nodeType": "VariableDeclaration", "scope": 45558, "src": "497:18:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45556, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "497:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "name": "Escrow", "nameLocation": "453:6:128", "nodeType": "StructDefinition", "scope": 45618, "src": "446:77:128", "visibility": "public" }, { "id": 45561, "implemented": false, "kind": "receive", "modifiers": [], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { "id": 45559, "nodeType": "ParameterList", "parameters": [], "src": "538:2:128" }, "returnParameters": { "id": 45560, "nodeType": "ParameterList", "parameters": [], "src": "565:0:128" }, "scope": 45618, "src": "531:35:128", "stateMutability": "payable", "virtual": true, "visibility": "external" }, { "functionSelector": "1aefb107", "id": 45568, "implemented": false, "kind": "function", "modifiers": [], "name": "collateralOf", "nameLocation": "583:12:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45564, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45563, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 45568, "src": "596:7:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45562, "name": "address", "nodeType": "ElementaryTypeName", "src": "596:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "595:9:128" }, "returnParameters": { "id": 45567, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45566, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 45568, "src": "636:7:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45565, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "636:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "635:9:128" }, "scope": 45618, "src": "574:71:128", "stateMutability": "view", "virtual": true, "visibility": "external" }, { "functionSelector": "70a08231", "id": 45575, "implemented": false, "kind": "function", "modifiers": [], "name": "balanceOf", "nameLocation": "660:9:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45571, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45570, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 45575, "src": "670:7:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45569, "name": "address", "nodeType": "ElementaryTypeName", "src": "670:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "669:9:128" }, "returnParameters": { "id": 45574, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45573, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 45575, "src": "710:7:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45572, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "710:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "709:9:128" }, "scope": 45618, "src": "651:68:128", "stateMutability": "view", "virtual": true, "visibility": "external" }, { "functionSelector": "3ccfd60b", "id": 45580, "implemented": false, "kind": "function", "modifiers": [], "name": "withdraw", "nameLocation": "734:8:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45576, "nodeType": "ParameterList", "parameters": [], "src": "742:2:128" }, "returnParameters": { "id": 45579, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45578, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 45580, "src": "771:7:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45577, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "771:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "770:9:128" }, "scope": 45618, "src": "725:55:128", "stateMutability": "nonpayable", "virtual": true, "visibility": "external" }, { "id": 45587, "implemented": false, "kind": "function", "modifiers": [], "name": "__burn", "nameLocation": "797:6:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45585, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45582, "mutability": "mutable", "name": "from", "nameLocation": "812:4:128", "nodeType": "VariableDeclaration", "scope": 45587, "src": "804:12:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45581, "name": "address", "nodeType": "ElementaryTypeName", "src": "804:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45584, "mutability": "mutable", "name": "value", "nameLocation": "826:5:128", "nodeType": "VariableDeclaration", "scope": 45587, "src": "818:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45583, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "818:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "803:29:128" }, "returnParameters": { "id": 45586, "nodeType": "ParameterList", "parameters": [], "src": "849:0:128" }, "scope": 45618, "src": "788:62:128", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "id": 45594, "implemented": false, "kind": "function", "modifiers": [], "name": "__deposit", "nameLocation": "865:9:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45592, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45589, "mutability": "mutable", "name": "from", "nameLocation": "883:4:128", "nodeType": "VariableDeclaration", "scope": 45594, "src": "875:12:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45588, "name": "address", "nodeType": "ElementaryTypeName", "src": "875:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45591, "mutability": "mutable", "name": "value", "nameLocation": "897:5:128", "nodeType": "VariableDeclaration", "scope": 45594, "src": "889:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45590, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "889:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "874:29:128" }, "returnParameters": { "id": 45593, "nodeType": "ParameterList", "parameters": [], "src": "920:0:128" }, "scope": 45618, "src": "856:65:128", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "id": 45603, "implemented": false, "kind": "function", "modifiers": [], "name": "__slash", "nameLocation": "936:7:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45601, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45596, "mutability": "mutable", "name": "from", "nameLocation": "952:4:128", "nodeType": "VariableDeclaration", "scope": 45603, "src": "944:12:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45595, "name": "address", "nodeType": "ElementaryTypeName", "src": "944:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45598, "mutability": "mutable", "name": "to", "nameLocation": "966:2:128", "nodeType": "VariableDeclaration", "scope": 45603, "src": "958:10:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45597, "name": "address", "nodeType": "ElementaryTypeName", "src": "958:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45600, "mutability": "mutable", "name": "value", "nameLocation": "978:5:128", "nodeType": "VariableDeclaration", "scope": 45603, "src": "970:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45599, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "970:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "943:41:128" }, "returnParameters": { "id": 45602, "nodeType": "ParameterList", "parameters": [], "src": "1001:0:128" }, "scope": 45618, "src": "927:75:128", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "id": 45610, "implemented": false, "kind": "function", "modifiers": [], "name": "__stake", "nameLocation": "1017:7:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45608, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45605, "mutability": "mutable", "name": "from", "nameLocation": "1033:4:128", "nodeType": "VariableDeclaration", "scope": 45610, "src": "1025:12:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45604, "name": "address", "nodeType": "ElementaryTypeName", "src": "1025:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 45607, "mutability": "mutable", "name": "value", "nameLocation": "1047:5:128", "nodeType": "VariableDeclaration", "scope": 45610, "src": "1039:13:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 45606, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1039:7:128", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1024:29:128" }, "returnParameters": { "id": 45609, "nodeType": "ParameterList", "parameters": [], "src": "1070:0:128" }, "scope": 45618, "src": "1008:63:128", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "id": 45617, "implemented": false, "kind": "function", "modifiers": [], "name": "__unstake", "nameLocation": "1086:9:128", "nodeType": "FunctionDefinition", "parameters": { "id": 45615, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 45612, "mutability": "mutable", "name": "from", "nameLocation": "1104:4:128", "nodeType": "VariableDeclaration", "scope": 45617, "src": "1096:12:128", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 45611, "name": "address", "nodeType": "ElementaryTypeName", "src": "1096:7:128", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "addres