docs: public void add(Calendar cal) {
      // Avoid precision loss
      // Be aware postgres doesn't return more than 60 seconds - no overflow can happen
      final int microseconds = (int) (getSeconds() * 1000000.0);
      final int milliseconds = (microseconds + ((microseconds < 0) ? -500 : 500)) / 1000;
  
      cal.add(Calendar.MILLISECOND, milliseconds);
      cal.add(Calendar.MINUTE, getMinutes());
      cal.add(Calendar.HOUR, getHours());
      cal.add(Calendar.DAY_OF_MONTH, getDays());
      cal.add(Calendar.MONTH, getMonths());
      cal.add(Calendar.YEAR, getYears());
    }