@startuml

scale 0.9
skinparam monochrome true
skinparam RectangleBackgroundColor white

rectangle "Methods of the CompletionStage interface" as methods
rectangle "methods to\npipeline computations \n \n thenApply(Async), thenCompose(Async) \n thenAccept(Async) \n thenRun(Async) \n \n applyToEither(Async) \n acceptEither(Async) \n runAfterEither(Async) \n \n thenCombine(Async) \n thenAcceptBoth(Async) \n runAfterBoth(Async)" as methods1
rectangle "methods to\nhandle exceptions \n \n whenComplete(Async) \n handle(Async) \n exceptionally(Async) \n exceptionallyCompose(Async)" as methods2

methods --> methods1
methods --> methods2

@enduml