### Question:
Part2ExtraExercises_Optional { @Optional @Complexity(EASY) public static String firstElementFromSource(Flux<String> source) { throw new RuntimeException("Not implemented"); }  @Optional @Complexity(EASY) static String firstElementFromSource(Flux<String> source); @Optional @Complexity(EASY) static Publisher<String> mergeSeveralSourcesSequential(Publisher<String>... sources); @Optional @Complexity(EASY) static Publisher<String> concatSeveralSourcesOrdered(Publisher<String>... sources); @Optional @Complexity(HARD) static Publisher<String> readFile(String filename);  }### Answer:
@Test public void firstElementFromSourceTest() { String element = firstElementFromSource(Flux.just("Hello", "World")); Assert.assertEquals("Expected 'Hello' but was [" + element + "]", "Hello", element); }