anchor.diff:    [] ++
     % local functions
     [ begin
  -      Vars = [erl_syntax:variable(lists:concat(["X",I])) || I<-lists:seq(1,Arity)],
  +      Vars = [erl_syntax:variable(lists:concat(["X",I])) || I<-lists:seq(1,Arity + 1)],
         erl_syntax:function(erl_syntax:atom(Fun),
                             [ erl_syntax:clause(Vars,[],
                                                 [erl_syntax:catch_expr(
  
positive.code: mkfunc(From,Trans) ->
    erl_syntax:function(
      erl_syntax:atom(From),
      [ erl_syntax:clause([erl_syntax:variable("_")],[],
          [erl_syntax:list( [ erl_syntax:tuple([erl_syntax:atom(To),Call]) || {To,Call}<-Trans ] )])
        ]).
  
  
negative.code:                            erl_syntax:tuple([erl_syntax:atom(call),
                                              erl_syntax:variable("_"),
                                              erl_syntax:abstract(Fun),
                                              erl_syntax:list([erl_syntax:variable("_") || _<-lists:seq(1,Args + 1)])]),
                             erl_syntax:variable("R")],[],
                            [erl_syntax:case_expr(
                               erl_syntax:variable("R"),[
  