sinterface ISleeper_v2 { Sleeping doLater(long targetTime, Runnable r) { ret doLater(new Timestamp(targetTime), r); } Sleeping doLater(Timestamp targetTime, Runnable r); public default Sleeping doAfter(double seconds, Runnable r) { ret doLater(tsNow().plusSeconds(seconds), r); } }