[Swfdec-commits] 8 commits - swfdec/swfdec_text_field_movie_html.c test/trace vivified/code

Pekka Lampila medar at kemper.freedesktop.org
Fri May 9 00:41:28 PDT 2008


 swfdec/swfdec_text_field_movie_html.c                 |   12 
 test/trace/Makefile.am                                |    9 
 test/trace/text-field-html-whitespace-tag-5.swf       |binary
 test/trace/text-field-html-whitespace-tag-5.swf.trace |  888 ++++++++++++++++++
 test/trace/text-field-html-whitespace-tag-6.swf       |binary
 test/trace/text-field-html-whitespace-tag-6.swf.trace |  600 ++++++++++++
 test/trace/text-field-html-whitespace-tag-7.swf       |binary
 test/trace/text-field-html-whitespace-tag-7.swf.trace |  600 ++++++++++++
 test/trace/text-field-html-whitespace-tag-8.swf       |binary
 test/trace/text-field-html-whitespace-tag-8.swf.trace |  600 ++++++++++++
 test/trace/text-field-html-whitespace-tag.as          |   57 +
 vivified/code/Makefile.am                             |    2 
 vivified/code/compiler.c                              |   11 
 vivified/code/rewrite.c                               |    8 
 vivified/code/test/compiler/Makefile.am               |    2 
 vivified/code/test/compiler/call_function.as          |    1 
 vivified/code/test/compiler/call_function.as.expect   |    7 
 vivified/code/vivi_code_asm_code.c                    |   16 
 vivified/code/vivi_code_asm_code.h                    |    6 
 vivified/code/vivi_code_assembler.c                   |   53 -
 vivified/code/vivi_code_assembler.h                   |    1 
 vivified/code/vivi_code_assignment.c                  |   15 
 vivified/code/vivi_code_binary.c                      |   10 
 vivified/code/vivi_code_block.c                       |    8 
 vivified/code/vivi_code_boolean.c                     |    6 
 vivified/code/vivi_code_break.c                       |    4 
 vivified/code/vivi_code_builtin_call.c                |    6 
 vivified/code/vivi_code_builtin_statement.c           |    6 
 vivified/code/vivi_code_builtin_value_call.c          |    8 
 vivified/code/vivi_code_builtin_value_statement.c     |    8 
 vivified/code/vivi_code_comment.c                     |    4 
 vivified/code/vivi_code_compiler.c                    |  108 ++
 vivified/code/vivi_code_compiler.h                    |   73 +
 vivified/code/vivi_code_concat.c                      |   10 
 vivified/code/vivi_code_continue.c                    |    3 
 vivified/code/vivi_code_function.c                    |   12 
 vivified/code/vivi_code_function_call.c               |   16 
 vivified/code/vivi_code_get.c                         |   10 
 vivified/code/vivi_code_get_url.c                     |    4 
 vivified/code/vivi_code_goto.c                        |    6 
 vivified/code/vivi_code_if.c                          |   23 
 vivified/code/vivi_code_init_array.c                  |   12 
 vivified/code/vivi_code_init_object.c                 |   12 
 vivified/code/vivi_code_label.c                       |   16 
 vivified/code/vivi_code_label.h                       |    1 
 vivified/code/vivi_code_null.c                        |    6 
 vivified/code/vivi_code_number.c                      |    6 
 vivified/code/vivi_code_return.c                      |   10 
 vivified/code/vivi_code_statement.c                   |    8 
 vivified/code/vivi_code_statement.h                   |    2 
 vivified/code/vivi_code_string.c                      |    6 
 vivified/code/vivi_code_substring.c                   |   13 
 vivified/code/vivi_code_throw.c                       |    8 
 vivified/code/vivi_code_token.c                       |    8 
 vivified/code/vivi_code_token.h                       |    5 
 vivified/code/vivi_code_unary.c                       |    8 
 vivified/code/vivi_code_undefined.c                   |    7 
 vivified/code/vivi_code_value.c                       |    8 
 vivified/code/vivi_code_value.h                       |    3 
 vivified/code/vivi_code_value_statement.c             |    8 
 vivified/code/vivi_compiler_empty_statement.c         |    4 
 61 files changed, 3182 insertions(+), 182 deletions(-)

New commits:
commit d20b840b6476597927b4d898c6fd25743ba9356b
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri May 9 10:37:37 2008 +0300

    Add a comment

diff --git a/swfdec/swfdec_text_field_movie_html.c b/swfdec/swfdec_text_field_movie_html.c
index a670d17..d0bb819 100644
--- a/swfdec/swfdec_text_field_movie_html.c
+++ b/swfdec/swfdec_text_field_movie_html.c
@@ -443,7 +443,8 @@ swfdec_text_field_movie_html_parse_text (ParserData *data, const char *p)
   g_return_val_if_fail (p != NULL, NULL);
   g_return_val_if_fail (*p != '\0' && *p != '<', NULL);
 
-  // condense the space with previous text also, if version >= 8
+  // condense the whitespace with previous text
+  // also skip any whitespace that would be preceding first actual text
   if (data->condense_white && data->cx->version >= 8) {
     gsize length = swfdec_text_buffer_get_length (data->text);
     const char *s = swfdec_text_buffer_get_text (data->text);
@@ -451,7 +452,7 @@ swfdec_text_field_movie_html_parse_text (ParserData *data, const char *p)
       p += strspn (p, " \n\r\t");
   }
 
