int julianDay = (((year - 1) * (365 * 4 + 1)) >> 2) + (31 + 29 - (((1970 - 1) * (365 * 4 + 1)) / 4 + 1 - 13));    if (julianDay * (24 * 60 * 60 * 1000L) < gregorianCutover)
if (! isGregorian(year, 31 + 29 - 1))
  public boolean isLeapYear(int year)  {		if ((year & 3) != 0)			// Only years divisible by 4 can be leap years			return false;		// compute the linear day of the 29. February of that year.		// The 13 is the number of days, that were omitted in the Gregorian		// Calender until the epoch.    int julianDay = (((year - 1) * (365 * 4 + 1)) >> 2)                    + (31 + 29 - (((1970 - 1) * (365 * 4 + 1)) / 4 + 1 - 13));		// If that day is smaller than the gregorianChange the julian		// rule applies:  This is a leap year since it is divisible by 4.		if (julianDay * (24 * 60 * 60 * 1000L) < gregorianCutover)			return true;		return ((year % 100) != 0 || (year % 400) == 0);	}