class JsonRpcV1Request {

  @Override
  public boolean equals(Object other) {
    if (this == other) {
      return true;
    }
    if (!(other instanceof JsonRpcV1Request)) {
      return false;
    }
    JsonRpcV1Request that = (JsonRpcV1Request) other;
    return Objects.equals(method, that.method)
        && Objects.equals(params, that.params)
        && Objects.equals(id, that.id);
  }

  @JsonCreator public  JsonRpcV1Request(
      @JsonProperty(value = METHOD, required = true) String method,
      @JsonProperty(value = PARAMS, required = true) ArrayNode params,
      @JsonProperty(value = ID, required = true) String id
  );
  public  JsonRpcV1Request(String id, String method, Object... params);

}