UNPKG

cc-zos-vouching

Version:

Vouching logic for the EVM packages of the ZeppelinOS smart contract platform

1,135 lines 82.9 kB
{ "contractName": "Pausable", "abi": [ { "constant": true, "inputs": [ { "name": "account", "type": "address" } ], "name": "isPauser", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function" }, { "constant": false, "inputs": [], "name": "renouncePauser", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": false, "inputs": [ { "name": "account", "type": "address" } ], "name": "addPauser", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "anonymous": false, "inputs": [], "name": "Paused", "type": "event" }, { "anonymous": false, "inputs": [], "name": "Unpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "account", "type": "address" } ], "name": "PauserAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "account", "type": "address" } ], "name": "PauserRemoved", "type": "event" }, { "constant": false, "inputs": [ { "name": "sender", "type": "address" } ], "name": "initialize", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": true, "inputs": [], "name": "paused", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function" }, { "constant": false, "inputs": [], "name": "pause", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": false, "inputs": [], "name": "unpause", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x60806040526000606660006101000a81548160ff02191690831515021790555034801561002b57600080fd5b506108748061003b6000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a1461008857806346fbf68e1461009f5780635c975abb146100fa5780636ef8d66d1461012957806382dc1ec4146101405780638456cb5914610183578063c4d66de81461019a575b600080fd5b34801561009457600080fd5b5061009d6101dd565b005b3480156100ab57600080fd5b506100e0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610255565b604051808215151515815260200191505060405180910390f35b34801561010657600080fd5b5061010f610272565b604051808215151515815260200191505060405180910390f35b34801561013557600080fd5b5061013e610289565b005b34801561014c57600080fd5b50610181600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610294565b005b34801561018f57600080fd5b506101986102b4565b005b3480156101a657600080fd5b506101db600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061032d565b005b6101e633610255565b15156101f157600080fd5b606660009054906101000a900460ff16151561020c57600080fd5b6000606660006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a1565b600061026b82603361046c90919063ffffffff16565b9050919050565b6000606660009054906101000a900460ff16905090565b61029233610500565b565b61029d33610255565b15156102a857600080fd5b6102b18161055a565b50565b6102bd33610255565b15156102c857600080fd5b606660009054906101000a900460ff161515156102e457600080fd5b6001606660006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a1565b60008060019054906101000a900460ff168061034d575061034c6105b4565b5b8061036457506000809054906101000a900460ff16155b15156103fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e8152602001807f436f6e747261637420696e7374616e63652068617320616c726561647920626581526020017f656e20696e697469616c697a656400000000000000000000000000000000000081525060400191505060405180910390fd5b600060019054906101000a900460ff1690506001600060016101000a81548160ff02191690831515021790555060016000806101000a81548160ff02191690831515021790555061044e826105c5565b80600060016101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156104a957600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61051481603361071490919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b61056e8160336107ae90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b600080303b90506000811491505090565b60008060019054906101000a900460ff16806105e557506105e46105b4565b5b806105fc57506000809054906101000a900460ff16155b1515610696576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e8152602001807f436f6e747261637420696e7374616e63652068617320616c726561647920626581526020017f656e20696e697469616c697a656400000000000000000000000000000000000081525060400191505060405180910390fd5b600060019054906101000a900460ff1690506001600060016101000a81548160ff02191690831515021790555060016000806101000a81548160ff0219169083151502179055506106e682610255565b15156106f6576106f58261055a565b5b80600060016101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561075057600080fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156107ea57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050505600a165627a7a72305820eef9f2bfaa8c58663e576cf9e0024c7ffa522f9ab0e325acf02c3f1ed60d7bd60029", "deployedBytecode": "0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a1461008857806346fbf68e1461009f5780635c975abb146100fa5780636ef8d66d1461012957806382dc1ec4146101405780638456cb5914610183578063c4d66de81461019a575b600080fd5b34801561009457600080fd5b5061009d6101dd565b005b3480156100ab57600080fd5b506100e0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610255565b604051808215151515815260200191505060405180910390f35b34801561010657600080fd5b5061010f610272565b604051808215151515815260200191505060405180910390f35b34801561013557600080fd5b5061013e610289565b005b34801561014c57600080fd5b50610181600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610294565b005b34801561018f57600080fd5b506101986102b4565b005b3480156101a657600080fd5b506101db600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061032d565b005b6101e633610255565b15156101f157600080fd5b606660009054906101000a900460ff16151561020c57600080fd5b6000606660006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a1565b600061026b82603361046c90919063ffffffff16565b9050919050565b6000606660009054906101000a900460ff16905090565b61029233610500565b565b61029d33610255565b15156102a857600080fd5b6102b18161055a565b50565b6102bd33610255565b15156102c857600080fd5b606660009054906101000a900460ff161515156102e457600080fd5b6001606660006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a1565b60008060019054906101000a900460ff168061034d575061034c6105b4565b5b8061036457506000809054906101000a900460ff16155b15156103fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e8152602001807f436f6e747261637420696e7374616e63652068617320616c726561647920626581526020017f656e20696e697469616c697a656400000000000000000000000000000000000081525060400191505060405180910390fd5b600060019054906101000a900460ff1690506001600060016101000a81548160ff02191690831515021790555060016000806101000a81548160ff02191690831515021790555061044e826105c5565b80600060016101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156104a957600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61051481603361071490919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b61056e8160336107ae90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b600080303b90506000811491505090565b60008060019054906101000a900460ff16806105e557506105e46105b4565b5b806105fc57506000809054906101000a900460ff16155b1515610696576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e8152602001807f436f6e747261637420696e7374616e63652068617320616c726561647920626581526020017f656e20696e697469616c697a656400000000000000000000000000000000000081525060400191505060405180910390fd5b600060019054906101000a900460ff1690506001600060016101000a81548160ff02191690831515021790555060016000806101000a81548160ff0219169083151502179055506106e682610255565b15156106f6576106f58261055a565b5b80600060016101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561075057600080fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156107ea57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050505600a165627a7a72305820eef9f2bfaa8c58663e576cf9e0024c7ffa522f9ab0e325acf02c3f1ed60d7bd60029", "sourceMap": "228:1064:5:-;;;341:5;318:28;;;;;;;;;;;;;;;;;;;;228:1064;8:9:-1;5:2;;;30:1;27;20:12;5:2;228:1064:5;;;;;;;", "deployedSourceMap": "228:1064:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1161:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1161:95:5;;;;;;493:100:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;493:100:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;524:69:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;524:69:5;;;;;;;;;;;;;;;;;;;;;;;;;;;685::4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;685:69:4;;;;;;597:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;597:84:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;986:93:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;986:93:5;;;;;;351:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;351:95:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;1161;456:20:4;465:10;456:8;:20::i;:::-;448:29;;;;;;;;887:7:5;;;;;;;;;;;879:16;;;;;;;;1225:5;1215:7;;:15;;;;;;;;;;;;;;;;;;1241:10;;;;;;;;;;1161:95::o;493:100:4:-;549:4;568:20;580:7;568;:11;;:20;;;;:::i;:::-;561:27;;493:100;;;:::o;524:69:5:-;562:4;581:7;;;;;;;;;;;574:14;;524:69;:::o;685::4:-;724:25;738:10;724:13;:25::i;:::-;685:69::o;597:84::-;456:20;465:10;456:8;:20::i;:::-;448:29;;;;;;;;657:19;668:7;657:10;:19::i;:::-;597:84;:::o;986:93:5:-;456:20:4;465:10;456:8;:20::i;:::-;448:29;;;;;;;;734:7:5;;;;;;;;;;;733:8;725:17;;;;;;;;1051:4;1041:7;;:14;;;;;;;;;;;;;;;;;;1066:8;;;;;;;;;;986:93::o;351:95::-;1121:20:16;1016:12;;;;;;;;;;;:31;;;;1032:15;:13;:15::i;:::-;1016:31;:47;;;;1052:11;;;;;;;;;;;1051:12;1016:47;1008:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1144:12;;;;;;;;;;;1121:35;;1177:4;1162:12;;:19;;;;;;;;;;;;;;;;;;1201:4;1187:11;;:18;;;;;;;;;;;;;;;;;;412:29:5;434:6;412:21;:29::i;:::-;1235:15:16;1220:12;;:30;;;;;;;;;;;;;;;;;;351:95:5;;:::o;657:166:3:-;741:4;782:1;763:21;;:7;:21;;;;755:30;;;;;;;;798:4;:11;;:20;810:7;798:20;;;;;;;;;;;;;;;;;;;;;;;;;791:27;;657:166;;;;:::o;870:116:4:-;925:23;940:7;925;:14;;:23;;;;:::i;:::-;973:7;959:22;;;;;;;;;;;;870:116;:::o;758:108::-;810:20;822:7;810;:11;;:20;;;;:::i;:::-;853:7;841:20;;;;;;;;;;;;758:108;:::o;1341:467:16:-;1388:4;1729:10;1774:7;1762:20;1756:26;;1802:1;1796:2;:7;1789:14;;1341:467;;:::o;295:121:4:-;1121:20:16;1016:12;;;;;;;;;;;:31;;;;1032:15;:13;:15::i;:::-;1016:31;:47;;;;1052:11;;;;;;;;;;;1051:12;1016:47;1008:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1144:12;;;;;;;;;;;1121:35;;1177:4;1162:12;;:19;;;;;;;;;;;;;;;;;;1201:4;1187:11;;:18;;;;;;;;;;;;;;;;;;361:16:4;370:6;361:8;:16::i;:::-;360:17;356:56;;;387:18;398:6;387:10;:18::i;:::-;356:56;1235:15:16;1220:12;;:30;;;;;;;;;;;;;;;;;;295:121:4;;:::o;443:136:3:-;537:1;518:21;;:7;:21;;;;510:30;;;;;;;;569:5;546:4;:11;;:20;558:7;546:20;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;443:136;;:::o;245:132::-;336:1;317:21;;:7;:21;;;;309:30;;;;;;;;368:4;345;:11;;:20;357:7;345:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;245:132;;:::o", "source": "pragma solidity ^0.4.24;\n\nimport \"zos-lib/contracts/Initializable.sol\";\nimport \"../access/roles/PauserRole.sol\";\n\n\n/**\n * @title Pausable\n * @dev Base contract which allows children to implement an emergency stop mechanism.\n */\ncontract Pausable is Initializable, PauserRole {\n event Paused();\n event Unpaused();\n\n bool private _paused = false;\n\n function initialize(address sender) public initializer {\n PauserRole.initialize(sender);\n }\n\n /**\n * @return true if the contract is paused, false otherwise.\n */\n function paused() public view returns(bool) {\n return _paused;\n }\n\n /**\n * @dev Modifier to make a function callable only when the contract is not paused.\n */\n modifier whenNotPaused() {\n require(!_paused);\n _;\n }\n\n /**\n * @dev Modifier to make a function callable only when the contract is paused.\n */\n modifier whenPaused() {\n require(_paused);\n _;\n }\n\n /**\n * @dev called by the owner to pause, triggers stopped state\n */\n function pause() public onlyPauser whenNotPaused {\n _paused = true;\n emit Paused();\n }\n\n /**\n * @dev called by the owner to unpause, returns to normal state\n */\n function unpause() public onlyPauser whenPaused {\n _paused = false;\n emit Unpaused();\n }\n\n uint256[50] private ______gap;\n}\n", "sourcePath": "openzeppelin-eth/contracts/lifecycle/Pausable.sol", "ast": { "absolutePath": "openzeppelin-eth/contracts/lifecycle/Pausable.sol", "exportedSymbols": { "Pausable": [ 774 ] }, "id": 775, "nodeType": "SourceUnit", "nodes": [ { "id": 687, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:5" }, { "absolutePath": "zos-lib/contracts/Initializable.sol", "file": "zos-lib/contracts/Initializable.sol", "id": 688, "nodeType": "ImportDirective", "scope": 775, "sourceUnit": 1919, "src": "26:45:5", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "openzeppelin-eth/contracts/access/roles/PauserRole.sol", "file": "../access/roles/PauserRole.sol", "id": 689, "nodeType": "ImportDirective", "scope": 775, "sourceUnit": 686, "src": "72:40:5", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 690, "name": "Initializable", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 1918, "src": "249:13:5", "typeDescriptions": { "typeIdentifier": "t_contract$_Initializable_$1918", "typeString": "contract Initializable" } }, "id": 691, "nodeType": "InheritanceSpecifier", "src": "249:13:5" }, { "arguments": null, "baseName": { "contractScope": null, "id": 692, "name": "PauserRole", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 685, "src": "264:10:5", "typeDescriptions": { "typeIdentifier": "t_contract$_PauserRole_$685", "typeString": "contract PauserRole" } }, "id": 693, "nodeType": "InheritanceSpecifier", "src": "264:10:5" } ], "contractDependencies": [ 685, 1918 ], "contractKind": "contract", "documentation": "@title Pausable\n@dev Base contract which allows children to implement an emergency stop mechanism.", "fullyImplemented": true, "id": 774, "linearizedBaseContracts": [ 774, 685, 1918 ], "name": "Pausable", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "documentation": null, "id": 695, "name": "Paused", "nodeType": "EventDefinition", "parameters": { "id": 694, "nodeType": "ParameterList", "parameters": [], "src": "291:2:5" }, "src": "279:15:5" }, { "anonymous": false, "documentation": null, "id": 697, "name": "Unpaused", "nodeType": "EventDefinition", "parameters": { "id": 696, "nodeType": "ParameterList", "parameters": [], "src": "311:2:5" }, "src": "297:17:5" }, { "constant": false, "id": 700, "name": "_paused", "nodeType": "VariableDeclaration", "scope": 774, "src": "318:28:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 698, "name": "bool", "nodeType": "ElementaryTypeName", "src": "318:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": { "argumentTypes": null, "hexValue": "66616c7365", "id": 699, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "341:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "visibility": "private" }, { "body": { "id": 713, "nodeType": "Block", "src": "406:40:5", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 710, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 702, "src": "434:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "argumentTypes": null, "id": 707, "name": "PauserRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 685, "src": "412:10:5", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_PauserRole_$685_$", "typeString": "type(contract PauserRole)" } }, "id": 709, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "initialize", "nodeType": "MemberAccess", "referencedDeclaration": 603, "src": "412:21:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "412:29:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 712, "nodeType": "ExpressionStatement", "src": "412:29:5" } ] }, "documentation": null, "id": 714, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, "id": 705, "modifierName": { "argumentTypes": null, "id": 704, "name": "initializer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1899, "src": "394:11:5", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "394:11:5" } ], "name": "initialize", "nodeType": "FunctionDefinition", "parameters": { "id": 703, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 702, "name": "sender", "nodeType": "VariableDeclaration", "scope": 714, "src": "371:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 701, "name": "address", "nodeType": "ElementaryTypeName", "src": "371:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" } ], "src": "370:16:5" }, "payable": false, "returnParameters": { "id": 706, "nodeType": "ParameterList", "parameters": [], "src": "406:0:5" }, "scope": 774, "src": "351:95:5", "stateMutability": "nonpayable", "superFunction": 603, "visibility": "public" }, { "body": { "id": 721, "nodeType": "Block", "src": "568:25:5", "statements": [ { "expression": { "argumentTypes": null, "id": 719, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 700, "src": "581:7:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 718, "id": 720, "nodeType": "Return", "src": "574:14:5" } ] }, "documentation": "@return true if the contract is paused, false otherwise.", "id": 722, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "paused", "nodeType": "FunctionDefinition", "parameters": { "id": 715, "nodeType": "ParameterList", "parameters": [], "src": "539:2:5" }, "payable": false, "returnParameters": { "id": 718, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 717, "name": "", "nodeType": "VariableDeclaration", "scope": 722, "src": "562:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 716, "name": "bool", "nodeType": "ElementaryTypeName", "src": "562:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": null, "visibility": "internal" } ], "src": "561:6:5" }, "scope": 774, "src": "524:69:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { "id": 730, "nodeType": "Block", "src": "719:35:5", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 726, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "733:8:5", "subExpression": { "argumentTypes": null, "id": 725, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 700, "src": "734:7:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 724, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ 1936, 1937 ], "referencedDeclaration": 1936, "src": "725:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 727, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "725:17:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 728, "nodeType": "ExpressionStatement", "src": "725:17:5" }, { "id": 729, "nodeType": "PlaceholderStatement", "src": "748:1:5" } ] }, "documentation": "@dev Modifier to make a function callable only when the contract is not paused.", "id": 731, "name": "whenNotPaused", "nodeType": "ModifierDefinition", "parameters": { "id": 723, "nodeType": "ParameterList", "parameters": [], "src": "716:2:5" }, "src": "694:60:5", "visibility": "internal" }, { "body": { "id": 738, "nodeType": "Block", "src": "873:34:5", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 734, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 700, "src": "887:7:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 733, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ 1936, 1937 ], "referencedDeclaration": 1936, "src": "879:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 735, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "879:16:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 736, "nodeType": "ExpressionStatement", "src": "879:16:5" }, { "id": 737, "nodeType": "PlaceholderStatement", "src": "901:1:5" } ] }, "documentation": "@dev Modifier to make a function callable only when the contract is paused.", "id": 739, "name": "whenPaused", "nodeType": "ModifierDefinition", "parameters": { "id": 732, "nodeType": "ParameterList", "parameters": [], "src": "870:2:5" }, "src": "851:56:5", "visibility": "internal" }, { "body": { "id": 753, "nodeType": "Block", "src": "1035:44:5", "statements": [ { "expression": { "argumentTypes": null, "id": 748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 746, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 700, "src": "1041:7:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", "id": 747, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "1051:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "1041:14:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 749, "nodeType": "ExpressionStatement", "src": "1041:14:5" }, { "eventCall": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "id": 750, "name": "Paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 695, "src": "1066:6:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 751, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1066:8:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 752, "nodeType": "EmitStatement", "src": "1061:13:5" } ] }, "documentation": "@dev called by the owner to pause, triggers stopped state", "id": 754, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, "id": 742, "modifierName": { "argumentTypes": null, "id": 741, "name": "onlyPauser", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 614, "src": "1010:10:5", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "1010:10:5" }, { "arguments": null, "id": 744, "modifierName": { "argumentTypes": null, "id": 743, "name": "whenNotPaused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "1021:13:5", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "1021:13:5" } ], "name": "pause", "nodeType": "FunctionDefinition", "parameters": { "id": 740, "nodeType": "ParameterList", "parameters": [], "src": "1000:2:5" }, "payable": false, "returnParameters": { "id": 745, "nodeType": "ParameterList", "parameters": [], "src": "1035:0:5" }, "scope": 774, "src": "986:93:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { "id": 768, "nodeType": "Block", "src": "1209:47:5", "statements": [ { "expression": { "argumentTypes": null, "id": 763, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 761, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 700, "src": "1215:7:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "hexValue": "66616c7365", "id": 762, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "1225:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "src": "1215:15:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 764, "nodeType": "ExpressionStatement", "src": "1215:15:5" }, { "eventCall": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "id": 765, "name": "Unpaused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 697, "src": "1241:8:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 766, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1241:10:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 767, "nodeType": "EmitStatement", "src": "1236:15:5" } ] }, "documentation": "@dev called by the owner to unpause, returns to normal state", "id": 769, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, "id": 757, "modifierName": { "argumentTypes": null, "id": 756, "name": "onlyPauser", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 614, "src": "1187:10:5", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "1187:10:5" }, { "arguments": null, "id": 759, "modifierName": { "argumentTypes": null, "id": 758, "name": "whenPaused", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 739, "src": "1198:10:5", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "1198:10:5" } ], "name": "unpause", "nodeType": "FunctionDefinition", "parameters": { "id": 755, "nodeType": "ParameterList", "parameters": [], "src": "1177:2:5" }, "payable": false, "returnParameters": { "id": 760, "nodeType": "ParameterList", "parameters": [], "src": "1209:0:5" }, "scope": 774, "src": "1161:95:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "constant": false, "id": 773, "name": "______gap", "nodeType": "VariableDeclaration", "scope": 774, "src": "1260:29:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$50_storage", "typeString": "uint256[50]" }, "typeName": { "baseType": { "id": 770, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1260:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 772, "length": { "argumentTypes": null, "hexValue": "3530", "id": 771, "isConstant": false, "isLValue": false, "isPure": false, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1268:2:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": null, "typeString": null }, "value": "50" }, "nodeType": "ArrayTypeName", "src": "1260:11:5", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$50_storage_ptr", "typeString": "uint256[50]" } }, "value": null, "visibility": "private" } ], "scope": 775, "src": "228:1064:5" } ], "src": "0:1293:5" }, "legacyAST": { "absolutePath": "openzeppelin-eth/contracts/lifecycle/Pausable.sol", "exportedSymbols": { "Pausable": [ 774 ] }, "id": 775, "nodeType": "SourceUnit", "nodes": [ { "id": 687, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:5" }, { "absolutePath": "zos-lib/contracts/Initializable.sol", "file": "zos-lib/contracts/Initializable.sol", "id": 688, "nodeType": "ImportDirective", "scope": 775, "sourceUnit": 1919, "src": "26:45:5", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "openzeppelin-eth/contracts/access/roles/PauserRole.sol", "file": "../access/roles/PauserRole.sol", "id": 689, "nodeType": "Imp