code: public static MachineTime<TimeUnit> of(
          long amount,
          TimeUnit unit
      ) {
  
          if (unit.compareTo(TimeUnit.SECONDS) >= 0) {
              long secs =
                  Math.multiplyExact(
                      amount,
                      TimeUnit.SECONDS.convert(1, unit));
              return ofPosixUnits(secs, 0);
          }
  
          long total =
              Math.multiplyExact(
                  amount,
                  TimeUnit.NANOSECONDS.convert(1, unit));
          long secs = Math.floorDiv(total, MRD);
          int fraction = (int) Math.floorMod(total, MRD);
          return ofPosixUnits(secs, fraction);
  
      }
docs: /*[deutsch]
  <p>Erzeugt eine Dauer als Maschinenzeit auf der POSIX-Skala. </p>
  
  @param   amount of units
  @param   unit    helps to interprete given amount
  @return  new machine time duration
  @throws  ArithmeticException in case of numerical overflow
  @since   2.0