code: public function stop() : Stopwatch
      {
          $tick = $this->ticker->read();
          Preconditions::checkState($this->isRunning, 'This stopwatch is already stopped.');
          $this->isRunning = false;
          $this->elapsedMicros += ($tick - $this->startTick);
          return $this;
      }
docs: Stops the stopwatch. Future reads will return the fixed duration that had
  elapsed up to this point.
  
  @throw IllegalStateException if it is already stopped
  @return $this
  @throws IllegalStateException if this Stopwatch is already stopped