int updateSecond = findNext(seconds, second, 60, calendar, Calendar.SECOND, emptyList); if (second == updateSecond) { resets.add(Calendar.SECOND); int updateMinute = findNext(minutes, minute, 60, calendar, Calendar.MINUTE, resets); if (minute == updateMinute) { resets.add(Calendar.MINUTE); int updateHour = findNext(hours, hour, 24, calendar, Calendar.HOUR_OF_DAY, resets); if (hour == updateHour) { resets.add(Calendar.HOUR_OF_DAY); int updateMonth = findNext(this.months, month, 12, calendar, Calendar.MONTH, resets); if (month != updateMonth) { doNext(calendar);