-  // if it's only space, don't add it
+  // if it's only whitespace, don't add it
   if (data->cx->version < 8) {
     end = p + strspn (p, " \n\r\t");
     if (*end == '\0' || *end == '<')
commit 1ece8c6791675d82ef2f720d35384141a4a192e1
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri May 9 10:32:07 2008 +0300

    Add a test for TextField's HTML input's handling of whitespace

diff --git a/test/trace/Makefile.am b/test/trace/Makefile.am
index c27dd2c..d6d548c 100644
--- a/test/trace/Makefile.am
+++ b/test/trace/Makefile.am
@@ -3323,6 +3323,15 @@ EXTRA_DIST = \
 	text-field-html-new-format-7.swf.trace \
 	text-field-html-new-format-8.swf \
 	text-field-html-new-format-8.swf.trace \
+	text-field-html-whitespace-tag.as \
+	text-field-html-whitespace-tag-5.swf \
+	text-field-html-whitespace-tag-5.swf.trace \
+	text-field-html-whitespace-tag-6.swf \
+	text-field-html-whitespace-tag-6.swf.trace \
+	text-field-html-whitespace-tag-7.swf \
+	text-field-html-whitespace-tag-7.swf.trace \
+	text-field-html-whitespace-tag-8.swf \
+	text-field-html-whitespace-tag-8.swf.trace \
 	text-field-init.as \
 	text-field-init-5.swf \
 	text-field-init-5.swf.trace \
diff --git a/test/trace/text-field-html-whitespace-tag-5.swf b/test/trace/text-field-html-whitespace-tag-5.swf
new file mode 100644
index 0000000..6a7b341
Binary files /dev/null and b/test/trace/text-field-html-whitespace-tag-5.swf differ
diff --git a/test/trace/text-field-html-whitespace-tag-5.swf.trace b/test/trace/text-field-html-whitespace-tag-5.swf.trace
new file mode 100644
index 0000000..dbc55bf
--- /dev/null
+++ b/test/trace/text-field-html-whitespace-tag-5.swf.trace
@@ -0,0 +1,888 @@
+Testing: condenseWhite: 0 multiline: 0 html: 0
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 1 multiline: 0 html: 1
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 0 multiline: 2 html: 2
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 1 multiline: 2 html: 3
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 0 multiline: 0 html: 0
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 1 multiline: 0 html: 1
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 0 multiline: 2 html: 2
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
+Testing: condenseWhite: 1 multiline: 2 html: 3
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+: <tab><br><span><tab><br></span><tab><br>
+<tab><br><span><tab><br></span><tab><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+: <br><span><br></span><br>
+<br><span><br></span><br>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+:  \t\n
+<span> \t\n
+</span> \t\n
+
+ \t\n
+<span> \t\n
+</span> \t\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+:  \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+:  \ta<span> \ta</span> \ta
+ \ta<span> \ta</span> \ta
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+: a\n
+<span>a\n
+</span>a\n
+
+a\n
+<span>a\n
+</span>a\n
+
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+:  a <span> a </span> a 
+ a <span> a </span> a 
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+:  a<span> a</span> a
+ a<span> a</span> a
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+: a <span>a </span>a 
+a <span>a </span>a 
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+: a<span>a</span>a
+a<span>a</span>a
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+:  <span> </span> 
+ <span> </span> 
+<span></span>
+: <span></span>
+<span></span>
+: <span></span>
+<span></span>
diff --git a/test/trace/text-field-html-whitespace-tag-6.swf b/test/trace/text-field-html-whitespace-tag-6.swf
new file mode 100644
index 0000000..7f15a8f
Binary files /dev/null and b/test/trace/text-field-html-whitespace-tag-6.swf differ
diff --git a/test/trace/text-field-html-whitespace-tag-6.swf.trace b/test/trace/text-field-html-whitespace-tag-6.swf.trace
new file mode 100644
index 0000000..4228764
--- /dev/null
+++ b/test/trace/text-field-html-whitespace-tag-6.swf.trace
@@ -0,0 +1,600 @@
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
diff --git a/test/trace/text-field-html-whitespace-tag-7.swf b/test/trace/text-field-html-whitespace-tag-7.swf
new file mode 100644
index 0000000..4e400be
Binary files /dev/null and b/test/trace/text-field-html-whitespace-tag-7.swf differ
diff --git a/test/trace/text-field-html-whitespace-tag-7.swf.trace b/test/trace/text-field-html-whitespace-tag-7.swf.trace
new file mode 100644
index 0000000..aeb6b96
--- /dev/null
+++ b/test/trace/text-field-html-whitespace-tag-7.swf.trace
@@ -0,0 +1,600 @@
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+6: \ta\ta\ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta\ta\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+3: \t\t\t
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t\t\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+0: 
+
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+6: \ta\ta\ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta\ta\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+3: \t\t\t
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t\t\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+0: 
+
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
diff --git a/test/trace/text-field-html-whitespace-tag-8.swf b/test/trace/text-field-html-whitespace-tag-8.swf
new file mode 100644
index 0000000..72a3c03
Binary files /dev/null and b/test/trace/text-field-html-whitespace-tag-8.swf differ
diff --git a/test/trace/text-field-html-whitespace-tag-8.swf.trace b/test/trace/text-field-html-whitespace-tag-8.swf.trace
new file mode 100644
index 0000000..c420500
--- /dev/null
+++ b/test/trace/text-field-html-whitespace-tag-8.swf.trace
@@ -0,0 +1,600 @@
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+6: \ta\ta\ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta\ta\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+3: \t\t\t
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t\t\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+0: 
+
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+12:  \t\n \t\n \t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+3:    
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">   </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: false html: false
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: false html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+6: \ta\ta\ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta\ta\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+3: \t\t\t
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t\t\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+0: 
+
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: false multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+12:  \t\n \t\n \t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+15:  \ta\n \ta\n \ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+9:  \ta \ta \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta \ta \ta</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+9: a\na\na\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+9:  a  a  a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a  a  a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+6:  a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+3:    
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">   </FONT></P>
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
+Testing: condenseWhite: true multiline: true html: true
+<tab>a<br><span><tab>a<br></span><tab>a<br>
+9: \ta\n\ta\n\ta\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\ta</FONT></P>
+43: <tab>a<br><span><tab>a<br></span><tab>a<br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;a&lt;br&gt;&lt;span&gt;&lt;tab&gt;a&lt;br&gt;&lt;/span&gt;&lt;tab&gt;a&lt;br&gt;</FONT></P>
+<tab><br><span><tab><br></span><tab><br>
+6: \t\n\t\n\t\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">\t</FONT></P>
+40: <tab><br><span><tab><br></span><tab><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;tab&gt;&lt;br&gt;&lt;span&gt;&lt;tab&gt;&lt;br&gt;&lt;/span&gt;&lt;tab&gt;&lt;br&gt;</FONT></P>
+<br><span><br></span><br>
+3: \n\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+25: <br><span><br></span><br>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;br&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;br&gt;</FONT></P>
+ \t\n
+<span> \t\n
+</span> \t\n
+
+0: 
+
+25:  \t\n\n<span> \t\n\n</span> \t\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \t</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta\n
+<span> \ta\n
+</span> \ta\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+28:  \ta\n\n<span> \ta\n\n</span> \ta\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt; \ta</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ \ta<span> \ta</span> \ta
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+22:  \ta<span> \ta</span> \ta
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> \ta&lt;span&gt; \ta&lt;/span&gt; \ta</FONT></P>
+a\n
+<span>a\n
+</span>a\n
+
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22: a\n\n<span>a\n\n</span>a\n\n
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;/span&gt;a</FONT></P><P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"></FONT></P>
+ a <span> a </span> a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+22:  a <span> a </span> a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a &lt;span&gt; a &lt;/span&gt; a </FONT></P>
+ a<span> a</span> a
+5: a a a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a</FONT></P>
+19:  a<span> a</span> a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> a&lt;span&gt; a&lt;/span&gt; a</FONT></P>
+a <span>a </span>a 
+6: a a a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a a a </FONT></P>
+19: a <span>a </span>a 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a &lt;span&gt;a &lt;/span&gt;a </FONT></P>
+a<span>a</span>a
+3: aaa
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">aaa</FONT></P>
+16: a<span>a</span>a
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">a&lt;span&gt;a&lt;/span&gt;a</FONT></P>
+ <span> </span> 
+0: 
+
+16:  <span> </span> 
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"> &lt;span&gt; &lt;/span&gt; </FONT></P>
+<span></span>
+0: 
+
+13: <span></span>
+<P ALIGN="LEFT"><FONT FACE="Bitstream Vera Sans" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">&lt;span&gt;&lt;/span&gt;</FONT></P>
diff --git a/test/trace/text-field-html-whitespace-tag.as b/test/trace/text-field-html-whitespace-tag.as
new file mode 100644
index 0000000..718998c
--- /dev/null
+++ b/test/trace/text-field-html-whitespace-tag.as
@@ -0,0 +1,57 @@
+// makeswf -v 7 -s 200x150 -r 1 -o movie23.swf movie23.as
+
+createTextField ("t", 0, 0, 0, 200, 150);
+var tf = new TextFormat ();
+tf.font = "Bitstream Vera Sans";
+t.setNewTextFormat (tf);
+
+function sanitize (str) {
+  var a = str.split ("\r");
+  var b = a.join ("\\r").split ("\n");
+  var c = a.join ("\\n").split ("\t");
+  return c.join ("\\t");
+};
+
+var strings = [
+  "<tab>a<br>",
+  "<tab><br>",
+  "<br>",
+  " \t\r\n",
+  " \ta\r\n",
+  " \ta",
+  "a\r\n",
+  " a ",
+  " a",
+  "a ",
+  "a",
+  " ",
+  ""
+];
+
+for (var i = 0; i < 1 << 3; i++) {
+  t.condenseWhite = i & 1;
+  t.multiline = i & 2;
+  t.html = i & 3;
+  trace ("Testing: condenseWhite: " + t.condenseWhite + " multiline: " + t.multiline + " html: " + t.html);
+
+  for (var j = 0; j < strings.length; j++) {
+    var text = strings[j] + "<span>" + strings[j] + "</span>" + strings[j];
+    trace (sanitize (text));
+
+    t.htmlText = text;
+    trace (t.length + ": " + sanitize (t.text));
+    var old_html = t.html;
+    t.html = true;
+    trace (sanitize (t.htmlText));
+    t.html = old_html;
+
+    t.text = text;
+    trace (t.length + ": " + sanitize (t.text));
+    var old_html = t.html;
+    t.html = true;
+    trace (sanitize (t.htmlText));
+    t.html = old_html;
+  }
+}
+
+getURL ("fscommand:quit", "");
commit 311a78e2ad7c5ab16aff9ea163b5401fde14d9ee
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri May 9 10:06:12 2008 +0300

    Skip text blocks that are only whitespace in HTML input for version < 8

diff --git a/swfdec/swfdec_text_field_movie_html.c b/swfdec/swfdec_text_field_movie_html.c
index dd6110a..a670d17 100644
--- a/swfdec/swfdec_text_field_movie_html.c
+++ b/swfdec/swfdec_text_field_movie_html.c
@@ -451,6 +451,13 @@ swfdec_text_field_movie_html_parse_text (ParserData *data, const char *p)
       p += strspn (p, " \n\r\t");
   }
 
