@Override public Maybe<JsonElement> apply(JsonElement input) { JsonArray array = input.getAsJsonArray(); Iterator<JsonElement> filtered = Iterators.filter(array.iterator(), predicate); return Maybe.next(filtered); }