anchor.diff:  
       let inner = function
       | MethodCall(_, Single f) -> f
  -    | exprs -> failwith "oops!: %A" exprs
  +    | exprs -> failwithf "oops!: %A" exprs
   
       ProvidedMethod("Delay", [parameter], parameter.ParameterType, IsStaticMethod = false, InvokeCode = inner)
   
  
positive.code:           Expr.NewTuple([ Expr.Var(v); <@@ Break @@> ]),
            cont)
        Expr.Let(v, Expr.TupleGet(x, 0), Expr.Let(c, Expr.TupleGet(x, 1), flow))
      | exprs -> failwith "oops!: %A" exprs
  
      ProvidedMethod("Combine", parameters, retType, IsStaticMethod = false, InvokeCode = inner)
  
  
negative.code:     | MethodCall(_, Single f) ->
        let pipeLeft = pipeLeft.MakeGenericMethod([| typeof<unit>; retType |])
        Expr.TupleGet(Expr.Call(pipeLeft, [ f; <@@ () @@> ]), 0)
      | exprs -> failwithf "oops!: %A" exprs
  
      ProvidedMethod("Run", [parameter], info.ReturnType, IsStaticMethod = false, InvokeCode = inner)
  