class EnodeURL {

  public static Bytes parseNodeId(final String nodeId) {
    int expectedSize = EnodeURL.NODE_ID_SIZE * 2;
    if (nodeId.toLowerCase().startsWith("0x")) {
      expectedSize += 2;
    }
    checkArgument(
        nodeId.length() == expectedSize,
        "Expected " + EnodeURL.NODE_ID_SIZE + " bytes in " + nodeId);
    return Bytes.fromHexString(nodeId, NODE_ID_SIZE);
  }

  private  EnodeURL(
      final Bytes nodeId,
      final InetAddress address,
      final Optional<String> maybeHostname,
      final Optional<Integer> listeningPort,
      final Optional<Integer> discoveryPort);

}