]> granicus.if.org Git - re2c/commitdiff
Fixed #147 "Please add symbol name to "can't find symbol" error message".
authorUlya Trofimovich <skvadrik@gmail.com>
Sat, 25 Jun 2016 15:22:08 +0000 (16:22 +0100)
committerUlya Trofimovich <skvadrik@gmail.com>
Sun, 30 Jul 2017 15:21:21 +0000 (16:21 +0100)
As suggested by sirzooro:
    Please add symbol name to "can't find symbol" error message,
    it would allow to quickly spot what is wrong. Now we have to
    position cursor at given row and column to find that name.

Also tweaked error reporitng function to append "..." at the end
of the message if it didn't fit into buffer.

re2c/bootstrap/src/ast/lex.cc
re2c/bootstrap/src/ast/parser.cc
re2c/src/ast/parser.ypp
re2c/test/bug147.c [new file with mode: 0644]
re2c/test/bug147.re [new file with mode: 0644]
re2c/test/overflow-2.c
re2c/test/overflow-3.c

index d322d54dec9a28fa5f543b99c67651a36dcd3f03..2e76152d5fcc2ed503bd6984ce016e72bf6d053e 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.16 on Sat Jul 29 19:04:57 2017 */
+/* Generated by re2c 0.16 on Sun Jul 30 16:18:18 2017 */
 #line 1 "../src/ast/lex.re"
 #include "src/util/c99_stdint.h"
 #include <stddef.h>
index 4ef1fe4f135b88ad25fa0ef77609092c0e908fac..3bd3e9a66658ed42ef1e280fea291a65e845e5eb 100644 (file)
@@ -475,7 +475,7 @@ static const yytype_uint8 yyrline[] =
       92,    96,    96,    99,   103,   107,   114,   121,   128,   134,
      136,   142,   149,   150,   156,   162,   169,   171,   177,   181,
      188,   192,   199,   203,   210,   211,   217,   222,   223,   227,
-     228,   229,   233,   234,   244
+     228,   229,   233,   234,   245
 };
 #endif
 
@@ -1557,7 +1557,8 @@ yyreduce:
     {
                symtab_t::iterator i = context.symtab.find(*(yyvsp[0].str));
                if (i == context.symtab.end()) {
-                       fatal_l(context.input.get_cline(), "can't find symbol");
+                       fatal_l(context.input.get_cline(),
+                               "undefined symbol '%s'", (yyvsp[0].str)->c_str());
                }
                (yyval.regexp) = i->second;
                if (ast_need_wrap((yyval.regexp))) {
index 2d78534efe7d66e7e2b1acf710060ca062d3e0c7..76a6a567960248165547e66dbb717f80974c63d8 100644 (file)
@@ -234,7 +234,8 @@ primary
        | TOKEN_ID {
                symtab_t::iterator i = context.symtab.find(*$1);
                if (i == context.symtab.end()) {
-                       fatal_l(context.input.get_cline(), "can't find symbol");
+                       fatal_l(context.input.get_cline(),
+                               "undefined symbol '%s'", $1->c_str());
                }
                $$ = i->second;
                if (ast_need_wrap($$)) {
diff --git a/re2c/test/bug147.c b/re2c/test/bug147.c
new file mode 100644 (file)
index 0000000..066cd7d
--- /dev/null
@@ -0,0 +1 @@
+re2c: error: line 2: undefined symbol 'name1'
diff --git a/re2c/test/bug147.re b/re2c/test/bug147.re
new file mode 100644 (file)
index 0000000..5d9eff3
--- /dev/null
@@ -0,0 +1,3 @@
+/*!re2c
+    name1 {}
+*/
index 959cd28b409f636bd641ed641fae5d6ec465b0a3..3d9ede4f3c5f2d3a148299513eb24eb6f3d6a0b8 100644 (file)
@@ -1 +1 @@
-re2c: error: line 2: can't find symbol
+re2c: error: line 2: undefined symbol 'x0000_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00040_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00080_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x000C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00100_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00140_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00180_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x001C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00200_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00240_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00280_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x002C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00300_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00340_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00380_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x003C0_1st_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00400_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00440_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00480_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x004C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00500_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00540_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00580_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x005C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00600_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00640_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00680_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x006C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00700_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00740_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00780_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x007C0_2nd_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00800_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00840_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00880_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x008C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00900_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00940_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00980_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x009C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00AC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00BC0_3rd_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00CC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00DC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00EC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00FC0_4th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01000_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01040_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01080_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x010C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01100_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01140_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01180_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x011C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01200_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01240_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01280_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x012C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01300_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01340_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01380_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x013C0_5th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01400_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01440_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01480_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x014C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01500_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01540_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01580_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x015C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01600_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01640_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01680_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x016C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01700_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01740_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01780_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x017C0_6th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01800_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01840_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01880_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x018C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01900_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01940_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01980_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x019C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01AC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01BC0_7th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01CC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01DC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01EC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01FC0_8th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_and_here_is_the_overflfowQ'
index 959cd28b409f636bd641ed641fae5d6ec465b0a3..3d9ede4f3c5f2d3a148299513eb24eb6f3d6a0b8 100644 (file)
@@ -1 +1 @@
-re2c: error: line 2: can't find symbol
+re2c: error: line 2: undefined symbol 'x0000_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00040_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00080_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x000C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00100_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00140_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00180_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x001C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00200_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00240_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00280_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x002C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00300_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00340_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00380_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x003C0_1st_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00400_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00440_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00480_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x004C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00500_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00540_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00580_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x005C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00600_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00640_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00680_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x006C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00700_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00740_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00780_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x007C0_2nd_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00800_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00840_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00880_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x008C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00900_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00940_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00980_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x009C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00A80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00AC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00B80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00BC0_3rd_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00C80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00CC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00D80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00DC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00E80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00EC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00F80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x00FC0_4th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01000_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01040_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01080_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x010C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01100_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01140_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01180_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x011C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01200_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01240_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01280_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x012C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01300_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01340_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01380_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x013C0_5th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01400_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01440_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01480_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x014C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01500_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01540_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01580_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x015C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01600_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01640_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01680_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x016C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01700_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01740_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01780_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x017C0_6th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01800_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01840_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01880_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x018C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01900_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01940_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01980_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x019C0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01A80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01AC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01B80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01BC0_7th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01C80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01CC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01D80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01DC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01E80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01EC0_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F00_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F40_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01F80_aaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_x01FC0_8th_KByte_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaaa_aaaaaaaaaaaaaa_and_here_is_the_overflfowQ'