code: public static MachineTime<SI> of(
          long amount,
          SI unit
      ) {
  
          switch (unit) {
              case SECONDS:
                  return ofSIUnits(amount, 0);
              case NANOSECONDS:
                  long secs = Math.floorDiv(amount, MRD);
                  int fraction = (int) Math.floorMod(amount, MRD);
                  return ofSIUnits(secs, fraction);
              default:
                  throw new UnsupportedOperationException(unit.name());
          }
  
      }
docs: /*[deutsch]
  <p>Erzeugt eine Dauer als Maschinenzeit auf der UTC-Skala. </p>
  
  @param   amount of units
  @param   unit    helps to interprete given amount
  @return  new machine time duration
  @since   2.0