+  // if it's only space, don't add it
+  if (data->cx->version < 8) {
+    end = p + strspn (p, " \n\r\t");
+    if (*end == '\0' || *end == '<')
+      return end;
+  }
+
   // get the text
   // if condense_white: all whitespace blocks are converted to a single space
   while (*p != '\0' && *p != '<') {
commit c9b9d0db390b1652fbf75e14596eb20930115f11
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri May 9 09:48:54 2008 +0300

    Skip preceding whitespace when using condenseWhite in version 8 HTML input

diff --git a/swfdec/swfdec_text_field_movie_html.c b/swfdec/swfdec_text_field_movie_html.c
index 96e7485..dd6110a 100644
--- a/swfdec/swfdec_text_field_movie_html.c
+++ b/swfdec/swfdec_text_field_movie_html.c
@@ -447,7 +447,7 @@ swfdec_text_field_movie_html_parse_text (ParserData *data, const char *p)
   if (data->condense_white && data->cx->version >= 8) {
     gsize length = swfdec_text_buffer_get_length (data->text);
     const char *s = swfdec_text_buffer_get_text (data->text);
-    if (length > 0 && g_ascii_isspace (s[length - 1]))
+    if (length == 0 || g_ascii_isspace (s[length - 1]))
       p += strspn (p, " \n\r\t");
   }
 
commit 5b7154cc754222d52d5de33e310787568ba2c0e8
Merge: d34a612... 49c90e4...
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri May 9 09:13:23 2008 +0300

    Merge branch 'master' of ssh://medar@git.freedesktop.org/git/swfdec/swfdec

commit d34a6128a25f55e7b8898ba4e6ebc8346abc8843
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu May 8 20:49:29 2008 +0300

    Change compiling (vivi -> asm) system. Add ViviCodeCompiler class

diff --git a/vivified/code/Makefile.am b/vivified/code/Makefile.am
index 5550cc9..441d551 100644
--- a/vivified/code/Makefile.am
+++ b/vivified/code/Makefile.am
@@ -55,6 +55,7 @@ libvivified_compiler_la_SOURCES = \
 	vivi_code_builtin_value_statement.c \
 	vivi_code_builtin_value_statement_default.c \
 	vivi_code_comment.c \
+	vivi_code_compiler.c \
 	vivi_code_concat.c \
 	vivi_code_constant.c \
 	vivi_code_continue.c \
@@ -128,6 +129,7 @@ noinst_HEADERS = \
 	vivi_code_builtin_value_statement.h \
 	vivi_code_builtin_value_statement_default.h \
 	vivi_code_comment.h \
+	vivi_code_compiler.h \
 	vivi_code_concat.h \
 	vivi_code_constant.h \
 	vivi_code_continue.h \
diff --git a/vivified/code/compiler.c b/vivified/code/compiler.c
index b0fa84f..9981267 100644
--- a/vivified/code/compiler.c
+++ b/vivified/code/compiler.c
@@ -28,6 +28,7 @@
 
 #include "vivi_parser.h"
 #include "vivi_code_text_printer.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_assembler.h"
 #include "vivi_code_asm_code_default.h"
 
@@ -79,6 +80,7 @@ main (int argc, char *argv[])
 {
   SwfdecBuffer *source, *output;
   ViviCodeStatement *statement;
+  ViviCodeCompiler *compiler;
   ViviCodeAssembler *assembler;
   ViviCodeAsm *code;
   int version = 8;
@@ -180,10 +182,14 @@ main (int argc, char *argv[])
     return 1;
   }
 
-  assembler = VIVI_CODE_ASSEMBLER (vivi_code_assembler_new ());
-  vivi_code_statement_compile (statement, assembler);
+  compiler = vivi_code_compiler_new (version);
+  vivi_code_compiler_compile_statement (compiler, statement);
   g_object_unref (statement);
 
+  assembler = g_object_ref (vivi_code_compiler_get_assembler (compiler));
+  g_object_unref (compiler);
+  vivi_code_compiler_compile_statement (compiler, statement);
+
   code = vivi_code_asm_end_new ();
   vivi_code_assembler_add_code (assembler, code);
   g_object_unref (code);
diff --git a/vivified/code/rewrite.c b/vivified/code/rewrite.c
index cc0df6a..c863777 100644
--- a/vivified/code/rewrite.c
+++ b/vivified/code/rewrite.c
@@ -31,6 +31,7 @@
 #include <vivified/code/vivi_code_asm_function2.h>
 #include <vivified/code/vivi_code_asm_pool.h>
 #include <vivified/code/vivi_code_asm_push.h>
+#include <vivified/code/vivi_code_compiler.h>
 #include <vivified/code/vivi_code_assembler.h>
 #include <vivified/code/vivi_decompiler.h>
 #include <vivified/code/vivi_parser.h>
@@ -171,6 +172,7 @@ replace_random (ViviCodeAssembler *assembler, guint init)
   if (init) {
     guint j;
     ViviCodeStatement *statement;
+    ViviCodeCompiler *compiler;
     ViviCodeAssembler *asm2;
     if (VIVI_IS_CODE_ASM_POOL (vivi_code_assembler_get_code (assembler, i)))
       i++;
@@ -181,9 +183,11 @@ replace_random (ViviCodeAssembler *assembler, guint init)
 	"ASSetPropFlags (Math, \"random\", 7);"
 	);
     g_assert (statement);
-    asm2 = VIVI_CODE_ASSEMBLER (vivi_code_assembler_new ());
-    vivi_code_statement_compile (statement, asm2);
+    compiler = vivi_code_compiler_new (7); // FIXME: version
+    vivi_code_compiler_compile_statement (compiler, statement);
     g_object_unref (statement);
+    asm2 = g_object_ref (vivi_code_compiler_get_assembler (compiler));
+    g_object_unref (compiler);
     for (j = 0; j < vivi_code_assembler_get_n_codes (asm2); j++) {
       vivi_code_assembler_insert_code (assembler, i++,
 	  vivi_code_assembler_get_code (asm2, j));
diff --git a/vivified/code/vivi_code_assembler.c b/vivified/code/vivi_code_assembler.c
index 8087fe1..6558f37 100644
--- a/vivified/code/vivi_code_assembler.c
+++ b/vivified/code/vivi_code_assembler.c
@@ -26,6 +26,7 @@
 
 #include "vivi_code_assembler.h"
 #include "vivi_code_comment.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_emitter.h"
 #include "vivi_code_label.h"
 #include "vivi_code_printer.h"
@@ -72,13 +73,15 @@ vivi_code_assembler_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_assembler_compile (ViviCodeToken *token, ViviCodeAssembler *other)
+vivi_code_assembler_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
-  ViviCodeAssembler *self = VIVI_CODE_ASSEMBLER (token);
+  ViviCodeAssembler *assembler = VIVI_CODE_ASSEMBLER (token);
   guint i;
 
-  for (i = 0; i < self->codes->len; i++) {
-    vivi_code_assembler_add_code (other, g_ptr_array_index (self->codes, i));
+  // TODO: clone?
+  for (i = 0; i < assembler->codes->len; i++) {
+    vivi_code_compiler_add_code (compiler,
+	g_ptr_array_index (assembler->codes, i));
   }
 }
 
diff --git a/vivified/code/vivi_code_assignment.c b/vivified/code/vivi_code_assignment.c
index 4ace08c..48dd66e 100644
--- a/vivified/code/vivi_code_assignment.c
+++ b/vivified/code/vivi_code_assignment.c
@@ -26,7 +26,7 @@
 #include "vivi_code_printer.h"
 #include "vivi_code_string.h"
 #include "vivi_code_undefined.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_code_default.h"
 
 G_DEFINE_TYPE (ViviCodeAssignment, vivi_code_assignment, VIVI_TYPE_CODE_STATEMENT)
@@ -92,23 +92,22 @@ finalize:
 }
 
 static void
-vivi_code_assignment_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+vivi_code_assignment_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeAssignment *assignment = VIVI_CODE_ASSIGNMENT (token);
   ViviCodeAsm *code;
 
   if (assignment->from && !assignment->local)
-    vivi_code_value_compile (assignment->from, assembler);
-  vivi_code_value_compile (assignment->name, assembler);
+    vivi_code_compiler_compile_value (compiler, assignment->from);
+  vivi_code_compiler_compile_value (compiler, assignment->name);
 
   if (assignment->local && assignment->from) {
     ViviCodeValue *get =
       vivi_code_get_new (assignment->from, assignment->value);
-    vivi_code_value_compile (get, assembler);
+    vivi_code_compiler_compile_value (compiler, get);
     g_object_unref (get);
   } else {
-    vivi_code_value_compile (assignment->value, assembler);
+    vivi_code_compiler_compile_value (compiler, assignment->value);
   }
 
   if (assignment->local) {
@@ -118,7 +117,7 @@ vivi_code_assignment_compile (ViviCodeToken *token,
   } else {
     code = vivi_code_asm_set_variable_new ();
   }
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_binary.c b/vivified/code/vivi_code_binary.c
index b7b68af..d288627 100644
--- a/vivified/code/vivi_code_binary.c
+++ b/vivified/code/vivi_code_binary.c
@@ -25,7 +25,7 @@
 
 #include "vivi_code_binary.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeBinary, vivi_code_binary, VIVI_TYPE_CODE_VALUE)
 
@@ -57,18 +57,18 @@ vivi_code_binary_print (ViviCodeToken *token, ViviCodePrinter*printer)
 }
 
 static void
-vivi_code_binary_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_binary_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeBinary *binary = VIVI_CODE_BINARY (token);
   ViviCodeBinaryClass *klass = VIVI_CODE_BINARY_GET_CLASS (binary);
   ViviCodeAsm *code;
 
-  vivi_code_value_compile (binary->left, assembler);
-  vivi_code_value_compile (binary->right, assembler);
+  vivi_code_compiler_compile_value (compiler, binary->left);
+  vivi_code_compiler_compile_value (compiler, binary->right);
 
   g_assert (klass->asm_constructor != 0);
   code = klass->asm_constructor ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_block.c b/vivified/code/vivi_code_block.c
index b9a760d..32d8c69 100644
--- a/vivified/code/vivi_code_block.c
+++ b/vivified/code/vivi_code_block.c
@@ -28,7 +28,7 @@
 #include "vivi_code_comment.h"
 #include "vivi_code_label.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeBlock, vivi_code_block, VIVI_TYPE_CODE_STATEMENT)
 
@@ -90,14 +90,14 @@ vivi_code_block_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_block_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_block_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeBlock *block = VIVI_CODE_BLOCK (token);
   guint i;
 
   for (i = 0; i < block->statements->len; i++) {
-    vivi_code_statement_compile (VIVI_CODE_STATEMENT (g_ptr_array_index (
-	    block->statements, i)), assembler);
+    vivi_code_compiler_compile_statement (compiler,
+	VIVI_CODE_STATEMENT (g_ptr_array_index (block->statements, i)));
   }
 }
 
diff --git a/vivified/code/vivi_code_boolean.c b/vivified/code/vivi_code_boolean.c
index efb1bd4..dd5ae83 100644
--- a/vivified/code/vivi_code_boolean.c
+++ b/vivified/code/vivi_code_boolean.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_boolean.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_push.h"
 
 G_DEFINE_TYPE (ViviCodeBoolean, vivi_code_boolean, VIVI_TYPE_CODE_CONSTANT)
@@ -37,14 +37,14 @@ vivi_code_boolean_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_boolean_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_boolean_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeBoolean *b = VIVI_CODE_BOOLEAN (token);
   ViviCodeAsm *code;
 
   code = vivi_code_asm_push_new ();
   vivi_code_asm_push_add_boolean (VIVI_CODE_ASM_PUSH (code), b->value);
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_break.c b/vivified/code/vivi_code_break.c
index ded28d1..9286fa5 100644
--- a/vivified/code/vivi_code_break.c
+++ b/vivified/code/vivi_code_break.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_break.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeBreak, vivi_code_break, VIVI_TYPE_CODE_STATEMENT)
 
