code: func DeployENSRegistry(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ENSRegistry, error) {
  	parsed, err := abi.JSON(strings.NewReader(ENSRegistryABI))
  	if err != nil {
  		return common.Address{}, nil, nil, err
  	}
  	address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ENSRegistryBin), backend)
  	if err != nil {
  		return common.Address{}, nil, nil, err
  	}
  	return address, tx, &ENSRegistry{ENSRegistryCaller: ENSRegistryCaller{contract: contract}, ENSRegistryTransactor: ENSRegistryTransactor{contract: contract}, ENSRegistryFilterer: ENSRegistryFilterer{contract: contract}}, nil
  }
docs: // DeployENSRegistry deploys a new Ethereum contract, binding an instance of ENSRegistry to it.