### Question:
RxJavaDemo implements ReactiveStreamsDemo { public static void runComputation() { Flowable<String> source = Flowable.fromCallable(() -> { Thread.sleep(1000); return "Done"; }); source.doOnComplete(() -> System.out.println("Completed runComputation")); Flowable<String> background = source.subscribeOn(Schedulers.io()); Flowable<String> foreground = background.observeOn(Schedulers.single()); foreground.subscribe(System.out::println, Throwable::printStackTrace); }  static List<Integer> doSquares(); static List<Integer> doParallelSquares(); @Override Future<List<Integer>> doSquaresAsync(int count); @Override Future<String> doStringConcatAsync(int count); @Override Future<List<Integer>> doParallelSquaresAsync(int count); @Override Future<String> doParallelStringConcatAsync(int count); static void runComputation(); static void writeFile(File file); static void readFile(File file); static void readFile2(File file); static int countUsingBackpressure(long sleepMillis);  }### Answer:
@Test public void testrunComputation() throws Exception { demo.runComputation(); Thread.sleep(1100); }