@startuml package com.iluwatar.trampoline { interface Trampoline { + complete() : boolean + done(result : T) : Trampoline {static} + get() : T {abstract} + jump() : Trampoline + more(trampoline : Trampoline>) : Trampoline {static} + result() : T } class TrampolineApp { - log : Logger {static} + TrampolineApp() + loop(times : int, prod : int) : Trampoline {static} + main(args : String[]) {static} } } @enduml