code: @Override
      public void setSpeedFactor(@FloatRange(from = 0) final float speedFactor) {
          if (speedFactor < 0) {
              throw new IllegalArgumentException("speedFactor must not be nagative");
          }
          if (Float.compare(speedFactor, Float.NaN) == 0) {
              throw new IllegalArgumentException("speedFactor must be a valid float");
          }
          this.speedFactor = speedFactor;
      }
docs: {@inheritDoc}