anchor.diff:                    Type#xqSeqType.occur == one_or_many), 
      NewCtx  = add_grouping_variable(NewVar, Ctx),
      FunctionName = glob_fun_name(Part),
  -   LocCtx = set_context_variable_name(Ctx, 'Ctx'),
  +   LocCtx = set_context_variable_name(Ctx, '__Ctx'),
      OldVariableTupleMatch = case get_variable_tuple(Ctx) of
                                 {nil,_} -> {var,?L, '_'};
                                 O -> O
  
positive.code:         IsList andalso Empty ->
          ?P(["'@FunctionName@'(Ctx,L) when erlang:is_list(L) -> ",
              "   lists:map(fun(X) -> '@FunctionName@'(Ctx,X) end,L);",
              "'@FunctionName@'(Ctx,_@OldVariableTupleMatch) -> ",
              "   List = _@E1,",
              "   Fun = fun(_@VarName1) -> _@Ens,_@Next end,",
              "   if List =:= [] -> ",
  
negative.code:                   end,
     CurrContext = {var,?L,get_context_variable_name(Ctx)},
     ThisFun = glob_fun_name({window,Id}),
     {NewCtx,FunAbs} = window_loop(Ctx, F, [], Internal == []),
     
     Call1 = [?P("_@NextTupleVar = '@ThisFun@'(_@CurrContext,_@@Vars)")],
     Call2 = [?P("_@NextTupleVar = '@ThisFun@'(_@CurrContext,xqerl_seq3:flatten(_@TupleVar))")],
  