@@ -35,7 +35,7 @@ vivi_code_break_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_break_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_break_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   g_printerr ("Implement break\n");
 }
diff --git a/vivified/code/vivi_code_builtin_call.c b/vivified/code/vivi_code_builtin_call.c
index bf299b7..06174eb 100644
--- a/vivified/code/vivi_code_builtin_call.c
+++ b/vivified/code/vivi_code_builtin_call.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_builtin_call.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_ABSTRACT_TYPE (ViviCodeBuiltinCall, vivi_code_builtin_call, VIVI_TYPE_CODE_VALUE)
 
@@ -40,14 +40,14 @@ vivi_code_builtin_call_print (ViviCodeToken *token, ViviCodePrinter *printer)
 
 static void
 vivi_code_builtin_call_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeBuiltinCallClass *klass = VIVI_CODE_BUILTIN_CALL_GET_CLASS (token);
   ViviCodeAsm *code;
 
   g_assert (klass->asm_constructor != NULL);
   code = klass->asm_constructor ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_builtin_statement.c b/vivified/code/vivi_code_builtin_statement.c
index 8d9ca87..7802868 100644
--- a/vivified/code/vivi_code_builtin_statement.c
+++ b/vivified/code/vivi_code_builtin_statement.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_builtin_statement.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_ABSTRACT_TYPE (ViviCodeBuiltinStatement, vivi_code_builtin_statement, VIVI_TYPE_CODE_STATEMENT)
 
