anchor.diff:            exns
           | exns -> exns
        exns.Add e
  -     cc'.Inc (&wr)
  -    member cc'.OutsideDoHandle (wr: byref<Worker>, e) =
  +     ConCollect<'y>.Done (cc', &wr)
  +    static member OutsideDoHandle (cc': ConCollect<'y>, wr: byref<Worker>, e) =
        cc'.Lock.Enter (&wr, {new Work () with
         override wk.DoHandle (_, _) = ()
         override wk.DoWork (wr) = cc'.DoHandle (&wr, e)})
  
positive.code:          override cc'.DoWork (wr) =
            let mutable nth = 0
            while xJs.MoveNext () do
              cc'.Lock.ExitAndEnter (&wr, cc')
              let xJ = xJs.Current
              cc'.ysK.Value.Add Unchecked.defaultof<_>
              Worker.PushNew (&wr, {new Cont_State<_, _, _> (xJ, Util.dec &nth) with
               override xK'.DoHandle (wr, e) = cc'.OutsideDoHandle (&wr, e)
               override xK'.DoCont (wr, x) =
                xK'.Value <- x
                xK'.State2 <- ~~~ xK'.State2
  
negative.code:     [<DefaultValue>] val mutable N: int
      [<DefaultValue>] val mutable Exns: ResizeArray<exn>
      val ysK: Cont<ResizeArray<'y>>
      static member Continue (cc': ConCollect<'y>, wr: byref<Worker>) =
         let ysK = cc'.ysK
         wr.Handler <- ysK
         match cc'.Exns with
          | null -> ysK.DoWork (&wr)
          | exns -> Handler.DoHandle (ysK, &wr, AggregateException exns)
      static member inline Done (cc': ConCollect<'y>, wr: byref<Worker>) =
       if cc'.ysK.Value.Count < Util.inc &cc'.N then
         ConCollect<'y>.Continue (cc', &wr)
      override cc'.DoHandle (wr, e) =
       let exns =
         match cc'.Exns with
  