anchor.diff:                  ({'text', _Pos, String}) -> 
                       erl_syntax:string(String);
                   ({'string_literal', _Pos, String}) ->
  -                    erl_syntax:string(unescape_string_literal(String));
  +                    auto_escape(erl_syntax:string(unescape_string_literal(String)), Context);
                   ({'number_literal', _Pos, Number}) ->
                       erl_syntax:string(Number);
                   ({'variable', Variable}) ->
  
positive.code:                         Value
                  end
          end, undefined, Context#dtl_context.local_scopes),
      VarValue1 = case VarValue of
          undefined ->
              erl_syntax:application(erl_syntax:atom(proplists), erl_syntax:atom(get_value),
                  [erl_syntax:atom(VarName), erl_syntax:variable("Variables")]);
          _ ->
              VarValue
      end,
      case Context#dtl_context.auto_escape of
          on ->
              erl_syntax:application(erl_syntax:atom(erlydtl_filters), erl_syntax:atom(force_escape),
                  [VarValue1]);
          _ ->
              VarValue1
      end.
  
  ifelse_ast(Variable, IfContentsAst, ElseContentsAst, Context) ->
  
negative.code:     off.
  
  resolve_variable_ast({{identifier, _, VarName}}, Context) ->
      auto_escape(resolve_variable_name_ast(VarName, Context), Context);
  
  resolve_variable_ast({{identifier, _, VarName}, {identifier, _, AttrName}}, Context) ->
      auto_escape(erl_syntax:application(
              erl_syntax:atom(proplists), erl_syntax:atom(get_value),
          [erl_syntax:atom(AttrName), resolve_variable_name_ast(VarName, Context)]), 
          Context).
  
  resolve_variable_name_ast(VarName, Context) ->
      VarValue = lists:foldl(fun(Scope, Value) ->
  