@@ -42,7 +42,7 @@ vivi_code_builtin_statement_print (ViviCodeToken *token,
 
 static void
 vivi_code_builtin_statement_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeBuiltinStatementClass *klass =
     VIVI_CODE_BUILTIN_STATEMENT_GET_CLASS (token);
@@ -50,7 +50,7 @@ vivi_code_builtin_statement_compile (ViviCodeToken *token,
 
   g_assert (klass->asm_constructor != NULL);
   code = klass->asm_constructor ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_builtin_value_call.c b/vivified/code/vivi_code_builtin_value_call.c
index 3a6bd14..0fbbcc4 100644
--- a/vivified/code/vivi_code_builtin_value_call.c
+++ b/vivified/code/vivi_code_builtin_value_call.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_builtin_value_call.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_ABSTRACT_TYPE (ViviCodeBuiltinValueCall, vivi_code_builtin_value_call, VIVI_TYPE_CODE_BUILTIN_CALL)
 
@@ -58,18 +58,18 @@ vivi_code_builtin_value_call_print (ViviCodeToken *token,
 
 static void
 vivi_code_builtin_value_call_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeBuiltinCallClass *klass = VIVI_CODE_BUILTIN_CALL_GET_CLASS (token);
   ViviCodeBuiltinValueCall *call = VIVI_CODE_BUILTIN_VALUE_CALL (token);
   ViviCodeAsm *code;
 
   g_assert (call->value != NULL);
-  vivi_code_value_compile (call->value, assembler);
+  vivi_code_compiler_compile_value (compiler, call->value);
 
   g_assert (klass->asm_constructor != NULL);
   code = klass->asm_constructor ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_builtin_value_statement.c b/vivified/code/vivi_code_builtin_value_statement.c
index fb9978a..d542a14 100644
--- a/vivified/code/vivi_code_builtin_value_statement.c
+++ b/vivified/code/vivi_code_builtin_value_statement.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_builtin_value_statement.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_ABSTRACT_TYPE (ViviCodeBuiltinValueStatement, vivi_code_builtin_value_statement, VIVI_TYPE_CODE_BUILTIN_STATEMENT)
 
@@ -61,7 +61,7 @@ vivi_code_builtin_value_statement_print (ViviCodeToken *token,
 
 static void
 vivi_code_builtin_value_statement_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeBuiltinStatementClass *klass =
     VIVI_CODE_BUILTIN_STATEMENT_GET_CLASS (token);
@@ -70,11 +70,11 @@ vivi_code_builtin_value_statement_compile (ViviCodeToken *token,
   ViviCodeAsm *code;
 
   g_assert (stmt->value != NULL);
-  vivi_code_value_compile (stmt->value, assembler);
+  vivi_code_compiler_compile_value (compiler, stmt->value);
 
   g_assert (klass->asm_constructor != NULL);
   code = klass->asm_constructor ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_comment.c b/vivified/code/vivi_code_comment.c
index 681d900..1efa0b5 100644
--- a/vivified/code/vivi_code_comment.c
+++ b/vivified/code/vivi_code_comment.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_comment.h"
 #include "vivi_code_asm.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_printer.h"
 
 static gboolean
@@ -63,7 +63,7 @@ vivi_code_comment_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_comment_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_comment_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   g_printerr ("Implement comment");
 }
diff --git a/vivified/code/vivi_code_compiler.c b/vivified/code/vivi_code_compiler.c
new file mode 100644
index 0000000..1947090
--- /dev/null
+++ b/vivified/code/vivi_code_compiler.c
@@ -0,0 +1,108 @@
+/* Vivified
+ * Copyright (C) 2008 Pekka Lampila <pekka.lampila at iki.fi>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "vivi_code_compiler.h"
+
+G_DEFINE_TYPE (ViviCodeCompiler, vivi_code_compiler, G_TYPE_OBJECT)
+
+static void
+vivi_code_compiler_dispose (GObject *object)
+{
+  ViviCodeCompiler *compiler = VIVI_CODE_COMPILER (object);
+
+  g_object_unref (compiler->assembler);
+
+  G_OBJECT_CLASS (vivi_code_compiler_parent_class)->dispose (object);
+}
+
+static void
+vivi_code_compiler_class_init (ViviCodeCompilerClass *klass)
+{
+  GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+  object_class->dispose = vivi_code_compiler_dispose;
+}
+
+static void
+vivi_code_compiler_init (ViviCodeCompiler *compiler)
+{
+  compiler->assembler = VIVI_CODE_ASSEMBLER (vivi_code_assembler_new ());
+}
+
+void
+vivi_code_compiler_compile_token (ViviCodeCompiler *compiler,
+    ViviCodeToken *token)
+{
+  g_return_if_fail (VIVI_IS_CODE_COMPILER (compiler));
+  g_return_if_fail (VIVI_IS_CODE_TOKEN (token));
+
+  vivi_code_token_compile (token, compiler);
+}
+
+void
+vivi_code_compiler_add_code (ViviCodeCompiler *compiler, ViviCodeAsm *code)
+{
+  g_return_if_fail (VIVI_IS_CODE_COMPILER (compiler));
+  g_return_if_fail (VIVI_IS_CODE_ASM (code));
+
+  vivi_code_assembler_add_code (compiler->assembler, code);
+}
+
+ViviCodeLabel *
+vivi_code_compiler_create_label (ViviCodeCompiler *compiler,
+    const char *prefix)
+{
+  g_return_val_if_fail (VIVI_IS_CODE_COMPILER (compiler), NULL);
+  g_return_val_if_fail (prefix != NULL, NULL);
+
+  // FIXME
+  return VIVI_CODE_LABEL (vivi_code_label_new (prefix));
+}
+
+ViviCodeCompiler *
+vivi_code_compiler_new (guint version)
+{
+  ViviCodeCompiler *compiler;
+
+  compiler = g_object_new (VIVI_TYPE_CODE_COMPILER, NULL);
+  compiler->version = version;
+
+  return compiler;
+}
+
+guint
+vivi_code_compiler_get_version (ViviCodeCompiler *compiler)
+{
+  g_return_val_if_fail (VIVI_IS_CODE_COMPILER (compiler), 0);
+
+  return compiler->version;
+}
+
+
+ViviCodeAssembler *
+vivi_code_compiler_get_assembler (ViviCodeCompiler *compiler)
+{
+  g_return_val_if_fail (VIVI_IS_CODE_COMPILER (compiler), NULL);
+
+  return compiler->assembler;
+}
diff --git a/vivified/code/vivi_code_compiler.h b/vivified/code/vivi_code_compiler.h
new file mode 100644
index 0000000..19bfa47
--- /dev/null
+++ b/vivified/code/vivi_code_compiler.h
@@ -0,0 +1,73 @@
+/* Vivified
+ * Copyright (C) 2008 Pekka Lampila <pekka.lampila at iki.fi>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifndef _VIVI_CODE_COMPILER_H_
+#define _VIVI_CODE_COMPILER_H_
+
+#include <swfdec/swfdec.h>
+#include <swfdec/swfdec_bots.h>
+#include <vivified/code/vivi_code_assembler.h>
+#include <vivified/code/vivi_code_asm.h>
+#include <vivified/code/vivi_code_label.h>
+
+G_BEGIN_DECLS
+
+typedef struct _ViviCodeCompilerClass ViviCodeCompilerClass;
+
+#define VIVI_TYPE_CODE_COMPILER                    (vivi_code_compiler_get_type())
+#define VIVI_IS_CODE_COMPILER(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIVI_TYPE_CODE_COMPILER))
+#define VIVI_IS_CODE_COMPILER_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE ((klass), VIVI_TYPE_CODE_COMPILER))
+#define VIVI_CODE_COMPILER(obj)                    (G_TYPE_CHECK_INSTANCE_CAST ((obj), VIVI_TYPE_CODE_COMPILER, ViviCodeCompiler))
+#define VIVI_CODE_COMPILER_CLASS(klass)            (G_TYPE_CHECK_CLASS_CAST ((klass), VIVI_TYPE_CODE_COMPILER, ViviCodeCompilerClass))
+#define VIVI_CODE_COMPILER_GET_CLASS(obj)          (G_TYPE_INSTANCE_GET_CLASS ((obj), VIVI_TYPE_CODE_COMPILER, ViviCodeCompilerClass))
+
+struct _ViviCodeCompiler
+{
+  GObject		object;
+
+  guint			version;
+  ViviCodeAssembler *	assembler;
+
+  guint			num_labels;
+};
+
+struct _ViviCodeCompilerClass
+{
+  GObjectClass		object_class;
+};
+
+GType			vivi_code_compiler_get_type   		(void);
+
+ViviCodeCompiler *	vivi_code_compiler_new			(guint			version);
+
+#define vivi_code_compiler_compile_value(c,v) vivi_code_compiler_compile_token((c), VIVI_CODE_TOKEN((v)))
+#define vivi_code_compiler_compile_statement(c,s) vivi_code_compiler_compile_token((c), VIVI_CODE_TOKEN((s)))
+void			vivi_code_compiler_compile_token	(ViviCodeCompiler *	compiler,
+								 ViviCodeToken *	token);
+
+void			vivi_code_compiler_add_code		(ViviCodeCompiler	*compiler,
+								 ViviCodeAsm		*code);
+
+ViviCodeAssembler *	vivi_code_compiler_get_assembler	(ViviCodeCompiler *	compiler);
+guint			vivi_code_compiler_get_version		(ViviCodeCompiler *	compiler);
+ViviCodeLabel *		vivi_code_compiler_create_label		(ViviCodeCompiler *	compiler,
+								 const char *		prefix);
+
+G_END_DECLS
+#endif
diff --git a/vivified/code/vivi_code_concat.c b/vivified/code/vivi_code_concat.c
index 7095222..01bf74f 100644
--- a/vivified/code/vivi_code_concat.c
+++ b/vivified/code/vivi_code_concat.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_concat.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_code_default.h"
 
 G_DEFINE_TYPE (ViviCodeConcat, vivi_code_concat, VIVI_TYPE_CODE_VALUE)
@@ -55,16 +55,16 @@ vivi_code_concat_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_concat_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_concat_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeConcat *concat = VIVI_CODE_CONCAT (token);
   ViviCodeAsm *code;
 
-  vivi_code_value_compile (concat->first, assembler);
-  vivi_code_value_compile (concat->second, assembler);
+  vivi_code_compiler_compile_value (compiler, concat->first);
+  vivi_code_compiler_compile_value (compiler, concat->second);
 
   code = vivi_code_asm_string_add_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_continue.c b/vivified/code/vivi_code_continue.c
index b00a766..cb6ab77 100644
--- a/vivified/code/vivi_code_continue.c
+++ b/vivified/code/vivi_code_continue.c
@@ -23,6 +23,7 @@
 
 #include "vivi_code_continue.h"
 #include "vivi_code_printer.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeContinue, vivi_code_continue, VIVI_TYPE_CODE_STATEMENT)
 
@@ -34,7 +35,7 @@ vivi_code_continue_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_continue_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_continue_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   g_printerr ("Implement continue\n");
 }
diff --git a/vivified/code/vivi_code_function.c b/vivified/code/vivi_code_function.c
index 1ddddb9..afa64b7 100644
--- a/vivified/code/vivi_code_function.c
+++ b/vivified/code/vivi_code_function.c
@@ -27,7 +27,7 @@
 #include "vivi_code_constant.h"
 #include "vivi_code_label.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_function2.h"
 
 #include "vivi_decompiler.h"
@@ -83,14 +83,14 @@ vivi_code_function_print (ViviCodeToken *token, ViviCodePrinter*printer)
 }
 
 static void
-vivi_code_function_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_function_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeFunction *function = VIVI_CODE_FUNCTION (token);
   ViviCodeLabel *label_end;
   ViviCodeAsm *code;
   guint i;
 
-  label_end = VIVI_CODE_LABEL (vivi_code_label_new_internal ("function_end"));
+  label_end = vivi_code_compiler_create_label (compiler, "function_end");
 
   code = vivi_code_asm_function2_new (label_end, function->name, 0, 0);
   for (i = 0; i < function->arguments->len; i++) {
@@ -98,13 +98,13 @@ vivi_code_function_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
 	g_ptr_array_index (function->arguments, i), 0);
   }
 
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 
   if (function->body != NULL)
-    vivi_code_statement_compile (function->body, assembler);
+    vivi_code_compiler_compile_statement (compiler, function->body);
 
-  vivi_code_assembler_add_code (assembler, VIVI_CODE_ASM (label_end));
+  vivi_code_compiler_add_code (compiler, VIVI_CODE_ASM (label_end));
   g_object_unref (label_end);
 }
 
diff --git a/vivified/code/vivi_code_function_call.c b/vivified/code/vivi_code_function_call.c
index ee61a26..be0037c 100644
--- a/vivified/code/vivi_code_function_call.c
+++ b/vivified/code/vivi_code_function_call.c
@@ -21,7 +21,7 @@
 #include "config.h"
 #endif
 
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_code_default.h"
 #include "vivi_code_function_call.h"
 #include "vivi_code_number.h"
@@ -123,7 +123,7 @@ vivi_code_function_call_print (ViviCodeToken *token, ViviCodePrinter*printer)
 
 static void
 vivi_code_function_call_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeFunctionCall *call = VIVI_CODE_FUNCTION_CALL (token);
   ViviCodeValue *count;
@@ -131,17 +131,17 @@ vivi_code_function_call_compile (ViviCodeToken *token,
   guint i;
 
   for (i = call->arguments->len - 1; i < call->arguments->len; i--) {
-    vivi_code_value_compile (g_ptr_array_index (call->arguments, i),
-	assembler);
+    vivi_code_compiler_compile_value (compiler,
+	g_ptr_array_index (call->arguments, i));
   }
   count = vivi_code_number_new (call->arguments->len);
-  vivi_code_value_compile (count, assembler);
+  vivi_code_compiler_compile_value (compiler, count);
   g_object_unref (count);
 
-  vivi_code_value_compile (call->name, assembler);
+  vivi_code_compiler_compile_value (compiler, call->name);
 
   if (call->value)
-    vivi_code_value_compile (call->value, assembler);
+    vivi_code_compiler_compile_value (compiler, call->value);
 
   if (call->construct) {
     if (call->value) {
@@ -157,7 +157,7 @@ vivi_code_function_call_compile (ViviCodeToken *token,
     }
   }
 
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_get.c b/vivified/code/vivi_code_get.c
index be801f9..0d3bfcd 100644
--- a/vivified/code/vivi_code_get.c
+++ b/vivified/code/vivi_code_get.c
@@ -22,7 +22,7 @@
 #endif
 
 #include "vivi_code_asm_code_default.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_get.h"
 #include "vivi_code_printer.h"
 #include "vivi_code_string.h"
@@ -75,14 +75,14 @@ vivi_code_get_print (ViviCodeToken *token, ViviCodePrinter*printer)
 }
 
 static void
-vivi_code_get_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_get_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeGet *get = VIVI_CODE_GET (token);
   ViviCodeAsm *code;
 
   if (get->from)
-    vivi_code_value_compile (get->from, assembler);
-  vivi_code_value_compile (get->name, assembler);
+    vivi_code_compiler_compile_value (compiler, get->from);
+  vivi_code_compiler_compile_value (compiler, get->name);
 
   if (get->from) {
     code = vivi_code_asm_get_member_new ();
@@ -90,7 +90,7 @@ vivi_code_get_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
     code = vivi_code_asm_get_variable_new ();
   }
 
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_get_url.c b/vivified/code/vivi_code_get_url.c
index 76eb2c1..23b13a5 100644
--- a/vivified/code/vivi_code_get_url.c
+++ b/vivified/code/vivi_code_get_url.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_get_url.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeGetUrl, vivi_code_get_url, VIVI_TYPE_CODE_STATEMENT)
 
@@ -62,7 +62,7 @@ vivi_code_get_url_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_get_url_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_get_url_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   g_printerr ("Implement getURL2");
 #if 0
diff --git a/vivified/code/vivi_code_goto.c b/vivified/code/vivi_code_goto.c
index b535fc5..1a7d876 100644
--- a/vivified/code/vivi_code_goto.c
+++ b/vivified/code/vivi_code_goto.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_goto.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_jump.h"
 
 G_DEFINE_TYPE (ViviCodeGoto, vivi_code_goto, VIVI_TYPE_CODE_STATEMENT)
@@ -51,13 +51,13 @@ vivi_code_goto_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_goto_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_goto_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeGoto *gotoo = VIVI_CODE_GOTO (token);
   ViviCodeAsm *code;
 
   code = vivi_code_asm_jump_new (gotoo->label);
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_if.c b/vivified/code/vivi_code_if.c
index 267d6db..ac02342 100644
--- a/vivified/code/vivi_code_if.c
+++ b/vivified/code/vivi_code_if.c
@@ -24,8 +24,7 @@
 #include "vivi_code_if.h"
 #include "vivi_code_unary.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_label.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_if.h"
 #include "vivi_code_asm_jump.h"
 
@@ -129,33 +128,33 @@ vivi_code_if_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_if_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_if_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeIf *stmt = VIVI_CODE_IF (token);
   ViviCodeLabel *label_if, *label_end;
   ViviCodeAsm *code;
 
-  vivi_code_value_compile (stmt->condition, assembler);
+  vivi_code_compiler_compile_value (compiler, stmt->condition);
 
-  label_if = VIVI_CODE_LABEL (vivi_code_label_new_internal ("if"));
+  label_if = vivi_code_compiler_create_label (compiler, "if");
   code = vivi_code_asm_if_new (label_if);
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 
   if (stmt->else_statement)
-    vivi_code_statement_compile (stmt->else_statement, assembler);
+    vivi_code_compiler_compile_statement (compiler, stmt->else_statement);
 
-  label_end = VIVI_CODE_LABEL (vivi_code_label_new_internal ("end"));
+  label_end = vivi_code_compiler_create_label (compiler, "end");
   code = vivi_code_asm_jump_new (label_end);
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 
-  vivi_code_assembler_add_code (assembler, VIVI_CODE_ASM (label_if));
+  vivi_code_compiler_add_code (compiler, VIVI_CODE_ASM (label_if));
   g_object_unref (label_if);
 
-  vivi_code_statement_compile (stmt->if_statement, assembler);
+  vivi_code_compiler_compile_statement (compiler, stmt->if_statement);
 
-  vivi_code_assembler_add_code (assembler, VIVI_CODE_ASM (label_end));
+  vivi_code_compiler_add_code (compiler, VIVI_CODE_ASM (label_end));
   g_object_unref (label_end);
 }
 
diff --git a/vivified/code/vivi_code_init_array.c b/vivified/code/vivi_code_init_array.c
index fbb74fb..fd52f36 100644
--- a/vivified/code/vivi_code_init_array.c
+++ b/vivified/code/vivi_code_init_array.c
@@ -23,7 +23,7 @@
 #endif
 
 #include "vivi_code_asm_code_default.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_init_array.h"
 #include "vivi_code_number.h"
 #include "vivi_code_printer.h"
@@ -81,7 +81,7 @@ vivi_code_init_array_print (ViviCodeToken *token, ViviCodePrinter *printer)
 
 static void
 vivi_code_init_array_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeInitArray *array = VIVI_CODE_INIT_ARRAY (token);
   ViviCodeValue *count;
@@ -89,15 +89,15 @@ vivi_code_init_array_compile (ViviCodeToken *token,
   guint i;
 
   for (i = 0; i < array->variables->len; i++) {
-    vivi_code_value_compile (VIVI_CODE_VALUE (g_ptr_array_index (
-	    array->variables, i)), assembler);
+    vivi_code_compiler_compile_value (compiler,
+	VIVI_CODE_VALUE (g_ptr_array_index (array->variables, i)));
   }
   count = vivi_code_number_new (array->variables->len);
-  vivi_code_value_compile (count, assembler);
+  vivi_code_compiler_compile_value (compiler, count);
   g_object_unref (count);
 
   code = vivi_code_asm_init_array_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_init_object.c b/vivified/code/vivi_code_init_object.c
index d632aec..912deed 100644
--- a/vivified/code/vivi_code_init_object.c
+++ b/vivified/code/vivi_code_init_object.c
@@ -24,7 +24,7 @@
 #include "vivi_code_init_object.h"
 #include "vivi_code_printer.h"
 #include "vivi_code_number.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_code_default.h"
 
 G_DEFINE_TYPE (ViviCodeInitObject, vivi_code_init_object, VIVI_TYPE_CODE_VALUE)
@@ -80,7 +80,7 @@ vivi_code_init_object_print (ViviCodeToken *token, ViviCodePrinter*printer)
 
 static void
 vivi_code_init_object_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeInitObject *object = VIVI_CODE_INIT_OBJECT (token);
   ViviCodeValue *count;
@@ -89,16 +89,16 @@ vivi_code_init_object_compile (ViviCodeToken *token,
 
   for (i = 0; i < object->variables->len; i++) {
     VariableEntry *entry = &g_array_index (object->variables, VariableEntry, i);
-    vivi_code_value_compile (entry->value, assembler);
-    vivi_code_value_compile (entry->name, assembler);
+    vivi_code_compiler_compile_value (compiler, entry->value);
+    vivi_code_compiler_compile_value (compiler, entry->name);
   }
 
   count = vivi_code_number_new (object->variables->len);
-  vivi_code_value_compile (count, assembler);
+  vivi_code_compiler_compile_value (compiler, count);
   g_object_unref (count);
 
   code = vivi_code_asm_init_object_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_label.c b/vivified/code/vivi_code_label.c
index 500d9dc..94eaeb4 100644
--- a/vivified/code/vivi_code_label.c
+++ b/vivified/code/vivi_code_label.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_label.h"
 #include "vivi_code_asm.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_emitter.h"
 #include "vivi_code_printer.h"
 
@@ -68,13 +68,14 @@ vivi_code_label_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_label_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_label_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeLabel *label = VIVI_CODE_LABEL (token);
   ViviCodeAsm *code;
 
-  code = VIVI_CODE_ASM (vivi_code_label_new_internal (label->name));
-  vivi_code_assembler_add_code (assembler, code);
+  code =
+    VIVI_CODE_ASM (vivi_code_compiler_create_label (compiler, label->name));
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
@@ -117,13 +118,6 @@ vivi_code_label_new (const char *name)
   return VIVI_CODE_STATEMENT (label);
 }
 
-ViviCodeStatement *
-vivi_code_label_new_internal (const char *prefix)
-{
-  // FIXME
-  return vivi_code_label_new (prefix);
-}
-
 const char *
 vivi_code_label_get_name (ViviCodeLabel *label)
 {
diff --git a/vivified/code/vivi_code_label.h b/vivified/code/vivi_code_label.h
index 44db2ec..342e728 100644
--- a/vivified/code/vivi_code_label.h
+++ b/vivified/code/vivi_code_label.h
@@ -50,7 +50,6 @@ struct _ViviCodeLabelClass
 GType			vivi_code_label_get_type   	(void);
 
 ViviCodeStatement *	vivi_code_label_new		(const char *		name);
-ViviCodeStatement *	vivi_code_label_new_internal	(const char *		prefix);
 
 const char *		vivi_code_label_get_name	(ViviCodeLabel *	label);
 
diff --git a/vivified/code/vivi_code_null.c b/vivified/code/vivi_code_null.c
index 25f7f10..b2099f4 100644
--- a/vivified/code/vivi_code_null.c
+++ b/vivified/code/vivi_code_null.c
@@ -27,7 +27,7 @@
 
 #include "vivi_code_null.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_push.h"
 
 G_DEFINE_TYPE (ViviCodeNull, vivi_code_null, VIVI_TYPE_CODE_CONSTANT)
@@ -39,13 +39,13 @@ vivi_code_null_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_null_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_null_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeAsm *code;
 
   code = vivi_code_asm_push_new ();
   vivi_code_asm_push_add_null (VIVI_CODE_ASM_PUSH (code));
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_number.c b/vivified/code/vivi_code_number.c
index b2f4060..e8e17d5 100644
--- a/vivified/code/vivi_code_number.c
+++ b/vivified/code/vivi_code_number.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_number.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_push.h"
 
 G_DEFINE_TYPE (ViviCodeNumber, vivi_code_number, VIVI_TYPE_CODE_CONSTANT)
@@ -39,7 +39,7 @@ vivi_code_number_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_number_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_number_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeNumber *number = VIVI_CODE_NUMBER (token);
   ViviCodeAsm *code;
@@ -75,7 +75,7 @@ vivi_code_number_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
       g_assert_not_reached ();
   }
 
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_return.c b/vivified/code/vivi_code_return.c
index c1a92c7..ce9d51b 100644
--- a/vivified/code/vivi_code_return.c
+++ b/vivified/code/vivi_code_return.c
@@ -25,7 +25,7 @@
 #include "vivi_code_asm_code_default.h"
 #include "vivi_code_asm_push.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeReturn, vivi_code_return, VIVI_TYPE_CODE_STATEMENT)
 
@@ -57,22 +57,22 @@ vivi_code_return_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_return_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_return_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeReturn *ret = VIVI_CODE_RETURN (token);
   ViviCodeAsm *code;
 
   if (ret->value) {
-    vivi_code_value_compile (ret->value, assembler);
+    vivi_code_compiler_compile_value (compiler, ret->value);
   } else {
     ViviCodeAsm *push = vivi_code_asm_push_new ();
     vivi_code_asm_push_add_undefined (VIVI_CODE_ASM_PUSH (push));
-    vivi_code_assembler_add_code (assembler, push);
+    vivi_code_compiler_add_code (compiler, push);
     g_object_unref (push);
   }
 
   code = vivi_code_asm_return_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_statement.c b/vivified/code/vivi_code_statement.c
index 7c20622..82bf102 100644
--- a/vivified/code/vivi_code_statement.c
+++ b/vivified/code/vivi_code_statement.c
@@ -76,11 +76,3 @@ vivi_code_statement_needs_braces (ViviCodeStatement *stmt)
     return FALSE;
   }
 }
-
-void vivi_code_statement_compile (ViviCodeStatement *statement,
-    ViviCodeAssembler *assembler)
-{
-  g_return_if_fail (VIVI_IS_CODE_STATEMENT (statement));
-
-  vivi_code_token_compile (VIVI_CODE_TOKEN (statement), assembler);
-}
diff --git a/vivified/code/vivi_code_statement.h b/vivified/code/vivi_code_statement.h
index 84d0f93..60326a8 100644
--- a/vivified/code/vivi_code_statement.h
+++ b/vivified/code/vivi_code_statement.h
@@ -50,8 +50,6 @@ struct _ViviCodeStatementClass
 
 GType			vivi_code_statement_get_type   	(void);
 
-void			vivi_code_statement_compile	(ViviCodeStatement *	statement,
-							 ViviCodeAssembler *	assembler);
 ViviCodeStatement *   	vivi_code_statement_optimize	(ViviCodeStatement *	stmt);
 gboolean		vivi_code_statement_needs_braces(ViviCodeStatement *	stmt);
 
diff --git a/vivified/code/vivi_code_string.c b/vivified/code/vivi_code_string.c
index d87bb82..e4910a8 100644
--- a/vivified/code/vivi_code_string.c
+++ b/vivified/code/vivi_code_string.c
@@ -25,7 +25,7 @@
 
 #include "vivi_code_string.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_push.h"
 
 G_DEFINE_TYPE (ViviCodeString, vivi_code_string, VIVI_TYPE_CODE_CONSTANT)
@@ -53,14 +53,14 @@ vivi_code_string_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_string_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_string_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeString *string = VIVI_CODE_STRING (token);
   ViviCodeAsm *code;
 
   code = vivi_code_asm_push_new ();
   vivi_code_asm_push_add_string (VIVI_CODE_ASM_PUSH (code), string->value);
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_substring.c b/vivified/code/vivi_code_substring.c
index 21c7e48..7dcb044 100644
--- a/vivified/code/vivi_code_substring.c
+++ b/vivified/code/vivi_code_substring.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_substring.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCodeSubstring, vivi_code_substring, VIVI_TYPE_CODE_VALUE)
 
@@ -58,20 +58,19 @@ vivi_code_substring_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_substring_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+vivi_code_substring_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   g_printerr ("Implement substring\n");
 #if 0
   ViviCodeSubstring *substring = VIVI_CODE_SUBSTRING (token);
   ViviCodeAsm *code;
 
-  vivi_code_value_compile (substring->string, assembler);
-  vivi_code_value_compile (substring->index_, assembler);
-  vivi_code_value_compile (substring->count, assembler);
+  vivi_code_value_compile (substring->string, compiler);
+  vivi_code_value_compile (substring->index_, compiler);
+  vivi_code_value_compile (substring->count, compiler);
 
   code = vivi_code_asm_string_extract_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 #endif
 }
diff --git a/vivified/code/vivi_code_throw.c b/vivified/code/vivi_code_throw.c
index 8b369b8..df88d2a 100644
--- a/vivified/code/vivi_code_throw.c
+++ b/vivified/code/vivi_code_throw.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_throw.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm.h"
 #include "vivi_code_asm_code_default.h"
 
@@ -57,17 +57,17 @@ vivi_code_throw_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_throw_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_throw_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeThrow *throw_ = VIVI_CODE_THROW (token);
   ViviCodeAsm *code;
 
   g_return_if_fail (throw_->value != NULL);
 
-  vivi_code_value_compile (throw_->value, assembler);
+  vivi_code_compiler_compile_value (compiler, throw_->value);
 
   code = vivi_code_asm_throw_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_token.c b/vivified/code/vivi_code_token.c
index 53fce9a..9001f35 100644
--- a/vivified/code/vivi_code_token.c
+++ b/vivified/code/vivi_code_token.c
@@ -22,7 +22,7 @@
 #endif
 
 #include "vivi_code_token.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_ABSTRACT_TYPE (ViviCodeToken, vivi_code_token, G_TYPE_OBJECT)
 
@@ -49,14 +49,14 @@ vivi_code_token_init (ViviCodeToken *token)
 
 
 void
-vivi_code_token_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_token_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeTokenClass *klass;
 
   g_return_if_fail (VIVI_IS_CODE_TOKEN (token));
-  g_return_if_fail (VIVI_IS_CODE_ASSEMBLER (assembler));
+  g_return_if_fail (VIVI_IS_CODE_COMPILER (compiler));
 
   klass = VIVI_CODE_TOKEN_GET_CLASS (token);
   g_return_if_fail (klass->compile);
-  klass->compile (token, assembler);
+  klass->compile (token, compiler);
 }
diff --git a/vivified/code/vivi_code_token.h b/vivified/code/vivi_code_token.h
index 2ef0d61..4ae9b2b 100644
--- a/vivified/code/vivi_code_token.h
+++ b/vivified/code/vivi_code_token.h
@@ -27,6 +27,7 @@ G_BEGIN_DECLS
 
 typedef struct _ViviCodePrinter ViviCodePrinter;
 typedef struct _ViviCodeAssembler ViviCodeAssembler;
+typedef struct _ViviCodeCompiler ViviCodeCompiler;
 
 typedef struct _ViviCodeToken ViviCodeToken;
 typedef struct _ViviCodeTokenClass ViviCodeTokenClass;
@@ -50,13 +51,13 @@ struct _ViviCodeTokenClass
   void			(* print)			(ViviCodeToken *	token,
 							 ViviCodePrinter *	printer);
   void			(* compile)			(ViviCodeToken *	token,
-							 ViviCodeAssembler *	assembler);
+							 ViviCodeCompiler *	compiler);
 };
 
 GType			vivi_code_token_get_type   	(void);
 
 void			vivi_code_token_compile		(ViviCodeToken *	token,
-							 ViviCodeAssembler *	assembler);
+							 ViviCodeCompiler *	compiler);
 
 
 G_END_DECLS
diff --git a/vivified/code/vivi_code_unary.c b/vivified/code/vivi_code_unary.c
index 9885219..0ba5387 100644
--- a/vivified/code/vivi_code_unary.c
+++ b/vivified/code/vivi_code_unary.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_unary.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm.h"
 #include "vivi_code_asm_code_default.h"
 
@@ -70,17 +70,17 @@ vivi_code_unary_print (ViviCodeToken *token, ViviCodePrinter*printer)
 }
 
 static void
-vivi_code_unary_compile (ViviCodeToken *token, ViviCodeAssembler *assembler)
+vivi_code_unary_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeUnary *unary = VIVI_CODE_UNARY (token);
   ViviCodeAsm *code;
 
   g_return_if_fail (unary->operation != '!');
 
-  vivi_code_value_compile (unary->value, assembler);
+  vivi_code_compiler_compile_value (compiler, unary->value);
 
   code = vivi_code_asm_not_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_undefined.c b/vivified/code/vivi_code_undefined.c
index 65efc1c..32fcbd2 100644
--- a/vivified/code/vivi_code_undefined.c
+++ b/vivified/code/vivi_code_undefined.c
@@ -27,7 +27,7 @@
 
 #include "vivi_code_undefined.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm_push.h"
 
 G_DEFINE_TYPE (ViviCodeUndefined, vivi_code_undefined, VIVI_TYPE_CODE_CONSTANT)
@@ -39,14 +39,13 @@ vivi_code_undefined_print (ViviCodeToken *token, ViviCodePrinter *printer)
 }
 
 static void
-vivi_code_undefined_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+vivi_code_undefined_compile (ViviCodeToken *token, ViviCodeCompiler *compiler)
 {
   ViviCodeAsm *code;
 
   code = vivi_code_asm_push_new ();
   vivi_code_asm_push_add_undefined (VIVI_CODE_ASM_PUSH (code));
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_code_value.c b/vivified/code/vivi_code_value.c
index 9fb8ce9..30539cf 100644
--- a/vivified/code/vivi_code_value.c
+++ b/vivified/code/vivi_code_value.c
@@ -100,11 +100,3 @@ vivi_code_value_is_equal (ViviCodeValue *a, ViviCodeValue *b)
 
   return a == b;
 }
-
-void vivi_code_value_compile (ViviCodeValue *value,
-    ViviCodeAssembler *assembler)
-{
-  g_return_if_fail (VIVI_IS_CODE_VALUE (value));
-
-  vivi_code_token_compile (VIVI_CODE_TOKEN (value), assembler);
-}
diff --git a/vivified/code/vivi_code_value.h b/vivified/code/vivi_code_value.h
index dc7e2cd..df2438f 100644
--- a/vivified/code/vivi_code_value.h
+++ b/vivified/code/vivi_code_value.h
@@ -88,8 +88,5 @@ ViviPrecedence		vivi_code_value_get_precedence	(ViviCodeValue *	value);
 ViviCodeValue *		vivi_code_value_optimize	(ViviCodeValue *	value,
 							 SwfdecAsValueType	hint);
 
-void			vivi_code_value_compile		(ViviCodeValue *	value,
-							 ViviCodeAssembler *	assembler);
-
 G_END_DECLS
 #endif
diff --git a/vivified/code/vivi_code_value_statement.c b/vivified/code/vivi_code_value_statement.c
index 8efc9d3..b3092ba 100644
--- a/vivified/code/vivi_code_value_statement.c
+++ b/vivified/code/vivi_code_value_statement.c
@@ -23,7 +23,7 @@
 
 #include "vivi_code_value_statement.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 #include "vivi_code_asm.h"
 #include "vivi_code_asm_code_default.h"
 
@@ -51,15 +51,15 @@ vivi_code_value_statement_print (ViviCodeToken *token, ViviCodePrinter *printer)
 
 static void
 vivi_code_value_statement_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   ViviCodeValueStatement *stmt = VIVI_CODE_VALUE_STATEMENT (token);
   ViviCodeAsm *code;
 
-  vivi_code_value_compile (stmt->value, assembler);
+  vivi_code_compiler_compile_value (compiler, stmt->value);
 
   code = vivi_code_asm_pop_new ();
-  vivi_code_assembler_add_code (assembler, code);
+  vivi_code_compiler_add_code (compiler, code);
   g_object_unref (code);
 }
 
diff --git a/vivified/code/vivi_compiler_empty_statement.c b/vivified/code/vivi_compiler_empty_statement.c
index de1bb50..4d1ef06 100644
--- a/vivified/code/vivi_compiler_empty_statement.c
+++ b/vivified/code/vivi_compiler_empty_statement.c
@@ -24,7 +24,7 @@
 
 #include "vivi_compiler_empty_statement.h"
 #include "vivi_code_printer.h"
-#include "vivi_code_assembler.h"
+#include "vivi_code_compiler.h"
 
 G_DEFINE_TYPE (ViviCompilerEmptyStatement, vivi_compiler_empty_statement, VIVI_TYPE_CODE_STATEMENT)
 
@@ -44,7 +44,7 @@ vivi_compiler_empty_statement_print (ViviCodeToken *token,
 
 static void
 vivi_compiler_empty_statement_compile (ViviCodeToken *token,
-    ViviCodeAssembler *assembler)
+    ViviCodeCompiler *compiler)
 {
   /* nothing */
 }
commit 8232ea383892057880760bb67470b55e5e84a821
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu May 8 11:01:58 2008 +0300

    Get stack add/remove values and use them in push merging
    
    Merging is at the moment only done over actions that don't add or remove
    anything to/from the stack

diff --git a/vivified/code/vivi_code_asm_code.c b/vivified/code/vivi_code_asm_code.c
index 8f47ee5..be0f488 100644
--- a/vivified/code/vivi_code_asm_code.c
+++ b/vivified/code/vivi_code_asm_code.c
@@ -71,3 +71,19 @@ vivi_code_asm_code_get_action (ViviCodeAsmCode *code)
 
   return klass->bytecode;
 }
+
+int
+vivi_code_asm_code_get_stack_add (ViviCodeAsmCode *code)
+{
+  g_return_val_if_fail (VIVI_IS_CODE_ASM_CODE (code), -1);
+
+  return swfdec_as_actions[vivi_code_asm_code_get_action (code)].add;
+}
+
+int
+vivi_code_asm_code_get_stack_remove (ViviCodeAsmCode *code)
+{
+  g_return_val_if_fail (VIVI_IS_CODE_ASM_CODE (code), -1);
+
+  return swfdec_as_actions[vivi_code_asm_code_get_action (code)].remove;
+}
diff --git a/vivified/code/vivi_code_asm_code.h b/vivified/code/vivi_code_asm_code.h
index d62f6b6..273c803 100644
--- a/vivified/code/vivi_code_asm_code.h
+++ b/vivified/code/vivi_code_asm_code.h
@@ -50,9 +50,11 @@ struct _ViviCodeAsmCodeClass
   SwfdecAsAction	bytecode;
 };
 
-GType			vivi_code_asm_code_get_type   	(void);
+GType			vivi_code_asm_code_get_type		(void);
 
-SwfdecAsAction		vivi_code_asm_code_get_action	(ViviCodeAsmCode *	code);
+SwfdecAsAction		vivi_code_asm_code_get_action		(ViviCodeAsmCode *	code);
+int			vivi_code_asm_code_get_stack_add	(ViviCodeAsmCode *	code);
+int			vivi_code_asm_code_get_stack_remove	(ViviCodeAsmCode *	code);
 
 
 G_END_DECLS
diff --git a/vivified/code/vivi_code_assembler.c b/vivified/code/vivi_code_assembler.c
index baf4424..8087fe1 100644
--- a/vivified/code/vivi_code_assembler.c
+++ b/vivified/code/vivi_code_assembler.c
@@ -281,15 +281,16 @@ void
 vivi_code_assembler_merge_push (ViviCodeAssembler *assembler)
 {
   ViviCodeAsmPush *previous;
-  guint i, j;
+  guint i, j, depth;
 
+  depth = 0;
   previous = NULL;
   for (i = 0; i < assembler->codes->len; i++) {
     if (VIVI_IS_CODE_ASM_PUSH (g_ptr_array_index (assembler->codes, i))) {
       ViviCodeAsmPush *current =
 	VIVI_CODE_ASM_PUSH (g_ptr_array_index (assembler->codes, i));
 
-      if (previous != NULL) {
+      if (previous != NULL && depth == 0) {
 	for (j = 0; j < vivi_code_asm_push_get_n_values (current); j++) {
 	  vivi_code_asm_push_copy_value (previous, current, j);
 	}
@@ -297,9 +298,23 @@ vivi_code_assembler_merge_push (ViviCodeAssembler *assembler)
 	i--;
       } else {
 	previous = current;
+	depth = 0;
       }
     } else {
-      previous = NULL;
+      if (previous != NULL) {
+	if (vivi_code_asm_code_get_stack_add (VIVI_CODE_ASM_CODE (
+		g_ptr_array_index (assembler->codes, i))) != 0) {
+	  previous = NULL;
+	} else {
+	  int remove = vivi_code_asm_code_get_stack_remove (VIVI_CODE_ASM_CODE (
+		g_ptr_array_index (assembler->codes, i)));
+	  if (remove == -1) {
+	    previous = NULL;
+	  } else {
+	    depth += remove;
+	  }
+	}
+      }
     }
   }
 }
commit fef5abb74eaedabd8c1aef1e2e7516e475301d61
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu May 8 09:37:39 2008 +0300

    Merge pushes that come right after each other. Add a test for function call

diff --git a/vivified/code/compiler.c b/vivified/code/compiler.c
index 8ebd650..b0fa84f 100644
--- a/vivified/code/compiler.c
+++ b/vivified/code/compiler.c
@@ -189,6 +189,7 @@ main (int argc, char *argv[])
   g_object_unref (code);
 
   vivi_code_assembler_pool (assembler);
+  vivi_code_assembler_merge_push (assembler);
 
   if (use_asm) {
     ViviCodePrinter *printer = vivi_code_text_printer_new ();
diff --git a/vivified/code/test/compiler/Makefile.am b/vivified/code/test/compiler/Makefile.am
index fd2c3cf..e432751 100644
--- a/vivified/code/test/compiler/Makefile.am
+++ b/vivified/code/test/compiler/Makefile.am
@@ -16,6 +16,8 @@ check-local: $(top_builddir)/vivified/code/vivi-compile
 EXTRA_DIST = \
 	builtin_statement.as \
 	builtin_statement.as.expect \
+	call_function.as \
+	call_function.as.expect \
 	comment.as \
 	comment.as.expect \
 	empty.as \
diff --git a/vivified/code/test/compiler/call_function.as b/vivified/code/test/compiler/call_function.as
new file mode 100644
index 0000000..13dd15a
--- /dev/null
+++ b/vivified/code/test/compiler/call_function.as
@@ -0,0 +1 @@
+test ("a", "b", "c");
diff --git a/vivified/code/test/compiler/call_function.as.expect b/vivified/code/test/compiler/call_function.as.expect
new file mode 100644
index 0000000..58395c4
--- /dev/null
+++ b/vivified/code/test/compiler/call_function.as.expect
@@ -0,0 +1,7 @@
+asm {
+  pool "c", "b", "a", "test"
+  push pool 0, pool 1, pool 2, 3, pool 3
+  call_function
+  pop
+  end
+}
diff --git a/vivified/code/vivi_code_assembler.c b/vivified/code/vivi_code_assembler.c
index fff4087..baf4424 100644
--- a/vivified/code/vivi_code_assembler.c
+++ b/vivified/code/vivi_code_assembler.c
@@ -277,6 +277,33 @@ vivi_code_assembler_pool (ViviCodeAssembler *assembler)
   return TRUE;
 }
 
+void
+vivi_code_assembler_merge_push (ViviCodeAssembler *assembler)
+{
+  ViviCodeAsmPush *previous;
+  guint i, j;
+
+  previous = NULL;
+  for (i = 0; i < assembler->codes->len; i++) {
+    if (VIVI_IS_CODE_ASM_PUSH (g_ptr_array_index (assembler->codes, i))) {
+      ViviCodeAsmPush *current =
+	VIVI_CODE_ASM_PUSH (g_ptr_array_index (assembler->codes, i));
+
+      if (previous != NULL) {
+	for (j = 0; j < vivi_code_asm_push_get_n_values (current); j++) {
+	  vivi_code_asm_push_copy_value (previous, current, j);
+	}
+	vivi_code_assembler_remove_code (assembler, VIVI_CODE_ASM (current));
+	i--;
+      } else {
+	previous = current;
+      }
+    } else {
+      previous = NULL;
+    }
+  }
+}
+
 SwfdecScript *
 vivi_code_assembler_assemble_script (ViviCodeAssembler *assembler,
     guint version, GError **error)
diff --git a/vivified/code/vivi_code_assembler.h b/vivified/code/vivi_code_assembler.h
index 833d2b0..508e861 100644
--- a/vivified/code/vivi_code_assembler.h
+++ b/vivified/code/vivi_code_assembler.h
@@ -62,6 +62,7 @@ void			vivi_code_assembler_remove_code		(ViviCodeAssembler *	assembler,
 								 ViviCodeAsm *		code);
 
 gboolean		vivi_code_assembler_pool		(ViviCodeAssembler *	assembler);
+void			vivi_code_assembler_merge_push		(ViviCodeAssembler *	assembler);
 
 SwfdecScript *		vivi_code_assembler_assemble_script	(ViviCodeAssembler *	assembler,
 								 guint			version,


More information about the Swfdec-commits mailing list