anchor.diff:      let genericGreaterOrEqualIntrinsic = "GenericGreaterOrEqualIntrinsic" |> hashCompareType.GetMethod
       let genericLessOrEqualIntrinsic = "GenericLessOrEqualIntrinsic" |> hashCompareType.GetMethod
   
  -
       type ConvEnv = {
           eraseEquality : bool
           varEnv        : Map<Var,Expression>
  
positive.code: 
      let LinqExpressionHelper (x:'T) : Expression<'T> = failwith ""
      
      let MakeFakeExpression (x:Expr) = 
          let minfo = match <@@ LinqExpressionHelper @@> with Lambda(_,Call(_,minfo,_)) -> minfo | _ -> failwith "couldn't find method info"
          Expr.Call(minfo.GetGenericMethodDefinition().MakeGenericMethod [| x.Type |], [ x ])
  
      let showAll = BindingFlags.Public ||| BindingFlags.NonPublic 
  
      let wrapVoid (e:#Expression) =
  
negative.code:             | 21 -> typedefof<FuncHelper<_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_>>.MakeGenericType args
              | _ -> raise <| new NotSupportedException("Quotation expressions with statements or closures containing more then 20 free variables may not be translated in this release of the F# PowerPack. This is due to limitations in the variable binding expression forms available in LINQ expression trees")
              
      type FuncFSharp<'state,'a> (f:Func<'state,'a>) =
          inherit FSharpFunc<unit, 'a>()
          [<Core.DefaultValue false>] val mutable State : 'state
  