[gtk+/a11y] Replace the boundary test



commit d2cfc2790c8ce7be1d03828a0973ea7fc88fdec7
Author: Matthias Clasen <mclasen redhat com>
Date:   Fri Jun 24 20:16:05 2011 -0400

    Replace the boundary test
    
    The new test is much smaller, and the results have been carefully
    looked at; GtkLabel gets it right, the others don't.
    
    Also, temporarily include some code that dumps out useful information.

 tests/a11y/text.c | 2037 ++++++++++-------------------------------------------
 1 files changed, 356 insertions(+), 1681 deletions(-)
---
diff --git a/tests/a11y/text.c b/tests/a11y/text.c
index 791be05..bda5537 100644
--- a/tests/a11y/text.c
+++ b/tests/a11y/text.c
@@ -99,1706 +99,374 @@ typedef struct {
   const gchar *word;
 } Word;
 
+static const gchar *
+boundary (AtkTextBoundary b)
+{
+  switch (b)
+    {
+    case ATK_TEXT_BOUNDARY_CHAR:           return "ATK_TEXT_BOUNDARY_CHAR,          ";
+    case ATK_TEXT_BOUNDARY_WORD_START:     return "ATK_TEXT_BOUNDARY_WORD_START,    ";
+    case ATK_TEXT_BOUNDARY_WORD_END:       return "ATK_TEXT_BOUNDARY_WORD_END,      ";
+    case ATK_TEXT_BOUNDARY_SENTENCE_START: return "ATK_TEXT_BOUNDARY_SENTENCE_START,";
+    case ATK_TEXT_BOUNDARY_SENTENCE_END:   return "ATK_TEXT_BOUNDARY_SENTENCE_END,  ";
+    case ATK_TEXT_BOUNDARY_LINE_START:     return "ATK_TEXT_BOUNDARY_LINE_START,    ";
+    case ATK_TEXT_BOUNDARY_LINE_END:       return "ATK_TEXT_BOUNDARY_LINE_END,      ";
+    default: g_assert_not_reached ();
+    }
+}
+
+static const gchar *
+gravity (gint g)
+{
+  if (g < 0) return "before";
+  else if (g > 0) return "after";
+  else return "around";
+}
+
+const gchar *
+char_rep (gunichar c)
+{
+  static gchar out[6];
+
+  switch (c)
+    {
+      case '\n': return "\\n";
+      case 196: return "?";
+      case 214: return "?";
+      case 220: return "?";
+      default:
+        memset (out, 0, 6);
+        g_unichar_to_utf8 (c, out);
+        return out;
+    }
+}
+
+gchar *
+escape (const gchar *p)
+{
+  GString *s;
+
+  s = g_string_new ("");
+
+  while (*p)
+    {
+      if (*p == '\n')
+        g_string_append (s, "\\n");
+      else
+        g_string_append_c (s, *p);
+      p++;
+    }
+
+  return g_string_free (s, FALSE);
+}
+
+static void
+show_text_attributes (PangoLayout *l)
+{
+  const PangoLogAttr *attr;
+  gint n_attrs;
+  const gchar *s;
+  gchar e;
+  const gchar *p;
+  gint i;
+  const gchar *text;
+  GSList *lines, *li;
+  glong so, eo;
+
+  printf ("\n");
+
+  text = pango_layout_get_text (l);
+  attr = pango_layout_get_log_attrs_readonly (l, &n_attrs);
+
+  p = text;
+  while (*p)
+    {
+      s = char_rep (g_utf8_get_char (p));
+      printf (" %s", s);
+      p = g_utf8_next_char (p);
+    }
+  printf ("\n");
+  p = text;
+  i = 0;
+  do
+    {
+      if (*p)
+        s = char_rep (g_utf8_get_char (p));
+      else
+        s = "";
+      if (attr[i].is_word_start && attr[i].is_word_end)
+        e = '|';
+      else if (attr[i].is_word_start)
+        e = '<';
+      else if (attr[i].is_word_end)
+        e = '>';
+      else
+        e = ' ';
+      printf ("%c%*s", e, strlen (s), "");
+      if (*p)
+        p = g_utf8_next_char (p);
+      i++;
+    }
+  while (*p || i < n_attrs);
+  printf ("\n");
+
+  p = text;
+  i = 0;
+  do
+    {
+      if (*p)
+        s = char_rep (g_utf8_get_char (p));
+      else
+        s = "";
+      if (attr[i].is_sentence_start && attr[i].is_sentence_end)
+        e = '|';
+      else if (attr[i].is_sentence_start)
+        e = '<';
+      else if (attr[i].is_sentence_end)
+        e = '>';
+      else
+        e = ' ';
+      printf ("%c%*s", e, strlen (s), "");
+      if (*p)
+        p = g_utf8_next_char (p);
+      i++;
+    }
+  while (*p || i < n_attrs);
+  printf ("\n");
+
+  lines = pango_layout_get_lines_readonly (l);
+  p = text;
+  i = 0;
+  do
+    {
+      gboolean start, end;
+
+      if (*p)
+        s = char_rep (g_utf8_get_char (p));
+      else
+        s = "";
+      start = end = FALSE;
+      for (li = lines; li; li = li->next)
+        {
+          PangoLayoutLine *line = li->data;
+          so = g_utf8_pointer_to_offset (text, text + line->start_index);
+          eo = g_utf8_pointer_to_offset (text, text + line->start_index + line->length);
+          if (so == i)
+            start = TRUE;
+          if (eo == i)
+            end = TRUE;
+        }
+      if (start && end)
+        e = '|';
+      else if (start)
+        e = '<';
+      else if (end)
+        e = '>';
+      else
+        e = ' ';
+      printf ("%c%*s", e, strlen (s), "");
+      if (*p)
+        p = g_utf8_next_char (p);
+      i++;
+    }
+  while (*p || i < n_attrs);
+  printf ("\n");
+}
+
 static void
 test_words (GtkWidget *widget)
 {
   AtkText *atk_text;
-  const gchar *text = "This is a medium-size test string,\n"
-                      "including some \303\204\303\226\303\234 and\n"
-                      "123 for good measure.";
+  const gchar *text = "abc! def\nghi jkl\nmno";
   Word expected[] = {
-    { -1,  0, ATK_TEXT_BOUNDARY_CHAR,            0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_CHAR,            0,  1, "T" },
-    { -1,  2, ATK_TEXT_BOUNDARY_CHAR,            1,  2, "h" },
-    { -1,  3, ATK_TEXT_BOUNDARY_CHAR,            2,  3, "i" },
-    { -1,  4, ATK_TEXT_BOUNDARY_CHAR,            3,  4, "s" },
-    { -1,  5, ATK_TEXT_BOUNDARY_CHAR,            4,  5, " " },
-    { -1,  6, ATK_TEXT_BOUNDARY_CHAR,            5,  6, "i" },
-    { -1,  7, ATK_TEXT_BOUNDARY_CHAR,            6,  7, "s" },
-    { -1,  8, ATK_TEXT_BOUNDARY_CHAR,            7,  8, " " },
-    { -1,  9, ATK_TEXT_BOUNDARY_CHAR,            8,  9, "a" },
-    { -1, 10, ATK_TEXT_BOUNDARY_CHAR,            9, 10, " " },
-    { -1, 11, ATK_TEXT_BOUNDARY_CHAR,           10, 11, "m" },
-    { -1, 12, ATK_TEXT_BOUNDARY_CHAR,           11, 12, "e" },
-    { -1, 13, ATK_TEXT_BOUNDARY_CHAR,           12, 13, "d" },
-    { -1, 14, ATK_TEXT_BOUNDARY_CHAR,           13, 14, "i" },
-    { -1, 15, ATK_TEXT_BOUNDARY_CHAR,           14, 15, "u" },
-    { -1, 16, ATK_TEXT_BOUNDARY_CHAR,           15, 16, "m" },
-    { -1, 17, ATK_TEXT_BOUNDARY_CHAR,           16, 17, "-" },
-    { -1, 18, ATK_TEXT_BOUNDARY_CHAR,           17, 18, "s" },
-    { -1, 19, ATK_TEXT_BOUNDARY_CHAR,           18, 19, "i" },
-    { -1, 20, ATK_TEXT_BOUNDARY_CHAR,           19, 20, "z" },
-    { -1, 21, ATK_TEXT_BOUNDARY_CHAR,           20, 21, "e" },
-    { -1, 22, ATK_TEXT_BOUNDARY_CHAR,           21, 22, " " },
-    { -1, 23, ATK_TEXT_BOUNDARY_CHAR,           22, 23, "t" },
-    { -1, 24, ATK_TEXT_BOUNDARY_CHAR,           23, 24, "e" },
-    { -1, 25, ATK_TEXT_BOUNDARY_CHAR,           24, 25, "s" },
-    { -1, 26, ATK_TEXT_BOUNDARY_CHAR,           25, 26, "t" },
-    { -1, 27, ATK_TEXT_BOUNDARY_CHAR,           26, 27, " " },
-    { -1, 28, ATK_TEXT_BOUNDARY_CHAR,           27, 28, "s" },
-    { -1, 29, ATK_TEXT_BOUNDARY_CHAR,           28, 29, "t" },
-    { -1, 30, ATK_TEXT_BOUNDARY_CHAR,           29, 30, "r" },
-    { -1, 31, ATK_TEXT_BOUNDARY_CHAR,           30, 31, "i" },
-    { -1, 32, ATK_TEXT_BOUNDARY_CHAR,           31, 32, "n" },
-    { -1, 33, ATK_TEXT_BOUNDARY_CHAR,           32, 33, "g" },
-    { -1, 34, ATK_TEXT_BOUNDARY_CHAR,           33, 34, "," },
-    { -1, 35, ATK_TEXT_BOUNDARY_CHAR,           34, 35, "\n" },
-    { -1, 36, ATK_TEXT_BOUNDARY_CHAR,           35, 36, "i" },
-    { -1, 37, ATK_TEXT_BOUNDARY_CHAR,           36, 37, "n" },
-    { -1, 38, ATK_TEXT_BOUNDARY_CHAR,           37, 38, "c" },
-    { -1, 39, ATK_TEXT_BOUNDARY_CHAR,           38, 39, "l" },
-    { -1, 40, ATK_TEXT_BOUNDARY_CHAR,           39, 40, "u" },
-    { -1, 41, ATK_TEXT_BOUNDARY_CHAR,           40, 41, "d" },
-    { -1, 42, ATK_TEXT_BOUNDARY_CHAR,           41, 42, "i" },
-    { -1, 43, ATK_TEXT_BOUNDARY_CHAR,           42, 43, "n" },
-    { -1, 44, ATK_TEXT_BOUNDARY_CHAR,           43, 44, "g" },
-    { -1, 45, ATK_TEXT_BOUNDARY_CHAR,           44, 45, " " },
-    { -1, 46, ATK_TEXT_BOUNDARY_CHAR,           45, 46, "s" },
-    { -1, 47, ATK_TEXT_BOUNDARY_CHAR,           46, 47, "o" },
-    { -1, 48, ATK_TEXT_BOUNDARY_CHAR,           47, 48, "m" },
-    { -1, 49, ATK_TEXT_BOUNDARY_CHAR,           48, 49, "e" },
-    { -1, 50, ATK_TEXT_BOUNDARY_CHAR,           49, 50, " " },
-    { -1, 51, ATK_TEXT_BOUNDARY_CHAR,           50, 51, "\303\204" },
-    { -1, 52, ATK_TEXT_BOUNDARY_CHAR,           51, 52, "\303\226" },
-    { -1, 53, ATK_TEXT_BOUNDARY_CHAR,           52, 53, "\303\234" },
-    { -1, 54, ATK_TEXT_BOUNDARY_CHAR,           53, 54, " " },
-    { -1, 55, ATK_TEXT_BOUNDARY_CHAR,           54, 55, "a" },
-    { -1, 56, ATK_TEXT_BOUNDARY_CHAR,           55, 56, "n" },
-    { -1, 57, ATK_TEXT_BOUNDARY_CHAR,           56, 57, "d" },
-    { -1, 58, ATK_TEXT_BOUNDARY_CHAR,           57, 58, "\n" },
-    { -1, 59, ATK_TEXT_BOUNDARY_CHAR,           58, 59, "1" },
-    { -1, 60, ATK_TEXT_BOUNDARY_CHAR,           59, 60, "2" },
-    { -1, 61, ATK_TEXT_BOUNDARY_CHAR,           60, 61, "3" },
-    { -1, 62, ATK_TEXT_BOUNDARY_CHAR,           61, 62, " " },
-    { -1, 63, ATK_TEXT_BOUNDARY_CHAR,           62, 63, "f" },
-    { -1, 64, ATK_TEXT_BOUNDARY_CHAR,           63, 64, "o" },
-    { -1, 65, ATK_TEXT_BOUNDARY_CHAR,           64, 65, "r" },
-    { -1, 66, ATK_TEXT_BOUNDARY_CHAR,           65, 66, " " },
-    { -1, 67, ATK_TEXT_BOUNDARY_CHAR,           66, 67, "g" },
-    { -1, 68, ATK_TEXT_BOUNDARY_CHAR,           67, 68, "o" },
-    { -1, 69, ATK_TEXT_BOUNDARY_CHAR,           68, 69, "o" },
-    { -1, 70, ATK_TEXT_BOUNDARY_CHAR,           69, 70, "d" },
-    { -1, 71, ATK_TEXT_BOUNDARY_CHAR,           70, 71, " " },
-    { -1, 72, ATK_TEXT_BOUNDARY_CHAR,           71, 72, "m" },
-    { -1, 73, ATK_TEXT_BOUNDARY_CHAR,           72, 73, "e" },
-    { -1, 74, ATK_TEXT_BOUNDARY_CHAR,           73, 74, "a" },
-    { -1, 75, ATK_TEXT_BOUNDARY_CHAR,           74, 75, "s" },
-    { -1, 76, ATK_TEXT_BOUNDARY_CHAR,           75, 76, "u" },
-    { -1, 77, ATK_TEXT_BOUNDARY_CHAR,           76, 77, "r" },
-    { -1, 78, ATK_TEXT_BOUNDARY_CHAR,           77, 78, "e" },
-    { -1, 79, ATK_TEXT_BOUNDARY_CHAR,           78, 79, "." },
-    { -1,  0, ATK_TEXT_BOUNDARY_WORD_START,      0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_WORD_START,      0,  0, "" },
-    { -1,  2, ATK_TEXT_BOUNDARY_WORD_START,      0,  0, "" },
-    { -1,  3, ATK_TEXT_BOUNDARY_WORD_START,      0,  0, "" },
-    { -1,  4, ATK_TEXT_BOUNDARY_WORD_START,      0,  0, "" },
-    { -1,  5, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    { -1,  6, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    { -1,  7, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    { -1,  8, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    { -1,  9, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    { -1, 10, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 11, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 12, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 13, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 14, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 15, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 16, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    { -1, 17, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    { -1, 18, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    { -1, 19, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    { -1, 20, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    { -1, 21, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    { -1, 22, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    { -1, 23, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    { -1, 24, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    { -1, 25, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    { -1, 26, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    { -1, 27, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 28, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 29, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 30, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 31, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 32, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 33, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 34, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    { -1, 35, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 36, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 37, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 38, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 39, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 40, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 41, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 42, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 43, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 44, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    { -1, 45, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    { -1, 46, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    { -1, 47, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    { -1, 48, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    { -1, 49, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    { -1, 50, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    { -1, 51, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    { -1, 52, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    { -1, 53, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    { -1, 54, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    { -1, 55, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    { -1, 56, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    { -1, 57, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    { -1, 58, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    { -1, 59, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    { -1, 60, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    { -1, 61, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    { -1, 62, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    { -1, 63, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    { -1, 64, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    { -1, 65, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    { -1, 66, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    { -1, 67, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    { -1, 68, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    { -1, 69, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    { -1, 70, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    { -1, 71, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 72, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 73, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 74, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 75, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 76, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 77, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 78, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1, 79, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    { -1,  0, ATK_TEXT_BOUNDARY_WORD_END,        0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_WORD_END,        0,  0, "" },
-    { -1,  2, ATK_TEXT_BOUNDARY_WORD_END,        0,  0, "" },
-    { -1,  3, ATK_TEXT_BOUNDARY_WORD_END,        0,  0, "" },
-    { -1,  4, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    { -1,  5, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    { -1,  6, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    { -1,  7, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    { -1,  8, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    { -1,  9, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 10, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 11, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 12, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 13, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 14, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 15, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    { -1, 16, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    { -1, 17, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    { -1, 18, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    { -1, 19, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    { -1, 20, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    { -1, 21, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    { -1, 22, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    { -1, 23, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    { -1, 24, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    { -1, 25, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    { -1, 26, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 27, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 28, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 29, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 30, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 31, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 32, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    { -1, 33, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 34, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 35, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 36, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 37, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 38, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 39, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 40, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 41, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 42, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 43, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    { -1, 44, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    { -1, 45, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    { -1, 46, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    { -1, 47, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    { -1, 48, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    { -1, 49, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    { -1, 50, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    { -1, 51, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    { -1, 52, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    { -1, 53, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    { -1, 54, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    { -1, 55, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    { -1, 56, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    { -1, 57, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    { -1, 58, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    { -1, 59, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    { -1, 60, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    { -1, 61, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    { -1, 62, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    { -1, 63, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    { -1, 64, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    { -1, 65, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    { -1, 66, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    { -1, 67, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    { -1, 68, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    { -1, 69, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    { -1, 70, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 71, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 72, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 73, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 74, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 75, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 76, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 77, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    { -1, 78, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    { -1, 79, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
+    { -1,  0, ATK_TEXT_BOUNDARY_CHAR,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_CHAR,  0,  1, "a" },
+    { -1,  2, ATK_TEXT_BOUNDARY_CHAR,  1,  2, "b" },
+    { -1,  3, ATK_TEXT_BOUNDARY_CHAR,  2,  3, "c" },
+    { -1,  4, ATK_TEXT_BOUNDARY_CHAR,  3,  4, "!" },
+    { -1,  5, ATK_TEXT_BOUNDARY_CHAR,  4,  5, " " },
+    { -1,  6, ATK_TEXT_BOUNDARY_CHAR,  5,  6, "d" },
+    { -1,  7, ATK_TEXT_BOUNDARY_CHAR,  6,  7, "e" },
+    { -1,  8, ATK_TEXT_BOUNDARY_CHAR,  7,  8, "f" },
+    { -1,  9, ATK_TEXT_BOUNDARY_CHAR,  8,  9, "\n" },
+    { -1, 10, ATK_TEXT_BOUNDARY_CHAR,  9, 10, "g" },
+    { -1, 11, ATK_TEXT_BOUNDARY_CHAR, 10, 11, "h" },
+    { -1, 12, ATK_TEXT_BOUNDARY_CHAR, 11, 12, "i" },
+    { -1, 13, ATK_TEXT_BOUNDARY_CHAR, 12, 13, " " },
+    { -1, 14, ATK_TEXT_BOUNDARY_CHAR, 13, 14, "j" },
+    { -1, 15, ATK_TEXT_BOUNDARY_CHAR, 14, 15, "k" },
+    { -1, 16, ATK_TEXT_BOUNDARY_CHAR, 15, 16, "l" },
+    { -1, 17, ATK_TEXT_BOUNDARY_CHAR, 16, 17, "\n" },
+    { -1, 18, ATK_TEXT_BOUNDARY_CHAR, 17, 18, "m" },
+    { -1, 19, ATK_TEXT_BOUNDARY_CHAR, 18, 19, "n" },
+    { -1, 20, ATK_TEXT_BOUNDARY_CHAR, 19, 20, "o" },
+    { -1,  0, ATK_TEXT_BOUNDARY_WORD_START,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_WORD_START,  0,  0, "" },
+    { -1,  2, ATK_TEXT_BOUNDARY_WORD_START,  0,  0, "" },
+    { -1,  3, ATK_TEXT_BOUNDARY_WORD_START,  0,  0, "" },
+    { -1,  4, ATK_TEXT_BOUNDARY_WORD_START,  0,  0, "" },
+    { -1,  5, ATK_TEXT_BOUNDARY_WORD_START,  0,  5, "abc! " },
+    { -1,  6, ATK_TEXT_BOUNDARY_WORD_START,  0,  5, "abc! " },
+    { -1,  7, ATK_TEXT_BOUNDARY_WORD_START,  0,  5, "abc! " },
+    { -1,  8, ATK_TEXT_BOUNDARY_WORD_START,  0,  5, "abc! " },
+    { -1,  9, ATK_TEXT_BOUNDARY_WORD_START,  5,  9, "def\n" },
+    { -1, 10, ATK_TEXT_BOUNDARY_WORD_START,  5,  9, "def\n" },
+    { -1, 11, ATK_TEXT_BOUNDARY_WORD_START,  5,  9, "def\n" },
+    { -1, 12, ATK_TEXT_BOUNDARY_WORD_START,  5,  9, "def\n" },
+    { -1, 13, ATK_TEXT_BOUNDARY_WORD_START,  9, 13, "ghi " },
+    { -1, 14, ATK_TEXT_BOUNDARY_WORD_START,  9, 13, "ghi " },
+    { -1, 15, ATK_TEXT_BOUNDARY_WORD_START,  9, 13, "ghi " },
+    { -1, 16, ATK_TEXT_BOUNDARY_WORD_START,  9, 13, "ghi " },
+    { -1, 17, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" },
+    { -1, 18, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" },
+    { -1, 19, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" },
+    { -1, 20, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" },
+    { -1,  0, ATK_TEXT_BOUNDARY_WORD_END,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_WORD_END,  0,  0, "" },
+    { -1,  2, ATK_TEXT_BOUNDARY_WORD_END,  0,  0, "" },
+    { -1,  3, ATK_TEXT_BOUNDARY_WORD_END,  0,  3, "abc" },
+    { -1,  4, ATK_TEXT_BOUNDARY_WORD_END,  0,  3, "abc" },
+    { -1,  5, ATK_TEXT_BOUNDARY_WORD_END,  0,  3, "abc" },
+    { -1,  6, ATK_TEXT_BOUNDARY_WORD_END,  0,  3, "abc" },
+    { -1,  7, ATK_TEXT_BOUNDARY_WORD_END,  0,  3, "abc" },
+    { -1,  8, ATK_TEXT_BOUNDARY_WORD_END,  3,  8, "! def" },
+    { -1,  9, ATK_TEXT_BOUNDARY_WORD_END,  3,  8, "! def" },
+    { -1, 10, ATK_TEXT_BOUNDARY_WORD_END,  3,  8, "! def" },
+    { -1, 11, ATK_TEXT_BOUNDARY_WORD_END,  3,  8, "! def" },
+    { -1, 12, ATK_TEXT_BOUNDARY_WORD_END,  8, 12, "\nghi" },
+    { -1, 13, ATK_TEXT_BOUNDARY_WORD_END,  8, 12, "\nghi" },
+    { -1, 14, ATK_TEXT_BOUNDARY_WORD_END,  8, 12, "\nghi" },
+    { -1, 15, ATK_TEXT_BOUNDARY_WORD_END,  8, 12, "\nghi" },
+    { -1, 16, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" },
+    { -1, 17, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" },
+    { -1, 18, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" },
+    { -1, 19, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" },
+    { -1, 20, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" },
     { -1,  0, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
     { -1,  1, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
     { -1,  2, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
     { -1,  3, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
     { -1,  4, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1,  5, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1,  6, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1,  7, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1,  8, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1,  9, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 21, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 22, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 23, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 24, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 25, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 26, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 27, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 28, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 29, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 30, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 31, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 32, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 33, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 34, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  0, "" },
-    { -1, 35, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 36, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 37, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 38, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 39, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 40, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 41, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 42, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 43, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 44, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 45, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 46, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 47, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 48, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 49, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 50, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 51, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 52, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 53, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 54, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 55, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 56, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 57, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    { -1, 58, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 59, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 60, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 61, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 62, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 63, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 64, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 65, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 66, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 67, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 68, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 69, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 70, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 71, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 72, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 73, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 74, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 75, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 76, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 77, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 78, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1, 79, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    { -1,  0, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  2, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  3, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  4, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  5, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  6, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  7, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  8, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1,  9, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 21, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 22, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 23, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 24, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 25, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 26, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 27, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 28, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 29, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 30, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 31, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 32, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 33, ATK_TEXT_BOUNDARY_SENTENCE_END,    0,  0, "" },
-    { -1, 34, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 35, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 36, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 37, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 38, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 39, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 40, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 41, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 42, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 43, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 44, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 45, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 46, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 47, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 48, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 49, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 50, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 51, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 52, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 53, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 54, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 55, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 56, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    { -1, 57, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 58, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 59, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 60, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 61, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 62, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 63, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 64, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 65, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 66, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 67, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 68, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 69, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 70, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 71, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 72, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 73, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 74, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 75, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 76, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 77, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 78, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 79, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    { -1,  0, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  2, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  3, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  4, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  5, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  6, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  7, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  8, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1,  9, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 10, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 11, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 12, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 13, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 14, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 15, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 16, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 17, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 18, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 19, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 20, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 21, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 22, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 23, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 24, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 25, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 26, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 27, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 28, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 29, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 30, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 31, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 32, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 33, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 34, ATK_TEXT_BOUNDARY_LINE_START,      0,  0, "" },
-    { -1, 35, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 36, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 37, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 38, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 39, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 40, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 41, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 42, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 43, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 44, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 45, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 46, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 47, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 48, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 49, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 50, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 51, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 52, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 53, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 54, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 55, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 56, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 57, ATK_TEXT_BOUNDARY_LINE_START,     34, 35, "\n" },
-    { -1, 58, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 59, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 60, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 61, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 62, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 63, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 64, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 65, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 66, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 67, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 68, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 69, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 70, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 71, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 72, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 73, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 74, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 75, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 76, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 77, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 78, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1, 79, ATK_TEXT_BOUNDARY_LINE_START,     57, 58, "\n" },
-    { -1,  0, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  1, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  2, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  3, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  4, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  5, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  6, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  7, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  8, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1,  9, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 10, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 11, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 12, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 13, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 14, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 15, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 16, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 17, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 18, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 19, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 20, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 21, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 22, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 23, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 24, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 25, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 26, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 27, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 28, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 29, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 30, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 31, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 32, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 33, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 34, ATK_TEXT_BOUNDARY_LINE_END,        0,  0, "" },
-    { -1, 35, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 36, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 37, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 38, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 39, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 40, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 41, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 42, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 43, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 44, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 45, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 46, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 47, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 48, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 49, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 50, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 51, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 52, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 53, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 54, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 55, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 56, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 57, ATK_TEXT_BOUNDARY_LINE_END,       34, 34, "" },
-    { -1, 58, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 59, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 60, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 61, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 62, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 63, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 64, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 65, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 66, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 67, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 68, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 69, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 70, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 71, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 72, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 73, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 74, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 75, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 76, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 77, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 78, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    { -1, 79, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0,  0, ATK_TEXT_BOUNDARY_CHAR,            0,  1, "T" },
-    {  0,  1, ATK_TEXT_BOUNDARY_CHAR,            1,  2, "h" },
-    {  0,  2, ATK_TEXT_BOUNDARY_CHAR,            2,  3, "i" },
-    {  0,  3, ATK_TEXT_BOUNDARY_CHAR,            3,  4, "s" },
-    {  0,  4, ATK_TEXT_BOUNDARY_CHAR,            4,  5, " " },
-    {  0,  5, ATK_TEXT_BOUNDARY_CHAR,            5,  6, "i" },
-    {  0,  6, ATK_TEXT_BOUNDARY_CHAR,            6,  7, "s" },
-    {  0,  7, ATK_TEXT_BOUNDARY_CHAR,            7,  8, " " },
-    {  0,  8, ATK_TEXT_BOUNDARY_CHAR,            8,  9, "a" },
-    {  0,  9, ATK_TEXT_BOUNDARY_CHAR,            9, 10, " " },
-    {  0, 10, ATK_TEXT_BOUNDARY_CHAR,           10, 11, "m" },
-    {  0, 11, ATK_TEXT_BOUNDARY_CHAR,           11, 12, "e" },
-    {  0, 12, ATK_TEXT_BOUNDARY_CHAR,           12, 13, "d" },
-    {  0, 13, ATK_TEXT_BOUNDARY_CHAR,           13, 14, "i" },
-    {  0, 14, ATK_TEXT_BOUNDARY_CHAR,           14, 15, "u" },
-    {  0, 15, ATK_TEXT_BOUNDARY_CHAR,           15, 16, "m" },
-    {  0, 16, ATK_TEXT_BOUNDARY_CHAR,           16, 17, "-" },
-    {  0, 17, ATK_TEXT_BOUNDARY_CHAR,           17, 18, "s" },
-    {  0, 18, ATK_TEXT_BOUNDARY_CHAR,           18, 19, "i" },
-    {  0, 19, ATK_TEXT_BOUNDARY_CHAR,           19, 20, "z" },
-    {  0, 20, ATK_TEXT_BOUNDARY_CHAR,           20, 21, "e" },
-    {  0, 21, ATK_TEXT_BOUNDARY_CHAR,           21, 22, " " },
-    {  0, 22, ATK_TEXT_BOUNDARY_CHAR,           22, 23, "t" },
-    {  0, 23, ATK_TEXT_BOUNDARY_CHAR,           23, 24, "e" },
-    {  0, 24, ATK_TEXT_BOUNDARY_CHAR,           24, 25, "s" },
-    {  0, 25, ATK_TEXT_BOUNDARY_CHAR,           25, 26, "t" },
-    {  0, 26, ATK_TEXT_BOUNDARY_CHAR,           26, 27, " " },
-    {  0, 27, ATK_TEXT_BOUNDARY_CHAR,           27, 28, "s" },
-    {  0, 28, ATK_TEXT_BOUNDARY_CHAR,           28, 29, "t" },
-    {  0, 29, ATK_TEXT_BOUNDARY_CHAR,           29, 30, "r" },
-    {  0, 30, ATK_TEXT_BOUNDARY_CHAR,           30, 31, "i" },
-    {  0, 31, ATK_TEXT_BOUNDARY_CHAR,           31, 32, "n" },
-    {  0, 32, ATK_TEXT_BOUNDARY_CHAR,           32, 33, "g" },
-    {  0, 33, ATK_TEXT_BOUNDARY_CHAR,           33, 34, "," },
-    {  0, 34, ATK_TEXT_BOUNDARY_CHAR,           34, 35, "\n" },
-    {  0, 35, ATK_TEXT_BOUNDARY_CHAR,           35, 36, "i" },
-    {  0, 36, ATK_TEXT_BOUNDARY_CHAR,           36, 37, "n" },
-    {  0, 37, ATK_TEXT_BOUNDARY_CHAR,           37, 38, "c" },
-    {  0, 38, ATK_TEXT_BOUNDARY_CHAR,           38, 39, "l" },
-    {  0, 39, ATK_TEXT_BOUNDARY_CHAR,           39, 40, "u" },
-    {  0, 40, ATK_TEXT_BOUNDARY_CHAR,           40, 41, "d" },
-    {  0, 41, ATK_TEXT_BOUNDARY_CHAR,           41, 42, "i" },
-    {  0, 42, ATK_TEXT_BOUNDARY_CHAR,           42, 43, "n" },
-    {  0, 43, ATK_TEXT_BOUNDARY_CHAR,           43, 44, "g" },
-    {  0, 44, ATK_TEXT_BOUNDARY_CHAR,           44, 45, " " },
-    {  0, 45, ATK_TEXT_BOUNDARY_CHAR,           45, 46, "s" },
-    {  0, 46, ATK_TEXT_BOUNDARY_CHAR,           46, 47, "o" },
-    {  0, 47, ATK_TEXT_BOUNDARY_CHAR,           47, 48, "m" },
-    {  0, 48, ATK_TEXT_BOUNDARY_CHAR,           48, 49, "e" },
-    {  0, 49, ATK_TEXT_BOUNDARY_CHAR,           49, 50, " " },
-    {  0, 50, ATK_TEXT_BOUNDARY_CHAR,           50, 51, "\303\204" },
-    {  0, 51, ATK_TEXT_BOUNDARY_CHAR,           51, 52, "\303\226" },
-    {  0, 52, ATK_TEXT_BOUNDARY_CHAR,           52, 53, "\303\234" },
-    {  0, 53, ATK_TEXT_BOUNDARY_CHAR,           53, 54, " " },
-    {  0, 54, ATK_TEXT_BOUNDARY_CHAR,           54, 55, "a" },
-    {  0, 55, ATK_TEXT_BOUNDARY_CHAR,           55, 56, "n" },
-    {  0, 56, ATK_TEXT_BOUNDARY_CHAR,           56, 57, "d" },
-    {  0, 57, ATK_TEXT_BOUNDARY_CHAR,           57, 58, "\n" },
-    {  0, 58, ATK_TEXT_BOUNDARY_CHAR,           58, 59, "1" },
-    {  0, 59, ATK_TEXT_BOUNDARY_CHAR,           59, 60, "2" },
-    {  0, 60, ATK_TEXT_BOUNDARY_CHAR,           60, 61, "3" },
-    {  0, 61, ATK_TEXT_BOUNDARY_CHAR,           61, 62, " " },
-    {  0, 62, ATK_TEXT_BOUNDARY_CHAR,           62, 63, "f" },
-    {  0, 63, ATK_TEXT_BOUNDARY_CHAR,           63, 64, "o" },
-    {  0, 64, ATK_TEXT_BOUNDARY_CHAR,           64, 65, "r" },
-    {  0, 65, ATK_TEXT_BOUNDARY_CHAR,           65, 66, " " },
-    {  0, 66, ATK_TEXT_BOUNDARY_CHAR,           66, 67, "g" },
-    {  0, 67, ATK_TEXT_BOUNDARY_CHAR,           67, 68, "o" },
-    {  0, 68, ATK_TEXT_BOUNDARY_CHAR,           68, 69, "o" },
-    {  0, 69, ATK_TEXT_BOUNDARY_CHAR,           69, 70, "d" },
-    {  0, 70, ATK_TEXT_BOUNDARY_CHAR,           70, 71, " " },
-    {  0, 71, ATK_TEXT_BOUNDARY_CHAR,           71, 72, "m" },
-    {  0, 72, ATK_TEXT_BOUNDARY_CHAR,           72, 73, "e" },
-    {  0, 73, ATK_TEXT_BOUNDARY_CHAR,           73, 74, "a" },
-    {  0, 74, ATK_TEXT_BOUNDARY_CHAR,           74, 75, "s" },
-    {  0, 75, ATK_TEXT_BOUNDARY_CHAR,           75, 76, "u" },
-    {  0, 76, ATK_TEXT_BOUNDARY_CHAR,           76, 77, "r" },
-    {  0, 77, ATK_TEXT_BOUNDARY_CHAR,           77, 78, "e" },
-    {  0, 78, ATK_TEXT_BOUNDARY_CHAR,           78, 79, "." },
-    {  0, 79, ATK_TEXT_BOUNDARY_CHAR,           79, 79, "" },
-    {  0,  0, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    {  0,  1, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    {  0,  2, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    {  0,  3, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    {  0,  4, ATK_TEXT_BOUNDARY_WORD_START,      0,  5, "This " },
-    {  0,  5, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  0,  6, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  0,  7, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  0,  8, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    {  0,  9, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    {  0, 10, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 11, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 12, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 13, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 14, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 15, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 16, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  0, 17, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  0, 18, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  0, 19, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  0, 20, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  0, 21, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  0, 22, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  0, 23, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  0, 24, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  0, 25, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  0, 26, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  0, 27, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 28, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 29, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 30, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 31, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 32, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 33, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 34, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  0, 35, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 36, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 37, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 38, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 39, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 40, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 41, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 42, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 43, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 44, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  0, 45, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  0, 46, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  0, 47, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  0, 48, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  0, 49, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  0, 50, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  0, 51, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  0, 52, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  0, 53, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  0, 54, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  0, 55, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  0, 56, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  0, 57, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  0, 58, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  0, 59, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  0, 60, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  0, 61, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  0, 62, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  0, 63, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  0, 64, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  0, 65, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  0, 66, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  0, 67, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  0, 68, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  0, 69, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  0, 70, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  0, 71, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 72, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 73, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 74, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 75, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 76, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 77, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 78, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0, 79, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  0,  0, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    {  0,  1, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    {  0,  2, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    {  0,  3, ATK_TEXT_BOUNDARY_WORD_END,        0,  4, "This" },
-    {  0,  4, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  0,  5, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  0,  6, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  0,  7, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    {  0,  8, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    {  0,  9, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 10, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 11, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 12, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 13, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 14, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 15, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  0, 16, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  0, 17, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  0, 18, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  0, 19, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  0, 20, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  0, 21, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  0, 22, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  0, 23, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  0, 24, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  0, 25, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  0, 26, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 27, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 28, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 29, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 30, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 31, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 32, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  0, 33, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 34, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 35, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 36, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 37, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 38, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 39, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 40, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 41, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 42, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 43, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  0, 44, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  0, 45, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  0, 46, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  0, 47, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  0, 48, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  0, 49, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  0, 50, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  0, 51, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  0, 52, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  0, 53, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  0, 54, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  0, 55, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  0, 56, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  0, 57, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  0, 58, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  0, 59, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  0, 60, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  0, 61, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  0, 62, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  0, 63, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  0, 64, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  0, 65, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  0, 66, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  0, 67, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  0, 68, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  0, 69, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  0, 70, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 71, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 72, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 73, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 74, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 75, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 76, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 77, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  0, 78, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  0, 79, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  0,  0, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  1, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  2, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  3, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  4, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  5, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  6, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  7, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  8, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0,  9, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 10, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 11, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 12, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 13, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 14, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 15, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 16, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 17, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 18, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 19, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 20, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 21, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 22, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 23, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 24, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 25, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 26, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 27, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 28, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 29, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 30, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 31, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 32, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 33, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 34, ATK_TEXT_BOUNDARY_SENTENCE_START,  0, 35, "This is a medium-size test string,\n" },
-    {  0, 35, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 36, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 37, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 38, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 39, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 40, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 41, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 42, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 43, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 44, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 45, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 46, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 47, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 48, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 49, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 50, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 51, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 52, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 53, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 54, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 55, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 56, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 57, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 58, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 59, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 60, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 61, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 62, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 63, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 64, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 65, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 66, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 67, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 68, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 69, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 70, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 71, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 72, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 73, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 74, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 75, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 76, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 77, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 78, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0, 79, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  0,  0, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  1, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  2, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  3, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  4, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  5, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  6, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  7, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  8, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0,  9, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 10, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 11, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 12, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 13, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 14, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 15, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 16, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 17, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 18, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 19, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 20, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 21, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 22, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 23, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 24, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 25, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 26, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 27, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 28, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 29, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 30, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 31, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 32, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 33, ATK_TEXT_BOUNDARY_SENTENCE_END,    0, 34, "This is a medium-size test string," },
-    {  0, 34, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 35, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 36, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 37, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 38, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 39, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 40, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 41, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 42, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 43, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 44, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 45, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 46, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 47, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 48, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 49, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 50, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 51, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 52, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 53, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 54, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 55, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 56, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 57, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 58, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 59, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 60, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 61, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 62, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 63, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 64, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 65, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 66, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 67, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 68, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 69, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 70, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 71, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 72, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 73, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 74, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 75, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 76, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 77, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 78, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  0, 79, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  0,  0, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  1, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  2, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  3, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  4, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  5, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  6, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  7, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  8, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0,  9, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 10, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 11, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 12, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 13, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 14, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 15, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 16, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 17, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 18, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 19, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 20, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 21, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 22, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 23, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 24, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 25, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 26, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 27, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 28, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 29, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 30, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 31, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 32, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 33, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 34, ATK_TEXT_BOUNDARY_LINE_START,      0, 35, "This is a medium-size test string,\n" },
-    {  0, 35, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 36, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 37, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 38, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 39, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 40, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 41, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 42, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 43, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 44, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 45, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 46, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 47, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 48, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 49, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 50, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 51, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 52, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 53, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 54, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 55, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 56, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 57, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  0, 58, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 59, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 60, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 61, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 62, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 63, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 64, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 65, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 66, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 67, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 68, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 69, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 70, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 71, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 72, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 73, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 74, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 75, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 76, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 77, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 78, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0, 79, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  0,  0, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  1, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  2, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  3, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  4, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  5, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  6, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  7, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  8, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0,  9, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 10, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 11, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 12, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 13, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 14, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 15, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 16, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 17, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 18, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 19, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 20, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 21, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 22, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 23, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 24, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 25, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 26, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 27, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 28, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 29, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 30, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 31, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 32, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 33, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 34, ATK_TEXT_BOUNDARY_LINE_END,        0, 34, "This is a medium-size test string," },
-    {  0, 35, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 36, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 37, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 38, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 39, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 40, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 41, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 42, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 43, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 44, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 45, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 46, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 47, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 48, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 49, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 50, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 51, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 52, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 53, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 54, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 55, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 56, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 57, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  0, 58, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 59, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 60, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 61, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 62, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 63, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 64, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 65, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 66, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 67, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 68, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 69, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 70, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 71, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 72, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 73, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 74, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 75, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 76, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 77, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 78, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  0, 79, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1,  0, ATK_TEXT_BOUNDARY_CHAR,            1,  2, "h" },
-    {  1,  1, ATK_TEXT_BOUNDARY_CHAR,            2,  3, "i" },
-    {  1,  2, ATK_TEXT_BOUNDARY_CHAR,            3,  4, "s" },
-    {  1,  3, ATK_TEXT_BOUNDARY_CHAR,            4,  5, " " },
-    {  1,  4, ATK_TEXT_BOUNDARY_CHAR,            5,  6, "i" },
-    {  1,  5, ATK_TEXT_BOUNDARY_CHAR,            6,  7, "s" },
-    {  1,  6, ATK_TEXT_BOUNDARY_CHAR,            7,  8, " " },
-    {  1,  7, ATK_TEXT_BOUNDARY_CHAR,            8,  9, "a" },
-    {  1,  8, ATK_TEXT_BOUNDARY_CHAR,            9, 10, " " },
-    {  1,  9, ATK_TEXT_BOUNDARY_CHAR,           10, 11, "m" },
-    {  1, 10, ATK_TEXT_BOUNDARY_CHAR,           11, 12, "e" },
-    {  1, 11, ATK_TEXT_BOUNDARY_CHAR,           12, 13, "d" },
-    {  1, 12, ATK_TEXT_BOUNDARY_CHAR,           13, 14, "i" },
-    {  1, 13, ATK_TEXT_BOUNDARY_CHAR,           14, 15, "u" },
-    {  1, 14, ATK_TEXT_BOUNDARY_CHAR,           15, 16, "m" },
-    {  1, 15, ATK_TEXT_BOUNDARY_CHAR,           16, 17, "-" },
-    {  1, 16, ATK_TEXT_BOUNDARY_CHAR,           17, 18, "s" },
-    {  1, 17, ATK_TEXT_BOUNDARY_CHAR,           18, 19, "i" },
-    {  1, 18, ATK_TEXT_BOUNDARY_CHAR,           19, 20, "z" },
-    {  1, 19, ATK_TEXT_BOUNDARY_CHAR,           20, 21, "e" },
-    {  1, 20, ATK_TEXT_BOUNDARY_CHAR,           21, 22, " " },
-    {  1, 21, ATK_TEXT_BOUNDARY_CHAR,           22, 23, "t" },
-    {  1, 22, ATK_TEXT_BOUNDARY_CHAR,           23, 24, "e" },
-    {  1, 23, ATK_TEXT_BOUNDARY_CHAR,           24, 25, "s" },
-    {  1, 24, ATK_TEXT_BOUNDARY_CHAR,           25, 26, "t" },
-    {  1, 25, ATK_TEXT_BOUNDARY_CHAR,           26, 27, " " },
-    {  1, 26, ATK_TEXT_BOUNDARY_CHAR,           27, 28, "s" },
-    {  1, 27, ATK_TEXT_BOUNDARY_CHAR,           28, 29, "t" },
-    {  1, 28, ATK_TEXT_BOUNDARY_CHAR,           29, 30, "r" },
-    {  1, 29, ATK_TEXT_BOUNDARY_CHAR,           30, 31, "i" },
-    {  1, 30, ATK_TEXT_BOUNDARY_CHAR,           31, 32, "n" },
-    {  1, 31, ATK_TEXT_BOUNDARY_CHAR,           32, 33, "g" },
-    {  1, 32, ATK_TEXT_BOUNDARY_CHAR,           33, 34, "," },
-    {  1, 33, ATK_TEXT_BOUNDARY_CHAR,           34, 35, "\n" },
-    {  1, 34, ATK_TEXT_BOUNDARY_CHAR,           35, 36, "i" },
-    {  1, 35, ATK_TEXT_BOUNDARY_CHAR,           36, 37, "n" },
-    {  1, 36, ATK_TEXT_BOUNDARY_CHAR,           37, 38, "c" },
-    {  1, 37, ATK_TEXT_BOUNDARY_CHAR,           38, 39, "l" },
-    {  1, 38, ATK_TEXT_BOUNDARY_CHAR,           39, 40, "u" },
-    {  1, 39, ATK_TEXT_BOUNDARY_CHAR,           40, 41, "d" },
-    {  1, 40, ATK_TEXT_BOUNDARY_CHAR,           41, 42, "i" },
-    {  1, 41, ATK_TEXT_BOUNDARY_CHAR,           42, 43, "n" },
-    {  1, 42, ATK_TEXT_BOUNDARY_CHAR,           43, 44, "g" },
-    {  1, 43, ATK_TEXT_BOUNDARY_CHAR,           44, 45, " " },
-    {  1, 44, ATK_TEXT_BOUNDARY_CHAR,           45, 46, "s" },
-    {  1, 45, ATK_TEXT_BOUNDARY_CHAR,           46, 47, "o" },
-    {  1, 46, ATK_TEXT_BOUNDARY_CHAR,           47, 48, "m" },
-    {  1, 47, ATK_TEXT_BOUNDARY_CHAR,           48, 49, "e" },
-    {  1, 48, ATK_TEXT_BOUNDARY_CHAR,           49, 50, " " },
-    {  1, 49, ATK_TEXT_BOUNDARY_CHAR,           50, 51, "\303\204" },
-    {  1, 50, ATK_TEXT_BOUNDARY_CHAR,           51, 52, "\303\226" },
-    {  1, 51, ATK_TEXT_BOUNDARY_CHAR,           52, 53, "\303\234" },
-    {  1, 52, ATK_TEXT_BOUNDARY_CHAR,           53, 54, " " },
-    {  1, 53, ATK_TEXT_BOUNDARY_CHAR,           54, 55, "a" },
-    {  1, 54, ATK_TEXT_BOUNDARY_CHAR,           55, 56, "n" },
-    {  1, 55, ATK_TEXT_BOUNDARY_CHAR,           56, 57, "d" },
-    {  1, 56, ATK_TEXT_BOUNDARY_CHAR,           57, 58, "\n" },
-    {  1, 57, ATK_TEXT_BOUNDARY_CHAR,           58, 59, "1" },
-    {  1, 58, ATK_TEXT_BOUNDARY_CHAR,           59, 60, "2" },
-    {  1, 59, ATK_TEXT_BOUNDARY_CHAR,           60, 61, "3" },
-    {  1, 60, ATK_TEXT_BOUNDARY_CHAR,           61, 62, " " },
-    {  1, 61, ATK_TEXT_BOUNDARY_CHAR,           62, 63, "f" },
-    {  1, 62, ATK_TEXT_BOUNDARY_CHAR,           63, 64, "o" },
-    {  1, 63, ATK_TEXT_BOUNDARY_CHAR,           64, 65, "r" },
-    {  1, 64, ATK_TEXT_BOUNDARY_CHAR,           65, 66, " " },
-    {  1, 65, ATK_TEXT_BOUNDARY_CHAR,           66, 67, "g" },
-    {  1, 66, ATK_TEXT_BOUNDARY_CHAR,           67, 68, "o" },
-    {  1, 67, ATK_TEXT_BOUNDARY_CHAR,           68, 69, "o" },
-    {  1, 68, ATK_TEXT_BOUNDARY_CHAR,           69, 70, "d" },
-    {  1, 69, ATK_TEXT_BOUNDARY_CHAR,           70, 71, " " },
-    {  1, 70, ATK_TEXT_BOUNDARY_CHAR,           71, 72, "m" },
-    {  1, 71, ATK_TEXT_BOUNDARY_CHAR,           72, 73, "e" },
-    {  1, 72, ATK_TEXT_BOUNDARY_CHAR,           73, 74, "a" },
-    {  1, 73, ATK_TEXT_BOUNDARY_CHAR,           74, 75, "s" },
-    {  1, 74, ATK_TEXT_BOUNDARY_CHAR,           75, 76, "u" },
-    {  1, 75, ATK_TEXT_BOUNDARY_CHAR,           76, 77, "r" },
-    {  1, 76, ATK_TEXT_BOUNDARY_CHAR,           77, 78, "e" },
-    {  1, 77, ATK_TEXT_BOUNDARY_CHAR,           78, 79, "." },
-    {  1, 78, ATK_TEXT_BOUNDARY_CHAR,           79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_CHAR,           79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  1,  1, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  1,  2, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  1,  3, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  1,  4, ATK_TEXT_BOUNDARY_WORD_START,      5,  8, "is " },
-    {  1,  5, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    {  1,  6, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    {  1,  7, ATK_TEXT_BOUNDARY_WORD_START,      8, 10, "a " },
-    {  1,  8, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  1,  9, ATK_TEXT_BOUNDARY_WORD_START,     10, 17, "medium-" },
-    {  1, 10, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 11, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 12, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 13, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 14, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 15, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 16, ATK_TEXT_BOUNDARY_WORD_START,     17, 22, "size " },
-    {  1, 17, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  1, 18, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  1, 19, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  1, 20, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  1, 21, ATK_TEXT_BOUNDARY_WORD_START,     22, 27, "test " },
-    {  1, 22, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  1, 23, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  1, 24, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  1, 25, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  1, 26, ATK_TEXT_BOUNDARY_WORD_START,     27, 35, "string,\n" },
-    {  1, 27, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 28, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 29, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 30, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 31, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 32, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 33, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 34, ATK_TEXT_BOUNDARY_WORD_START,     35, 45, "including " },
-    {  1, 35, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 36, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 37, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 38, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 39, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 40, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 41, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 42, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 43, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 44, ATK_TEXT_BOUNDARY_WORD_START,     45, 50, "some " },
-    {  1, 45, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  1, 46, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  1, 47, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  1, 48, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  1, 49, ATK_TEXT_BOUNDARY_WORD_START,     50, 54, "\303\204\303\226\303\234 " },
-    {  1, 50, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  1, 51, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  1, 52, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  1, 53, ATK_TEXT_BOUNDARY_WORD_START,     54, 58, "and\n" },
-    {  1, 54, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  1, 55, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  1, 56, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  1, 57, ATK_TEXT_BOUNDARY_WORD_START,     58, 62, "123 " },
-    {  1, 58, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  1, 59, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  1, 60, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  1, 61, ATK_TEXT_BOUNDARY_WORD_START,     62, 66, "for " },
-    {  1, 62, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  1, 63, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  1, 64, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  1, 65, ATK_TEXT_BOUNDARY_WORD_START,     66, 71, "good " },
-    {  1, 66, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  1, 67, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  1, 68, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  1, 69, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  1, 70, ATK_TEXT_BOUNDARY_WORD_START,     71, 79, "measure." },
-    {  1, 71, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 72, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 73, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 74, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 75, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 76, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 77, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 78, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_WORD_START,     79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  1,  1, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  1,  2, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  1,  3, ATK_TEXT_BOUNDARY_WORD_END,        4,  7, " is" },
-    {  1,  4, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    {  1,  5, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    {  1,  6, ATK_TEXT_BOUNDARY_WORD_END,        7,  9, " a" },
-    {  1,  7, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  1,  8, ATK_TEXT_BOUNDARY_WORD_END,        9, 16, " medium" },
-    {  1,  9, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 10, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 11, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 12, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 13, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 14, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 15, ATK_TEXT_BOUNDARY_WORD_END,       16, 21, "-size" },
-    {  1, 16, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  1, 17, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  1, 18, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  1, 19, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  1, 20, ATK_TEXT_BOUNDARY_WORD_END,       21, 26, " test" },
-    {  1, 21, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  1, 22, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  1, 23, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  1, 24, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  1, 25, ATK_TEXT_BOUNDARY_WORD_END,       26, 33, " string" },
-    {  1, 26, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 27, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 28, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 29, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 30, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 31, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 32, ATK_TEXT_BOUNDARY_WORD_END,       33, 44, ",\nincluding" },
-    {  1, 33, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 34, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 35, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 36, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 37, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 38, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 39, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 40, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 41, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 42, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 43, ATK_TEXT_BOUNDARY_WORD_END,       44, 49, " some" },
-    {  1, 44, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  1, 45, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  1, 46, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  1, 47, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  1, 48, ATK_TEXT_BOUNDARY_WORD_END,       49, 53, " \303\204\303\226\303\234" },
-    {  1, 49, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  1, 50, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  1, 51, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  1, 52, ATK_TEXT_BOUNDARY_WORD_END,       53, 57, " and" },
-    {  1, 53, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  1, 54, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  1, 55, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  1, 56, ATK_TEXT_BOUNDARY_WORD_END,       57, 61, "\n123" },
-    {  1, 57, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  1, 58, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  1, 59, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  1, 60, ATK_TEXT_BOUNDARY_WORD_END,       61, 65, " for" },
-    {  1, 61, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  1, 62, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  1, 63, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  1, 64, ATK_TEXT_BOUNDARY_WORD_END,       65, 70, " good" },
-    {  1, 65, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  1, 66, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  1, 67, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  1, 68, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  1, 69, ATK_TEXT_BOUNDARY_WORD_END,       70, 78, " measure" },
-    {  1, 70, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 71, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 72, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 73, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 74, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 75, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 76, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 77, ATK_TEXT_BOUNDARY_WORD_END,       78, 79, "." },
-    {  1, 78, ATK_TEXT_BOUNDARY_WORD_END,       79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_WORD_END,       79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  1, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  2, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  3, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  4, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  5, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  6, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  7, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  8, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  9, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 10, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 11, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 12, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 13, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 14, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 15, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 16, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 17, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 18, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 19, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 20, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 21, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 22, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 23, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 24, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 25, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 26, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 27, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 28, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 29, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 30, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 31, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 32, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 33, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 34, ATK_TEXT_BOUNDARY_SENTENCE_START, 35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 35, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 36, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 37, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 38, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 39, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 40, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 41, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 42, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 43, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 44, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 45, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 46, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 47, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 48, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 49, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 50, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 51, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 52, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 53, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 54, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 55, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 56, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 57, ATK_TEXT_BOUNDARY_SENTENCE_START, 58, 79, "123 for good measure." },
-    {  1, 58, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 59, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 60, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 61, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 62, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 63, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 64, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 65, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 66, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 67, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 68, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 69, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 70, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 71, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 72, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 73, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 74, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 75, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 76, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 77, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 78, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_SENTENCE_START, 79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  1, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  2, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  3, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  4, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  5, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  6, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  7, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  8, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  9, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 10, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 11, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 12, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 13, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 14, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 15, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 16, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 17, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 18, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 19, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 20, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 21, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 22, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 23, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 24, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 25, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 26, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 27, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 28, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 29, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 30, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 31, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 32, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 33, ATK_TEXT_BOUNDARY_SENTENCE_END,   34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 34, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 35, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 36, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 37, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 38, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 39, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 40, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 41, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 42, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 43, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 44, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 45, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 46, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 47, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 48, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 49, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 50, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 51, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 52, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 53, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 54, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 55, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 56, ATK_TEXT_BOUNDARY_SENTENCE_END,   57, 79, "\n123 for good measure." },
-    {  1, 57, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 58, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 59, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 60, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 61, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 62, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 63, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 64, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 65, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 66, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 67, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 68, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 69, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 70, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 71, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 72, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 73, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 74, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 75, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 76, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 77, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 78, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_SENTENCE_END,   79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  1, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  2, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  3, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  4, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  5, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  6, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  7, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  8, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1,  9, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 10, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 11, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 12, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 13, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 14, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 15, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 16, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 17, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 18, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 19, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 20, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 21, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 22, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 23, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 24, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 25, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 26, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 27, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 28, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 29, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 30, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 31, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 32, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 33, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 34, ATK_TEXT_BOUNDARY_LINE_START,     35, 58, "including some \303\204\303\226\303\234 and\n" },
-    {  1, 35, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 36, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 37, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 38, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 39, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 40, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 41, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 42, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 43, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 44, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 45, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 46, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 47, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 48, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 49, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 50, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 51, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 52, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 53, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 54, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 55, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 56, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 57, ATK_TEXT_BOUNDARY_LINE_START,     58, 79, "123 for good measure." },
-    {  1, 58, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 59, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 60, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 61, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 62, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 63, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 64, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 65, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 66, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 67, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 68, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 69, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 70, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 71, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 72, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 73, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 74, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 75, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 76, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 77, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 78, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_LINE_START,     79, 79, "" },
-    {  1,  0, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  1, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  2, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  3, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  4, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  5, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  6, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  7, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  8, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1,  9, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 10, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 11, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 12, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 13, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 14, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 15, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 16, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 17, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 18, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 19, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 20, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 21, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 22, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 23, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 24, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 25, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 26, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 27, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 28, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 29, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 30, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 31, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 32, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 33, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 34, ATK_TEXT_BOUNDARY_LINE_END,       34, 57, "\nincluding some \303\204\303\226\303\234 and" },
-    {  1, 35, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 36, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 37, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 38, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 39, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 40, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 41, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 42, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 43, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 44, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 45, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 46, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 47, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 48, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 49, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 50, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 51, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 52, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 53, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 54, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 55, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 56, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 57, ATK_TEXT_BOUNDARY_LINE_END,       57, 79, "\n123 for good measure." },
-    {  1, 58, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 59, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 60, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 61, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 62, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 63, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 64, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 65, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 66, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 67, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 68, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 69, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 70, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 71, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 72, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 73, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 74, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 75, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 76, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 77, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 78, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    {  1, 79, ATK_TEXT_BOUNDARY_LINE_END,       79, 79, "" },
-    { 42, -1, }
+    { -1,  5, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  5, "abc! " },
+    { -1,  6, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  5, "abc! " },
+    { -1,  7, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  5, "abc! " },
+    { -1,  8, ATK_TEXT_BOUNDARY_SENTENCE_START,  0,  5, "abc! " },
+    { -1,  9, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_START,  5,  9, "def\n" },
+    { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_START,  9, 17, "ghi jkl\n" },
+    { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_START,  9, 17, "ghi jkl\n" },
+    { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_START,  9, 17, "ghi jkl\n" },
+    { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_START,  9, 17, "ghi jkl\n" },
+    { -1,  0, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  0, "" },
+    { -1,  2, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  0, "" },
+    { -1,  3, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  0, "" },
+    { -1,  4, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  4, "abc!" },
+    { -1,  5, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  4, "abc!" },
+    { -1,  6, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  4, "abc!" },
+    { -1,  7, ATK_TEXT_BOUNDARY_SENTENCE_END,  0,  4, "abc!" },
+    { -1,  8, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1,  9, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_END,  4,  8, " def" },
+    { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_END,  8, 16, "\nghi jkl" },
+    { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_END,  8, 16, "\nghi jkl" },
+    { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_END,  8, 16, "\nghi jkl" },
+    { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_END,  8, 16, "\nghi jkl" },
+    { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" },
+    { -1,  0, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  2, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  3, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  4, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  5, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  6, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  7, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  8, ATK_TEXT_BOUNDARY_LINE_START,  0,  0, "" },
+    { -1,  9, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 10, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 11, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 12, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 13, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 14, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 15, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 16, ATK_TEXT_BOUNDARY_LINE_START,  0,  9, "abc! def\n" },
+    { -1, 17, ATK_TEXT_BOUNDARY_LINE_START,  9, 17, "ghi jkl\n" },
+    { -1, 18, ATK_TEXT_BOUNDARY_LINE_START,  9, 17, "ghi jkl\n" },
+    { -1, 19, ATK_TEXT_BOUNDARY_LINE_START,  9, 17, "ghi jkl\n" },
+    { -1, 20, ATK_TEXT_BOUNDARY_LINE_START,  9, 17, "ghi jkl\n" },
+    { -1,  0, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  1, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  2, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  3, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  4, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  5, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  6, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  7, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  8, ATK_TEXT_BOUNDARY_LINE_END,  0,  0, "" },
+    { -1,  9, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 10, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 11, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 12, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 13, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 14, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 15, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 16, ATK_TEXT_BOUNDARY_LINE_END,  0,  8, "abc! def" },
+    { -1, 17, ATK_TEXT_BOUNDARY_LINE_END,  8, 16, "\nghi jkl" },
+    { -1, 18, ATK_TEXT_BOUNDARY_LINE_END,  8, 16, "\nghi jkl" },
+    { -1, 19, ATK_TEXT_BOUNDARY_LINE_END,  8, 16, "\nghi jkl" },
+    { -1, 20, ATK_TEXT_BOUNDARY_LINE_END,  8, 16, "\nghi jkl" },
+    {  0, -1, }
   };
   gint start, end;
   gchar *word;
   gchar *last_word;
   gint offset;
-  gint i;
+  gint i, j, k;
   gint b;
 
   atk_text = ATK_TEXT (gtk_widget_get_accessible (widget));
 
   set_text (widget, text);
+#if 0
+  if (GTK_IS_LABEL (widget))
+    show_text_attributes (gtk_label_get_layout (GTK_LABEL (widget)));
+#endif
+
+#if 0
+  for (i = -1; i < 2; i++)
+    for (j = ATK_TEXT_BOUNDARY_CHAR; j <= ATK_TEXT_BOUNDARY_LINE_END; j++)
+      for (k = 0; k <= strlen (text); k++)
+        {
+      switch (i)
+        {
+          case -1:
+            word = atk_text_get_text_before_offset (atk_text, k, j, &start, &end);
+            break;
+          case 0:
+            word = atk_text_get_text_at_offset (atk_text, k, j, &start, &end);
+            break;
+          case 1:
+            word = atk_text_get_text_after_offset (atk_text, k, j, &start, &end);
+            break;
+          default:
+            g_assert_not_reached ();
+            break;
+        }
+       printf ("    { %2d, %2d, %s %2d, %2d, \"%s\" },\n", i, k, boundary(j), start, end, escape (word));
+       g_free (word); 
+     }
+#endif
 
   for (i = 0; expected[i].offset != -1; i++)
     {
@@ -1827,6 +495,13 @@ test_words (GtkWidget *widget)
             break;
         }
 
+      if (g_strcmp0 (word, expected[i].word) != 0 ||
+          start != expected[i].start ||
+          end != expected[i].end)
+        {
+          g_print ("%d: %s %s %d : ", i, boundary(expected[i].boundary), gravity(expected[i].gravity), expected[i].offset);
+          g_print ("\"%s\" != \"%s\"\n", word, expected[i].word);
+        }
       g_assert_cmpstr (word, ==, expected[i].word);
       g_assert_cmpint (start, ==, expected[i].start);
       g_assert_cmpint (end, ==, expected[i].end);
@@ -1902,8 +577,8 @@ main (int argc, char *argv[])
 
   g_test_add_func ("/text/bold/GtkLabel", test_bold_label);
 
-  add_text_tests (gtk_text_view_new ());
   add_text_tests (gtk_label_new (""));
+  add_text_tests (gtk_text_view_new ());
   add_text_tests (gtk_entry_new ());
 
   return g_test_run ();



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]