public static WeekDayNum ReadFrom(CalendarReader reader) { int?order = null; if (reader.IsSignedInteger) { order = reader.ReadSignedInteger(); } var wd = reader.ReadName(); var dayOfWeek = ParseDayOfWeek(wd); return(new WeekDayNum { DayOfWeek = dayOfWeek, OrderWeek = order }); }