anchor.diff:              Some (NodeExpr.NamedValue(cypherExpr, paramName, value))
           | DeclareNodeCall(nodeType) -> Some (NodeExpr.Anonymous(nodeType))
           | _ ->
  -            debug (string expr)
  +            debug "%O" expr
               None
   
       let inline (|IsRelExpr|_|) expr: Option<RelExpr> =
  
positive.code:             | Var(_var) -> None
              | NamedValue(_, paramName, value) -> Some (paramName, value)
              | Anonymous(_) -> None
          member x.Create(cypher: ICypherFluentQuery) =
              match x with
              | Var(_var) -> cypher.Create(x.CypherExpr)
  
negative.code:             let cypherExpr = sprintf "[:%s]" typ.Name
              Some (RelExpr.TypedPattern(cypherExpr))
          | _ ->
              debug "%O" expr
              None
  
      let inline (|CreateNodeCall|_|) (callExpr: Expr) =
          match callExpr with
          | SpecificCall <@ createNode @>
              (_, _, [IsNodeExpr(NodeExpr.NamedValue _ as nodeExpr)]) ->
              debug "Create node: %A" nodeExpr
              Some nodeExpr
          | _ -> None
  
  