@etherisc/gif-contracts
Version:
This repository holds the GIF core contracts and tools to develop, test and deploy GIF instances.
1,603 lines • 74.5 kB
JSON
{
"abi": [
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "adjustStakingRequirements",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "archive",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "componentId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fixedFee",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fractionalFee",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "feeCalculationData",
"type": "bytes"
}
],
"name": "createFeeSpecification",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "componentId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fixedFee",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fractionalFee",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "feeCalculationData",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "createdAt",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "updatedAt",
"type": "uint256"
}
],
"internalType": "struct ITreasury.FeeSpecification",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "createRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "decline",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "contractName",
"type": "bytes32"
}
],
"name": "deregister",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "release",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "contractName",
"type": "bytes32"
}
],
"name": "deregisterInRelease",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "principal",
"type": "address"
}
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "invalidateRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "newRelease",
"type": "bytes32"
}
],
"name": "prepareRelease",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "contractName",
"type": "bytes32"
},
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "register",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "release",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "contractName",
"type": "bytes32"
},
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "registerInRelease",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "resume",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "resumeTreasury",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "principal",
"type": "address"
}
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint256",
"name": "componentId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fixedFee",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fractionalFee",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "feeCalculationData",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "createdAt",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "updatedAt",
"type": "uint256"
}
],
"internalType": "struct ITreasury.FeeSpecification",
"name": "feeSpec",
"type": "tuple"
}
],
"name": "setCapitalFees",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint16",
"name": "componentType",
"type": "uint16"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "setDefaultStaking",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "walletAddress",
"type": "address"
}
],
"name": "setInstanceWallet",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint256",
"name": "componentId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fixedFee",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "fractionalFee",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "feeCalculationData",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "createdAt",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "updatedAt",
"type": "uint256"
}
],
"internalType": "struct ITreasury.FeeSpecification",
"name": "feeSpec",
"type": "tuple"
}
],
"name": "setPremiumFees",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "productId",
"type": "uint256"
},
{
"internalType": "address",
"name": "erc20Address",
"type": "address"
}
],
"name": "setProductToken",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "riskpoolId",
"type": "uint256"
},
{
"internalType": "address",
"name": "walletAddress",
"type": "address"
}
],
"name": "setRiskpoolWallet",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "suspend",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "suspendTreasury",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"allSourcePaths": {
"47": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceOperatorService.sol"
},
"ast": {
"absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceOperatorService.sol",
"exportedSymbols": {
"IERC20": [
18510
],
"IInstanceOperatorService": [
23629
],
"ITreasury": [
23443
]
},
"id": 23630,
"license": "Apache-2.0",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 23480,
"literals": [
"solidity",
"0.8",
".2"
],
"nodeType": "PragmaDirective",
"src": "39:22:47"
},
{
"absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/ITreasury.sol",
"file": "../modules/ITreasury.sol",
"id": 23481,
"nameLocation": "-1:-1:-1",
"nodeType": "ImportDirective",
"scope": 23630,
"sourceUnit": 23444,
"src": "63:34:47",
"symbolAliases": [],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"fullyImplemented": false,
"id": 23629,
"linearizedBaseContracts": [
23629
],
"name": "IInstanceOperatorService",
"nameLocation": "109:24:47",
"nodeType": "ContractDefinition",
"nodes": [
{
"functionSelector": "893917ea",
"id": 23486,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "prepareRelease",
"nameLocation": "166:14:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23484,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23483,
"mutability": "mutable",
"name": "newRelease",
"nameLocation": "189:10:47",
"nodeType": "VariableDeclaration",
"scope": 23486,
"src": "181:18:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23482,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "181:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "180:20:47"
},
"returnParameters": {
"id": 23485,
"nodeType": "ParameterList",
"parameters": [],
"src": "209:0:47"
},
"scope": 23629,
"src": "157:53:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "d22057a9",
"id": 23493,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "register",
"nameLocation": "224:8:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23491,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23488,
"mutability": "mutable",
"name": "contractName",
"nameLocation": "241:12:47",
"nodeType": "VariableDeclaration",
"scope": 23493,
"src": "233:20:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23487,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "233:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23490,
"mutability": "mutable",
"name": "contractAddress",
"nameLocation": "263:15:47",
"nodeType": "VariableDeclaration",
"scope": 23493,
"src": "255:23:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 23489,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "255:7:47",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "232:47:47"
},
"returnParameters": {
"id": 23492,
"nodeType": "ParameterList",
"parameters": [],
"src": "288:0:47"
},
"scope": 23629,
"src": "215:74:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "20813154",
"id": 23498,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "deregister",
"nameLocation": "303:10:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23496,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23495,
"mutability": "mutable",
"name": "contractName",
"nameLocation": "322:12:47",
"nodeType": "VariableDeclaration",
"scope": 23498,
"src": "314:20:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23494,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "314:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "313:22:47"
},
"returnParameters": {
"id": 23497,
"nodeType": "ParameterList",
"parameters": [],
"src": "344:0:47"
},
"scope": 23629,
"src": "294:51:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "1d5e7314",
"id": 23507,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "registerInRelease",
"nameLocation": "359:17:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23505,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23500,
"mutability": "mutable",
"name": "release",
"nameLocation": "385:7:47",
"nodeType": "VariableDeclaration",
"scope": 23507,
"src": "377:15:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23499,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "377:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23502,
"mutability": "mutable",
"name": "contractName",
"nameLocation": "402:12:47",
"nodeType": "VariableDeclaration",
"scope": 23507,
"src": "394:20:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23501,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "394:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23504,
"mutability": "mutable",
"name": "contractAddress",
"nameLocation": "424:15:47",
"nodeType": "VariableDeclaration",
"scope": 23507,
"src": "416:23:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 23503,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "416:7:47",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "376:64:47"
},
"returnParameters": {
"id": 23506,
"nodeType": "ParameterList",
"parameters": [],
"src": "449:0:47"
},
"scope": 23629,
"src": "350:100:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "dc527b08",
"id": 23514,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "deregisterInRelease",
"nameLocation": "464:19:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23512,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23509,
"mutability": "mutable",
"name": "release",
"nameLocation": "492:7:47",
"nodeType": "VariableDeclaration",
"scope": 23514,
"src": "484:15:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23508,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "484:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23511,
"mutability": "mutable",
"name": "contractName",
"nameLocation": "509:12:47",
"nodeType": "VariableDeclaration",
"scope": 23514,
"src": "501:20:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23510,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "501:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "483:39:47"
},
"returnParameters": {
"id": 23513,
"nodeType": "ParameterList",
"parameters": [],
"src": "531:0:47"
},
"scope": 23629,
"src": "455:77:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "c42994a2",
"id": 23519,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "createRole",
"nameLocation": "561:10:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23517,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23516,
"mutability": "mutable",
"name": "role",
"nameLocation": "580:4:47",
"nodeType": "VariableDeclaration",
"scope": 23519,
"src": "572:12:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23515,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "572:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "571:14:47"
},
"returnParameters": {
"id": 23518,
"nodeType": "ParameterList",
"parameters": [],
"src": "594:0:47"
},
"scope": 23629,
"src": "552:43:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "d17d0233",
"id": 23524,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "invalidateRole",
"nameLocation": "609:14:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23522,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23521,
"mutability": "mutable",
"name": "role",
"nameLocation": "632:4:47",
"nodeType": "VariableDeclaration",
"scope": 23524,
"src": "624:12:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23520,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "624:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
}
],
"src": "623:14:47"
},
"returnParameters": {
"id": 23523,
"nodeType": "ParameterList",
"parameters": [],
"src": "646:0:47"
},
"scope": 23629,
"src": "600:47:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "2f2ff15d",
"id": 23531,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "grantRole",
"nameLocation": "661:9:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23529,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23526,
"mutability": "mutable",
"name": "role",
"nameLocation": "679:4:47",
"nodeType": "VariableDeclaration",
"scope": 23531,
"src": "671:12:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23525,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "671:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23528,
"mutability": "mutable",
"name": "principal",
"nameLocation": "693:9:47",
"nodeType": "VariableDeclaration",
"scope": 23531,
"src": "685:17:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 23527,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "685:7:47",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "670:33:47"
},
"returnParameters": {
"id": 23530,
"nodeType": "ParameterList",
"parameters": [],
"src": "712:0:47"
},
"scope": 23629,
"src": "652:61:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "d547741f",
"id": 23538,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "revokeRole",
"nameLocation": "727:10:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23536,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23533,
"mutability": "mutable",
"name": "role",
"nameLocation": "746:4:47",
"nodeType": "VariableDeclaration",
"scope": 23538,
"src": "738:12:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 23532,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "738:7:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23535,
"mutability": "mutable",
"name": "principal",
"nameLocation": "760:9:47",
"nodeType": "VariableDeclaration",
"scope": 23538,
"src": "752:17:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 23534,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "752:7:47",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"visibility": "internal"
}
],
"src": "737:33:47"
},
"returnParameters": {
"id": 23537,
"nodeType": "ParameterList",
"parameters": [],
"src": "779:0:47"
},
"scope": 23629,
"src": "718:62:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "b759f954",
"id": 23543,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "approve",
"nameLocation": "812:7:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23541,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23540,
"mutability": "mutable",
"name": "id",
"nameLocation": "828:2:47",
"nodeType": "VariableDeclaration",
"scope": 23543,
"src": "820:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23539,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "820:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "819:12:47"
},
"returnParameters": {
"id": 23542,
"nodeType": "ParameterList",
"parameters": [],
"src": "840:0:47"
},
"scope": 23629,
"src": "803:38:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "a0355f4e",
"id": 23548,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "decline",
"nameLocation": "855:7:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23546,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23545,
"mutability": "mutable",
"name": "id",
"nameLocation": "871:2:47",
"nodeType": "VariableDeclaration",
"scope": 23548,
"src": "863:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23544,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "863:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "862:12:47"
},
"returnParameters": {
"id": 23547,
"nodeType": "ParameterList",
"parameters": [],
"src": "883:0:47"
},
"scope": 23629,
"src": "846:38:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "4b865846",
"id": 23553,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "suspend",
"nameLocation": "898:7:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23551,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23550,
"mutability": "mutable",
"name": "id",
"nameLocation": "914:2:47",
"nodeType": "VariableDeclaration",
"scope": 23553,
"src": "906:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23549,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "906:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "905:12:47"
},
"returnParameters": {
"id": 23552,
"nodeType": "ParameterList",
"parameters": [],
"src": "926:0:47"
},
"scope": 23629,
"src": "889:38:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "414000b5",
"id": 23558,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "resume",
"nameLocation": "941:6:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23556,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23555,
"mutability": "mutable",
"name": "id",
"nameLocation": "956:2:47",
"nodeType": "VariableDeclaration",
"scope": 23558,
"src": "948:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23554,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "948:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "947:12:47"
},
"returnParameters": {
"id": 23557,
"nodeType": "ParameterList",
"parameters": [],
"src": "968:0:47"
},
"scope": 23629,
"src": "932:37:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "93c829fc",
"id": 23563,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "archive",
"nameLocation": "983:7:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23561,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23560,
"mutability": "mutable",
"name": "id",
"nameLocation": "999:2:47",
"nodeType": "VariableDeclaration",
"scope": 23563,
"src": "991:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23559,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "991:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "990:12:47"
},
"returnParameters": {
"id": 23562,
"nodeType": "ParameterList",
"parameters": [],
"src": "1011:0:47"
},
"scope": 23629,
"src": "974:38:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "394c78ba",
"id": 23570,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "setDefaultStaking",
"nameLocation": "1054:17:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23568,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23565,
"mutability": "mutable",
"name": "componentType",
"nameLocation": "1079:13:47",
"nodeType": "VariableDeclaration",
"scope": 23570,
"src": "1072:20:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint16",
"typeString": "uint16"
},
"typeName": {
"id": 23564,
"name": "uint16",
"nodeType": "ElementaryTypeName",
"src": "1072:6:47",
"typeDescriptions": {
"typeIdentifier": "t_uint16",
"typeString": "uint16"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23567,
"mutability": "mutable",
"name": "data",
"nameLocation": "1109:4:47",
"nodeType": "VariableDeclaration",
"scope": 23570,
"src": "1094:19:47",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 23566,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "1094:5:47",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"visibility": "internal"
}
],
"src": "1071:43:47"
},
"returnParameters": {
"id": 23569,
"nodeType": "ParameterList",
"parameters": [],
"src": "1123:0:47"
},
"scope": 23629,
"src": "1045:79:47",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "72beb6fb",
"id": 23577,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "adjustStakingRequirements",
"nameLocation": "1138:25:47",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 23575,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 23572,
"mutability": "mutable",
"name": "id",
"nameLocation": "1172:2:47",
"nodeType": "VariableDeclaration",
"scope": 23577,
"src": "1164:10:47",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 23571,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1164:7:47",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23574,
"mutability": "mutable",
"name": "data",
"nameLocation": "1191:4:47",
"nodeType": "VariableDeclaration",
"scope": 23577,
"src": "1176:19:47",
"stateVariable": false,
"storageLocation": "calldata",
"typeDescriptions": {
"typeIdentifier": "t_bytes_calldata_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 23573,
"name": "bytes",
"nod