UNPKG

@ensdomains/root

Version:

[![Build Status](https://travis-ci.com/ensdomains/root.svg?branch=master)](https://travis-ci.com/ensdomains/root) [![License](https://img.shields.io/badge/License-BSD--2--Clause-blue.svg)](LICENSE)

1,356 lines (1,355 loc) 134 kB
{ "contractName": "ENS", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "label", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "owner", "type": "address" } ], "name": "NewOwner", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "resolver", "type": "address" } ], "name": "NewResolver", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "indexed": false, "internalType": "uint64", "name": "ttl", "type": "uint64" } ], "name": "NewTTL", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "owner", "type": "address" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "resolver", "type": "address" }, { "internalType": "uint64", "name": "ttl", "type": "uint64" } ], "name": "setRecord", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "bytes32", "name": "label", "type": "bytes32" }, { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "resolver", "type": "address" }, { "internalType": "uint64", "name": "ttl", "type": "uint64" } ], "name": "setSubnodeRecord", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "bytes32", "name": "label", "type": "bytes32" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "setSubnodeOwner", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "address", "name": "resolver", "type": "address" } ], "name": "setResolver", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "setOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" }, { "internalType": "uint64", "name": "ttl", "type": "uint64" } ], "name": "setTTL", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" } ], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" } ], "name": "resolver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" } ], "name": "ttl", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "node", "type": "bytes32" } ], "name": "recordExists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"label\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@ensdomains/ens/contracts/ENS.sol\":\"ENS\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@ensdomains/ens/contracts/ENS.sol\":{\"keccak256\":\"0xe91a9e0c491e424dd7e873fab45b267ecea488dabab0a577d57b46631e7648f9\",\"urls\":[\"bzz-raw://2efece18eaa2dc0d76e739e9cb1c365ce338f2bfaee15648830173957025797e\",\"dweb:/ipfs/QmNm6FguAyCV6ZGN1KeUts9iYAqdAR6StFjHv6uuBpVVuQ\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [], "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity ^0.8.0;\n\ninterface ENS {\n\n // Logged when the owner of a node assigns a new owner to a subnode.\n event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner);\n\n // Logged when the owner of a node transfers ownership to a new account.\n event Transfer(bytes32 indexed node, address owner);\n\n // Logged when the resolver for a node changes.\n event NewResolver(bytes32 indexed node, address resolver);\n\n // Logged when the TTL of a node changes\n event NewTTL(bytes32 indexed node, uint64 ttl);\n\n // Logged when an operator is added or removed.\n event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\n\n function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) external virtual;\n function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) external virtual;\n function setSubnodeOwner(bytes32 node, bytes32 label, address owner) external virtual returns(bytes32);\n function setResolver(bytes32 node, address resolver) external virtual;\n function setOwner(bytes32 node, address owner) external virtual;\n function setTTL(bytes32 node, uint64 ttl) external virtual;\n function setApprovalForAll(address operator, bool approved) external virtual;\n function owner(bytes32 node) external virtual view returns (address);\n function resolver(bytes32 node) external virtual view returns (address);\n function ttl(bytes32 node) external virtual view returns (uint64);\n function recordExists(bytes32 node) external virtual view returns (bool);\n function isApprovedForAll(address owner, address operator) external virtual view returns (bool);\n}\n", "sourcePath": "@ensdomains/ens/contracts/ENS.sol", "ast": { "absolutePath": "@ensdomains/ens/contracts/ENS.sol", "exportedSymbols": { "ENS": [ 421 ] }, "id": 422, "nodeType": "SourceUnit", "nodes": [ { "id": 286, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "0:23:5" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 421, "linearizedBaseContracts": [ 421 ], "name": "ENS", "nameLocation": "35:3:5", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "id": 294, "name": "NewOwner", "nameLocation": "125:8:5", "nodeType": "EventDefinition", "parameters": { "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 288, "indexed": true, "mutability": "mutable", "name": "node", "nameLocation": "150:4:5", "nodeType": "VariableDeclaration", "scope": 294, "src": "134:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 287, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "134:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 290, "indexed": true, "mutability": "mutable", "name": "label", "nameLocation": "172:5:5", "nodeType": "VariableDeclaration", "scope": 294, "src": "156:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 289, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "156:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 292, "indexed": false, "mutability": "mutable", "name": "owner", "nameLocation": "187:5:5", "nodeType": "VariableDeclaration", "scope": 294, "src": "179:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 291, "name": "address", "nodeType": "ElementaryTypeName", "src": "179:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "133:60:5" }, "src": "119:75:5" }, { "anonymous": false, "id": 300, "name": "Transfer", "nameLocation": "283:8:5", "nodeType": "EventDefinition", "parameters": { "id": 299, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 296, "indexed": true, "mutability": "mutable", "name": "node", "nameLocation": "308:4:5", "nodeType": "VariableDeclaration", "scope": 300, "src": "292:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 295, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "292:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 298, "indexed": false, "mutability": "mutable", "name": "owner", "nameLocation": "322:5:5", "nodeType": "VariableDeclaration", "scope": 300, "src": "314:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 297, "name": "address", "nodeType": "ElementaryTypeName", "src": "314:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "291:37:5" }, "src": "277:52:5" }, { "anonymous": false, "id": 306, "name": "NewResolver", "nameLocation": "393:11:5", "nodeType": "EventDefinition", "parameters": { "id": 305, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 302, "indexed": true, "mutability": "mutable", "name": "node", "nameLocation": "421:4:5", "nodeType": "VariableDeclaration", "scope": 306, "src": "405:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 301, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "405:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 304, "indexed": false, "mutability": "mutable", "name": "resolver", "nameLocation": "435:8:5", "nodeType": "VariableDeclaration", "scope": 306, "src": "427:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 303, "name": "address", "nodeType": "ElementaryTypeName", "src": "427:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "404:40:5" }, "src": "387:58:5" }, { "anonymous": false, "id": 312, "name": "NewTTL", "nameLocation": "502:6:5", "nodeType": "EventDefinition", "parameters": { "id": 311, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 308, "indexed": true, "mutability": "mutable", "name": "node", "nameLocation": "525:4:5", "nodeType": "VariableDeclaration", "scope": 312, "src": "509:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 307, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "509:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 310, "indexed": false, "mutability": "mutable", "name": "ttl", "nameLocation": "538:3:5", "nodeType": "VariableDeclaration", "scope": 312, "src": "531:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" }, "typeName": { "id": 309, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "531:6:5", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, "visibility": "internal" } ], "src": "508:34:5" }, "src": "496:47:5" }, { "anonymous": false, "id": 320, "name": "ApprovalForAll", "nameLocation": "607:14:5", "nodeType": "EventDefinition", "parameters": { "id": 319, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 314, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "638:5:5", "nodeType": "VariableDeclaration", "scope": 320, "src": "622:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 313, "name": "address", "nodeType": "ElementaryTypeName", "src": "622:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 316, "indexed": true, "mutability": "mutable", "name": "operator", "nameLocation": "661:8:5", "nodeType": "VariableDeclaration", "scope": 320, "src": "645:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 315, "name": "address", "nodeType": "ElementaryTypeName", "src": "645:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 318, "indexed": false, "mutability": "mutable", "name": "approved", "nameLocation": "676:8:5", "nodeType": "VariableDeclaration", "scope": 320, "src": "671:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 317, "name": "bool", "nodeType": "ElementaryTypeName", "src": "671:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "621:64:5" }, "src": "601:85:5" }, { "functionSelector": "cf408823", "id": 331, "implemented": false, "kind": "function", "modifiers": [], "name": "setRecord", "nameLocation": "701:9:5", "nodeType": "FunctionDefinition", "parameters": { "id": 329, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 322, "mutability": "mutable", "name": "node", "nameLocation": "719:4:5", "nodeType": "VariableDeclaration", "scope": 331, "src": "711:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 321, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "711:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 324, "mutability": "mutable", "name": "owner", "nameLocation": "733:5:5", "nodeType": "VariableDeclaration", "scope": 331, "src": "725:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 323, "name": "address", "nodeType": "ElementaryTypeName", "src": "725:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 326, "mutability": "mutable", "name": "resolver", "nameLocation": "748:8:5", "nodeType": "VariableDeclaration", "scope": 331, "src": "740:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 325, "name": "address", "nodeType": "ElementaryTypeName", "src": "740:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 328, "mutability": "mutable", "name": "ttl", "nameLocation": "765:3:5", "nodeType": "VariableDeclaration", "scope": 331, "src": "758:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" }, "typeName": { "id": 327, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "758:6:5", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, "visibility": "internal" } ], "src": "710:59:5" }, "returnParameters": { "id": 330, "nodeType": "ParameterList", "parameters": [], "src": "786:0:5" }, "scope": 421, "src": "692:95:5", "stateMutability": "nonpayable", "virtual": true, "visibility": "external" }, { "functionSelector": "5ef2c7f0", "id": 344, "implemented": false, "kind": "function", "modifiers": [], "name": "setSubnodeRecord", "nameLocation": "801:16:5", "nodeType": "FunctionDefinition", "parameters": { "id": 342, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 333, "mutability": "mutable", "name": "node", "nameLocation": "826:4:5", "nodeType": "VariableDeclaration", "scope": 344, "src": "818:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 332, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "818:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 335, "mutability": "mutable", "name": "label", "nameLocation": "840:5:5", "nodeType": "VariableDeclaration", "scope": 344, "src": "832:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 334, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "832:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 337, "mutability": "mutable", "name": "owner", "nameLocation": "855:5:5", "nodeType": "VariableDeclaration", "scope": 344, "src": "847:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 336, "name": "address", "nodeType": "ElementaryTypeName", "src": "847:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 339, "mutability": "mutable", "name": "resolver", "nameLocation": "870:8:5", "nodeType": "VariableDeclaration", "scope": 344, "src": "862:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 338, "name": "address", "nodeType": "ElementaryTypeName", "src": "862:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 341, "mutability": "mutable", "name": "ttl", "nameLocation": "887:3:5", "nodeType": "VariableDeclaration", "scope": 344, "src": "880:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" }, "typeName": { "id": 340, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "880:6:5", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, "visibility": "internal" } ], "src": "817:74:5" }, "returnParameters": { "id": 343, "nodeType": "ParameterList", "parameters": [], "src": "908:0:5" }, "scope": 421, "src": "792:117:5", "stateMutability": "nonpayable", "virtual": true, "visibility": "external" }, { "functionSelector": "06ab5923", "id": 355, "implemented": false, "kind": "function", "modifiers": [], "name": "setSubnodeOwner", "nameLocation": "923:15:5", "nodeType": "FunctionDefinition", "parameters": { "id": 351, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 346, "mutability": "mutable", "name": "node", "nameLocation": "947:4:5", "nodeType": "VariableDeclaration", "scope": 355, "src": "939:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 345, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "939:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 348, "mutability": "mutable", "name": "label", "nameLocation": "961:5:5", "nodeType": "VariableDeclaration", "scope": 355, "src": "953:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 347, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "953:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 350, "mutability": "mutable", "name": "owner", "nameLocation": "976:5:5", "nodeType": "VariableDeclaration", "scope": 355, "src": "968:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 349, "name": "address", "nodeType": "ElementaryTypeName", "src": "968:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "938:44:5" }, "returnParameters": { "id": 354, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 353, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 355, "src": "1008:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 352, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1008:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1007:9:5" }, "scope": 421, "src": "914:103:5", "stateMutability": "nonpayable", "virtual": true, "visibility": "external" }, { "functionSelector": "1896f70a", "id": 362, "implemented": false, "kind": "function", "modifiers": [], "name": "setResolver", "nameLocation": "1031:11:5", "nodeType": "FunctionDefinition", "parameters": { "id": 360, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 357, "mutability": "mutable", "name": "node", "nameLocation": "1051:4:5", "nodeType": "VariableDeclaration", "scope": 362, "src": "1043:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 356, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1043:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 359, "mutability": "mutable", "name": "resolver", "nameLocation": "1065:8:5", "nodeType": "VariableDeclaration", "scope": 362, "src": "1057:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 358, "name": "address", "nodeType": "ElementaryTypeName", "src": "1057:7:5", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "1042:32:5" }, "returnParameters": { "id": 361, "nodeType": "ParameterList", "parameters": [], "src": "1091:0:5" }, "scope": 421, "src": "1022:70:5", "stateMutability": "nonpayable",