code: public TaiInstant withNano(int nanoOfSecond) {
          if (nanoOfSecond < 0 || nanoOfSecond >= NANOS_PER_SECOND) {
              throw new IllegalArgumentException("NanoOfSecond must be from 0 to 999,999,999");
          }
          return ofTaiSeconds(seconds, nanoOfSecond);
      }
docs: Returns a copy of this {@code TaiInstant} with the nano-of-second value changed.
  <p>
  The nanosecond-of-second value measures the total number of nanoseconds from
  the second returned by {@code getTaiSeconds()}.
  <p>
  This instance is immutable and unaffected by this method call.
  
  @param nanoOfSecond  the nano-of-second, from 0 to 999,999,999
  @return a {@code TaiInstant} based on this instant with the requested nano-of-second, not null
  @throws IllegalArgumentException if nanoOfSecond is out of range