Add @FunctionalInterface