code: @Override
      public Temporal addTo(Temporal temporal) {
          return temporal.plus(period).plus(duration);
      }
docs: Adds this amount to the specified temporal object.
  <p>
  This returns a temporal object of the same observable type as the input
  with this amount added. This simply adds the period and duration to the temporal.
  <p>
  This instance is immutable and unaffected by this method call.
  
  @param temporal  the temporal object to adjust, not null
  @return an object of the same type with the adjustment made, not null
  @throws DateTimeException if unable to add
  @throws UnsupportedTemporalTypeException if the DAYS unit is not supported
  @throws ArithmeticException if numeric overflow occurs