@Override
  public Timed start() {
    return new DefaultTimed(this, timeUnit);
  }
@Test
  public void multipleStops() {
    Timer timer = new DefaultTimer(TimeUnit.NANOSECONDS);
    Timer.Timed timed = timer.start();
    timed.stop();
    // we didn't start the timer again
    assertThatThrownBy(timed::stop)
        .isInstanceOf(IllegalStateException.class)
        .hasMessage("stop() called multiple times");
  }