{
  "contractName": "ReverseRegistrar",
  "sourceName": "@ensdomains/ens-contracts/contracts/registry/ReverseRegistrar.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract ENS",
          "name": "ensAddr",
          "type": "address"
        },
        {
          "internalType": "contract NameResolver",
          "name": "resolverAddr",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "controller",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "enabled",
          "type": "bool"
        }
      ],
      "name": "ControllerChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "addr",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "node",
          "type": "bytes32"
        }
      ],
      "name": "ReverseClaimed",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "claim",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "addr",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "claimForAddr",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "resolver",
          "type": "address"
        }
      ],
      "name": "claimWithResolver",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "addr",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "resolver",
          "type": "address"
        }
      ],
      "name": "claimWithResolverForAddr",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "controllers",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "defaultResolver",
      "outputs": [
        {
          "internalType": "contract NameResolver",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "ens",
      "outputs": [
        {
          "internalType": "contract ENS",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "addr",
          "type": "address"
        }
      ],
      "name": "node",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "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": "address",
          "name": "controller",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "enabled",
          "type": "bool"
        }
      ],
      "name": "setController",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "setName",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "addr",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "setNameForAddr",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b50604051620012113803806200121183398101604081905262000034916200022c565b6200003f336200019b565b600280546001600160a01b038481166001600160a01b0319928316811790935560038054918516919092161790556040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be39060240160206040518083038186803b158015620000c657600080fd5b505afa158015620000db573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001019190620001eb565b90506001600160a01b038116156200019257604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a90602401602060405180830381600087803b1580156200015557600080fd5b505af11580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000190919062000212565b505b50505062000284565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208284031215620001fe57600080fd5b81516200020b816200026b565b9392505050565b6000602082840312156200022557600080fd5b5051919050565b600080604083850312156200024057600080fd5b82516200024d816200026b565b602084015190925062000260816200026b565b809150509250929050565b6001600160a01b03811681146200028157600080fd5b50565b610f7d80620002946000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638d9522b81161008c578063c47f002711610066578063c47f0027146101cd578063da8c229e146101e0578063e0dba60f14610213578063f2fde38b1461022657600080fd5b80638d9522b8146101965780638da5cb5b146101a9578063bffbe61c146101ba57600080fd5b80633f15457f116100c85780633f15457f1461013b5780634709bf4b14610166578063715018a614610179578063828eab0e1461018357600080fd5b80630ccc4a7f146100ef5780630f5a5466146101155780631e83409a14610128575b600080fd5b6101026100fd366004610ca7565b610239565b6040519081526020015b60405180910390f35b610102610123366004610c6e565b610333565b610102610136366004610c34565b610347565b60025461014e906001600160a01b031681565b6040516001600160a01b03909116815260200161010c565b610102610174366004610c6e565b61035b565b61018161044c565b005b60035461014e906001600160a01b031681565b6101026101a4366004610cf2565b610482565b6000546001600160a01b031661014e565b6101026101c8366004610c34565b61069a565b6101026101db366004610db8565b6106e3565b6102036101ee366004610c34565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610181610221366004610d54565b61076d565b610181610234366004610c34565b6107f6565b6000836001600160a01b03811633148061026257503360009081526001602052604090205460ff165b806102eb575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156102b357600080fd5b505afa1580156102c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102eb9190610d82565b806102fa57506102fa81610891565b61031f5760405162461bcd60e51b815260040161031690610e7f565b60405180910390fd5b61032a858585610919565b95945050505050565b6000610340338484610919565b9392505050565b600061035533836000610919565b92915050565b6000826001600160a01b03811633148061038457503360009081526001602052604090205460ff165b8061040d575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156103d557600080fd5b505afa1580156103e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040d9190610d82565b8061041c575061041c81610891565b6104385760405162461bcd60e51b815260040161031690610e7f565b61044484846000610919565b949350505050565b6000546001600160a01b031633146104765760405162461bcd60e51b815260040161031690610e4a565b6104806000610af1565b565b6000836001600160a01b0381163314806104ab57503360009081526001602052604090205460ff165b80610534575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156104fc57600080fd5b505afa158015610510573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105349190610d82565b80610543575061054381610891565b61055f5760405162461bcd60e51b815260040161031690610e7f565b60035460009061057b90879030906001600160a01b0316610919565b600354604051637737221360e01b81529192506001600160a01b0316906377372213906105ae9084908890600401610ded565b600060405180830381600087803b1580156105c857600080fd5b505af11580156105dc573d6000803e3d6000fd5b50506002546001600160a01b031691506306ab59239050600080516020610f2883398151915261060b89610b41565b6040516001600160e01b031960e085901b168152600481019290925260248201526001600160a01b0388166044820152606401602060405180830381600087803b15801561065857600080fd5b505af115801561066c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106909190610d9f565b5095945050505050565b6000600080516020610f288339815191526106b483610b41565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b600354600090819061070190339030906001600160a01b0316610919565b600354604051637737221360e01b81529192506001600160a01b0316906377372213906107349084908790600401610ded565b600060405180830381600087803b15801561074e57600080fd5b505af1158015610762573d6000803e3d6000fd5b509295945050505050565b6000546001600160a01b031633146107975760405162461bcd60e51b815260040161031690610e4a565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6000546001600160a01b031633146108205760405162461bcd60e51b815260040161031690610e4a565b6001600160a01b0381166108855760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610316565b61088e81610af1565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108cc57600080fd5b505afa9250505080156108fc575060408051601f3d908101601f191682019092526108f991810190610c51565b60015b61090857506000919050565b6001600160a01b0316331492915050565b60008061092585610b41565b60408051600080516020610f28833981519152602082015290810182905290915060009060600160408051808303601f19018152908290528051602090910120600254630178b8bf60e01b8352600483018290529092506000916001600160a01b0390911690630178b8bf9060240160206040518083038186803b1580156109ac57600080fd5b505afa1580156109c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e49190610c51565b905060006001600160a01b03861615801590610a125750816001600160a01b0316866001600160a01b031614155b9050600081610a215782610a23565b865b6002546040516305ef2c7f60e41b8152600080516020610f288339815191526004820152602481018890526001600160a01b038b81166044830152808416606483015260006084830152929350911690635ef2c7f09060a401600060405180830381600087803b158015610a9657600080fd5b505af1158015610aaa573d6000803e3d6000fd5b50506040518692506001600160a01b038c1691507f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a35091979650505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060285b8015610b9b57600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610b46565b50506028600020919050565b600082601f830112610bb857600080fd5b813567ffffffffffffffff80821115610bd357610bd3610eee565b604051601f8301601f19908116603f01168101908282118183101715610bfb57610bfb610eee565b81604052838152866020858801011115610c1457600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c4657600080fd5b813561034081610f04565b600060208284031215610c6357600080fd5b815161034081610f04565b60008060408385031215610c8157600080fd5b8235610c8c81610f04565b91506020830135610c9c81610f04565b809150509250929050565b600080600060608486031215610cbc57600080fd5b8335610cc781610f04565b92506020840135610cd781610f04565b91506040840135610ce781610f04565b809150509250925092565b600080600060608486031215610d0757600080fd5b8335610d1281610f04565b92506020840135610d2281610f04565b9150604084013567ffffffffffffffff811115610d3e57600080fd5b610d4a86828701610ba7565b9150509250925092565b60008060408385031215610d6757600080fd5b8235610d7281610f04565b91506020830135610c9c81610f19565b600060208284031215610d9457600080fd5b815161034081610f19565b600060208284031215610db157600080fd5b5051919050565b600060208284031215610dca57600080fd5b813567ffffffffffffffff811115610de157600080fd5b61044484828501610ba7565b82815260006020604081840152835180604085015260005b81811015610e2157858101830151858201606001528201610e05565b81811115610e33576000606083870101525b50601f01601f191692909201606001949350505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526049908201527f43616c6c6572206973206e6f74206120636f6e74726f6c6c6572206f7220617560408201527f74686f72697365642062792061646472657373206f722074686520616464726560608201526839b99034ba39b2b63360b91b608082015260a00190565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461088e57600080fd5b801515811461088e57600080fdfe91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2a264697066735822122084be2d8cb542f1b02dd3ad134618f43046b3b47fcb32577587b82eac1eec645364736f6c63430008070033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638d9522b81161008c578063c47f002711610066578063c47f0027146101cd578063da8c229e146101e0578063e0dba60f14610213578063f2fde38b1461022657600080fd5b80638d9522b8146101965780638da5cb5b146101a9578063bffbe61c146101ba57600080fd5b80633f15457f116100c85780633f15457f1461013b5780634709bf4b14610166578063715018a614610179578063828eab0e1461018357600080fd5b80630ccc4a7f146100ef5780630f5a5466146101155780631e83409a14610128575b600080fd5b6101026100fd366004610ca7565b610239565b6040519081526020015b60405180910390f35b610102610123366004610c6e565b610333565b610102610136366004610c34565b610347565b60025461014e906001600160a01b031681565b6040516001600160a01b03909116815260200161010c565b610102610174366004610c6e565b61035b565b61018161044c565b005b60035461014e906001600160a01b031681565b6101026101a4366004610cf2565b610482565b6000546001600160a01b031661014e565b6101026101c8366004610c34565b61069a565b6101026101db366004610db8565b6106e3565b6102036101ee366004610c34565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610181610221366004610d54565b61076d565b610181610234366004610c34565b6107f6565b6000836001600160a01b03811633148061026257503360009081526001602052604090205460ff165b806102eb575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156102b357600080fd5b505afa1580156102c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102eb9190610d82565b806102fa57506102fa81610891565b61031f5760405162461bcd60e51b815260040161031690610e7f565b60405180910390fd5b61032a858585610919565b95945050505050565b6000610340338484610919565b9392505050565b600061035533836000610919565b92915050565b6000826001600160a01b03811633148061038457503360009081526001602052604090205460ff165b8061040d575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156103d557600080fd5b505afa1580156103e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040d9190610d82565b8061041c575061041c81610891565b6104385760405162461bcd60e51b815260040161031690610e7f565b61044484846000610919565b949350505050565b6000546001600160a01b031633146104765760405162461bcd60e51b815260040161031690610e4a565b6104806000610af1565b565b6000836001600160a01b0381163314806104ab57503360009081526001602052604090205460ff165b80610534575060025460405163e985e9c560e01b81526001600160a01b0383811660048301523360248301529091169063e985e9c59060440160206040518083038186803b1580156104fc57600080fd5b505afa158015610510573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105349190610d82565b80610543575061054381610891565b61055f5760405162461bcd60e51b815260040161031690610e7f565b60035460009061057b90879030906001600160a01b0316610919565b600354604051637737221360e01b81529192506001600160a01b0316906377372213906105ae9084908890600401610ded565b600060405180830381600087803b1580156105c857600080fd5b505af11580156105dc573d6000803e3d6000fd5b50506002546001600160a01b031691506306ab59239050600080516020610f2883398151915261060b89610b41565b6040516001600160e01b031960e085901b168152600481019290925260248201526001600160a01b0388166044820152606401602060405180830381600087803b15801561065857600080fd5b505af115801561066c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106909190610d9f565b5095945050505050565b6000600080516020610f288339815191526106b483610b41565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b600354600090819061070190339030906001600160a01b0316610919565b600354604051637737221360e01b81529192506001600160a01b0316906377372213906107349084908790600401610ded565b600060405180830381600087803b15801561074e57600080fd5b505af1158015610762573d6000803e3d6000fd5b509295945050505050565b6000546001600160a01b031633146107975760405162461bcd60e51b815260040161031690610e4a565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6000546001600160a01b031633146108205760405162461bcd60e51b815260040161031690610e4a565b6001600160a01b0381166108855760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610316565b61088e81610af1565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108cc57600080fd5b505afa9250505080156108fc575060408051601f3d908101601f191682019092526108f991810190610c51565b60015b61090857506000919050565b6001600160a01b0316331492915050565b60008061092585610b41565b60408051600080516020610f28833981519152602082015290810182905290915060009060600160408051808303601f19018152908290528051602090910120600254630178b8bf60e01b8352600483018290529092506000916001600160a01b0390911690630178b8bf9060240160206040518083038186803b1580156109ac57600080fd5b505afa1580156109c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e49190610c51565b905060006001600160a01b03861615801590610a125750816001600160a01b0316866001600160a01b031614155b9050600081610a215782610a23565b865b6002546040516305ef2c7f60e41b8152600080516020610f288339815191526004820152602481018890526001600160a01b038b81166044830152808416606483015260006084830152929350911690635ef2c7f09060a401600060405180830381600087803b158015610a9657600080fd5b505af1158015610aaa573d6000803e3d6000fd5b50506040518692506001600160a01b038c1691507f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a35091979650505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060285b8015610b9b57600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610b46565b50506028600020919050565b600082601f830112610bb857600080fd5b813567ffffffffffffffff80821115610bd357610bd3610eee565b604051601f8301601f19908116603f01168101908282118183101715610bfb57610bfb610eee565b81604052838152866020858801011115610c1457600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c4657600080fd5b813561034081610f04565b600060208284031215610c6357600080fd5b815161034081610f04565b60008060408385031215610c8157600080fd5b8235610c8c81610f04565b91506020830135610c9c81610f04565b809150509250929050565b600080600060608486031215610cbc57600080fd5b8335610cc781610f04565b92506020840135610cd781610f04565b91506040840135610ce781610f04565b809150509250925092565b600080600060608486031215610d0757600080fd5b8335610d1281610f04565b92506020840135610d2281610f04565b9150604084013567ffffffffffffffff811115610d3e57600080fd5b610d4a86828701610ba7565b9150509250925092565b60008060408385031215610d6757600080fd5b8235610d7281610f04565b91506020830135610c9c81610f19565b600060208284031215610d9457600080fd5b815161034081610f19565b600060208284031215610db157600080fd5b5051919050565b600060208284031215610dca57600080fd5b813567ffffffffffffffff811115610de157600080fd5b61044484828501610ba7565b82815260006020604081840152835180604085015260005b81811015610e2157858101830151858201606001528201610e05565b81811115610e33576000606083870101525b50601f01601f191692909201606001949350505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526049908201527f43616c6c6572206973206e6f74206120636f6e74726f6c6c6572206f7220617560408201527f74686f72697365642062792061646472657373206f722074686520616464726560608201526839b99034ba39b2b63360b91b608082015260a00190565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461088e57600080fd5b801515811461088e57600080fdfe91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2a264697066735822122084be2d8cb542f1b02dd3ad134618f43046b3b47fcb32577587b82eac1eec645364736f6c63430008070033",
  "linkReferences": {},
  "deployedLinkReferences": {},
  "devdoc": {
    "kind": "dev",
    "methods": {
      "claim(address)": {
        "details": "Transfers ownership of the reverse ENS record associated with the      calling account.",
        "params": {
          "owner": "The address to set as the owner of the reverse record in ENS."
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "claimForAddr(address,address)": {
        "details": "Transfers ownership of the reverse ENS record associated with the      calling account.",
        "params": {
          "addr": "The reverse record to set",
          "owner": "The address to set as the owner of the reverse record in ENS."
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "claimWithResolver(address,address)": {
        "details": "Transfers ownership of the reverse ENS record associated with the      calling account.",
        "params": {
          "owner": "The address to set as the owner of the reverse record in ENS.",
          "resolver": "The address of the resolver to set; 0 to leave unchanged."
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "claimWithResolverForAddr(address,address,address)": {
        "details": "Transfers ownership of the reverse ENS record specified with the      address provided",
        "params": {
          "addr": "The reverse record to set",
          "owner": "The address to set as the owner of the reverse record in ENS.",
          "resolver": "The address of the resolver to set; 0 to leave unchanged."
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "constructor": {
        "details": "Constructor",
        "params": {
          "ensAddr": "The address of the ENS registry.",
          "resolverAddr": "The address of the default reverse resolver."
        }
      },
      "node(address)": {
        "details": "Returns the node hash for a given account's reverse records.",
        "params": {
          "addr": "The address to hash"
        },
        "returns": {
          "_0": "The ENS node hash."
        }
      },
      "owner()": {
        "details": "Returns the address of the current owner."
      },
      "renounceOwnership()": {
        "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."
      },
      "setName(string)": {
        "details": "Sets the `name()` record for the reverse ENS record associated with the calling account. First updates the resolver to the default reverse resolver if necessary.",
        "params": {
          "name": "The name to set for this address."
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "setNameForAddr(address,address,string)": {
        "details": "Sets the `name()` record for the reverse ENS record associated with the account provided. First updates the resolver to the default reverse resolver if necessary. Only callable by controllers and authorised users",
        "params": {
          "addr": "The reverse record to set",
          "name": "The name to set for this address.",
          "owner": "The owner of the reverse node"
        },
        "returns": {
          "_0": "The ENS node hash of the reverse record."
        }
      },
      "transferOwnership(address)": {
        "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."
      }
    },
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "version": 1
  },
  "evm": {
    "gasEstimates": {
      "creation": {
        "codeDepositCost": "793000",
        "executionCost": "infinite",
        "totalCost": "infinite"
      },
      "external": {
        "claim(address)": "infinite",
        "claimForAddr(address,address)": "infinite",
        "claimWithResolver(address,address)": "infinite",
        "claimWithResolverForAddr(address,address,address)": "infinite",
        "controllers(address)": "2569",
        "defaultResolver()": "2426",
        "ens()": "2360",
        "node(address)": "infinite",
        "owner()": "2376",
        "renounceOwnership()": "28181",
        "setController(address,bool)": "infinite",
        "setName(string)": "infinite",
        "setNameForAddr(address,address,string)": "infinite",
        "transferOwnership(address)": "infinite"
      },
      "internal": {
        "_claimWithResolver(address,address,address)": "infinite",
        "ownsContract(address)": "infinite",
        "sha3HexAddress(address)": "infinite"
      }
    },
    "methodIdentifiers": {
      "claim(address)": "1e83409a",
      "claimForAddr(address,address)": "4709bf4b",
      "claimWithResolver(address,address)": "0f5a5466",
      "claimWithResolverForAddr(address,address,address)": "0ccc4a7f",
      "controllers(address)": "da8c229e",
      "defaultResolver()": "828eab0e",
      "ens()": "3f15457f",
      "node(address)": "bffbe61c",
      "owner()": "8da5cb5b",
      "renounceOwnership()": "715018a6",
      "setController(address,bool)": "e0dba60f",
      "setName(string)": "c47f0027",
      "setNameForAddr(address,address,string)": "8d9522b8",
      "transferOwnership(address)": "f2fde38b"
    }
  }
}