anchor.diff:              BeamFile = filename:join([OutDir, atom_to_list(Module1) ++ ".beam"]),
   
               print(Verbose, "Template module: ~w -> ~s~s\n",
  -                [Module1, BeamFile,
  -                    case Warnings of
  -                        [] -> "";
  -                        _  -> io_lib:format("\n  Warnings: ~p", [Warnings])
  -                    end]),
  +		  [Module1, BeamFile,
  +		   case Warnings of
  +		       [] -> "";
  +		       _  -> io_lib:format("\n  Warnings: ~p", [Warnings])
  +		   end]),
   
               case file:write_file(BeamFile, Bin) of
                   ok ->
                       ok;
                   {error, Reason} ->
                       {error, lists:flatten(
  -                        io_lib:format("Beam generation of '~s' failed: ~p",
  -                            [BeamFile, file:format_error(Reason)]))}
  +			      io_lib:format("Beam generation of '~s' failed: ~p",
  +					    [BeamFile, file:format_error(Reason)]))}
               end
       end.
   
   compile_multiple_to_binary(Dir, ParserResults, Context) ->
       MatchAst = options_match_ast(), 
       {Functions, {AstInfo, _}} = lists:mapfoldl(fun({File, DjangoParseTree, CheckSum}, {AstInfo, TreeWalker}) ->
  -                FilePath = full_path(File, Context#dtl_context.doc_root),
  -                {{BodyAst, BodyInfo}, TreeWalker1} = with_dependency({FilePath, CheckSum}, body_ast(DjangoParseTree, Context, TreeWalker)),
  -                FunctionName = filename:rootname(filename:basename(File)),
  -                Function1 = erl_syntax:function(erl_syntax:atom(FunctionName),
  -                    [erl_syntax:clause([erl_syntax:variable("_Variables")], none,
  -                            [erl_syntax:application(none, erl_syntax:atom(FunctionName), 
  -                                    [erl_syntax:variable("_Variables"), erl_syntax:list([])])])]),
  -                Function2 = erl_syntax:function(erl_syntax:atom(FunctionName), 
  -                    [erl_syntax:clause([erl_syntax:variable("_Variables"), erl_syntax:variable("RenderOptions")], none,
  -                            MatchAst ++ [BodyAst])]),
  -                {{FunctionName, Function1, Function2}, {merge_info(AstInfo, BodyInfo), TreeWalker1}}
  -        end, {#ast_info{}, #treewalker{}}, ParserResults),
  +						       FilePath = full_path(File, Context#dtl_context.doc_root),
  +						       {{BodyAst, BodyInfo}, TreeWalker1} = with_dependency({FilePath, CheckSum}, body_ast(DjangoParseTree, Context, TreeWalker)),
  +						       FunctionName = filename:rootname(filename:basename(File)),
  +						       Function1 = erl_syntax:function(erl_syntax:atom(FunctionName),
  +										       [erl_syntax:clause([erl_syntax:variable("_Variables")], none,
  +													  [erl_syntax:application(none, erl_syntax:atom(FunctionName), 
  +																  [erl_syntax:variable("_Variables"), erl_syntax:list([])])])]),
  +						       Function2 = erl_syntax:function(erl_syntax:atom(FunctionName), 
  +										       [erl_syntax:clause([erl_syntax:variable("_Variables"), erl_syntax:variable("RenderOptions")], none,
  +													  MatchAst ++ [BodyAst])]),
  +						       {{FunctionName, Function1, Function2}, {merge_info(AstInfo, BodyInfo), TreeWalker1}}
  +					       end, {#ast_info{}, #treewalker{}}, ParserResults),
       Forms = custom_forms(Dir, Context#dtl_context.module, Functions, AstInfo),
       compile_forms_and_reload(Dir, Forms, Context#dtl_context.compiler_options).
   
  
positive.code:     resolve_variable_ast1(VarTuple, Context, 'fetch_value');
  resolve_variable_ast(VarTuple, Context, false) ->
      resolve_variable_ast1(VarTuple, Context, 'find_value').
   
  resolve_variable_ast1({attribute, {{identifier, {Row, Col}, AttrName}, Variable}}, Context, FinderFunction) ->
      {VarAst, VarName} = resolve_variable_ast1(Variable, Context, FinderFunction),
      FileNameAst = case Context#dtl_context.parse_trail of 
          [] -> erl_syntax:atom(undefined); 
          [H|_] -> erl_syntax:string(H)
      end,
      {erl_syntax:application(erl_syntax:atom(erlydtl_runtime), erl_syntax:atom(FinderFunction),
                      [erl_syntax:atom(AttrName), VarAst, FileNameAst,
                          erl_syntax:tuple([erl_syntax:integer(Row), erl_syntax:integer(Col)])
                      ]), VarName};
  
  resolve_variable_ast1({variable, {identifier, {Row, Col}, VarName}}, Context, FinderFunction) ->
      VarValue = case resolve_scoped_variable_ast(VarName, Context) of
          undefined ->
              FileNameAst = case Context#dtl_context.parse_trail of 
                  [] -> erl_syntax:atom(undefined); 
                  [H|_] -> erl_syntax:string(H)
              end,
              erl_syntax:application(erl_syntax:atom(erlydtl_runtime), erl_syntax:atom(FinderFunction),
                  [erl_syntax:atom(VarName), erl_syntax:variable("_Variables"), FileNameAst,
                      erl_syntax:tuple([erl_syntax:integer(Row), erl_syntax:integer(Col)])
                  ]);
          Val ->
              Val
      end,
      {VarValue, VarName};
  
  resolve_variable_ast1(What, _Context, _FinderFunction) ->
     error_logger:error_msg("~p:resolve_variable_ast unhandled: ~p~n", [?MODULE, What]).
  
  resolve_scoped_variable_ast(VarName, Context) ->
      lists:foldl(fun(Scope, Value) ->
                  case Value of
                      undefined -> proplists:get_value(VarName, Scope);
                      _ -> Value
                  end
          end, undefined, Context#dtl_context.local_scopes).
  
  format(Ast, Context, TreeWalker) ->
      auto_escape(format_number_ast(Ast), Context, TreeWalker).
  
  format_number_ast(Ast) ->
      erl_syntax:application(erl_syntax:atom(erlydtl_filters), erl_syntax:atom(format_number),
          [Ast]).
  
  
  auto_escape(Value, _, #treewalker{safe = true}) ->
  
negative.code:         _ ->
              false
      end.
  
  
  parse(File, Context) ->  
      {M, F} = Context#dtl_context.reader,
      case catch M:F(File) of
  