Allow arbitrary objects for truthiness checks in lenient mode, run dartfmt
diff --git a/lib/src/renderer.dart b/lib/src/renderer.dart
index c57f219..36f646b 100644
--- a/lib/src/renderer.dart
+++ b/lib/src/renderer.dart
@@ -166,6 +166,10 @@
        context.close();        
        if (output != null) write(output);
        
+     } else if (lenient) {
+       // We consider all other values as 'true' in lenient mode.
+       _renderWithValue(node, null);
+
      } else {
        throw error('Invalid value type for section, '
          'section: ${node.name}, '
@@ -196,6 +200,10 @@
        // Do nothing.
         //TODO in strict mode should this be an error?
    
+     } else if (lenient) {
+       // We consider all other values as 'true' in lenient mode. Since this
+       // is an inverted section, we do nothing.
+
      } else {
        throw error(
          'Invalid value type for inverse section, '
diff --git a/test/mustache_test.dart b/test/mustache_test.dart
index 9f66358..a4548e5 100644
--- a/test/mustache_test.dart
+++ b/test/mustache_test.dart
@@ -55,6 +55,11 @@
 			expect(ex is TemplateException, isTrue);
 			expect(ex.message, startsWith(BAD_VALUE_SECTION));
 		});
+		test('Invalid value - lenient mode', () {
+			var output = parse('{{#var}}_{{var}}_{{/var}}', lenient: true)
+          .renderString({'var' : 42});
+			expect(output, equals('_42_'));
+		});
 
 		test('True', () {
 			var output = parse('{{#section}}_ok_{{/section}}')
@@ -225,6 +230,11 @@
 			expect(ex is TemplateException, isTrue);
 			expect(ex.message, startsWith(BAD_VALUE_INV_SECTION));
 		});
+		test('Invalid value - lenient mode', () {
+			var output = parse('{{^var}}_ok_{{/var}}', lenient: true)
+          .renderString({'var' : 42});
+			expect(output, equals(''));
+		});
 		test('True', () {
 			var output = parse('{{^section}}_ok_{{/section}}')
 				.renderString({"section": true});