@gooddollar/goodcontracts
Version:
GoodDollar Contracts
1,474 lines • 58.8 kB
JSON
{
"contractName": "VotingMachineCallbacksInterface",
"abi": [
{
"constant": false,
"inputs": [
{
"name": "_amount",
"type": "uint256"
},
{
"name": "_beneficiary",
"type": "address"
},
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "mintReputation",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_amount",
"type": "uint256"
},
{
"name": "_owner",
"type": "address"
},
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "burnReputation",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_stakingToken",
"type": "address"
},
{
"name": "_beneficiary",
"type": "address"
},
{
"name": "_amount",
"type": "uint256"
},
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "stakingTokenTransfer",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "getTotalReputationSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "reputationOf",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_stakingToken",
"type": "address"
},
{
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "balanceOfStakingToken",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"metadata": "",
"bytecode": "0x",
"deployedBytecode": "0x",
"sourceMap": "",
"deployedSourceMap": "",
"source": "pragma solidity ^0.5.4;\n\nimport \"openzeppelin-solidity/contracts/token/ERC20/IERC20.sol\";\n\ninterface VotingMachineCallbacksInterface {\n function mintReputation(uint256 _amount, address _beneficiary, bytes32 _proposalId) external returns(bool);\n function burnReputation(uint256 _amount, address _owner, bytes32 _proposalId) external returns(bool);\n\n function stakingTokenTransfer(IERC20 _stakingToken, address _beneficiary, uint256 _amount, bytes32 _proposalId)\n external\n returns(bool);\n\n function getTotalReputationSupply(bytes32 _proposalId) external view returns(uint256);\n function reputationOf(address _owner, bytes32 _proposalId) external view returns(uint256);\n function balanceOfStakingToken(IERC20 _stakingToken, bytes32 _proposalId) external view returns(uint256);\n}\n",
"sourcePath": "@daostack/infra/contracts/votingMachines/VotingMachineCallbacksInterface.sol",
"ast": {
"absolutePath": "@daostack/infra/contracts/votingMachines/VotingMachineCallbacksInterface.sol",
"exportedSymbols": {
"VotingMachineCallbacksInterface": [
15258
]
},
"id": 15259,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 15196,
"literals": [
"solidity",
"^",
"0.5",
".4"
],
"nodeType": "PragmaDirective",
"src": "0:23:60"
},
{
"absolutePath": "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol",
"file": "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol",
"id": 15197,
"nodeType": "ImportDirective",
"scope": 15259,
"sourceUnit": 16749,
"src": "25:64:60",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"documentation": null,
"fullyImplemented": false,
"id": 15258,
"linearizedBaseContracts": [
15258
],
"name": "VotingMachineCallbacksInterface",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"documentation": null,
"id": 15208,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "mintReputation",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15204,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15199,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "163:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15198,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "163:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15201,
"name": "_beneficiary",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "180:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15200,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "180:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15203,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "202:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15202,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "202:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "162:60:60"
},
"returnParameters": {
"id": 15207,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15206,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "240:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15205,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "240:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "239:6:60"
},
"scope": 15258,
"src": "139:107:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15219,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "burnReputation",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15215,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15210,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "275:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15209,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "275:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15212,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "292:14:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15211,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "292:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15214,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "308:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15213,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "308:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "274:54:60"
},
"returnParameters": {
"id": 15218,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15217,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "346:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15216,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "346:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "345:6:60"
},
"scope": 15258,
"src": "251:101:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15232,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "stakingTokenTransfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15228,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15221,
"name": "_stakingToken",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "388:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
},
"typeName": {
"contractScope": null,
"id": 15220,
"name": "IERC20",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 16748,
"src": "388:6:60",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15223,
"name": "_beneficiary",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "410:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15222,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "410:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15225,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "432:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15224,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "432:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15227,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "449:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15226,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "449:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "387:82:60"
},
"returnParameters": {
"id": 15231,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15230,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "495:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15229,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "495:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "494:6:60"
},
"scope": 15258,
"src": "358:143:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15239,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getTotalReputationSupply",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15235,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15234,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15239,
"src": "541:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15233,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "541:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "540:21:60"
},
"returnParameters": {
"id": 15238,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15237,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15239,
"src": "584:7:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15236,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "584:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "583:9:60"
},
"scope": 15258,
"src": "507:86:60",
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15248,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "reputationOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15244,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15241,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 15248,
"src": "620:14:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15240,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "620:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15243,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15248,
"src": "636:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15242,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "636:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "619:37:60"
},
"returnParameters": {
"id": 15247,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15246,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15248,
"src": "679:7:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15245,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "679:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "678:9:60"
},
"scope": 15258,
"src": "598:90:60",
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15257,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "balanceOfStakingToken",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15253,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15250,
"name": "_stakingToken",
"nodeType": "VariableDeclaration",
"scope": 15257,
"src": "724:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
},
"typeName": {
"contractScope": null,
"id": 15249,
"name": "IERC20",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 16748,
"src": "724:6:60",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15252,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15257,
"src": "746:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15251,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "746:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "723:43:60"
},
"returnParameters": {
"id": 15256,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15255,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15257,
"src": "789:7:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15254,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "789:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "788:9:60"
},
"scope": 15258,
"src": "693:105:60",
"stateMutability": "view",
"superFunction": null,
"visibility": "external"
}
],
"scope": 15259,
"src": "91:709:60"
}
],
"src": "0:801:60"
},
"legacyAST": {
"absolutePath": "@daostack/infra/contracts/votingMachines/VotingMachineCallbacksInterface.sol",
"exportedSymbols": {
"VotingMachineCallbacksInterface": [
15258
]
},
"id": 15259,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 15196,
"literals": [
"solidity",
"^",
"0.5",
".4"
],
"nodeType": "PragmaDirective",
"src": "0:23:60"
},
{
"absolutePath": "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol",
"file": "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol",
"id": 15197,
"nodeType": "ImportDirective",
"scope": 15259,
"sourceUnit": 16749,
"src": "25:64:60",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"documentation": null,
"fullyImplemented": false,
"id": 15258,
"linearizedBaseContracts": [
15258
],
"name": "VotingMachineCallbacksInterface",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"documentation": null,
"id": 15208,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "mintReputation",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15204,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15199,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "163:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15198,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "163:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15201,
"name": "_beneficiary",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "180:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15200,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "180:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15203,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "202:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15202,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "202:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "162:60:60"
},
"returnParameters": {
"id": 15207,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15206,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15208,
"src": "240:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15205,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "240:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "239:6:60"
},
"scope": 15258,
"src": "139:107:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15219,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "burnReputation",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15215,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15210,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "275:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15209,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "275:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15212,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "292:14:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15211,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "292:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15214,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "308:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15213,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "308:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "274:54:60"
},
"returnParameters": {
"id": 15218,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15217,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15219,
"src": "346:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15216,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "346:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "345:6:60"
},
"scope": 15258,
"src": "251:101:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15232,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "stakingTokenTransfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15228,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15221,
"name": "_stakingToken",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "388:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
},
"typeName": {
"contractScope": null,
"id": 15220,
"name": "IERC20",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 16748,
"src": "388:6:60",
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$16748",
"typeString": "contract IERC20"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15223,
"name": "_beneficiary",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "410:20:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 15222,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "410:7:60",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15225,
"name": "_amount",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "432:15:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 15224,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "432:7:60",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 15227,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "449:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15226,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "449:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "387:82:60"
},
"returnParameters": {
"id": 15231,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15230,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15232,
"src": "495:4:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 15229,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "495:4:60",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "494:6:60"
},
"scope": 15258,
"src": "358:143:60",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "external"
},
{
"body": null,
"documentation": null,
"id": 15239,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getTotalReputationSupply",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 15235,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15234,
"name": "_proposalId",
"nodeType": "VariableDeclaration",
"scope": 15239,
"src": "541:19:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 15233,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "541:7:60",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "540:21:60"
},
"returnParameters": {
"id": 15238,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 15237,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 15239,
"src": "584:7:60",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uin