public void Recover(DateTime date) { if (!_paused) { throw new InvalidOperationException("The clock must be paused before Recover can be called!"); } if (date > DateTime.Now) { throw new ArgumentOutOfRangeException("date", date, "Can't recover to a date in the future!"); } _now = date; }