code: public static ZoneOffset ofHoursMinutesSeconds(int hours, int minutes, int seconds) {
          validate(hours, minutes, seconds);
          int totalSeconds = totalSeconds(hours, minutes, seconds);
          return ofTotalSeconds(totalSeconds);
      }
docs: Obtains an instance of {@code ZoneOffset} using an offset in
  hours, minutes and seconds.
  <p>
  The sign of the hours, minutes and seconds components must match.
  Thus, if the hours is negative, the minutes and seconds must be negative or zero.
  
  @param hours  the time-zone offset in hours, from -18 to +18
  @param minutes  the time-zone offset in minutes, from 0 to &plusmn;59, sign matches hours and seconds
  @param seconds  the time-zone offset in seconds, from 0 to &plusmn;59, sign matches hours and minutes
  @return the zone-offset, not null
  @throws DateTimeException if the offset is not in the required range