class JsonPatchItem {

    @Override
    public boolean equals(Object o) {
        if (this == o) {return true;}
        if (o == null || getClass() != o.getClass()) {return false;}
        JsonPatchItem that = (JsonPatchItem) o;
        return op == that.op &&
                Objects.equals(path, that.path) &&
                Objects.equals(toString(), that.toString());
    }

    public  JsonPatchItem(JsonPatchOperation op, String path, Object value);
    public  JsonPatchItem(JsonPatchOperation op, String path);
    public  JsonPatchItem(JSONObject row);

}