public static DateTimeOffset PreviousTimeOfDay(this DateTimeOffset dateTime, TimeSpan timeOfDay) => dateTime.TimeOfDay > timeOfDay ? dateTime.AtTimeOfDay(timeOfDay) : dateTime.AddDays(-1).AtTimeOfDay(timeOfDay);
public DateTimeOffset PreviousBefore(DateTimeOffset anchor) => anchor.TimeOfDay > _offset ? anchor.AtTimeOfDay(_offset) : anchor.AddDays(1).AtTimeOfDay(_offset);
public static DateTimeOffset NextTimeOfDay(this DateTimeOffset dateTime, TimeSpan timeOfDay) => dateTime.TimeOfDay <= timeOfDay ? dateTime.AtTimeOfDay(timeOfDay) : dateTime.AddDays(1).AtTimeOfDay(timeOfDay);
public DateTimeOffset NextAfter(DateTimeOffset anchor) => anchor.TimeOfDay <= _offset ? anchor.AtTimeOfDay(_offset) : anchor.AddDays(1).AtTimeOfDay(_offset);