code: public MachineTime<U> plus(MachineTime<U> duration) {
  
          if (duration.isEmpty()) {
              return this;
          } else if (this.isEmpty()) {
              return duration;
          }
  
          long s = Math.addExact(this.seconds, duration.seconds);
          int f = this.nanos + duration.nanos;
          return new MachineTime<>(s, f, this.scale);
  
      }
docs: /*[deutsch]
  <p>Addiert den angegebenen Zeitbetrag zu dieser maschinellen Dauer. </p>
  
  @param   duration    other machine time to be added
  @return  result of addition
  @throws  ArithmeticException in case of numerical overflow
  @since   2.0