import java.util.List; import java.util.Map; class Collector { } interface Function { R apply(T t); } final class Collectors { public static Collector> toList() { return null; } public static Collector>> groupingBy(Function classifier) { return groupingBy(classifier, toList()); } public static Collector> groupingBy(Function classifier, Collector downstream) { return null; } }