UNPKG

@etherisc/registry-contracts

Version:

Etherisc's smart contracts for the registry.

1,291 lines 339 kB
{ "abi": [ { "inputs": [ { "internalType": "contract VersionedOwnable", "name": "implementation", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "inputs": [], "name": "ACTIVATE_AND_SET_OWNER_SIGNATURE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ACTIVATE_SIGNATURE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getImplementation", "outputs": [ { "internalType": "contract VersionedOwnable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getProxy", "outputs": [ { "internalType": "contract TransparentUpgradeableProxy", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "implementation", "type": "address" }, { "internalType": "address", "name": "implementationOwner", "type": "address" }, { "internalType": "address", "name": "activatedBy", "type": "address" } ], "name": "getProxyCallData", "outputs": [ { "internalType": "bytes", "name": "data", "type": "bytes" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract TransparentUpgradeableProxy", "name": "proxy", "type": "address" } ], "name": "setProxy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "transferAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract VersionedOwnable", "name": "newImplementation", "type": "address" } ], "name": "upgrade", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "10": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/Proxy.sol", "11": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/beacon/IBeacon.sol", "12": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "22": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/utils/Address.sol", "23": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/utils/Context.sol", "24": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/utils/StorageSlot.sol", "46": "contracts/shared/OwnableProxyAdmin.sol", "49": "contracts/shared/VersionedOwnable.sol", "6": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/access/Ownable.sol", "7": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/interfaces/draft-IERC1822.sol", "8": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/ERC1967/ERC1967Proxy.sol", "9": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/ERC1967/ERC1967Upgrade.sol" }, "ast": { "absolutePath": "contracts/shared/OwnableProxyAdmin.sol", "exportedSymbols": { "Ownable": [ 12623 ], "OwnableProxyAdmin": [ 5093 ], "TransparentUpgradeableProxy": [ 12771 ], "VersionedOwnable": [ 5965 ] }, "id": 5094, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 4858, "literals": [ "solidity", "^", "0.8", ".19" ], "nodeType": "PragmaDirective", "src": "39:24:46" }, { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/access/Ownable.sol", "file": "@openzeppelin/contracts/access/Ownable.sol", "id": 4860, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 5094, "sourceUnit": 12624, "src": "65:67:46", "symbolAliases": [ { "foreign": { "id": 4859, "name": "Ownable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12623, "src": "73:7:46", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "file": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "id": 4862, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 5094, "sourceUnit": 12772, "src": "133:118:46", "symbolAliases": [ { "foreign": { "id": 4861, "name": "TransparentUpgradeableProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12771, "src": "141:27:46", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "absolutePath": "contracts/shared/VersionedOwnable.sol", "file": "./VersionedOwnable.sol", "id": 4864, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 5094, "sourceUnit": 5966, "src": "253:56:46", "symbolAliases": [ { "foreign": { "id": 4863, "name": "VersionedOwnable", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5965, "src": "261:16:46", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" } ], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 4865, "name": "Ownable", "nameLocations": [ "345:7:46" ], "nodeType": "IdentifierPath", "referencedDeclaration": 12623, "src": "345:7:46" }, "id": 4866, "nodeType": "InheritanceSpecifier", "src": "345:7:46" } ], "canonicalName": "OwnableProxyAdmin", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, "id": 5093, "linearizedBaseContracts": [ 5093, 12623, 16878 ], "name": "OwnableProxyAdmin", "nameLocation": "320:17:46", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, "functionSelector": "68380765", "id": 4869, "mutability": "constant", "name": "ACTIVATE_SIGNATURE", "nameLocation": "382:18:46", "nodeType": "VariableDeclaration", "scope": 5093, "src": "359:71:46", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 4867, "name": "string", "nodeType": "ElementaryTypeName", "src": "359:6:46", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": { "hexValue": "616374697661746528616464726573732c6164647265737329", "id": 4868, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "403:27:46", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9555c4db9836118e3e8fdea0718f0ea22c186d971b87dd92cab0a4deed1a7665", "typeString": "literal_string \"activate(address,address)\"" }, "value": "activate(address,address)" }, "visibility": "public" }, { "constant": true, "functionSelector": "8765c329", "id": 4872, "mutability": "constant", "name": "ACTIVATE_AND_SET_OWNER_SIGNATURE", "nameLocation": "459:32:46", "nodeType": "VariableDeclaration", "scope": 5093, "src": "436:104:46", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 4870, "name": "string", "nodeType": "ElementaryTypeName", "src": "436:6:46", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": { "hexValue": "6163746976617465416e645365744f776e657228616464726573732c616464726573732c6164647265737329", "id": 4871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "494:46:46", "typeDescriptions": { "typeIdentifier": "t_stringliteral_8e2586898501438f09ce73a1c3b09dabeef3881014724f60511363ef4a15257d", "typeString": "literal_string \"activateAndSetOwner(address,address,address)\"" }, "value": "activateAndSetOwner(address,address,address)" }, "visibility": "public" }, { "constant": false, "id": 4875, "mutability": "mutable", "name": "_implementation", "nameLocation": "572:15:46", "nodeType": "VariableDeclaration", "scope": 5093, "src": "547:40:46", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" }, "typeName": { "id": 4874, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 4873, "name": "VersionedOwnable", "nameLocations": [ "547:16:46" ], "nodeType": "IdentifierPath", "referencedDeclaration": 5965, "src": "547:16:46" }, "referencedDeclaration": 5965, "src": "547:16:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } }, "visibility": "private" }, { "constant": false, "id": 4878, "mutability": "mutable", "name": "_proxy", "nameLocation": "629:6:46", "nodeType": "VariableDeclaration", "scope": 5093, "src": "593:42:46", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" }, "typeName": { "id": 4877, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 4876, "name": "TransparentUpgradeableProxy", "nameLocations": [ "593:27:46" ], "nodeType": "IdentifierPath", "referencedDeclaration": 12771, "src": "593:27:46" }, "referencedDeclaration": 12771, "src": "593:27:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } }, "visibility": "private" }, { "body": { "id": 4903, "nodeType": "Block", "src": "723:142:46", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 4895, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 4889, "name": "implementation", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4881, "src": "749:14:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } ], "id": 4888, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "741:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4887, "name": "address", "nodeType": "ElementaryTypeName", "src": "741:7:46", "typeDescriptions": {} } }, "id": 4890, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "741:23:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "hexValue": "30", "id": 4893, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "776:1:46", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 4892, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "768:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4891, "name": "address", "nodeType": "ElementaryTypeName", "src": "768:7:46", "typeDescriptions": {} } }, "id": 4894, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "768:10:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "741:37:46", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "4552524f523a5058412d3030313a494d504c454d454e544154494f4e5f5a45524f", "id": 4896, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "780:35:46", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4d5cd7f0eea0e904925724b1e872a2072b31889e40a08f6ac6dcecc2e16694f5", "typeString": "literal_string \"ERROR:PXA-001:IMPLEMENTATION_ZERO\"" }, "value": "ERROR:PXA-001:IMPLEMENTATION_ZERO" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_4d5cd7f0eea0e904925724b1e872a2072b31889e40a08f6ac6dcecc2e16694f5", "typeString": "literal_string \"ERROR:PXA-001:IMPLEMENTATION_ZERO\"" } ], "id": 4886, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "733:7:46", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4897, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "733:83:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4898, "nodeType": "ExpressionStatement", "src": "733:83:46" }, { "expression": { "id": 4901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4899, "name": "_implementation", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4875, "src": "826:15:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 4900, "name": "implementation", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4881, "src": "844:14:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } }, "src": "826:32:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } }, "id": 4902, "nodeType": "ExpressionStatement", "src": "826:32:46" } ] }, "id": 4904, "implemented": true, "kind": "constructor", "modifiers": [ { "arguments": [], "id": 4884, "kind": "baseConstructorSpecifier", "modifierName": { "id": 4883, "name": "Ownable", "nameLocations": [ "709:7:46" ], "nodeType": "IdentifierPath", "referencedDeclaration": 12623, "src": "709:7:46" }, "nodeType": "ModifierInvocation", "src": "709:9:46" } ], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { "id": 4882, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4881, "mutability": "mutable", "name": "implementation", "nameLocation": "680:14:46", "nodeType": "VariableDeclaration", "scope": 4904, "src": "663:31:46", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" }, "typeName": { "id": 4880, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 4879, "name": "VersionedOwnable", "nameLocations": [ "663:16:46" ], "nodeType": "IdentifierPath", "referencedDeclaration": 5965, "src": "663:16:46" }, "referencedDeclaration": 5965, "src": "663:16:46", "typeDescriptions": { "typeIdentifier": "t_contract$_VersionedOwnable_$5965", "typeString": "contract VersionedOwnable" } }, "visibility": "internal" } ], "src": "653:47:46" }, "returnParameters": { "id": 4885, "nodeType": "ParameterList", "parameters": [], "src": "723:0:46" }, "scope": 5093, "src": "642:223:46", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { "id": 4942, "nodeType": "Block", "src": "964:189:46", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 4921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 4915, "name": "_proxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4878, "src": "990:6:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } ], "id": 4914, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "982:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4913, "name": "address", "nodeType": "ElementaryTypeName", "src": "982:7:46", "typeDescriptions": {} } }, "id": 4916, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "982:15:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "arguments": [ { "hexValue": "30", "id": 4919, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1009:1:46", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 4918, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1001:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4917, "name": "address", "nodeType": "ElementaryTypeName", "src": "1001:7:46", "typeDescriptions": {} } }, "id": 4920, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1001:10:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "982:29:46", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "4552524f523a5058412d3031303a50524f58595f5345545f414c5245414459", "id": 4922, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1013:33:46", "typeDescriptions": { "typeIdentifier": "t_stringliteral_f42f503fa98174786f0db958771b0081683e54aec79c123209036d9b6d205c08", "typeString": "literal_string \"ERROR:PXA-010:PROXY_SET_ALREADY\"" }, "value": "ERROR:PXA-010:PROXY_SET_ALREADY" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_f42f503fa98174786f0db958771b0081683e54aec79c123209036d9b6d205c08", "typeString": "literal_string \"ERROR:PXA-010:PROXY_SET_ALREADY\"" } ], "id": 4912, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "974:7:46", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4923, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "974:73:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4924, "nodeType": "ExpressionStatement", "src": "974:73:46" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 4934, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 4928, "name": "proxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4907, "src": "1073:5:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } ], "id": 4927, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1065:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4926, "name": "address", "nodeType": "ElementaryTypeName", "src": "1065:7:46", "typeDescriptions": {} } }, "id": 4929, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1065:14:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "hexValue": "30", "id": 4932, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1091:1:46", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 4931, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1083:7:46", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4930, "name": "address", "nodeType": "ElementaryTypeName", "src": "1083:7:46", "typeDescriptions": {} } }, "id": 4933, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1083:10:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "1065:28:46", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "4552524f523a5058412d3031313a50524f58595f5a45524f", "id": 4935, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1095:26:46", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5c98f5d5a356e842a7ab3a8afa12f2b6a48abe1480b0be6404e09ec889fee76a", "typeString": "literal_string \"ERROR:PXA-011:PROXY_ZERO\"" }, "value": "ERROR:PXA-011:PROXY_ZERO" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_5c98f5d5a356e842a7ab3a8afa12f2b6a48abe1480b0be6404e09ec889fee76a", "typeString": "literal_string \"ERROR:PXA-011:PROXY_ZERO\"" } ], "id": 4925, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "1057:7:46", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4936, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:65:46", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4937, "nodeType": "ExpressionStatement", "src": "1057:65:46" }, { "expression": { "id": 4940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4938, "name": "_proxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4878, "src": "1132:6:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 4939, "name": "proxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4907, "src": "1141:5:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } }, "src": "1132:14:46", "typeDescriptions": { "typeIdentifier": "t_contract$_TransparentUpgradeableProxy_$12771", "typeString": "contract TransparentUpgradeableProxy" } }, "id": 4941, "nodeType": "ExpressionStatement", "src": "1132:14:46" } ] }, "functionSelector": "97107d6d", "id": 4943, "implemented": true, "ki