diff --git a/django/template/__init__.py b/django/template/__init__.py
index 2992036..30a75fc 100644
--- a/django/template/__init__.py
+++ b/django/template/__init__.py
@@ -794,7 +794,7 @@ class VariableNode(Node):
         return "<Variable Node: %s>" % self.filter_expression
 
     def render(self, context):
-        output = force_unicode(self.filter_expression.resolve(context))
+        output = self.filter_expression.resolve(context)
         if (context.autoescape and not isinstance(output, SafeData)) or isinstance(output, EscapeData):
             return escape(output)
         else:
@@ -803,7 +803,7 @@ class VariableNode(Node):
 class DebugVariableNode(VariableNode):
     def render(self, context):
         try:
-            output = force_unicode(self.filter_expression.resolve(context))
+            output = self.filter_expression.resolve(context)
         except TemplateSyntaxError, e:
             if not hasattr(e, 'source'):
                 e.source = self.source
