using System; namespace System.Globalization { // Token: 0x0200016E RID: 366 internal class CCJulianCalendar { // Token: 0x060011DF RID: 4575 RVA: 0x000466B0 File Offset: 0x000448B0 public static bool is_leap_year(int year) { return CCMath.mod(year, 4) == ((year <= 0) ? 3 : 0); } // Token: 0x060011E0 RID: 4576 RVA: 0x000466CC File Offset: 0x000448CC public static int fixed_from_dmy(int day, int month, int year) { int num = ((year >= 0) ? year : (year + 1)); int num2 = -2; num2 += 365 * (num - 1); num2 += CCMath.div(num - 1, 4); num2 += CCMath.div(367 * month - 362, 12); if (month > 2) { num2 += ((!CCJulianCalendar.is_leap_year(year)) ? (-2) : (-1)); } return num2 + day; } // Token: 0x060011E1 RID: 4577 RVA: 0x00046740 File Offset: 0x00044940 public static int year_from_fixed(int date) { int num = CCMath.div(4 * (date - -1) + 1464, 1461); return (num > 0) ? num : (num - 1); } // Token: 0x060011E2 RID: 4578 RVA: 0x00046774 File Offset: 0x00044974 public static void my_from_fixed(out int month, out int year, int date) { year = CCJulianCalendar.year_from_fixed(date); int num = date - CCJulianCalendar.fixed_from_dmy(1, 1, year); int num2; if (date < CCJulianCalendar.fixed_from_dmy(1, 3, year)) { num2 = 0; } else if (CCJulianCalendar.is_leap_year(year)) { num2 = 1; } else { num2 = 2; } month = CCMath.div(12 * (num + num2) + 373, 367); } // Token: 0x060011E3 RID: 4579 RVA: 0x000467D8 File Offset: 0x000449D8 public static void dmy_from_fixed(out int day, out int month, out int year, int date) { CCJulianCalendar.my_from_fixed(out month, out year, date); day = date - CCJulianCalendar.fixed_from_dmy(1, month, year) + 1; } // Token: 0x060011E4 RID: 4580 RVA: 0x000467F4 File Offset: 0x000449F4 public static int month_from_fixed(int date) { int num; int num2; CCJulianCalendar.my_from_fixed(out num, out num2, date); return num; } // Token: 0x060011E5 RID: 4581 RVA: 0x0004680C File Offset: 0x00044A0C public static int day_from_fixed(int date) { int num; int num2; int num3; CCJulianCalendar.dmy_from_fixed(out num, out num2, out num3, date); return num; } // Token: 0x060011E6 RID: 4582 RVA: 0x00046828 File Offset: 0x00044A28 public static int date_difference(int dayA, int monthA, int yearA, int dayB, int monthB, int yearB) { return CCJulianCalendar.fixed_from_dmy(dayB, monthB, yearB) - CCJulianCalendar.fixed_from_dmy(dayA, monthA, yearA); } // Token: 0x060011E7 RID: 4583 RVA: 0x00046840 File Offset: 0x00044A40 public static int day_number(int day, int month, int year) { return CCJulianCalendar.date_difference(31, 12, year - 1, day, month, year); } // Token: 0x060011E8 RID: 4584 RVA: 0x00046854 File Offset: 0x00044A54 public static int days_remaining(int day, int month, int year) { return CCJulianCalendar.date_difference(day, month, year, 31, 12, year); } // Token: 0x0400047D RID: 1149 private const int epoch = -1; // Token: 0x0200016F RID: 367 public enum Month { // Token: 0x0400047F RID: 1151 january = 1, // Token: 0x04000480 RID: 1152 february, // Token: 0x04000481 RID: 1153 march, // Token: 0x04000482 RID: 1154 april, // Token: 0x04000483 RID: 1155 may, // Token: 0x04000484 RID: 1156 june, // Token: 0x04000485 RID: 1157 july, // Token: 0x04000486 RID: 1158 august, // Token: 0x04000487 RID: 1159 september, // Token: 0x04000488 RID: 1160 october, // Token: 0x04000489 RID: 1161 november, // Token: 0x0400048A RID: 1162 december } } }