anchor.diff:      if tg.Length <> 1 then raise EncoderException
       let ti = tg.[0]
       let dI = dD ti
  -    let empty = makeEmptySetOf t
  +    let empty = makeEmptySet t
       let ofSeq =
           FastInvoke.Compile(
               setModule.GetMethod("OfSeq").MakeGenericMethod(tg)
  
positive.code:         | Some v -> dec v
          | None -> raise DecoderException
  
  let unionEncoder dE (i: FormatSettings) (t: System.Type) =
      let tR = FSV.PreComputeUnionTagReader(t, flags)
      let cs =
          FST.GetUnionCases(t, flags)
  
negative.code:                         .Invoke(null, [||])
                  fun _ -> x)
              (fun dD i t ->
                  let x = makeEmptySet t
                  fun _ -> x)
              (fun _ _ _ _ -> null)
              fo
  