class CypherModel {

    public String requestId;
    public Status status = new Status();
    public Result result = new Result();

    public static CypherModel dataOf(String requestId, List<Object> data) {<FILL_FUNCTION_BODY>}

    public static CypherModel failOf(String requestId, String message) {
        CypherModel res = new CypherModel();
        res.requestId = requestId;
        res.status.code = 400;
        res.status.message = message;
        return res;
    }

    private CypherModel() {
    }

    public static class Status {

        public String message = "";
        public int code;
        public Map<String, Object> attributes = Collections.EMPTY_MAP;
    }

    private static class Result {

        public List<Object> data;
        public Map<String, Object> meta = Collections.EMPTY_MAP;
    }

}

        CypherModel res = new CypherModel();
        res.requestId = requestId;
        res.status.code = 200;
        res.result.data = data;
        return res;
    
<no_super_class>