/// <summary>
 /// Checks if the specified offset is valid during this transition.
 /// <para>
 /// This checks to see if the given offset will be valid at some point in the transition.
 /// A gap will always return false.
 /// An overlap will return true if the offset is either the before or after offset.
 ///
 /// </para>
 /// </summary>
 /// <param name="offset">  the offset to check, null returns false </param>
 /// <returns> true if the offset is valid during the transition </returns>
 public bool IsValidOffset(ZoneOffset offset)
 {
     return(Gap ? false : (OffsetBefore.Equals(offset) || OffsetAfter.Equals(offset)));
 }