anchor.diff:                  let mapper (name : string, alias : string option, t : Type) = Option.defaultValue name alias, t
                   let requiredProperties = properties |> List.filter (fun (_, _, t) -> not (isOption t)) |> List.map mapper
                   let optionalProperties = properties |> List.filter (fun (_, _, t) -> isOption t) |> List.map mapper
  -                combine optionalProperties
  +                List.combine optionalProperties
                   |> List.map (fun (optionalProperties, missingProperties) ->
                       let constructorProperties = requiredProperties @ optionalProperties
                       let allProperties = constructorProperties @ missingProperties
  
positive.code:                         (name, mapper %%value) @@>
                  let args =
                      let names = variables |> List.map fst
                      let args = 
                          match contextInfo with
                          | Some _ ->
                              match args with
                              | _ :: tail when tail.Length > 0 -> List.take (tail.Length - 1) tail
                              | _ -> []
                          | None ->
                              match args with
                              | _ :: _ :: tail when tail.Length > 0 -> tail
                              | _ -> []
                      List.zip names args |> List.map exprMapper
                  Expr.NewArray(typeof<string * obj>, args)
              let defaultContextExpr = 
  
negative.code:                 let mdef = ProvidedMethod("ParseResult", prm, rtdef, invoker)
                  mdef.AddXmlDoc("Parses a JSON response that matches the response pattern of the current operation into a OperationResult type.")
                  mdef
              let members : MemberInfo list = [rtdef; prdef] @ rundefs @ arundefs
              members)
          tdef
  
  