anchor.diff:  
               | Enumerating value ->
                   match generator.Advance value with
  +                | Some newValue when isPastEnd newValue ->
  +                    state <- Done
  +                    false
                   | Some newValue ->
                       state <- Enumerating newValue
                       true
  
positive.code:     member internal __.Start = start
      member internal __.EndInclusive = endInclusive
      member internal __.Advance = advance
      member internal __.IsDone = isDone
  
  and internal EnumeratorState<'T> =
      | BeforeFirst
  
negative.code:         (generator: RangeGenerator<'T>) =
  
      let mutable state = BeforeFirst
  
      let isPastEnd (value: 'T) = value.CompareTo(generator.EndInclusive) > 0
  
      interface IEnumerator<'T> with
          member __.Current: 'T =
  