public virtual void DurationFromStart(TimeSpan newDuration) { AssertMutable(); AssertValidDuration(newDuration); _duration = newDuration; _end = Start.Add(_duration); }