Futures, then, catchError, whenComplete