anchor.diff:          checkNonNull "list1" list1
           checkNonNull "list2" list2
   
  -        lzy <| fun () ->
  +        LazyList<_>.CreateLazy <| fun () ->
               match list1.Value, list2.Value with
               | Cons (hd1, tl1), Cons (hd2, tl2) ->
                   consCell (mapping hd1 hd2) (map2 mapping tl1 tl2)
  
positive.code:     /// in the list are generated by again applying the residual state to the computation.
      [<CompiledName("Unfold")>]
      let rec unfold (generator : 'State -> ('T * 'State) option) state =
          lzy <| fun () ->
              match generator state with
              | None ->
                  Empty
  
negative.code: 
          list.LongLength
  
      /// <summary>
      /// Returns the evaluated ("forced") length of the list -- i.e., the number
      /// of elements which have already been evaluated. Unlike <c>LazyList.length</c>,
      /// this does not force evaluation of any cells and always terminates.
      /// </summary>
      [<CompiledName("ForcedLength")>]
      let forcedLength (list : LazyList<'T>) =
          // Preconditions
  